我想问一下VHDL中的信号和变量,我知道它们之间的区别,但是我想在仿真时看到区别。
我在 Quartus Tool 中使用了这个简单的程序来查看它们之间的区别:
ENTITY test IS PORT (
a : IN bit;
y : OUT bit);
END test;
ARCHITECTURE beh OF test IS
SIGNAL x : BIT;
BEGIN
PROCESS (a)
BEGIN
x <= '1';
IF x = '1' THEN y <= '0' AFTER 8 ns;
ELSE y <= '1' AFTER 5 ns;
END IF;
END PROCESS;
END BEH;
对于信号和变量:
entity test1 is port (
a : IN bit;
y : OUT bit);
end test1;
architecture beh of test1 is
begin
process (a)
variable x : bit;
begin
x := '1';
if x = '1' then y <= '0' after 8 ns;
else y <= '1' after 5 ns;
end if;
end process;
end beh;
我创建的波形以查看第一个程序中的差异(y)value
应该设置为1
at 5ns
,但它没有改变..为什么?
先感谢您。