VHDL中process运行中敏感量信号改变,会重新运行process吗?

VHDL中process运行中敏感量信号改变,会重新运行process吗?
比如说:process(state,E)if(state=s1) --顺序语句一; M
中原逍遥客 1年前 已收到1个回答 举报

啊88才 幼苗

共回答了8个问题采纳率:87.5% 举报

是的,process里的敏感信号是触发条件,无论哪个敏感信号发生改变都会触发process进程,这时,process内部的所有阻塞和非阻塞语句都会执行.

1年前 追问

9

中原逍遥客 举报

嗯,就是说,原来的运行还没结束,就会返回去重新运行吗?谢谢。另外有一个问题,就是我的process()中的敏感信号没有变化,但是也运行了,请问是为什么呢?

举报 啊88才

  1. VHDL描述的是硬件,这个你不能完全以类似C等高级语言程序的方法去分析它。

    所以对于你说的运行还没有结束,这种说法是不对的,所谓顺序仅仅是指语句按序执行上的顺序性,这并不意味着PROCESS 语句结构所对应的硬件逻辑行为也具有相同的顺序性。

    敏感信号可以理解为当一个电路的输入,任何时候当它发生变化时,电路也会重新对输出进行运算。(一个进程你可以把它看成是一个电路信号流程框图)。

  2. 至于,你说敏感信号没有变化,进程也运行了的问题,不知道你是怎么测试的,具体代码是怎么样的,所以没有办法给你详细说明!按说这是不可能发生的。

可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 18 q. 0.069 s. - webmaster@yulucn.com