【发布时间】:2013-12-27 05:17:56
【问题描述】:
下面是我正在运行的代码。我的问题是为什么第三个wait until 没有在modelsim 中触发?控制台输出只是GOT HERE。它永远不会到达GOT HERE 2 这一行。我认为连续两次具有相同的wait until <SIGNAL> = 1 会很好,因为两次条件都为真。我没有在那里添加'事件,所以我认为模拟器不需要看到边缘。谁能解释这种行为?
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity example_wait_failure is
end example_wait_failure;
architecture behave of example_wait_failure is
signal r_CLK_TB : std_logic := '0';
begin
r_CLK_TB <= '1' after 20 ns, '0' after 40 ns, '1' after 60 ns;
p_TEST : process
begin
wait until r_CLK_TB = '1';
report "GOT HERE" severity note;
wait until r_CLK_TB = '1';
wait until r_CLK_TB = '1';
report "GOT HERE 2 " severity note;
end process p_TEST;
end behave;
【问题讨论】: