diff --git a/libraries/base/ring/src/vhdl/ring_rx.vhd b/libraries/base/ring/src/vhdl/ring_rx.vhd index 969f00100f0444e5f6ba503ea0f8ce8906203c06..9b5e0d6b1d2bdb4dd0553a21def11999a44419cd 100644 --- a/libraries/base/ring/src/vhdl/ring_rx.vhd +++ b/libraries/base/ring/src/vhdl/ring_rx.vhd @@ -38,6 +38,7 @@ USE work.ring_pkg.ALL; ENTITY ring_rx IS GENERIC ( + g_use_dp_layer : BOOLEAN := TRUE; g_lane_direction : NATURAL := 1; g_data_w : NATURAL := 64; g_nof_rx_monitors : NATURAL := 1; @@ -76,9 +77,8 @@ END ring_rx; ARCHITECTURE str OF ring_rx IS - CONSTANT c_use_dp_layer : BOOLEAN := TRUE; - CONSTANT c_nof_hdr_fields : NATURAL := sel_a_b(c_use_dp_layer, c_ring_dp_nof_hdr_fields, c_ring_eth_nof_hdr_fields); - CONSTANT c_hdr_field_arr : t_common_field_arr(c_nof_hdr_fields-1 DOWNTO 0) := sel_a_b(c_use_dp_layer, c_ring_dp_hdr_field_arr, c_ring_eth_hdr_field_arr); + CONSTANT c_nof_hdr_fields : NATURAL := sel_a_b(g_use_dp_layer, c_ring_dp_nof_hdr_fields, c_ring_eth_nof_hdr_fields); + CONSTANT c_hdr_field_arr : t_common_field_arr(c_nof_hdr_fields-1 DOWNTO 0) := sel_a_b(g_use_dp_layer, c_ring_dp_hdr_field_arr, c_ring_eth_hdr_field_arr); SIGNAL lane_rx_sosi : t_dp_sosi; SIGNAL packet_sosi : t_dp_sosi; @@ -153,7 +153,7 @@ BEGIN ); -- Use dp layer - gen_dp_layer : IF c_use_dp_layer GENERATE + gen_dp_layer : IF g_use_dp_layer GENERATE p_set_meta: PROCESS(offload_rx_sosi, hdr_fields_out) BEGIN decoded_sosi <= offload_rx_sosi; @@ -182,7 +182,6 @@ BEGIN reg_miso => reg_dp_block_validate_bsn_at_sync_cipo ); - -- BSN Monitors -- Convert nof_hops to source RN p_hop_to_src_rn: PROCESS(validated_sosi, this_rn, N_rn) BEGIN @@ -202,6 +201,7 @@ BEGIN src_out_arr => monitor_sosi_arr ); + -- BSN Monitors u_mms_dp_bsn_monitor_v2 : ENTITY dp_lib.mms_dp_bsn_monitor_v2 GENERIC MAP ( g_nof_streams => g_nof_rx_monitors @@ -221,7 +221,7 @@ BEGIN END GENERATE; -- Do not use dp layer - gen_no_dp_layer : IF NOT c_use_dp_layer GENERATE + gen_no_dp_layer : IF NOT g_use_dp_layer GENERATE from_lane_sosi <= offload_rx_sosi; END GENERATE;