diff --git a/libraries/dsp/wpfb/tb/vhdl/tb_tb_wpfb_unit_wide.vhd b/libraries/dsp/wpfb/tb/vhdl/tb_tb_wpfb_unit_wide.vhd
index 9d79db8b79e7a8c0c7409ae189456f6b93523556..dcbd3daf59990f9fb97c6ac62d0a77cd5051ad42 100644
--- a/libraries/dsp/wpfb/tb/vhdl/tb_tb_wpfb_unit_wide.vhd
+++ b/libraries/dsp/wpfb/tb/vhdl/tb_tb_wpfb_unit_wide.vhd
@@ -59,6 +59,11 @@ ARCHITECTURE tb OF tb_tb_wpfb_unit_wide IS
                                                    true, false, true, 16, 16, 1, c_dsp_mult_w, 2, true, 56, 2,  
                                                    c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
                                                    
+  CONSTANT c_wb1_two_real_4channels   : t_wpfb := (1, 32, 2, 1,
+                                                   16, 1, 8, 16, 16,
+                                                   true, false, true, 16, 16, 1, c_dsp_mult_w, 2, true, 56, 2,  
+                                                   c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+                                                   
   -- wb 4, two real
   CONSTANT c_wb4_two_real_1024        : t_wpfb := (4, 1024, 0, 1,
                                                    16, 1, 8, 16, 16,
@@ -74,6 +79,11 @@ ARCHITECTURE tb OF tb_tb_wpfb_unit_wide IS
                                                    true, false, true, 16, 16, 1, c_dsp_mult_w, 2, true, 56, 2,  
                                                    c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
                                                     
+  CONSTANT c_wb4_two_real_4channels   : t_wpfb := (4, 32, 2, 1,
+                                                   16, 1, 8, 16, 16,
+                                                   true, false, true, 16, 16, 1, c_dsp_mult_w, 2, true, 56, 2,  
+                                                   c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+                                                   
   -- wb 1, complex reordered
   CONSTANT c_wb1_complex_1024         : t_wpfb := (1, 1024, 0, 1,
                                                    16, 1, 8, 16, 16,
@@ -92,6 +102,11 @@ ARCHITECTURE tb OF tb_tb_wpfb_unit_wide IS
                                                    true, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
                                                    c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
                                                    
+  CONSTANT c_wb1_complex_4channels    : t_wpfb := (1, 32, 2, 1,
+                                                   16, 1, 8, 16, 16,
+                                                   true, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
+                                                   c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+                                                   
   -- wb 1, complex fft_shift
   CONSTANT c_wb1_complex_fft_shift    : t_wpfb := (1, 32, 0, 1,
                                                    16, 1, 8, 16, 16,
@@ -130,6 +145,11 @@ ARCHITECTURE tb OF tb_tb_wpfb_unit_wide IS
                                                    true, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
                                                    c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
                                                    
+  CONSTANT c_wb4_complex_4channels    : t_wpfb := (4, 32, 2, 1,
+                                                   16, 1, 8, 16, 16,
+                                                   true, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
+                                                   c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+                                                   
   -- wb 4, complex fft_shift
   CONSTANT c_wb4_complex_fft_shift    : t_wpfb := (4, 32, 0, 1,
                                                    16, 1, 8, 16, 16,
@@ -137,19 +157,24 @@ ARCHITECTURE tb OF tb_tb_wpfb_unit_wide IS
                                                    c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
 
   -- wb 4, complex without reorder
-  CONSTANT c_wb4_complex_flipped_1024 : t_wpfb := (4, 1024, 0, 1,
-                                                   16, 1, 8, 16, 16,
-                                                   false, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
-                                                   c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
-  CONSTANT c_wb4_complex_flipped_64   : t_wpfb := (4, 64, 0, 1,
-                                                   16, 1, 8, 16, 16,
-                                                   false, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
-                                                   c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
-  CONSTANT c_wb4_complex_flipped      : t_wpfb := (4, 32, 0, 1,
-                                                   16, 1, 8, 16, 16,
-                                                   false, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
-                                                   c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+  CONSTANT c_wb4_complex_flipped_1024     : t_wpfb := (4, 1024, 0, 1,
+                                                       16, 1, 8, 16, 16,
+                                                       false, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
+                                                       c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+  CONSTANT c_wb4_complex_flipped_64       : t_wpfb := (4, 64, 0, 1,
+                                                       16, 1, 8, 16, 16,
+                                                       false, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
+                                                       c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+  CONSTANT c_wb4_complex_flipped          : t_wpfb := (4, 32, 0, 1,
+                                                       16, 1, 8, 16, 16,
+                                                       false, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
+                                                       c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
                                        
+  CONSTANT c_wb4_complex_flipped_channels : t_wpfb := (4, 32, 2, 1,
+                                                       16, 1, 8, 16, 16,
+                                                       false, false, false, 16, 16, 0, c_dsp_mult_w, 2, true, 56, 2,  
+                                                       c_fft_pipeline, c_fft_pipeline, c_fil_ppf_pipeline);
+                                                   
   CONSTANT c_dm_1                : natural := 1;  -- diff margin (for stage_dat_w >> c_dsp_mult_w)
   CONSTANT c_dm_3                : natural := 3;  -- diff margin (for 32 point dm=2 appears sufficient, for 1024 point dm=3 is sufficient)
   CONSTANT c_dm_5                : natural := 5;  -- diff margin (for 32 point dm=2 appears sufficient, for 1024 point dm=3 is sufficient)
@@ -276,13 +301,15 @@ BEGIN
   u_act_wb1_two_real_chirp_1024 : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real_1024, c_dm_5, c_pre_ab, c_pre_c, c_sinusoid_chirp_1024, 204800, c_zero,         51200, c_un, 0, 51200, FALSE);
   
   -- * 32 point
-  u_act_wb1_two_real_chirp         : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,          c_dm_5, c_pre_ab, c_pre_c, c_sinusoid_chirp,        6400, c_impulse_chirp, 6400, c_un, 0,  6400, FALSE);
-  u_act_wb1_two_real_a0            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,          c_dm_5, c_pre_ab, c_pre_c, c_zero,                  6400, c_impulse_chirp, 6400, c_un, 0,  6400, FALSE);
-  u_act_wb1_two_real_b0            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,          c_dm_5, c_pre_ab, c_pre_c, c_sinusoid_chirp,        6400, c_zero,          6400, c_un, 0,  6400, FALSE);
-  u_rnd_wb4_two_real_noise         : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_two_real,          c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
-  u_rnd_wb4_two_real_noise_streams : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_two_real_4streams, c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
-  u_rnd_wb1_two_real_noise         : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,          c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
-  u_rnd_wb1_two_real_noise_streams : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real_4streams, c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
+  u_act_wb1_two_real_chirp          : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,           c_dm_5, c_pre_ab, c_pre_c, c_sinusoid_chirp,        6400, c_impulse_chirp, 6400, c_un, 0,  6400, FALSE);
+  u_act_wb1_two_real_a0             : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,           c_dm_5, c_pre_ab, c_pre_c, c_zero,                  6400, c_impulse_chirp, 6400, c_un, 0,  6400, FALSE);
+  u_act_wb1_two_real_b0             : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,           c_dm_5, c_pre_ab, c_pre_c, c_sinusoid_chirp,        6400, c_zero,          6400, c_un, 0,  6400, FALSE);
+  u_rnd_wb4_two_real_noise          : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_two_real,           c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
+  u_rnd_wb4_two_real_noise_channels : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_two_real_4channels, c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
+  u_rnd_wb4_two_real_noise_streams  : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_two_real_4streams,  c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
+  u_rnd_wb1_two_real_noise          : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real,           c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
+  u_rnd_wb1_two_real_noise_channels : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real_4channels, c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
+  u_rnd_wb1_two_real_noise_streams  : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_two_real_4streams,  c_dm_5, c_pre_ab, c_pre_c, c_noise,                 1600, c_dc_agwn,       1600, c_un, 0,  1600, TRUE);
   
   -- Complex input data
   -- * 1024 point
@@ -296,14 +323,17 @@ BEGIN
   u_act_wb4_complex_flipped_noise_64 : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_flipped_64, c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex_64,  3200,  3200, FALSE);
   
   -- * 32 point
-  u_act_wb4_complex_chirp            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex,           c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor_chirp,  6400, 6400, FALSE);
-  u_act_wb4_complex_flipped          : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_flipped,   c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor_chirp,  6400, 6400, FALSE);
-  u_rnd_wb1_complex_phasor           : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex,           c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
-  u_rnd_wb4_complex_phasor           : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex,           c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
-  u_rnd_wb1_complex_fft_shift_phasor : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex_fft_shift, c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
-  u_rnd_wb4_complex_fft_shift_phasor : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_fft_shift, c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
-  u_rnd_wb1_complex_noise            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex,           c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
-  u_rnd_wb1_complex_noise_streams    : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex_4streams,  c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
-  u_rnd_wb4_complex_noise            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex,           c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
-  u_rnd_wb4_complex_noise_streams    : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_4streams,  c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
+  u_act_wb4_complex_chirp            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex,                  c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor_chirp,  6400, 6400, FALSE);
+  u_act_wb4_complex_flipped          : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_flipped,          c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor_chirp,  6400, 6400, FALSE);
+  u_rnd_wb4_complex_flipped_channels : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_flipped_channels, c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor_chirp,  6400, 6400, FALSE);
+  u_rnd_wb1_complex_phasor           : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex,                  c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
+  u_rnd_wb4_complex_phasor           : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex,                  c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
+  u_rnd_wb1_complex_fft_shift_phasor : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex_fft_shift,        c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
+  u_rnd_wb4_complex_fft_shift_phasor : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_fft_shift,        c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_phasor,        1600, 1600, TRUE);
+  u_rnd_wb1_complex_noise            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex,                  c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
+  u_rnd_wb1_complex_noise_channels   : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex_4channels,        c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
+  u_rnd_wb1_complex_noise_streams    : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb1_complex_4streams,         c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
+  u_rnd_wb4_complex_noise            : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex,                  c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
+  u_rnd_wb4_complex_noise_channels   : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_4channels,        c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
+  u_rnd_wb4_complex_noise_streams    : ENTITY work.tb_wpfb_unit_wide GENERIC MAP (c_wb4_complex_4streams,         c_dm_3, c_pre_ab, c_pre_c, c_un, 0, c_un, 0, c_noise_complex, 1600, 1600, TRUE);
 END tb;