我想问一下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应该设置为1at 5ns,但它没有改变..为什么?
先感谢您。