Compare commits

..

No commits in common. "07d7fce6b9022209b5ed85033906255bc567d6fb" and "a2917a3b04190e9879c5cc870a79e1dec9cb9eb2" have entirely different histories.

2 changed files with 5 additions and 9 deletions

View File

@ -53,8 +53,7 @@ begin
techmap_ram_inst : entity techmap.syncram_2p
generic map(tech => tech,
abits => address_bits,
dbits => fifo_width,
sepclk => 1
dbits => fifo_width
)
port map(
rclk => out_clk,
@ -98,8 +97,8 @@ begin
if rising_edge(in_clk) and valid_in = '1' and buffer_full = '0' then
write_pointer <= std_logic_vector(unsigned(write_pointer) + 1);
end if;
if falling_edge(out_clk) then
if ready_in = '1' and buffer_empty = '0' then
if rising_edge(out_clk) then
if ready_in = '1' and buffer_empty = '0' and unsigned(read_pointer) + 1 /= unsigned(write_pointer) then
read_pointer <= std_logic_vector(unsigned(read_pointer) + 1);
valid_out <= '1';
else

View File

@ -57,14 +57,12 @@ begin
comb_proc: process(ext_to_socbridge_driver, ip_to_socbridge_driver,
st, controller_to_socbridge_driver, trans_st,
tx_sent_response, rx_received_response,
valid_out)
tx_sent_response, rx_received_response)
variable curr_response_bits : std_logic_vector(4 downto 0);
variable local_next_rx_transaction : transaction_t;
variable local_next_tx_transaction : transaction_t;
variable local_next_data_out : std_logic_vector(interface_inst.socbridge.payload_width - 1 downto 0);
begin
-- DEFAULT VALUES
-- Helpful Bindings --
next_rx_data_size <= 2 ** to_integer(unsigned(ext_to_socbridge_driver.payload(2 downto 0)));
curr_response_bits := ext_to_socbridge_driver.payload(7 downto 3);
@ -420,7 +418,6 @@ begin
st.socbridge_driver_to_ext_reg.parity <= next_parity_out;
st.curr_tx_state <= next_tx_state;
st.curr_rx_state <= next_rx_state;
valid_out <= '0';
case st.curr_tx_state is
when IDLE =>
st.curr_tx_transaction <= next_tx_transaction;
@ -455,8 +452,8 @@ begin
end if;
when RX_HEADER =>
when RX_R_BODY =>
valid_out <= '1';
socbridge_driver_to_ip.data <= st.ext_to_socbridge_driver_reg.data;
valid_out <= '1';
if st.rx_stage > 0 then
st.rx_stage <= st.rx_stage - 1;
end if;