From: hadeshyp Date: Mon, 9 Feb 2009 18:12:40 +0000 (+0000) Subject: *** empty log message *** X-Git-Tag: oldGBE~485 X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=f017a5d0a54a4b034ba706c5d3b67ef4790ef4b8;p=trbnet.git *** empty log message *** --- diff --git a/testbenches/testbench_all_channels_p2p.vhd b/testbenches/testbench_all_channels_p2p.vhd index 55a113d..2456d9a 100644 --- a/testbenches/testbench_all_channels_p2p.vhd +++ b/testbenches/testbench_all_channels_p2p.vhd @@ -341,7 +341,7 @@ begin APL_READ_IN => APL_READ_OUT(0), APL_SHORT_TRANSFER_OUT => APL_SHORT_TRANSFER_IN(0), APL_DTYPE_OUT => APL_DTYPE_IN(3 downto 0), - APL_SEND_OUT => APL_SEND_IN(0), + APL_SEND_OUT => open,--APL_SEND_IN(0), APL_DATA_IN => APL_DATA_OUT(15 downto 0), APL_PACKET_NUM_IN => APL_PACKET_NUM_OUT(2 downto 0), APL_TYP_IN => APL_TYP_OUT(2 downto 0), diff --git a/trb_net16_addresses.vhd b/trb_net16_addresses.vhd index 01961e8..8874b75 100644 --- a/trb_net16_addresses.vhd +++ b/trb_net16_addresses.vhd @@ -85,6 +85,7 @@ type sending_state_t is (sending_idle, send_uid_1, send_uid_2, send_ack_address) signal sending_state : sending_state_t; signal sending_state_bits : std_logic_vector(1 downto 0); signal buf_ADDRESS_OUT : std_logic_vector(15 downto 0); +signal delayed_buf_API_SEND_OUT : std_logic; begin @@ -240,9 +241,11 @@ begin if RESET = '1' then state <= c_H0; last_ram_read_addr2 <= "0000"; + delayed_buf_API_SEND_OUT <= '0'; elsif CLK_EN = '1' then state <= next_state; last_ram_read_addr2 <= ram_read_addr2; + delayed_buf_API_SEND_OUT <= buf_API_SEND_OUT; end if; end if; end process; @@ -278,7 +281,7 @@ begin ); API_READ_OUT <= buf_API_READ_OUT; -API_SEND_OUT <= buf_API_SEND_OUT; +API_SEND_OUT <= delayed_buf_API_SEND_OUT; API_PACKET_NUM_OUT <= buf_API_PACKET_NUM_OUT; ADDRESS_OUT <= buf_ADDRESS_OUT; diff --git a/trb_net16_med_ecp_sfp.vhd b/trb_net16_med_ecp_sfp.vhd index 763f894..02daf45 100644 --- a/trb_net16_med_ecp_sfp.vhd +++ b/trb_net16_med_ecp_sfp.vhd @@ -624,7 +624,7 @@ fifo_rx_rd_en <= '1'; THE_BYTE_SWAP_PROC: process( ff_rxhalfclk ) begin if( rising_edge(ff_rxhalfclk) ) then - last_rx <= rx_k(1) & rx_d(15 downto 8); + last_rx <= rx_k(1) & rx_data(15 downto 8); if( swap_bytes = '0' ) then fifo_rx_din <= rx_k(1) & rx_k(0) & rx_data(15 downto 8) & rx_data(7 downto 0); fifo_rx_wr_en <= not rx_k(0) and rx_allow and link_ok(0); diff --git a/trb_net16_regIO.vhd b/trb_net16_regIO.vhd index af29459..c10dde6 100644 --- a/trb_net16_regIO.vhd +++ b/trb_net16_regIO.vhd @@ -258,8 +258,13 @@ begin STAT_DEBUG => buf_STAT_ADDR_DEBUG ); - STAT_ADDR_DEBUG(11 downto 0) <= buf_STAT_ADDR_DEBUG(11 downto 0); - STAT_ADDR_DEBUG(12) <= buf_API_DATAREADY_OUT; + STAT_ADDR_DEBUG(2 downto 0) <= state_bits(2 downto 0); + STAT_ADDR_DEBUG(3) <= ADR_DONT_UNDERSTAND; + STAT_ADDR_DEBUG(4) <= API_DATAREADY_IN; + STAT_ADDR_DEBUG(5) <= buf_API_SHORT_TRANSFER_OUT; + STAT_ADDR_DEBUG(6) <= combined_API_SEND_OUT; + STAT_ADDR_DEBUG(11 downto 7) <= buf_STAT_ADDR_DEBUG(11 downto 7); + STAT_ADDR_DEBUG(12) <= combined_API_DATAREADY_OUT; STAT_ADDR_DEBUG(13) <= ADR_REJECTED; STAT_ADDR_DEBUG(14) <= ADR_SEND_OUT; STAT_ADDR_DEBUG(15) <= ADR_DATAREADY_OUT; @@ -357,8 +362,8 @@ begin end if; when ADDRESS_ACK => - ADR_READ_IN <= API_READ_IN; ADR_DATAREADY_IN <= API_DATAREADY_IN; + ADR_READ_IN <= API_READ_IN; if ADR_SEND_OUT = '0' then next_state <= SEND_REPLY_DATA_finish; end if;