Skip to content
Snippets Groups Projects

Clarify g_nof_destinations_max design revision parameter and package constants...

Merged Eric Kooistra requested to merge L2SDP-964 into master
1 file
+ 10
10
Compare changes
  • Side-by-side
  • Inline
@@ -52,7 +52,7 @@ package sdp_bdo_pkg is
-- blocks represent beamlet time samples that have to be kept together per
-- destination. The beamlets are distributed to the different destinations
-- based on their beamlet index as defined by
-- func_sdp_bdo_nof_beamlets_per_block_first_destination_look_up_table().
-- func_sdp_bdo_nof_beamlets_per_block_first_destinations_look_up_table().
-- The minimum value is c_sdp_cep_nof_blocks_per_packet = 4 to fill a jumbo
-- frame when nof_destinations = 1.
-- The maximum value is a balance between having sufficiently large packets
@@ -97,9 +97,9 @@ package sdp_bdo_pkg is
-- . Look up table arrays for: t_natural_arr(1 to c_nof_destinations_max)
function func_sdp_bdo_reorder_nof_blocks_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
function func_sdp_bdo_reorder_nof_ch_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
function func_sdp_bdo_nof_beamlets_per_block_first_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
function func_sdp_bdo_nof_beamlets_per_block_first_destinations_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
function func_sdp_bdo_nof_beamlets_per_block_last_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
function func_sdp_bdo_nof_ch_per_packet_first_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
function func_sdp_bdo_nof_ch_per_packet_first_destinations_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
function func_sdp_bdo_nof_ch_per_packet_last_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr;
-- Look up table matrix for:
@@ -160,7 +160,7 @@ package body sdp_bdo_pkg is
return v_arr;
end func_sdp_bdo_reorder_nof_ch_look_up_table;
function func_sdp_bdo_nof_beamlets_per_block_first_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr is
function func_sdp_bdo_nof_beamlets_per_block_first_destinations_look_up_table(c_nof_destinations_max : natural) return t_natural_arr is
variable v_first_arr : t_natural_arr(1 to c_nof_destinations_max);
begin
-- Determine nof_beamlets_per_block for the first 1:DN-1 destinations, as
@@ -173,11 +173,11 @@ package body sdp_bdo_pkg is
v_first_arr(DN) := ceil_div(c_sdp_S_sub_bf, DN);
end loop;
return v_first_arr;
end func_sdp_bdo_nof_beamlets_per_block_first_destination_look_up_table;
end func_sdp_bdo_nof_beamlets_per_block_first_destinations_look_up_table;
function func_sdp_bdo_nof_beamlets_per_block_last_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr is
variable v_first_arr : t_natural_arr(1 to c_nof_destinations_max) :=
func_sdp_bdo_nof_beamlets_per_block_first_destination_look_up_table(c_nof_destinations_max);
func_sdp_bdo_nof_beamlets_per_block_first_destinations_look_up_table(c_nof_destinations_max);
variable v_last_arr : t_natural_arr(1 to c_nof_destinations_max);
begin
-- Determine remaining nof_beamlets_per_block for the last destination
@@ -203,11 +203,11 @@ package body sdp_bdo_pkg is
return v_last_arr;
end func_sdp_bdo_nof_beamlets_per_block_last_destination_look_up_table;
function func_sdp_bdo_nof_ch_per_packet_first_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr is
function func_sdp_bdo_nof_ch_per_packet_first_destinations_look_up_table(c_nof_destinations_max : natural) return t_natural_arr is
constant c_nof_blocks_arr : t_natural_arr(1 to c_nof_destinations_max) :=
func_sdp_bdo_reorder_nof_blocks_look_up_table(c_nof_destinations_max);
constant c_nof_beamlets_arr : t_natural_arr(1 to c_nof_destinations_max) :=
func_sdp_bdo_nof_beamlets_per_block_first_destination_look_up_table(c_nof_destinations_max);
func_sdp_bdo_nof_beamlets_per_block_first_destinations_look_up_table(c_nof_destinations_max);
variable v_len_arr : t_natural_arr(1 to c_nof_destinations_max);
begin
-- Determine nof_ch per packet for the first 1:DN-1 destinations, as
@@ -221,7 +221,7 @@ package body sdp_bdo_pkg is
v_len_arr(DN) := c_nof_blocks_arr(DN) * c_nof_beamlets_arr(DN);
end loop;
return v_len_arr;
end func_sdp_bdo_nof_ch_per_packet_first_destination_look_up_table;
end func_sdp_bdo_nof_ch_per_packet_first_destinations_look_up_table;
function func_sdp_bdo_nof_ch_per_packet_last_destination_look_up_table(c_nof_destinations_max : natural) return t_natural_arr is
constant c_nof_blocks_arr : t_natural_arr(1 to c_nof_destinations_max) :=
@@ -245,7 +245,7 @@ package body sdp_bdo_pkg is
function func_sdp_bdo_beamlet_index_per_destination_look_up_matrix(c_nof_destinations_max : natural) return t_natural_matrix is
constant c_len_arr : t_natural_arr(1 to c_nof_destinations_max) :=
func_sdp_bdo_nof_beamlets_per_block_first_destination_look_up_table(c_nof_destinations_max);
func_sdp_bdo_nof_beamlets_per_block_first_destinations_look_up_table(c_nof_destinations_max);
variable v_index_mat : t_natural_matrix(1 to c_nof_destinations_max,
0 to c_nof_destinations_max - 1);
variable v_beamlet_index : natural;
Loading