为什么iverilog会为always\u ff生成语法错误?
我最近启动了System Verilog,一个语法错误让我有点目瞪口呆。鉴于以下模块: test.sv:为什么iverilog会为always\u ff生成语法错误?,verilog,system-verilog,iverilog,Verilog,System Verilog,Iverilog,我最近启动了System Verilog,一个语法错误让我有点目瞪口呆。鉴于以下模块: test.sv: module test( input logic clk, output logic out ); always_ff @(posedge clk) begin out = 1'b1; end endmodule 当使用iverilog-g2012 test.sv进行编译时,会生成第5行(始终\u ff)的简单语法错误。我不知道为什么会发生这种情况,因为我的语
module test(
input logic clk,
output logic out );
always_ff @(posedge clk) begin
out = 1'b1;
end
endmodule
当使用
iverilog-g2012 test.sv进行编译时,会生成第5行(始终\u ff)的简单语法错误。我不知道为什么会发生这种情况,因为我的语法似乎是正确的。SystemVerilog的语法是正确的,但并非所有的iverilog版本都支持这种语法。从
现在支持以下SystemVerilog语言功能:
总是梳、总是ff和总是闩锁构造
如果未使用此版本,则应升级
您的代码在上的其他模拟器上编译
或者,您不需要总是使用\u ff
。您仍然可以始终使用
:
always @(posedge clk) begin
out <= 1'b1;
end
始终@(posedge clk)开始
出来