1

有点简单的问题,我知道它很笼统,但这正是我要问的原因......

如果我在 vhdl 中编写代码并使用以这种方式启动的进程:

Process(clk,x,y,x)
begin
...
end process

有什么方法可以让我不必保存 x,y,z 值?我理解这一点的方式,如果我不保存它们,我将无法说其中一个是否改变了,这意味着我必须保存它们。

我和朋友一起写大学作业,我们有不同的意见。非常感谢帮手!

4

1 回答 1

0

这完全取决于您的需求。

如果您不知道 - 当您使用 VHDL 为 FPGA、CPLD 等制作项目时,您必须忘记您对编程的了解,因为您设计的是硬件,而不是软件。大多数情况下(如果不是总是),您不必保存这些值,例如在制作组合电路时。在这种情况下,您不关心之前的值,而只关心当前的值。看看一些有限状态机的例子,它们具有组合逻辑的过程。

最后——如果你把时钟放在灵敏度列表中,这意味着你希望它是同步的,并且进程只会在这个时钟的某个边缘启动,所以向它添加更多信号(复位除外)是没有意义的。

于 2017-10-13T20:42:59.790 回答