ffgg

阻塞赋值与非阻塞赋值

阻塞赋值:用“=”表示,计算等号右边,期间不允许任何其他语句干扰,必须等这个赋值语句完成后,再进行下一条赋值语句。

串行块(begin-end)中 ,各条阻塞赋值语句就像C语言一样按顺序执行。

非阻塞赋值:用“<=”表示,在赋值开始时刻,计算所有赋值号右边的语句,赋值结束时刻,同时更新赋值号左边的语句,整个赋值期间,允许其他任何语句的操作。

非阻塞赋值只能用于对寄存器变量进行赋值,因此只能用于“initial”和“always”块中,而不能用于连续赋值“assign”。

相比于阻塞赋值,非阻塞赋值对应的电路结构一般与触发沿有关,只有在触发沿时刻才能进行非阻塞赋值。

posted on 2023-04-20 14:01  壹肆叁贰海里  阅读(0)  评论(0编辑  收藏  举报  来源

导航