X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fbeh_pc_communication_tb.vhd;h=d9f8789122d6d1d065b7f58d68f7223c12ccc474;hb=bf75cb8c3677b2cfba48b8d6a44fc3430f6ac9e4;hp=bdce739fa69528443f85fe6d952f73c17035b2da;hpb=085080e9ed940745f5f168c66f4101d8c3943a45;p=hwmod.git diff --git a/src/beh_pc_communication_tb.vhd b/src/beh_pc_communication_tb.vhd index bdce739..d9f8789 100644 --- a/src/beh_pc_communication_tb.vhd +++ b/src/beh_pc_communication_tb.vhd @@ -21,13 +21,13 @@ architecture sim of beh_pc_communication_tb is signal tx_new : std_logic; signal tx_done : std_logic; signal rx_new : std_logic; - signal d_get : std_logic; - signal d_done : std_logic; + signal pc_get : std_logic; + signal pc_done : std_logic; signal rx_data, tx_data : std_logic_vector(7 downto 0); - signal d_zeile : hzeile; - signal d_spalte : hspalte; - signal d_char : hbyte; + signal pc_zeile : hzeile; + signal pc_spalte : hspalte; + signal pc_char : hbyte; begin -- pc_communication inst : entity work.pc_communication(beh) @@ -48,11 +48,11 @@ begin rx_new => rx_new, -- History - d_zeile => d_zeile, - d_spalte => d_spalte, - d_get => d_get, - d_done => d_done, - d_char => d_char + pc_zeile => pc_zeile, + pc_spalte => pc_spalte, + pc_get => pc_get, + pc_done => pc_done, + pc_char => pc_char ); clk : process @@ -65,16 +65,14 @@ 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. - d_char <= (others => '0'); - d_done <= '0'; + pc_char <= (others => '0'); + pc_done <= '0'; wait until sys_res_n = '1'; while not endfile (f) loop @@ -82,16 +80,15 @@ begin buf := l.all; i := 1; while i < l'length loop - d_done <= '0'; - wait until rising_edge(d_get); - d_char <= (others => '0'); - wait for 300 ns; - - d_char <= hbyte(std_logic_vector(to_unsigned(character'pos(buf(i)),8))); + pc_done <= '0'; + wait until rising_edge(pc_get); + wait for 150 ns; + pc_char <= (others => '0'); + wait for 30 ns; + pc_char <= hbyte(std_logic_vector(to_unsigned(character'pos(buf(i)),8))); i := i + 1; - d_done <= '1'; + pc_done <= '1'; wait for 30 ns; - end loop; end loop; @@ -116,17 +113,16 @@ begin -- init & reset -- we only simulate pressing of button a by now! sys_res_n <= '0'; - btn_a <= '0'; - tx_data <= ( others => '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;