verilog: add sv_maps iterators
[ghdl-vlg.git] / testsuite / synth / dff02 / tb_dff08d.vhdl
blobb096a8de2d908aeac5d7083fe6a7e46963752e52
1 entity tb_dff08d is
2 end tb_dff08d;
4 library ieee;
5 use ieee.std_logic_1164.all;
7 architecture behav of tb_dff08d is
8   signal clk : std_logic;
9   signal rst : std_logic;
10   signal en : std_logic;
11   signal din : std_logic_vector (7 downto 0);
12   signal dout : std_logic_vector (7 downto 0);
13 begin
14   dut: entity work.dff08d
15     port map (
16       q => dout,
17       d => din,
18       en => en,
19       clk => clk,
20       rst => rst);
22   process
23     procedure pulse is
24     begin
25       clk <= '0';
26       wait for 1 ns;
27       clk <= '1';
28       wait for 1 ns;
29     end pulse;
30   begin
31     wait for 1 ns;
32     assert dout = x"aa" severity failure;
34     rst <= '1';
35     pulse;
36     assert dout = x"aa" severity failure;
38     rst <= '0';
39     din <= x"38";
40     pulse;
41     assert dout = x"38" severity failure;
43     din <= x"af";
44     pulse;
45     assert dout = x"af" severity failure;
47     en <= '1';
48     rst <= '1';
49     din <= x"b5";
50     pulse;
51     assert dout = x"aa" severity failure;
53     wait;
54   end process;
55 end behav;