考虑这段代码:
architecture synth of my_entity is
signal a : std_logic;
begin
a <= c and d;
b <= a and c;
end synth;
第二行会尊重这一点吗a
在其他进程中更改或所有信号仅在结束时建筑学分配?
小心你的术语。当你说a
在另一个“进程”中进行了更改,该“进程”在VHDL中具有特定含义(进程是VHDL中的关键字),并且您的代码没有任何进程。
合成器会将您的代码视为:
a <= c and d;
b <= (c and d) and c;
模拟器通常会在第一遍中分配 a,然后在一个“delta”之后在第二遍中分配 b。增量是在与初始分配相同的模拟时间发生的无限小的时间延迟。
请注意,这是对实际情况的粗略概括...如果您想要完整的详细信息,请阅读工具链附带的文档。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)