From 0240dad42384570cf5981227022de55234025996 Mon Sep 17 00:00:00 2001
From: Reinier van der Walle <walle@astron.nl>
Date: Fri, 2 Jul 2021 12:14:28 +0200
Subject: [PATCH] WIP: need to merge with master

---
 .../src/vhdl/lofar2_unb2b_sdp_station.vhd                  | 6 +++++-
 .../lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd  | 3 ++-
 .../libraries/sdp/src/vhdl/sdp_statistics_offload.vhd      | 7 ++++---
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/applications/lofar2/designs/lofar2_unb2b_sdp_station/src/vhdl/lofar2_unb2b_sdp_station.vhd b/applications/lofar2/designs/lofar2_unb2b_sdp_station/src/vhdl/lofar2_unb2b_sdp_station.vhd
index abbc8582ba..4d7805b1c5 100644
--- a/applications/lofar2/designs/lofar2_unb2b_sdp_station/src/vhdl/lofar2_unb2b_sdp_station.vhd
+++ b/applications/lofar2/designs/lofar2_unb2b_sdp_station/src/vhdl/lofar2_unb2b_sdp_station.vhd
@@ -871,8 +871,12 @@ BEGIN
       reg_bsn_scheduler_xsub_mosi => reg_bsn_scheduler_xsub_mosi, 
       reg_bsn_scheduler_xsub_miso => reg_bsn_scheduler_xsub_miso, 
       ram_st_xsq_mosi             => ram_st_xsq_mosi,             
-      ram_st_xsq_miso             => ram_st_xsq_miso
+      ram_st_xsq_miso             => ram_st_xsq_miso,
 
+      reg_stat_enable_mosi        => reg_stat_enable_xst_mosi,
+      reg_stat_enable_miso        => reg_stat_enable_xst_miso,
+      reg_stat_hdr_dat_mosi       => reg_stat_hdr_dat_xst_mosi,
+      reg_stat_hdr_dat_miso       => reg_stat_hdr_dat_xst_miso
     );
   END GENERATE;
 
diff --git a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd
index cf5b45e387..1c26c5556a 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_correlator.vhd
@@ -270,7 +270,8 @@ BEGIN
   u_sdp_xst_udp_offload: ENTITY work.sdp_statistics_offload
   GENERIC MAP (
     g_statistics_type => "XST",
-    g_offload_time    => g_offload_time
+    g_offload_time    => g_offload_time,
+    g_P_sq            => g_P_sq
   )
   PORT MAP (
     mm_clk    => mm_clk,
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 edeba31cd9..2498eca0e2 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd
@@ -45,7 +45,8 @@ ENTITY sdp_statistics_offload IS
   GENERIC (
     g_statistics_type : STRING  := "SST";
     g_offload_time    : NATURAL := c_sdp_offload_time;
-    g_beamset_id      : NATURAL := 0
+    g_beamset_id      : NATURAL := 0;
+    g_P_sq            : NATURAL := c_sdp_P_sq
   );
   PORT (
     -- Clocks and reset
@@ -103,7 +104,7 @@ ARCHITECTURE str OF sdp_statistics_offload IS
   CONSTANT c_block_size                : NATURAL := c_nof_data * c_step_size;
   
   CONSTANT c_nof_packets               : NATURAL := sel_a_b(g_statistics_type="BST", 1,
-                                                    sel_a_b(g_statistics_type="XST", c_sdp_S_pn,
+                                                    sel_a_b(g_statistics_type="XST", g_P_sq,
                                                                                      c_sdp_S_pn));  -- SST
   
   CONSTANT c_marker                    : NATURAL := sel_a_b(g_statistics_type="BST", c_sdp_marker_bst,
@@ -219,7 +220,7 @@ BEGIN
     ELSIF g_statistics_type = "BST" THEN
       v.data_id := x"0000" & TO_UVEC(c_beamlet_id, 16);
     ELSIF g_statistics_type = "XST" THEN
-      v.data_id := x"0" & "000" & RESIZE_UVEC(selected_crosslet, 9) & TO_UVEC(c_sdp_S_pn * gn_index, 8) & TO_UVEC(r.block_count * c_sdp_P_pn, 8);
+      v.data_id := x"0" & "000" & RESIZE_UVEC(selected_crosslet, 9) & TO_UVEC(r.block_count * c_sdp_P_pn, 8) & TO_UVEC(r.block_count * c_sdp_P_pn, 8); -- RW TODO: define for P_sq > 1
     ELSE
       v.data_id := x"00000000";
     END IF;
-- 
GitLab