From 01e688c1741a4c781449e3d486bc1233c6f0754e Mon Sep 17 00:00:00 2001
From: Eric Kooistra <kooistra@astron.nl>
Date: Mon, 22 Aug 2022 10:17:22 +0200
Subject: [PATCH] BSN is from previous sync interval in which the statistics
 were measured.

---
 .../libraries/sdp/tb/vhdl/tb_sdp_statistics_offload.vhd     | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/applications/lofar2/libraries/sdp/tb/vhdl/tb_sdp_statistics_offload.vhd b/applications/lofar2/libraries/sdp/tb/vhdl/tb_sdp_statistics_offload.vhd
index 5298580a65..279c2d3243 100644
--- a/applications/lofar2/libraries/sdp/tb/vhdl/tb_sdp_statistics_offload.vhd
+++ b/applications/lofar2/libraries/sdp/tb/vhdl/tb_sdp_statistics_offload.vhd
@@ -191,6 +191,7 @@ ARCHITECTURE tb OF tb_sdp_statistics_offload IS
   SIGNAL rx_sdp_stat_header      : t_sdp_stat_header;
   SIGNAL exp_sdp_stat_header     : t_sdp_stat_header;
 
+  SIGNAL cur_dp_bsn              : NATURAL;
   SIGNAL exp_dp_bsn              : NATURAL;
   SIGNAL exp_sst_signal_input    : NATURAL;
   SIGNAL exp_bst_beamlet_index   : NATURAL;
@@ -357,7 +358,8 @@ BEGIN
   -- verify it at rx_offload_sosi.eop.
 
   -- For all statistics
-  exp_dp_bsn <= c_bsn_init + 1 + rx_sync_cnt * c_nof_block_per_sync;
+  cur_dp_bsn <= c_bsn_init + 1 + rx_sync_cnt * c_nof_block_per_sync;  -- in current sync interval
+  exp_dp_bsn <= cur_dp_bsn WHEN rising_edge(dp_clk) AND rx_offload_sosi.sync = '1';  -- previous sync interval
   -- SST
   exp_sst_signal_input <= rx_packet_cnt + c_sdp_S_pn * gn_index;
   -- BST
@@ -667,7 +669,7 @@ BEGIN
     weighted_subbands_flag  => weighted_subbands_flag,
 
     nof_crosslets           => c_mm_nof_crosslets,
-    crosslets_info_rec      => in_crosslets_info_rec
+    prev_crosslets_info_rec => in_crosslets_info_rec
   );
 
   -- Verify crosslets_info functions
-- 
GitLab