diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_local.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_local.vhd
index 134b80aa33fee8a984a5e9a0d60fe94f8023ba5e..39f94923b302fcb5ac28f72cf5cc5185b84901b8 100644
--- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_local.vhd
+++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_local.vhd
@@ -77,11 +77,15 @@ ARCHITECTURE str OF sdp_beamformer_local IS
 
 BEGIN
   ---------------------------------------------------------------
-  -- COPY INPUT STERAMS FOR X AND Y POLARIZATION PATHS 
-  ---------------------------------------------------------------
-  gen_pol : FOR N_pol_bf IN 0 TO c_sdp_N_pol_bf-1 GENERATE
-    gen_pfb : FOR P_pfb IN 0 TO c_sdp_P_pfb-1 GENERATE
-      sub_sosi_arr(N_pol_bf * c_sdp_P_pfb + P_pfb) <= in_sosi_arr(P_pfb);
+  -- COPY INPUT STREAMS FOR X AND Y POLARIZATION PATHS
+  --   0: 5 = S_pn signal inputs (time multiplexed by Q_fft) for BF X pol
+  --   6:11 = S_pn signal inputs (time multiplexed by Q_fft) for BF Y pol
+  ---------------------------------------------------------------
+  -- Use short index variables PB (= Polarization Beamlet), I (= Instance)
+  -- names, to ease recognizing them as loop indices.
+  gen_pol : FOR PB IN 0 TO c_sdp_N_pol_bf-1 GENERATE
+    gen_pfb : FOR I IN 0 TO c_sdp_P_pfb-1 GENERATE
+      sub_sosi_arr(PB * c_sdp_P_pfb + I) <= in_sosi_arr(I);
     END GENERATE;
   END GENERATE;
 
@@ -109,23 +113,8 @@ BEGIN
   -- X pol is lower half of bf_weights_out
   bf_weights_x_sosi_arr <= bf_weights_out_sosi_arr(c_sdp_P_pfb-1 DOWNTO 0);
 
-  ---------------------------------------------------------------
-  -- DP PIPELINE Y PATH 
-  ---------------------------------------------------------------
-  -- The weighted subbands from the Y polarization path are pipelined 
-  -- by one cycle so that they can be time multiplexed with the 
-  -- weighted subbands from the X polarization.
-  u_pipeline_y_pol : ENTITY dp_lib.dp_pipeline_arr
-  GENERIC MAP (
-    g_nof_streams => c_sdp_P_pfb,
-    g_pipeline    => 1 
-  )
-  PORT MAP (
-    rst          => dp_rst,
-    clk          => dp_clk,
-    snk_in_arr   => bf_weights_out_sosi_arr(2*c_sdp_P_pfb-1 DOWNTO c_sdp_P_pfb),
-    src_out_arr  => bf_weights_y_sosi_arr
-  );
+  -- Y pol is upper half of bf_weights_out
+  bf_weights_y_sosi_arr <= bf_weights_out_sosi_arr(2*c_sdp_P_pfb-1 DOWNTO c_sdp_P_pfb);
 
   ---------------------------------------------------------------
   -- DEINTERLEAVE X PATH
@@ -157,7 +146,7 @@ BEGIN
       rst   => dp_rst,      
       clk   => dp_clk,      
   
-      snk_in => bf_weights_y_sosi_arr(I),  
+      snk_in => bf_weights_y_sosi_arr(I),
       src_out_arr(0) => deinterleaved_y_sosi_arr(c_sdp_Q_fft*I), 
       src_out_arr(1) => deinterleaved_y_sosi_arr(c_sdp_Q_fft*I+1) 
     );