Verilog 中assign语句 是并行的还是按顺序执行?
时间:10-02
整理:3721RD
点击:
代码: module test(in1,in2,out1,out2);
input in1;
input in2;
outputout1;
outputout2;
assign out2 = out1 ^in1;
assign out1 = in1 && in2;
endmodule
阻塞赋值语句是在前一句执行并更新后才执行下一句,上面的代码也是这样的吗?这些代码表示的应该是并行的吧?好像是矛盾的!
是并行执行的啊? 怎么难以理解啊?这个就相当于一个异或门,一个与门,
不矛盾,
你提到阻塞赋值,相信你是受阻塞赋值的定义影响,注意:阻塞赋值串行操作是局限于在behavior structual 描述内部,也就是指在initial and always block内部。
谢谢!
学习了!