据我所知,PROCESS中的所有语句都是按顺序执行的.那么并发信号分配会发生什么(<=)?它是否与顺序赋值(:=)的工作方式相同,还是在增量延迟后执行?
如果它在delta延迟之后执行,那么PROCESS中的所有语句如何被称为顺序?
如果它立即执行,那么在一个进程中:=和<=之间是否有任何区别?
在完成执行中的所有顺序代码之后执行信号分配(<=).这是完成该时间步长的所有活动进程的时间.
举个例子,为什么:
假设您有一个触发2个进程的事件.这两个进程使用相同的信号,但其中一个更改了该信号的值.由于顺序模拟模型,模拟器当时只能执行一个过程(不要与vhdl的并发模型混淆).因此,如果首先模拟过程A并且A改变信号,则B将具有错误的信号值.因此,只有在完成所有触发过程后才能更改信号.
变量赋值(:=)可以不间断地执行,并且可以用于例如临时在流程中存储一些数据.
| 归档时间: |
|
| 查看次数: |
8025 次 |
| 最近记录: |