diff --git a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_beamformer.vhd b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_beamformer.vhd index 1636d93e870368688e8201051082670e6ef76d9b..4c4bd88c7607440d142fce92ede8fd914e6b301f 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_beamformer.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_beamformer.vhd @@ -33,6 +33,7 @@ LIBRARY IEEE, common_lib, dp_lib, reorder_lib, st_lib; USE IEEE.STD_LOGIC_1164.ALL; USE common_lib.common_pkg.ALL; USE common_lib.common_mem_pkg.ALL; +USE common_lib.common_network_layers_pkg.ALL; USE dp_lib.dp_stream_pkg.ALL; USE work.sdp_pkg.ALL; @@ -58,8 +59,8 @@ ENTITY node_sdp_beamformer IS ram_ss_ss_wide_miso : OUT t_mem_miso; ram_bf_weights_mosi : IN t_mem_mosi := c_mem_mosi_rst; ram_bf_weights_miso : OUT t_mem_miso; - reg_gain_re_mosi : IN t_mem_mosi := c_mem_mosi_rst; - reg_gain_re_miso : OUT t_mem_miso; + reg_bf_scale_mosi : IN t_mem_mosi := c_mem_mosi_rst; + reg_bf_scale_miso : OUT t_mem_miso; reg_hdr_dat_mosi : IN t_mem_mosi := c_mem_mosi_rst; reg_hdr_dat_miso : OUT t_mem_miso; reg_dp_xonoff_mosi : IN t_mem_mosi := c_mem_mosi_rst; @@ -68,11 +69,11 @@ ENTITY node_sdp_beamformer IS ram_st_sst_miso : OUT t_mem_miso; sdp_info : IN t_sdp_info; - gn_id : IN STD_LOGIC_VECTOR(4 DOWNTO 0); + gn_id : IN STD_LOGIC_VECTOR(c_sdp_W_gn_id-1 DOWNTO 0); - eth_src_mac : IN STD_LOGIC_VECTOR(47 DOWNTO 0); - ip_src_addr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); - udp_src_port : IN STD_LOGIC_VECTOR(15 DOWNTO 0); + eth_src_mac : IN STD_LOGIC_VECTOR(c_network_eth_mac_addr_w-1 DOWNTO 0); + ip_src_addr : IN STD_LOGIC_VECTOR(c_network_ip_addr_w-1 DOWNTO 0); + udp_src_port : IN STD_LOGIC_VECTOR(c_network_udp_port_w-1 DOWNTO 0); hdr_fields_out : OUT STD_LOGIC_VECTOR(1023 DOWNTO 0) ); @@ -80,7 +81,7 @@ END node_sdp_beamformer; ARCHITECTURE str OF node_sdp_beamformer IS - CONSTANT c_select_file_prefix : STRING := "UNUSED"; + CONSTANT c_bf_select_file_prefix : STRING := "UNUSED"; CONSTANT c_bf_weights_file_name : STRING := "UNUSED"; SIGNAL bsel_sosi_arr : t_dp_sosi_arr(c_sdp_P_pfb-1 DOWNTO 0) := (OTHERS => c_dp_sosi_rst); @@ -100,7 +101,7 @@ BEGIN g_dsp_data_w => c_sdp_W_subband, g_nof_ch_in => c_sdp_N_sub * c_sdp_Q_fft, g_nof_ch_sel => c_sdp_S_sub_bf * c_sdp_Q_fft, - g_select_file_prefix => c_select_file_prefix, + g_select_file_prefix => c_bf_select_file_prefix, g_use_complex => TRUE ) PORT MAP( @@ -169,8 +170,8 @@ BEGIN mm_rst => mm_rst, mm_clk => mm_clk, - reg_gain_re_mosi => reg_gain_re_mosi, - reg_gain_re_miso => reg_gain_re_miso + reg_gain_re_mosi => reg_bf_scale_mosi, + reg_gain_re_miso => reg_bf_scale_miso ); --------------------------------------------------------------- diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_output.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_output.vhd index c94d2fc0473fa4bc0d20651897c0f35851eca65e..3ebcd050063a8c918064f19bb45c1cbe14556d19 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_output.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_output.vhd @@ -34,6 +34,7 @@ USE IEEE.NUMERIC_STD.ALL; USE common_lib.common_pkg.ALL; USE common_lib.common_field_pkg.ALL; USE common_lib.common_mem_pkg.ALL; +USE common_lib.common_network_layers_pkg.ALL; USE dp_lib.dp_stream_pkg.ALL; USE work.sdp_pkg.ALL; @@ -60,11 +61,11 @@ ENTITY sdp_beamformer_output IS src_in : IN t_dp_siso; sdp_info : IN t_sdp_info; - gn_id : IN STD_LOGIC_VECTOR(4 DOWNTO 0); + gn_id : IN STD_LOGIC_VECTOR(c_sdp_W_gn_id-1 DOWNTO 0); - eth_src_mac : IN STD_LOGIC_VECTOR(47 DOWNTO 0); - ip_src_addr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); - udp_src_port : IN STD_LOGIC_VECTOR(15 DOWNTO 0); + eth_src_mac : IN STD_LOGIC_VECTOR(c_network_eth_mac_addr_w-1 DOWNTO 0); + ip_src_addr : IN STD_LOGIC_VECTOR(c_network_ip_addr_w-1 DOWNTO 0); + udp_src_port : IN STD_LOGIC_VECTOR(c_network_udp_port_w-1 DOWNTO 0); hdr_fields_out : OUT STD_LOGIC_VECTOR(1023 DOWNTO 0) ); diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd index 58e7cb7fbe89cc0518809f5466f7070de4f43b7a..3977e21a40a61fb9dd378e2a91ff1eec711e7b61 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd @@ -85,6 +85,7 @@ PACKAGE sdp_pkg is CONSTANT c_sdp_W_beamlet_sum : NATURAL := 18; CONSTANT c_sdp_W_beamlet : NATURAL := 8; CONSTANT c_sdp_W_beamlet_scale : NATURAL := 16; + CONSTANT c_sdp_W_gn_id : NATURAL := 5; -- AIT constants CONSTANT c_sdp_ait_buf_nof_data_jesd : NATURAL := 1024; -- 1024 14 bit samples fit in one M20k BRAM diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd index 02350a12009e2476d488becfd6c5c0f8d29173dd..0f8c1ae119a929ce54325aa3eddbc6a45d9abf81 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd @@ -40,10 +40,10 @@ USE work.sdp_pkg.ALL; ENTITY sdp_scope IS GENERIC ( g_sim : BOOLEAN := FALSE; - g_selection : NATURAL := 0; - g_nof_input : NATURAL := 2; - g_n_deinterleave : NATURAL := 2; - g_dat_w : NATURAL := 18 + g_selection : NATURAL := 0; -- Time index selection (subband/beamlet) + g_nof_input : NATURAL := 2; -- nof input streams + g_n_deinterleave : NATURAL := 2; -- deinterleave factor for each input stream + g_dat_w : NATURAL := 18 -- Data width ); PORT ( clk : IN STD_LOGIC;