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 1714612c629a8a85b33d1e3979d8ef5024739fb9..0ca713bb2c374871edd6654c8eb6de3926c2ea0c 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_filterbank.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/node_sdp_filterbank.vhd
@@ -174,7 +174,7 @@ BEGIN
   u_mem_mux_sst : ENTITY common_lib.common_mem_mux
   GENERIC MAP (
     g_nof_mosi    => c_sdp_P_pfb,
-    g_mult_addr_w => ceil_log2(c_sdp_N_fft*c_sdp_wpfb_subbands.stat_data_sz)
+    g_mult_addr_w => ceil_log2(c_sdp_N_sub*c_sdp_Q_fft*c_sdp_wpfb_subbands.stat_data_sz)
   )
   PORT MAP (
     mosi     => ram_st_sst_mosi,
diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd
index 08de4349383765eb7a69717ca89e920df2dc315d..2b5882b9c72f7be1633db46206cdf1ce416212f9 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd
@@ -40,6 +40,7 @@ PACKAGE sdp_pkg is
   -- SDP specific parameters as defined in:
   --  L3 SDP Decision: SDP Parameter definitions 
   -------------------------------------------------
+  CONSTANT c_sdp_N_sub      : NATURAL := 512;
   CONSTANT c_sdp_N_fft      : NATURAL := 1024;
   CONSTANT c_sdp_S_pn       : NATURAL := 12;    
   CONSTANT c_sdp_Q_fft      : NATURAL := 2;         
diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd
index ba4809dcb6eb72611119a34fab272cf62600b7b5..3bc54e97a7c1fe93d88e2abdee4c576fbdf686d9 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_scope.vhd
@@ -57,7 +57,7 @@ END sdp_scope;
 
 ARCHITECTURE str OF sdp_scope IS
 
-  SIGNAL cnt_arr                : t_natural_arr(c_sdp_S_pn-1 DOWNTO 0);
+  SIGNAL cnt                    : NATURAL;
   SIGNAL deinterleaved_sosi_arr : t_dp_sosi_arr(c_sdp_S_pn-1 DOWNTO 0);
   SIGNAL subband_sosi_arr       : t_dp_sosi_arr(c_sdp_S_pn-1 DOWNTO 0) := (OTHERS=>c_dp_sosi_rst);
 
@@ -84,30 +84,20 @@ BEGIN
     p_cnt : PROCESS(rst, clk)
     BEGIN
       IF rst = '1' THEN
-        cnt_arr  <= (OTHERS => 0);
+        cnt <= 0;
       ELSIF rising_edge(clk) THEN
-        FOR I IN 0 TO c_sdp_S_pn-1 LOOP
-          IF deinterleaved_sosi_arr(I).valid = '1' THEN
-            IF deinterleaved_sosi_arr(I).eop = '1' THEN
-              cnt_arr(I) <= 0;
-            ELSE
-              cnt_arr(I) <= cnt_arr(I) + 1;
-            END IF;
+        IF deinterleaved_sosi_arr(0).valid = '1' THEN
+          IF deinterleaved_sosi_arr(0).eop = '1' THEN
+            cnt <= 0;
+          ELSE
+            cnt <= + 1;
           END IF;
-        END LOOP;
-      END IF;
-    END PROCESS;
-    
-    p_select_subband : PROCESS(cnt_arr, deinterleaved_sosi_arr)
-    BEGIN
-      subband_sosi_arr <= deinterleaved_sosi_arr;
-      FOR I IN 0 TO c_sdp_S_pn-1 LOOP
-        IF cnt_arr(I) /= g_selected_subband THEN
-          subband_sosi_arr(I).valid <= '0';
         END IF;
-      END LOOP;
+      END IF;
     END PROCESS;
 
+   -- Select subband 
+   subband_sosi_arr <= deinterleaved_sosi_arr WHEN cnt = g_selected_subband;
 
     ---------------------------------------------------------------
     -- SIGNAL SCOPE