采用EDA技术对时序逻辑电路进行设计时,可以采用阻塞性赋值和非阻塞性赋值。请简述两者的区别,并举例说明。


采用EDA技术对时序逻辑电路进行设计时,可以采用阻塞性赋值和非阻塞性赋值。请简述两者的区别,并举例说明。

正确答案:(备注,此题答案不唯一,理解正确即可,5分)答:(1)阻塞赋值是理想化的数据传输,赋值不需要时间,立即完成;(2)而对非阻塞赋值,VerilogHDL假定等号右边的表达式向左边变量的赋值不是立即的,而是需要一个延时δ,δ是从过程启动到结束之间的延迟;(3)非阻塞赋值语句左边的变量要在过程结束时(延时δ后)才能获得赋值,若有多条非阻塞赋值语句,则在延时δ后同时完成赋值;(4)一般用阻塞赋值描述组合逻辑;非阻塞赋值描述同步时序逻辑中边沿敏感的操作。(5)可以在一个always过程中对同一变量进行多次阻塞式赋值;但对同一变量的多次非阻塞式赋值,起作用的是最后一次。


Tag:赋值 变量 时序 时间:2022-04-06 22:12:26