Skip to content
Snippets Groups Projects
Commit 6cdd3499 authored by Eric Kooistra's avatar Eric Kooistra
Browse files

Add use_bdo_transpose = false field in design revision package.

parent 06e65384
No related branches found
No related tags found
1 merge request!348Use use_bdo_transpose = true in c_bf revision. Test use_bdo_transpose = false...
Pipeline #56042 passed
......@@ -36,21 +36,26 @@ package lofar2_unb2b_sdp_station_pkg is
use_fsub : boolean;
use_oversample : boolean;
use_bf : boolean;
use_bdo_transpose : boolean;
use_xsub : boolean;
use_ring : boolean;
P_sq : natural;
end record;
constant c_ait : t_lofar2_unb2b_sdp_station_config := (false, false, false, false, false, false, 0);
constant c_fsub : t_lofar2_unb2b_sdp_station_config := (false, true, false, false, false, false, 0);
constant c_bf : t_lofar2_unb2b_sdp_station_config := (false, true, false, true, false, false, 0);
constant c_bf_ring : t_lofar2_unb2b_sdp_station_config := (false, true, false, true, false, true, 0);
constant c_xsub_one : t_lofar2_unb2b_sdp_station_config := (false, true, false, false, true, false, 1);
constant c_xsub_ring : t_lofar2_unb2b_sdp_station_config := (false, true, false, false, true, true, 9);
constant c_full_wg : t_lofar2_unb2b_sdp_station_config := (true, true, false, true, true, true, 9);
constant c_full : t_lofar2_unb2b_sdp_station_config := (false, true, false, true, true, true, 9);
constant c_full_wg_os : t_lofar2_unb2b_sdp_station_config := (true, true, true, true, true, true, 9);
constant c_full_os : t_lofar2_unb2b_sdp_station_config := (false, true, true, true, true, true, 9);
constant c_ait : t_lofar2_unb2b_sdp_station_config := (false, false, false, false, false, false, false, 0);
constant c_fsub : t_lofar2_unb2b_sdp_station_config := (false, true, false, false, false, false, false, 0);
-- use c_bf on one node also to simulate bdo transpose
-- use c_bf_ring with ring also to simulate bdo identity
constant c_bf : t_lofar2_unb2b_sdp_station_config := (false, true, false, true, false, false, false, 0);
constant c_bf_ring : t_lofar2_unb2b_sdp_station_config := (false, true, false, true, false, false, true, 0);
constant c_xsub_one : t_lofar2_unb2b_sdp_station_config := (false, true, false, false, false, true, false, 1);
constant c_xsub_ring : t_lofar2_unb2b_sdp_station_config := (false, true, false, false, false, true, true, 9);
-- use c_full_wg for SDP regression test on Arts-unb2b
constant c_full_wg : t_lofar2_unb2b_sdp_station_config := (true, true, false, true, false, true, true, 9);
constant c_full : t_lofar2_unb2b_sdp_station_config := (false, true, false, true, false, true, true, 9);
constant c_full_wg_os : t_lofar2_unb2b_sdp_station_config := (true, true, true, true, false, true, true, 9);
-- use c_full_os for SDP on LTS-unb2b of Disturb2
constant c_full_os : t_lofar2_unb2b_sdp_station_config := (false, true, true, true, false, true, true, 9);
-- Function to select the revision configuration.
function func_sel_revision_rec(g_design_name : string) return t_lofar2_unb2b_sdp_station_config;
......
......@@ -36,21 +36,25 @@ package lofar2_unb2c_sdp_station_pkg is
use_fsub : boolean;
use_oversample : boolean;
use_bf : boolean;
use_bdo_transpose : boolean;
use_xsub : boolean;
use_ring : boolean;
P_sq : natural;
end record;
constant c_ait : t_lofar2_unb2c_sdp_station_config := (false, false, false, false, false, false, 0);
constant c_fsub : t_lofar2_unb2c_sdp_station_config := (false, true, false, false, false, false, 0);
constant c_bf : t_lofar2_unb2c_sdp_station_config := (false, true, false, true, false, false, 0);
constant c_bf_ring : t_lofar2_unb2c_sdp_station_config := (false, true, false, true, false, true, 0);
constant c_xsub_one : t_lofar2_unb2c_sdp_station_config := (false, true, false, false, true, false, 1);
constant c_xsub_ring : t_lofar2_unb2c_sdp_station_config := (false, true, false, false, true, true, 9);
constant c_full_wg : t_lofar2_unb2c_sdp_station_config := (true, true, false, true, true, true, 9);
constant c_full : t_lofar2_unb2c_sdp_station_config := (false, true, false, true, true, true, 9);
constant c_full_wg_os : t_lofar2_unb2c_sdp_station_config := (true, true, true, true, true, true, 9);
constant c_full_os : t_lofar2_unb2c_sdp_station_config := (false, true, true, true, true, true, 9);
constant c_ait : t_lofar2_unb2c_sdp_station_config := (false, false, false, false, false, false, false, 0);
constant c_fsub : t_lofar2_unb2c_sdp_station_config := (false, true, false, false, false, false, false, 0);
-- use c_bf on one node also to simulate bdo transpose
-- use c_bf_ring with ring also to simulate bdo identity
constant c_bf : t_lofar2_unb2c_sdp_station_config := (false, true, false, true, false, false, false, 0);
constant c_bf_ring : t_lofar2_unb2c_sdp_station_config := (false, true, false, true, false, false, true, 0);
constant c_xsub_one : t_lofar2_unb2c_sdp_station_config := (false, true, false, false, false, true, false, 1);
constant c_xsub_ring : t_lofar2_unb2c_sdp_station_config := (false, true, false, false, false, true, true, 9);
constant c_full_wg : t_lofar2_unb2c_sdp_station_config := (true, true, false, true, false, true, true, 9);
-- Use c_full for LOFAR2 Station SDP operations
constant c_full : t_lofar2_unb2c_sdp_station_config := (false, true, false, true, false, true, true, 9);
constant c_full_wg_os : t_lofar2_unb2c_sdp_station_config := (true, true, true, true, false, true, true, 9);
constant c_full_os : t_lofar2_unb2c_sdp_station_config := (false, true, true, true, false, true, true, 9);
-- Function to select the revision configuration.
function func_sel_revision_rec(g_design_name : string) return t_lofar2_unb2c_sdp_station_config;
......
......@@ -43,6 +43,7 @@ entity node_sdp_beamformer is
g_sim : boolean := false;
g_sim_sdp : t_sdp_sim := c_sdp_sim;
g_beamset_id : natural := 0;
g_use_bdo_transpose : boolean := false;
g_scope_selected_beamlet : natural := 0;
-- Use no default raw width, to force instance to set it
g_subband_raw_dat_w : natural; -- default: c_sdp_W_subband;
......@@ -257,7 +258,8 @@ begin
---------------------------------------------------------------
u_sdp_beamformer_output : entity work.sdp_beamformer_output
generic map(
g_beamset_id => g_beamset_id
g_beamset_id => g_beamset_id,
g_use_transpose => g_use_bdo_transpose
)
port map (
mm_rst => mm_rst,
......
......@@ -22,7 +22,7 @@
--
-- Author: R. van der Walle, E. Kooistra (payload error support)
-- Purpose:
-- The beamformer output (BDO) packetizes the beamlet data into UDP/IP packets.
-- The beamformer data output (BDO) packetizes the beamlet data into UDP/IP packets.
-- Description:
-- * https://support.astron.nl/confluence/display/L2M/L5+SDPFW+Design+Document%3A+Beamformer
-- * https://support.astron.nl/confluence/display/L2M/L4+SDPFW+Decision%3A+Multiple+beamlet+output+destinations
......@@ -146,6 +146,7 @@ begin
snk_in_concat <= in_sosi;
snk_in_concat.data(c_data_w - 1 downto 0) <= in_sosi.re(c_sdp_W_beamlet - 1 downto 0) & in_sosi.im(c_sdp_W_beamlet - 1 downto 0);
-------------------------------------------------------------------------------
-- synthesis translate_off
-- Force BSN error in simulation to verify payload error in tb_lofar2_unb2c_sdp_station_bf.vhd,
-- this will cause two times payload errors, one when BSN goes wrong and one when BSN goes ok again.
......@@ -174,6 +175,7 @@ begin
snk_in_concat.bsn <= INCR_UVEC(in_sosi.bsn, 1);
end if;
-- synthesis translate_on
-------------------------------------------------------------------------------
end process;
-------------------------------------------------------------------------------
......
......@@ -66,6 +66,7 @@ entity sdp_station is
g_use_oversample : boolean := false;
g_use_xsub : boolean := true;
g_use_bf : boolean := true;
g_use_bdo_transpose : boolean := false;
g_use_ring : boolean := true;
g_P_sq : natural := 1
);
......@@ -916,6 +917,7 @@ begin
g_sim => g_sim,
g_sim_sdp => g_sim_sdp,
g_beamset_id => beamset_id,
g_use_bdo_transpose => g_use_bdo_transpose,
g_scope_selected_beamlet => g_scope_selected_subband,
g_subband_raw_dat_w => c_subband_raw_dat_w,
g_subband_raw_fraction_w => c_subband_raw_fraction_w
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment