用于声明连接的Verilog语法
这是Verilog的合法声明吗用于声明连接的Verilog语法,verilog,system-verilog,Verilog,System Verilog,这是Verilog的合法声明吗 wire \n_628_B[-1111111109] ; 这似乎很奇怪,但这是法律语法。参考IEEE标准1800-2012第5.6.1节。以下代码是合法的: module tb; wire \n_628_B[-1111111109] ; reg foo; assign \n_628_B[-1111111109] = foo; initial begin $monitor(\n_628_B[-1111111109] ); foo = 1;
wire \n_628_B[-1111111109] ;
这似乎很奇怪,但这是法律语法。参考IEEE标准1800-2012第5.6.1节。以下代码是合法的:
module tb;
wire \n_628_B[-1111111109] ;
reg foo;
assign \n_628_B[-1111111109] = foo;
initial begin
$monitor(\n_628_B[-1111111109] );
foo = 1;
#5 foo = 0;
end
endmodule
输出:
1
0
因为它太奇怪了,如果你有选择的话,我强烈建议你不要使用它。尽管看起来很奇怪,但这是法律语法。参考IEEE标准1800-2012第5.6.1节。以下代码是合法的:
module tb;
wire \n_628_B[-1111111109] ;
reg foo;
assign \n_628_B[-1111111109] = foo;
initial begin
$monitor(\n_628_B[-1111111109] );
foo = 1;
#5 foo = 0;
end
endmodule
输出:
1
0
因为它太奇怪了,如果你有选择的话,我强烈建议你不要使用它。是的。在Verilog中,在反斜杠之后和下一个空格之前的所有内容都是一个标识符。因此,方括号中的部分不是数组大小或任何东西,而是信号名称的一部分。自动生成的Verilog代码(例如Verilog NetList)始终包含此类转义标识符。但我个人不会在手写代码中使用它。是的。在Verilog中,在反斜杠之后和下一个空格之前的所有内容都是一个标识符。因此,方括号中的部分不是数组大小或任何东西,而是信号名称的一部分。自动生成的Verilog代码(例如Verilog NetList)始终包含此类转义标识符。但我个人不会在手写代码中使用它