From cd5c444f34fb8b69617bfe46cfaf0ca5d66f7667 Mon Sep 17 00:00:00 2001
From: Eric Kooistra <kooistra@astron.nl>
Date: Mon, 22 Aug 2022 11:50:46 +0200
Subject: [PATCH] Clarify range of p.nof_cycles_dly.

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

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 bd5b00ce8c..8883efbc9c 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_statistics_offload.vhd
@@ -333,15 +333,17 @@ BEGIN
   END PROCESS;
 
   -- Derive and pipeline dynamic parameters that depend on node id and MM, but are otherwise fixed
+  -- . c_sdp_offload_time = 600000 * 5 ns = 3 ms, so max gn_index = 31 starts
+  --   after 93 ms, to just fit within XST T_int min is 100 ms.
   p_reg_parameters : PROCESS(dp_clk)
   BEGIN
     IF rising_edge(dp_clk) THEN
-      p.gn_index         <= gn_index;
+      p.gn_index         <= gn_index;  -- gn_index is in 0:31 range
       p.pn_index         <= func_sdp_gn_index_to_pn_index(p.gn_index);
       p.offset_rn        <= TO_UINT(ring_info.O_rn);
       p.rn_index         <= p.gn_index - p.offset_rn;
       p.local_si_offset  <= p.pn_index * c_sdp_S_pn;
-      p.nof_cycles_dly   <= p.gn_index * g_offload_time;
+      p.nof_cycles_dly   <= p.gn_index * g_offload_time;  -- max gn_index = 31
       p.nof_rn           <= TO_UINT(ring_info.N_rn);
       p.nof_used_P_sq    <= smallest(p.nof_rn / 2 + 1, g_P_sq);
       p.remote_rn        <= func_ring_nof_hops_to_source_rn(r.instance_count, p.rn_index, p.nof_rn, g_crosslets_direction);
-- 
GitLab