blob: fc1c975b5d8ae4b8ce5175c134519c7a468dfd8f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
library ieee;
use ieee.std_logic_1164.all;
entity tb_psl_fell is
end entity tb_psl_fell;
architecture psl of tb_psl_fell is
procedure seq (s : string; signal clk : std_logic; signal o : out std_logic)
is
begin
for i in s'range loop
wait until rising_edge(clk);
case s(i) is
when '0' | '_' => o <= '0';
when '1' | '-' => o <= '1';
when others => o <= 'X';
end case;
end loop;
wait;
end seq;
signal a, b : std_logic := '0';
signal clk : std_logic := '1';
begin
dut: entity work.psl_fell port map (clk, a, b);
clk <= not clk after 500 ps;
-- 012345678901234
SEQ_A : seq ("--_--___---__--", clk, a);
SEQ_B : seq ("__-__-______-__", clk, b);
end architecture psl;
|