diff --git a/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf/tb_lofar2_unb2c_sdp_station_bf.vhd b/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf/tb_lofar2_unb2c_sdp_station_bf.vhd index 4c3dc481d9e6fb3bc3c8322fa248f623be887aa3..7acfa22c2a95eaf984df88565b77e331c9692f48 100644 --- a/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf/tb_lofar2_unb2c_sdp_station_bf.vhd +++ b/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf/tb_lofar2_unb2c_sdp_station_bf.vhd @@ -141,7 +141,7 @@ -- https://support.astron.nl/confluence/pages/viewpage.action?spaceKey=L2M&title=L4+SDPFW+Decision%3A+LOFAR2.0+SDP+Firmware+Quantization+Model -- ------------------------------------------------------------------------------- -library IEEE, common_lib, unb2c_board_lib, i2c_lib, mm_lib, dp_lib, diag_lib, lofar2_sdp_lib, wpfb_lib, tech_pll_lib, tr_10GbE_lib, lofar2_unb2c_sdp_station_lib; +library IEEE, common_lib, unb2c_board_lib, i2c_lib, mm_lib, dp_lib, diag_lib, reorder_lib, lofar2_sdp_lib, wpfb_lib, tech_pll_lib, tr_10GbE_lib, lofar2_unb2c_sdp_station_lib; use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; use IEEE.math_real.all; @@ -155,6 +155,7 @@ use mm_lib.mm_file_pkg.all; use dp_lib.dp_stream_pkg.all; use mm_lib.mm_file_unb_pkg.all; use diag_lib.diag_pkg.all; +use reorder_lib.reorder_pkg.all; use wpfb_lib.wpfb_pkg.all; use unb2c_board_lib.unb2c_board_pkg.all; use lofar2_sdp_lib.sdp_pkg.all; @@ -245,6 +246,15 @@ architecture tb of tb_lofar2_unb2c_sdp_station_bf is x"1400" -- block_period = 5120 ); + -- Expected transposed indices order by func_reorder_transpose_packet(). + -- Yields same c_reorder_transpose_indices order as: + -- > python applications/lofar2/libraries/sdp/src/python/test_func_sdp_bdo_transpose_packet.py + constant c_nof_ch : natural := c_sdp_cep_nof_beamlets_per_packet * c_sdp_N_pol_bf; + constant c_reorder_transpose_indices : t_natural_arr(0 to c_nof_ch - 1) := + func_reorder_transpose_indices(c_sdp_cep_nof_blocks_per_packet, + c_sdp_cep_nof_beamlets_per_block, + c_sdp_N_pol_bf); + -- WG constant c_bsn_start_wg : natural := c_init_bsn + 2; -- start WG at this BSN to instead of some BSN, to avoid mismatches in exact expected data values -- .ampl diff --git a/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf_ring/tb_lofar2_unb2c_sdp_station_bf_ring.vhd b/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf_ring/tb_lofar2_unb2c_sdp_station_bf_ring.vhd index 014da59f9b17eca98d1bf2ca88d4045ad7aaed5f..879d09cd9749d0841dc08a64c7b3226ef34b110a 100644 --- a/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf_ring/tb_lofar2_unb2c_sdp_station_bf_ring.vhd +++ b/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf_ring/tb_lofar2_unb2c_sdp_station_bf_ring.vhd @@ -137,7 +137,7 @@ -- https://support.astron.nl/confluence/pages/viewpage.action?spaceKey=L2M&title=L4+SDPFW+Decision%3A+LOFAR2.0+SDP+Firmware+Quantization+Model -- ------------------------------------------------------------------------------- -library IEEE, common_lib, unb2c_board_lib, i2c_lib, mm_lib, dp_lib, diag_lib, lofar2_sdp_lib, wpfb_lib, tech_pll_lib, tr_10GbE_lib, lofar2_unb2c_sdp_station_lib; +library IEEE, common_lib, unb2c_board_lib, i2c_lib, mm_lib, dp_lib, diag_lib, reorder_lib, lofar2_sdp_lib, wpfb_lib, tech_pll_lib, tr_10GbE_lib, lofar2_unb2c_sdp_station_lib; use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; use IEEE.math_real.all; @@ -151,6 +151,7 @@ use mm_lib.mm_file_pkg.all; use dp_lib.dp_stream_pkg.all; use mm_lib.mm_file_unb_pkg.all; use diag_lib.diag_pkg.all; +use reorder_lib.reorder_pkg.all; use wpfb_lib.wpfb_pkg.all; use unb2c_board_lib.unb2c_board_pkg.all; use lofar2_sdp_lib.sdp_pkg.all; @@ -257,6 +258,15 @@ architecture tb of tb_lofar2_unb2c_sdp_station_bf_ring is x"1400" -- block_period = 5120 ); + -- Expected transposed indices order by func_reorder_transpose_packet(). + -- Yields same c_reorder_transpose_indices order as: + -- > python applications/lofar2/libraries/sdp/src/python/test_func_sdp_bdo_transpose_packet.py + constant c_nof_ch : natural := c_sdp_cep_nof_beamlets_per_packet * c_sdp_N_pol_bf; + constant c_reorder_transpose_indices : t_natural_arr(0 to c_nof_ch - 1) := + func_reorder_transpose_indices(c_sdp_cep_nof_blocks_per_packet, + c_sdp_cep_nof_beamlets_per_block, + c_sdp_N_pol_bf); + -- WG constant c_bsn_start_wg : natural := c_init_bsn + 2; -- start WG at this BSN to instead of some BSN, to avoid mismatches in exact expected data values -- .ampl