a = #5 b;
#5 a = b;
上述两个陈述之间有什么区别吗?
答案 0 :(得分:4)
RHS上的#
称为分配内延迟。请阅读IEEE Std(1800-2009)第9.4.5节“分配内时序控制”中的区别。
分配内延迟或事件 控制应延迟分配 左边的新值, 但右手表达应该是 在延迟之前评估,而不是 延迟之后。
使用两个语句运行模拟,以查看您观察到的差异(如果有)。使用$monitor
和$time
。
答案 1 :(得分:1)
准确地说,第二个语句没有指定阻塞分配的LHS的定时延迟。它的前缀是procedural_timing_control,它可以在任何类型的过程语句之前使用,而不仅仅是赋值语句。