diff --git a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd index 6c1c4a0645ae16f9f50ce3a17d3a438db9930980..52b0cadc6fa167737ba405d2aa65e9c447369ce8 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd @@ -29,7 +29,7 @@ -- . ------------------------------------------------------------------------------- -LIBRARY IEEE, common_lib, dp_lib, reorder_lib, st_lib, mm_lib; +LIBRARY IEEE, common_lib, dp_lib, reorder_lib, st_lib, mm_lib, ring_lib; USE IEEE.STD_LOGIC_1164.ALL; USE common_lib.common_pkg.ALL; USE common_lib.common_mem_pkg.ALL; @@ -105,7 +105,7 @@ ARCHITECTURE str OF node_sdp_correlator IS SIGNAL local_sosi : t_dp_sosi := c_dp_sosi_rst; SIGNAL ring_mux_sosi : t_dp_sosi := c_dp_sosi_rst; - SIGNAL rx_sosi_sosi : t_dp_sosi := c_dp_sosi_rst; + SIGNAL rx_sosi : t_dp_sosi := c_dp_sosi_rst; SIGNAL dispatch_sosi_arr : t_dp_sosi_arr(g_P_sq-1 DOWNTO 0) := (OTHERS => c_dp_sosi_rst); SIGNAL crosslets_sosi : t_dp_sosi := c_dp_sosi_rst; @@ -194,7 +194,7 @@ BEGIN GENERIC MAP ( g_bsn_w => c_dp_stream_bsn_w, g_data_w => c_longword_w, - g_in_chanel_w => c_word_w, + g_channel_w => c_word_w, g_use_error => FALSE, g_fifo_size => array_init(c_block_size, 2) ) @@ -334,9 +334,9 @@ BEGIN mm_clk => mm_clk, master_mosi_arr => controller_copi_arr, - master_cipo_arr => controller_cipo_arr, + master_miso_arr => controller_cipo_arr, mux_mosi => controller_mem_mux_copi, - mux_cipo => controller_mem_mux_cipo + mux_miso => controller_mem_mux_cipo ); --------------------------------------------------------------- diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_station.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_station.vhd index e32cb87f9e6ac8edd7f7c50cfd9ff982b1df22d3..94fb6f9afc8095db41b966cc764d37f59b94e134 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_station.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_station.vhd @@ -26,7 +26,7 @@ -- Combines sdp nodes. Contains the UniBoard2 HW version independent LOFAR2 SDP application code. ------------------------------------------------------------------------------- -LIBRARY IEEE, common_lib, technology_lib, diag_lib, dp_lib, tech_jesd204b_lib, wpfb_lib, tech_pll_lib, nw_10gbe_lib, eth_lib, ring_lib; +LIBRARY IEEE, common_lib, technology_lib, diag_lib, dp_lib, tech_jesd204b_lib, wpfb_lib, tech_pll_lib, tr_10gbe_lib, nw_10gbe_lib, eth_lib, ring_lib; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.NUMERIC_STD.ALL; USE common_lib.common_pkg.ALL; @@ -362,7 +362,7 @@ ARCHITECTURE str OF sdp_station IS CONSTANT c_nof_mac : NATURAL := 3; -- must match one of the MAC IP variations, e.g. 3, 12, 24, 48 SIGNAL gn_index : NATURAL := 0; - + SIGNAL this_rn : STD_LOGIC_VECTOR(c_byte_w-1 DOWNTO 0); ---------------------------------------------- -- BF ---------------------------------------------- @@ -405,7 +405,14 @@ ARCHITECTURE str OF sdp_station IS SIGNAL ait_sosi_arr : t_dp_sosi_arr(c_sdp_S_pn-1 DOWNTO 0); SIGNAL pfb_sosi_arr : t_dp_sosi_arr(c_sdp_P_pfb-1 DOWNTO 0); SIGNAL fsub_sosi_arr : t_dp_sosi_arr(c_sdp_P_pfb-1 DOWNTO 0); - + + SIGNAL xst_from_ri_sosi : t_dp_sosi; + SIGNAL xst_to_ri_sosi : t_dp_sosi; + SIGNAL lane_rx_cable_sosi_arr : t_dp_sosi_arr(2 DOWNTO 0); -- 3 as, a total of 3 lanes will be used. + SIGNAL lane_tx_cable_sosi_arr : t_dp_sosi_arr(2 DOWNTO 0); -- 3 as, a total of 3 lanes will be used. + SIGNAL lane_rx_board_sosi_arr : t_dp_sosi_arr(2 DOWNTO 0); -- 3 as, a total of 3 lanes will be used. + SIGNAL lane_tx_board_sosi_arr : t_dp_sosi_arr(2 DOWNTO 0); -- 3 as, a total of 3 lanes will be used. + SIGNAL dp_bsn_source_restart : STD_LOGIC; SIGNAL bf_udp_sosi_arr : t_dp_sosi_arr(c_sdp_N_beamsets-1 DOWNTO 0); @@ -417,6 +424,8 @@ ARCHITECTURE str OF sdp_station IS SIGNAL tr_ref_clk_156 : STD_LOGIC; SIGNAL tr_ref_rst_156 : STD_LOGIC; + SIGNAL tr_10gbe_serial_tx_arr : STD_LOGIC_VECTOR(c_nof_mac-1 DOWNTO 0) := (OTHERS => '0'); + SIGNAL tr_10gbe_serial_rx_arr : STD_LOGIC_VECTOR(c_nof_mac-1 DOWNTO 0) := (OTHERS => '0'); SIGNAL nw_10gbe_snk_in_arr : t_dp_sosi_arr(c_nof_10GbE_offload_streams-1 DOWNTO 0) := (OTHERS => c_dp_sosi_rst); SIGNAL nw_10gbe_snk_out_arr : t_dp_siso_arr(c_nof_10GbE_offload_streams-1 DOWNTO 0) := (OTHERS => c_dp_siso_rdy); @@ -498,7 +507,6 @@ BEGIN ring_info => ring_info ); - gn_index <= TO_UINT(ID); this_rn <= TO_UVEC(gn_index - TO_UINT(ring_info.O_rn), c_byte_w) WHEN rising_edge(dp_clk); -- Using register to ease timing closure. ----------------------------------------------------------------------------- @@ -714,7 +722,7 @@ BEGIN -- QSFP_RX lane_rx_cable_sosi_arr(0) <= tr_10gbe_src_out_arr(c_qsfp_if_offset) WHEN ring_info.use_cable_to_previous_rn = '1' ELSE c_dp_sosi_rst; -- use_cable_to_previous_rn=1 -> even lanes receive from cable -- QSFP_TX - tr_10gbe_snk_in_arr(c_qsfp_if_offset) <= lane_tx_cable_sosi_arr(0) WHEN ring_info.use_cable_to_next_rn = '1' ELSE c_dp_sosi_rst -- use_cable_to_next_rn=1 -> even lanes transmit to cable + tr_10gbe_snk_in_arr(c_qsfp_if_offset) <= lane_tx_cable_sosi_arr(0) WHEN ring_info.use_cable_to_next_rn = '1' ELSE c_dp_sosi_rst; -- use_cable_to_next_rn=1 -> even lanes transmit to cable -- RING_0_RX even lanes receive from RING_0 (from the left) lane_rx_board_sosi_arr(0) <= tr_10gbe_src_out_arr(c_ring_0_if_offset); diff --git a/libraries/base/ring/src/vhdl/ring_mux.vhd b/libraries/base/ring/src/vhdl/ring_mux.vhd index 250939a1f76d3e98456c91328e75849a26f01d02..baf743413a9fa5e8e4ed7fd1dfd222360a8f708a 100644 --- a/libraries/base/ring/src/vhdl/ring_mux.vhd +++ b/libraries/base/ring/src/vhdl/ring_mux.vhd @@ -39,7 +39,7 @@ ENTITY ring_mux IS g_bsn_w : NATURAL := 16; g_data_w : NATURAL := 16; g_empty_w : NATURAL := 1; - g_in_channel_w : NATURAL := 1; + g_channel_w : NATURAL := 1; g_error_w : NATURAL := 1; g_use_bsn : BOOLEAN := TRUE; g_use_empty : BOOLEAN := TRUE; @@ -59,7 +59,7 @@ ENTITY ring_mux IS local_siso : OUT t_dp_siso; mux_sosi : OUT t_dp_sosi; - mux_siso : IN t_dp_siso := c_dp_siso_rdy; + mux_siso : IN t_dp_siso := c_dp_siso_rdy ); END ring_mux; @@ -97,13 +97,13 @@ BEGIN ) PORT MAP ( - dp_rst => dp_rst, - dp_clk => dp_clk, + rst => dp_rst, + clk => dp_clk, - snk_out_arr => dp_mux_in_siso_arr; - snk_in_arr => dp_mux_in_sosi_arr; + snk_out_arr => dp_mux_in_siso_arr, + snk_in_arr => dp_mux_in_sosi_arr, - src_in => mux_siso; + src_in => mux_siso, src_out => mux_sosi );