diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd index 202357ec7824d038302aa968d414c9abe0cb3a34..e756819c794fc0da75ecb178147bc40837302179 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd @@ -249,6 +249,7 @@ BEGIN -- Use done to start next packets IF r.block_count < c_nof_packets-1 THEN IF g_statistics_type /= "XST" OR r.crosslet_count < r.nof_crosslets-1 THEN + -- For SST, BST and for XST nof_crosslets do: IF r.block_count MOD c_nof_data_per_step = 0 THEN v.start_address := r.block_count / c_nof_data_per_step * c_block_size; -- jump to first packet in next block ELSE @@ -258,6 +259,7 @@ BEGIN v.block_count := r.block_count + 1; v.crosslet_count := r.crosslet_count + 1; ELSE + -- For XST after nof_crosslets do: v.crosslet_count := 0; -- skip block indices for unused XST blocks in this P_sq iteration by setting the block count to the next multiple of N_crosslets_max i.e. 7, 14, 21, etc. v.block_count := r.block_count + 1 + (c_sdp_N_crosslets_max - r.nof_crosslets);