iverilog错误:赋值语句l-value中的语法
我是SystemVerilog的新手,我使用Icarus Verilog。 我正试图设计一个简单的FSM来练习,但我不断地得到这个错误: 错误:赋值语句l-value中的语法iverilog错误:赋值语句l-value中的语法,verilog,system-verilog,digital-design,Verilog,System Verilog,Digital Design,我是SystemVerilog的新手,我使用Icarus Verilog。 我正试图设计一个简单的FSM来练习,但我不断地得到这个错误: 错误:赋值语句l-value中的语法 模块primoex(输入逻辑时钟、复位、x、, 输出逻辑(y); enum reg[1:0]{S0,S1,S2}stati; 注册号[1:0]stato,statoprox; 始终\u ff@(posedge时钟、posedge重置) 如果(重置)stato=S0; else stato在case语句中,使用default
模块primoex(输入逻辑时钟、复位、x、,
输出逻辑(y);
enum reg[1:0]{S0,S1,S2}stati;
注册号[1:0]stato,statoprox;
始终\u ff@(posedge时钟、posedge重置)
如果(重置)stato=S0;
else stato在case
语句中,使用default
关键字代替其他case项值;不能为其赋值。您仍然需要使用正在分配的信号名称
更改:
default= S0;
致:
这段代码在几个模拟器上编译。你可以注册一个免费帐户
它不会在Icarus上编译,但您可能有不同的版本。我看到的编译错误与您报告的不同。请记住,Icarus并不支持所有SystemVerilog功能
default= S0;
default statoprox = S0;