Skip to content
Snippets Groups Projects
Commit 978dff8c authored by Mathias Kreider's avatar Mathias Kreider
Browse files

fixed bugs in ebm

- flush command no longer ignored when busy
- commit_len_fifo write pointer bug fixed
parent 529818ee
Branches
Tags
No related merge requests found
......@@ -128,18 +128,18 @@ begin
r_cnt <= (others => '0');
r_len <= (others => '0');
e_idx <= w_idx1;
w_idx <= w_idx1 +1;
elsif w_abort_i = '1' then
r_len <= (others => '0');
w_idx <= e_idx + 1;
else
w_idx <= w_idx1;
end if;
if w_push_i = '1' then
r_len <= r_len + to_unsigned((g_width/8), r_len'length);
end if;
if w_abort_i = '1' then
r_len <= (others => '0');
w_idx <= e_idx + 1;
else
w_idx <= w_idx1;
end if;
-- Compare the newest pointers
if (w_idx1 xor c_high) = r_idx1 then
......
......@@ -206,7 +206,7 @@ begin
r_dat_o => ctrl_fifo_q);
op_fifo_pop <= ((pop_state and (tx_stb and not master_i.stall)) or op_pop) and not op_fifo_empty;
op_fifo_push <= (cyc and stb and not r_stall) and not op_fifo_full;
op_fifo_push <= ((cyc and stb and not r_stall) or tx_send_now_i) and not op_fifo_full;
op_fifo_d <= dat when we = '1'
else adr;
......
......@@ -148,8 +148,8 @@ begin
-- |_________|
--SLAVE IF
s_slave_framer_i.cyc <= slave_i.cyc or s_tx_send_now;
s_slave_framer_i.stb <= (slave_i.stb and slave_i.adr(c_dat_bit)) or s_tx_send_now;
s_slave_framer_i.cyc <= slave_i.cyc;
s_slave_framer_i.stb <= (slave_i.stb and slave_i.adr(c_dat_bit));
s_slave_framer_i.we <= slave_i.adr(c_rw_bit);
s_slave_framer_i.adr <= s_adr_hi & slave_i.adr(slave_i.adr'left-g_adr_bits_hi downto 0);
s_slave_framer_i.dat <= slave_i.dat;
......@@ -162,6 +162,7 @@ begin
slave_o.rty <= '0';
framer: eb_framer
PORT MAP (
clk_i => clk_i,
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment