LHS或RHS中规定的延时时间有何不同?

时间:2011-05-14 15:35:52

标签: verilog

a = #5 b;
#5 a = b;

上述两个陈述之间有什么区别吗?

2 个答案:

答案 0 :(得分:4)

RHS上的#称为分配内延迟。请阅读IEEE Std(1800-2009)第9.4.5节“分配内时序控制”中的区别。

  

分配内延迟或事件   控制应延迟分配   左边的新值,   但右手表达应该是   在延迟之前评估,而不是   延迟之后。

使用两个语句运行模拟,以查看您观察到的差异(如果有)。使用$monitor$time

答案 1 :(得分:1)

准确地说,第二个语句没有指定阻塞分配的LHS的定时延迟。它的前缀是procedural_timing_control,它可以在任何类型的过程语句之前使用,而不仅仅是赋值语句。

相关问题