【发布时间】:2016-12-01 14:43:13
【问题描述】:
verilog中强制信号的使用和不使用有什么区别?
这里是一个示例 verilog
top();
wire temp;
reg temp2;
endmodule
我想强制 temp 和 temp2 信号如下。
案例一
top();
wire temp;
reg temp2;
initial begin
top.temp = 1'b1;
top.temp2 = 1'b1;
end
endmodule
在这种情况下,我遇到了这样的错误。
top.slwr_w = 1'b1; | ncvlog: *E,WANOTL : 在这种情况下,网络不是合法的左值 [9.3.1(IEEE)]。
如果我想在没有“强制”的情况下这样使用 我应该只强制“reg”而不是“wire”吗? 如果我想强行连线,我该怎么做?
案例2
top();
wire temp;
reg temp2;
initial begin
force top.temp = 1'b1;
force top.temp2 = 1'b1;
end
endmodule
在这种情况下,我使用 'force' 没有错误。
Q1.首先,我想知道case1和case2作为强制方式有什么区别?
Q2.哪种情况好?
【问题讨论】:
标签: verilog