From 5289dd4f8698e5069d9a8e5a1e5efb144f7b2759 Mon Sep 17 00:00:00 2001 From: Eric Kooistra <kooistra@astron.nl> Date: Mon, 24 Oct 2022 17:14:20 +0200 Subject: [PATCH] Default make unused bits in hdr_fields_out_arr zero. --- .../base/dp/src/vhdl/dp_offload_tx_v3.vhd | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/libraries/base/dp/src/vhdl/dp_offload_tx_v3.vhd b/libraries/base/dp/src/vhdl/dp_offload_tx_v3.vhd index f72352cd69..66551c1bc8 100644 --- a/libraries/base/dp/src/vhdl/dp_offload_tx_v3.vhd +++ b/libraries/base/dp/src/vhdl/dp_offload_tx_v3.vhd @@ -135,12 +135,24 @@ BEGIN snk_out_arr(i).xon <= src_in_arr(i).xon; -- Wire hdr_fields_out_arr - -- MM override bits determine source for each field - gen_field_wires: FOR j IN g_hdr_field_arr'RANGE GENERATE - hdr_fields_out_arr(i)(field_hi(g_hdr_field_arr, j) DOWNTO field_lo(g_hdr_field_arr, j)) <= mm_fields_slv_out_arr(i)(field_hi(g_hdr_field_arr, j) DOWNTO field_lo(g_hdr_field_arr, j)) - WHEN field_override_arr(j) = '1' ELSE - hdr_fields_in_arr(i)(field_hi(g_hdr_field_arr, j) DOWNTO field_lo(g_hdr_field_arr, j)); - END GENERATE; + p_hdr_fields_out_arr : PROCESS(mm_fields_slv_out_arr, hdr_fields_in_arr) + VARIABLE v_hi : NATURAL; + VARIABLE v_lo : NATURAL; + BEGIN + -- Default drive unused slv bit to 0 to avoid Warning: (vsim-8684) No drivers exist on out port + -- hdr_fields_out_arr(0)(1023 downto ...), and its initial value is not used. + hdr_fields_out_arr(i) <= (OTHERS => '0'); + FOR j IN g_hdr_field_arr'RANGE LOOP + v_hi := field_hi(g_hdr_field_arr, j); + v_lo := field_lo(g_hdr_field_arr, j); + -- MM override bits determine source for each field + IF field_override_arr(j) = '1' THEN + hdr_fields_out_arr(i)(v_hi DOWNTO v_lo) <= mm_fields_slv_out_arr(i)(v_hi DOWNTO v_lo); + ELSE + hdr_fields_out_arr(i)(v_hi DOWNTO v_lo) <= hdr_fields_in_arr(i)(v_hi DOWNTO v_lo); + END IF; + END LOOP; + END PROCESS; --------------------------------------------------------------------------------------- -- mm_fields for MM access to each field -- GitLab