我们用实体符号写了一个学校项目,输出1或0,并且应该用assert自己编写testbench。我们被告知它可以循环或不循环,但它必须通过断言。我对VHDL很陌生,所以对我来说编写测试平台有点困难。 ADDRESS是0到15之间的值,ROW和COLUMN是0到7之间的值,我应该完全检查一个符号(所有行和列),然后检查其他地址中的随机值。
ENTITY symbol IS
END symbol_tb;
ARCHITECTURE behavior OF symbol_tb IS
COMPONENT symbol
PORT(
ADDRESS : IN std_logic_vector(3 downto 0);
COLUMN : IN std_logic_vector(2 downto 0);
ROW : IN std_logic_vector(2 downto 0);
DATA : OUT std_logic
);
END COMPONENT;
signal DATA : std_logic
signal ADDRESS : std_logic_vector(3 downto 0) := "0011";
signal COLUMN : std_logic_vector(2 downto 0) := "011";
signal ROW: std_logic_vector(2 downto 0) := "001";
BEGIN
-- Instantiate the Unit Under Test (UUT)
uut: symbol PORT MAP (
ADDRESS => ADDRESS,
COLUMN => COLUMN,
ROW => ROW,
DATA => DATA
);
-- Stimulus process
stim_proc: process
begin
wait for 5 ns;
end process;
END;
我的问题是,如何将断言置于循环中?对于有关VHDL中测试平台的任何建议,我将不胜感激。