verilog: add sv_maps iterators
[ghdl-vlg.git] / testsuite / synth / issue2077 / tb_ent6.vhdl
blob186f46a01f6e9e6001bc998317275c6bce3e513d
1 entity tb_ent6 is
2 end tb_ent6;
4 library ieee;
5 use ieee.std_logic_1164.all;
7 architecture behav of tb_ent6 is
8   signal waddr2, raddr2 : natural range 0 to 255;
9   signal wdat : std_logic_vector (7 downto 0);
10   signal rdat : std_logic;
11   signal wen : std_logic;
12   signal clk : std_logic;
13 begin
14   dut: entity work.ent6
15     generic map (WIDTH => 8)
16     port map (clk => clk, write_enable => wen,
17               write_address => waddr2, input => wdat,
18               read_address => raddr2, output => rdat);
20   process
21     procedure pulse is
22     begin
23       clk <= '0';
24       wait for 1 ns;
25       clk <= '1';
26       wait for 1 ns;
27     end pulse;
28   begin
29     waddr2 <= 3;
30     wdat <= x"13";
31     wen <= '1';
32     pulse;
34     waddr2 <= 2;
35     wdat <= x"ff";
36     pulse;
38     raddr2 <= 3;
39     wen <= '0';
40     pulse;
41     assert rdat = '0' severity failure;
43     raddr2 <= 2;
44     pulse;
45     assert rdat = '1' severity failure;
47     wait;
48   end process;
49 end behav;