implemented busy state
[hwmod.git] / src / history.vhd
index dd2ce8bd7fae662811dccb4ab6d7e8adbcded876..46acf193288268c2fb6b36be910bbf7cce3921ee 100644 (file)
@@ -103,6 +103,7 @@ begin
 
                        pc_char_int  <= (others => '0');
                        pc_done_int  <= '0';
+                       pc_busy_int <= '0';
 
                        address_int <= (0 => '1', others => '0');
                        data_in_int <= x"00";
@@ -128,6 +129,7 @@ begin
 
                        pc_char_int <= pc_char_next;
                        pc_done_int <= pc_done_next;
+                       pc_busy_int <= pc_busy_next;
 
                        address_int <= address_next;
                        data_in_int <= data_in_next;
@@ -244,6 +246,7 @@ begin
                data_in_next <= data_in_int;
                pc_done_next <= '0';
                pc_char_next <= pc_char_int; --(others => '0');
+               pc_busy_next <= '0';
                p_rdone_next <= p_rdone_int;
                p_wdone_next <= p_wdone_int;
                p_read_next <= p_read_int;
@@ -286,7 +289,6 @@ begin
                                        addr_tmp(hspalte'length - 1 downto 0) := s_cnt_int;
                                end if;
                                s_cnt_next <= addr_tmp(hspalte'length - 1 downto 0);
-               
                                wr_next <= '1';
                                address_next <= std_logic_vector(unsigned(pos_int) + unsigned(addr_tmp));
                                data_in_next <= (others => '0');
@@ -353,6 +355,7 @@ begin
                                addr_tmp := mul_tmp((addr_tmp'length - 1) downto 0);
                                addr_tmp := std_logic_vector(unsigned(addr_tmp) + unsigned(pc_spalte));
                                address_next <= addr_tmp;
+                               pc_busy_next <= '1';
                        when S_PC_READ =>
                                pc_char_next <= data_out;
                                pc_done_next <= '1';