From 83841a07f07b17b0bcda30b19abef1d5f812bff6 Mon Sep 17 00:00:00 2001
From: Eric Kooistra <kooistra@astron.nl>
Date: Thu, 3 Nov 2022 07:29:32 +0100
Subject: [PATCH] Correct c_sdp_subband_equalizer_latency = 7, to account for
 added msb and lsb pipeline in requantizer.

---
 .../libraries/sdp/src/vhdl/node_sdp_filterbank.vhd     |  4 +---
 .../sdp/src/vhdl/node_sdp_oversampled_filterbank.vhd   | 10 +++++++---
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_filterbank.vhd b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_filterbank.vhd
index b0f7af320e..365230124e 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_filterbank.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_filterbank.vhd
@@ -118,8 +118,6 @@ ARCHITECTURE str OF node_sdp_filterbank IS
   CONSTANT c_coefs_file_prefix : STRING := "data/Coeffs16384Kaiser-quant_1wb";
   CONSTANT c_gains_file_name : STRING := "data/gains_1024_complex_16b13f_unit"; -- Can be generated by src/python/sdp_hex.py
 
-  CONSTANT c_subband_equalizer_latency : NATURAL := 5;
-
   CONSTANT c_nof_masters : POSITIVE := 2;  -- for M&C MM access and for statistics offload MM access
 
   CONSTANT c_fft                    : t_fft := func_wpfb_map_wpfb_parameters_to_fft(g_wpfb);
@@ -275,7 +273,7 @@ BEGIN
   u_dp_selector_arr : ENTITY dp_lib.dp_selector_arr
     GENERIC MAP (
       g_nof_arr => c_sdp_P_pfb,
-      g_pipeline => c_subband_equalizer_latency
+      g_pipeline => c_sdp_subband_equalizer_latency
     )
     PORT MAP (
       mm_rst => mm_rst,
diff --git a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_oversampled_filterbank.vhd b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_oversampled_filterbank.vhd
index 04b0078ba2..58022068e3 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_oversampled_filterbank.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_oversampled_filterbank.vhd
@@ -102,7 +102,9 @@ ARCHITECTURE str OF node_sdp_oversampled_filterbank IS
   CONSTANT c_coefs_file_prefix : STRING := "data/Coeffs16384Kaiser-quant_1wb";
   CONSTANT c_gains_file_name : STRING := "data/gains_1024_complex_16b13f_unit"; -- Can be generated by src/python/sdp_hex.py
 
-  CONSTANT c_subband_equalizer_latency : NATURAL := 5;
+  -- Use quantized subbands
+  CONSTANT c_subband_raw_dat_w      : NATURAL := c_sdp_W_subband;
+  CONSTANT c_subband_raw_fraction_w : NATURAL := 0;
 
   CONSTANT c_nof_masters : POSITIVE := 2;
 
@@ -538,7 +540,9 @@ BEGIN
   u_sdp_subband_equalizer : ENTITY work.sdp_subband_equalizer
     GENERIC MAP (
       g_gains_file_name => c_gains_file_name,
-      g_nof_streams     => c_sdp_R_os * c_sdp_P_pfb
+      g_nof_streams     => c_sdp_R_os * c_sdp_P_pfb,
+      g_raw_dat_w       => c_subband_raw_dat_w,
+      g_raw_fraction_w  => c_subband_raw_fraction_w
     )
     PORT MAP(
       dp_clk         => dp_clk,
@@ -563,7 +567,7 @@ BEGIN
   u_dp_selector_arr : ENTITY dp_lib.dp_selector_arr
     GENERIC MAP (
       g_nof_arr => c_sdp_R_os * c_sdp_P_pfb,
-      g_pipeline => c_subband_equalizer_latency
+      g_pipeline => c_sdp_subband_equalizer_latency
     )
     PORT MAP (
       mm_rst => mm_rst,
-- 
GitLab