X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fbeh_pc_communication_tb.vhd;h=9d12996ecce539546c6c302ddca3142cb56e8d5c;hb=030287b141ae40fd8c7e9e8060ee7a96ba109499;hp=ae8ed744aa2ddf41cf7241f8169ff21a12f80c15;hpb=4daed56adb94596e6e991086a40f52e4a0b34efe;p=hwmod.git diff --git a/src/beh_pc_communication_tb.vhd b/src/beh_pc_communication_tb.vhd index ae8ed74..9d12996 100644 --- a/src/beh_pc_communication_tb.vhd +++ b/src/beh_pc_communication_tb.vhd @@ -23,6 +23,7 @@ architecture sim of beh_pc_communication_tb is signal rx_new : std_logic; signal pc_get : std_logic; signal pc_done : std_logic; + signal pc_busy : std_logic; signal rx_data, tx_data : std_logic_vector(7 downto 0); signal pc_zeile : hzeile; @@ -52,6 +53,7 @@ begin pc_spalte => pc_spalte, pc_get => pc_get, pc_done => pc_done, + pc_busy => pc_busy, pc_char => pc_char ); @@ -65,16 +67,15 @@ begin stub_history : process file f : text open read_mode is "../../src/pc_communication.test"; - --variable rb : hbyte; variable rb : character; variable good : boolean; variable i : integer; variable buf : my_string; variable l : line; begin - --take control of the situation. pc_char <= (others => '0'); pc_done <= '0'; + pc_busy <= '0'; wait until sys_res_n = '1'; while not endfile (f) loop @@ -84,14 +85,16 @@ begin while i < l'length loop pc_done <= '0'; wait until rising_edge(pc_get); + wait for 90 ns; + pc_busy <= '1'; pc_char <= (others => '0'); wait for 300 ns; pc_char <= hbyte(std_logic_vector(to_unsigned(character'pos(buf(i)),8))); i := i + 1; + pc_busy <= '0'; pc_done <= '1'; wait for 30 ns; - end loop; end loop; @@ -116,16 +119,16 @@ begin -- init & reset -- we only simulate pressing of button a by now! sys_res_n <= '0'; - btn_a <= '0'; + btn_a <= '1'; rx_data <= ( others => '0'); rx_new <= '0'; wait for 90 ns; sys_res_n <= '1'; wait for 30 ns; - btn_a <= '1'; - wait for 30 ns; btn_a <= '0'; + wait for 30 ns; + btn_a <= '1'; wait; --wait for 1000 ns; --assert false report "test beendet" severity failure;