diff --git a/libraries/base/dp/src/vhdl/dp_offload_rx.vhd b/libraries/base/dp/src/vhdl/dp_offload_rx.vhd index d2eef67a136e6909bbd10ec6bd3f44ef19de2ac1..ff1a52c71575982bedcdecf3eaa95edac477d7e2 100644 --- a/libraries/base/dp/src/vhdl/dp_offload_rx.vhd +++ b/libraries/base/dp/src/vhdl/dp_offload_rx.vhd @@ -130,8 +130,11 @@ BEGIN src_out_arr => dp_split_src_out_2arr(i) ); - dp_split_src_in_2arr(i)(1) <= c_dp_siso_rdy; - + -- In dp_split index 0 is head and index 1 is tail, but dp_split uses 0 TO + -- 1 range and dp_split_src_in_2arr()() uses 1 DOWNTO 0 range, so: + -- . dp_split_src_in_2arr()(1) is the header part, and + -- . dp_split_src_in_2arr()(0) is the tail part. + dp_split_src_in_2arr(i)(1) <= c_dp_siso_rdy; -- flow control for rx header to MM is always ready END GENERATE; --------------------------------------------------------------------------------------- @@ -186,7 +189,7 @@ BEGIN st_clk => dp_clk, snk_out => dp_split_src_in_2arr(i)(0), - snk_in => dp_split_src_out_2arr(i)(0), + snk_in => dp_split_src_out_2arr(i)(0), -- tail part src_in => dp_tail_remove_src_in_arr(i), src_out => dp_tail_remove_src_out_arr(i)