【发布时间】:2015-11-18 14:15:01
【问题描述】:
以下 VHDL 将用于测试台。在分析过程中,我不断收到第一个等待语句的错误:“等待语句必须包含带有 UNTIL 关键字的条件子句”我有几个这样编写的工作测试台。我似乎无法找到错误可能是什么。
`library IEEE;
USE IEEE.std_logic_1164.all;
entity case_ex_TB is end;
architecture simple_test of case_ex_TB is
--- DUT Component Declaration ---
component case_ex
port(
clk, rstN: IN std_logic;
color: OUT std_logic_vector(2 downto 0));
end component;
--- Signals Declaration ---
signal rst, clock: std_logic:='0';
signal color: std_logic_vector(2 downto 0);
begin
DUT: case_ex --- DUT instantiation ---
port map (clk => clock,
rstN => rst,
color => color);
--- Signal's Waves Creation ---
rst <= '1','0' after 50 ns, '1' after 2 us;
clock_crtate: process
begin
while rst = '0' loop
clock <= '1','0' after 50 ns;
wait for 100 ns;
end loop;
clock <= '1';
wait;
end process;
end simple_test;`
【问题讨论】:
-
您提到了 Quartus-II,但您使用的是什么模拟器?你不是想合成这个,是吗?
-
嗨 Morten,我使用 Quartus-II 编写代码,在“开始分析和综合”之后,我收到此错误:错误 (10533): VHDL Wait Statement error at case_ex_TB.vhd(26):等待语句必须包含带有 UNTIL 关键字的条件子句。
-
Synthesis 用于在设备中实现设计,Synthesis 无法像
wait for 100 ns;那样处理定时等待。对于测试台,您通常需要像 ModelSim 这样的模拟器。 Altera 的套件中有 ModelSim Starter Edition,所以看看吧。 -
好的,感谢您的帮助。
标签: vhdl intel-fpga quartus