Asserts for simulation

This commit is contained in:
Florian Reitz 2019-03-17 15:59:43 +01:00
parent 3ccd8ec999
commit ffa94345b5
1 changed files with 66 additions and 13 deletions

View File

@ -138,9 +138,16 @@ BEGIN
A <= "0000"; -- must become "000"
wait until rising_edge(PHI0);
NDEV_SEL <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="000") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NDEV_SEL <= '1';
wait until rising_edge(PHI0);
assert (NG='1') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
-- C0nX access, write
-- NG must be '0"
@ -150,7 +157,11 @@ BEGIN
A <= "0000"; -- must become "000"
wait until rising_edge(PHI0);
NDEV_SEL <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="000") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NDEV_SEL <= '1';
wait until rising_edge(PHI0);
@ -162,7 +173,11 @@ BEGIN
A <= "0100"; -- must become "000"
wait until rising_edge(PHI0);
NIO_SEL <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="000") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='0') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NIO_SEL <= '1';
wait until rising_edge(PHI0);
@ -174,7 +189,11 @@ BEGIN
A <= "0100"; -- must become "000"
wait until rising_edge(PHI0);
NIO_SEL <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="000") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='0') report "NWE error" severity error;
NIO_SEL <= '1';
wait until rising_edge(PHI0);
@ -187,7 +206,11 @@ BEGIN
A <= "0100"; -- must become "000"
wait until rising_edge(PHI0);
NIO_SEL <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="000") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NIO_SEL <= '1';
wait until rising_edge(PHI0);
@ -200,7 +223,11 @@ BEGIN
A <= "1000"; -- must become "001"
wait until rising_edge(PHI0);
NIO_STB <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="001") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='0') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NIO_STB <= '1';
wait until rising_edge(PHI0);
@ -211,7 +238,10 @@ BEGIN
RNW <= '0';
wait until rising_edge(PHI0);
NIO_STB <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (NG='0') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='0') report "NWE error" severity error;
NIO_STB <= '1';
wait until rising_edge(PHI0);
@ -223,7 +253,11 @@ BEGIN
A <= "1001"; -- must become "010"
wait until rising_edge(PHI0);
NIO_STB <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="010") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='0') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NIO_STB <= '1';
wait until rising_edge(PHI0);
@ -234,7 +268,10 @@ BEGIN
RNW <= '0';
wait until rising_edge(PHI0);
NIO_STB <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (NG='0') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='0') report "NWE error" severity error;
NIO_STB <= '1';
wait until rising_edge(PHI0);
@ -246,7 +283,11 @@ BEGIN
A <= "0101"; -- must become "000"
wait until rising_edge(PHI0);
NDEV_SEL <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="000") report "Address error" severity error;
assert (NG='0') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NDEV_SEL <= '1';
wait until rising_edge(PHI0);
@ -257,7 +298,11 @@ BEGIN
A <= "1111"; -- must become "111"
wait until rising_edge(PHI0);
NIO_STB <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="111") report "Address error" severity error;
assert (NG='1') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NIO_STB <= '1';
wait until rising_edge(PHI0);
@ -268,7 +313,11 @@ BEGIN
A <= "1000"; -- must become "001"
wait until rising_edge(PHI0);
NIO_STB <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="001") report "Address error" severity error;
assert (NG='1') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NIO_STB <= '1';
wait until rising_edge(PHI0);
@ -280,7 +329,11 @@ BEGIN
A <= "1000"; -- must become "001"
wait until rising_edge(PHI0);
NIO_STB <= '0';
wait until falling_edge(PHI0);
wait until falling_edge(PHI0);
assert (B="001") report "Address error" severity error;
assert (NG='1') report "NG error" severity error;
assert (NOE='1') report "NOE error" severity error;
assert (NWE='1') report "NWE error" severity error;
NIO_STB <= '1';
wait until rising_edge(PHI0);