diff --git a/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.fpga.yaml b/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.fpga.yaml
index 14218e8d3d3e96e1716b2418c849465390c4b3ff..3c6ba74af6f99fb0380ed4b2f20af2faf5a6c63e 100644
--- a/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.fpga.yaml
+++ b/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.fpga.yaml
@@ -84,6 +84,14 @@ peripherals:
     mm_port_names:
       - REG_REMU
 
+  #############################################################################
+  # SDP Info
+  #############################################################################
+
+  - peripheral_name: sdp/sdp_info
+    mm_port_names:
+      - REG_SDP_INFO
+
   #############################################################################
   # AIT = ADC Input and Timing (see node_adc_input_and_timing.vhd)
   #############################################################################
@@ -207,10 +215,6 @@ peripherals:
   # BF = Beamformer (from node_sdp_beamformer.vhd)
   #############################################################################
   
-  - peripheral_name: sdp/sdp_info
-    mm_port_names:
-      - REG_SDP_INFO
-      
   - peripheral_name: reorder/reorder_col_wide
     number_of_peripherals: c_N_beamsets  # lofar2_unb2b_beamformer.vhd
     parameter_overrides:
diff --git a/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.mmap.gold b/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.mmap.gold
index 34304c094d92a153e323ae637317ddb8878a237d..80806efb43bcce15c07ffad7edb9687ba4f0cc64 100644
--- a/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.mmap.gold
+++ b/applications/lofar2/designs/lofar2_unb2b_beamformer/lofar2_unb2b_beamformer.mmap.gold
@@ -15,8 +15,8 @@ number_of_columns = 13
 # col 9: field radix, if - then it is part of previous field_name.
 # col 10: field mm_mask
 # col 11: field user_mask, if - then it is same as mm_mask
-# col 12: number of peripherals span, if - then not used
-# col 13: number of mm_ports span, if - then not used
+# col 12: mm_peripheral_span (in MM words), if - then the span is not used or already defined on first line of MM port
+# col 13: mm_port_span (in MM words), if - then the span is not used or already defined on first line of MM port
 #
 # col1                      col2  col3  col4   col5                                      col6        col7    col8   col9         col10       col11       col12  col13
 # ------------------------  ----  ----  -----  ----------------------------------------  ----------  ------  -----  -----------  ----------  ----------  -----  -----
@@ -67,60 +67,73 @@ number_of_columns = 13
   -                         -     -     -      data_out                                  0x0001a004       1     RO       uint32     b[23:0]           -  -      -    
   -                         -     -     -      data_in                                   0x0001a005       1     WO       uint32     b[23:0]           -  -      -    
   -                         -     -     -      busy                                      0x0001a006       1     RO       uint32      b[0:0]           -  -      -    
-  PIO_JESD_CTRL             1     1     REG    enable                                    0x0001c000       1     RW       uint32     b[30:0]           -  -      -    
-  -                         -     -     -      reset                                     0x0001c000       1     RW       uint32    b[31:31]           -  -      -    
-  JESD204B                  1     1     REG    rx_dll_ctrl                               0x0001e014       1     RW       uint32     b[16:0]           -  -      -    
-  -                         -     -     -      rx_syncn_sysref_ctrl                      0x0001e015       1     RW       uint32     b[24:0]           -  -      -    
-  -                         -     -     -      rx_csr_sysref_always_on                   0x0001e015       1     RW       uint32      b[1:1]           -  -      -    
-  -                         -     -     -      rx_csr_rbd_offset                         0x0001e015       1     RW       uint32     b[10:3]           -  -      -    
-  -                         -     -     -      rx_csr_lmfc_offset                        0x0001e015       1     RW       uint32    b[19:12]           -  -      -    
-  -                         -     -     -      rx_err0                                   0x0001e018       1     RW       uint32      b[8:0]           -  -      -    
-  -                         -     -     -      rx_err1                                   0x0001e019       1     RW       uint32      b[9:0]           -  -      -    
-  -                         -     -     -      csr_dev_syncn                             0x0001e020       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      csr_rbd_count                             0x0001e020       1     RO       uint32     b[10:3]           -  -      -    
-  -                         -     -     -      rx_status1                                0x0001e021       1     RW       uint32     b[23:0]           -  -      -    
-  -                         -     -     -      rx_status2                                0x0001e022       1     RW       uint32     b[23:0]           -  -      -    
-  -                         -     -     -      rx_status3                                0x0001e023       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_l                             0x0001e025       1     RW       uint32      b[4:0]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_f                             0x0001e025       1     RW       uint32     b[15:8]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_k                             0x0001e025       1     RW       uint32    b[20:16]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_m                             0x0001e025       1     RW       uint32    b[31:24]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_n                             0x0001e026       1     RW       uint32      b[4:0]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_cs                            0x0001e026       1     RW       uint32      b[7:6]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_np                            0x0001e026       1     RW       uint32     b[12:8]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_subclassv                     0x0001e026       1     RW       uint32    b[15:13]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_s                             0x0001e026       1     RW       uint32    b[20:16]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_jesdv                         0x0001e026       1     RW       uint32    b[23:21]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_cf                            0x0001e026       1     RW       uint32    b[28:24]           -  -      -    
-  -                         -     -     -      rx_ilas_csr_hd                            0x0001e026       1     RW       uint32    b[31:31]           -  -      -    
-  -                         -     -     -      rx_status4                                0x0001e03c       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_status5                                0x0001e03d       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_status6                                0x0001e03e       1     RW       uint32     b[23:0]           -  -      -    
-  -                         -     -     -      rx_status7                                0x0001e03f       1     RO       uint32     b[31:0]           -  -      -    
-  REG_DP_SHIFTRAM           1     12    REG    shift                                     0x00020000       1     RW       uint32     b[11:0]           -  12     1    
-  REG_BSN_SOURCE            1     1     REG    dp_on                                     0x00022000       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      dp_on_pps                                 0x00022000       1     RW       uint32      b[1:1]           -  -      -    
-  -                         -     -     -      nof_block_per_sync                        0x00022001       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      bsn                                       0x00022002       1     RW       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x00022003       -      -            -     b[31:0]    b[63:32]  -      -    
-  REG_BSN_SCHEDULER         1     1     REG    scheduled_bsn                             0x00024000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x00024001       -      -            -     b[31:0]    b[63:32]  -      -    
-  REG_BSN_MONITOR_INPUT     1     1     REG    xon_stable                                0x00026000       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      ready_stable                              0x00026000       1     RO       uint32      b[1:1]           -  -      -    
-  -                         -     -     -      sync_timeout                              0x00026000       1     RO       uint32      b[2:2]           -  -      -    
-  -                         -     -     -      bsn_at_sync                               0x00026001       1     RO       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x00026002       -      -            -     b[31:0]    b[63:32]  -      -    
-  -                         -     -     -      nof_sop                                   0x00026003       1     RO       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      nof_valid                                 0x00026004       1     RO       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      nof_err                                   0x00026005       1     RO       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      bsn_first                                 0x00026006       1     RO       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x00026007       -      -            -     b[31:0]    b[63:32]  -      -    
-  -                         -     -     -      bsn_first_cycle_cnt                       0x00026008       1     RO       uint32     b[31:0]           -  -      -    
-  REG_DIAG_WG               1     12    REG    mode                                      0x00028000       1     RW       uint32      b[7:0]           -  48     4    
-  -                         -     -     -      nof_samples                               0x00028000       1     RW       uint32    b[31:16]           -  -      -    
-  -                         -     -     -      phase                                     0x00028001       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      freq                                      0x00028002       1     RW       uint32     b[30:0]           -  -      -    
-  -                         -     -     -      ampl                                      0x00028003       1     RW       uint32     b[16:0]           -  -      -    
+  REG_SDP_INFO              1     1     REG    beamlet_scale                             0x0001c000       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      block_period                              0x0001c001       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      n_rn                                      0x0001c002       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      o_rn                                      0x0001c003       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      n_si                                      0x0001c004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      o_si                                      0x0001c005       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      beam_repositioning_flag                   0x0001c006       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      fsub_type                                 0x0001c007       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      f_adc                                     0x0001c008       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      nyquist_zone_index                        0x0001c009       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      observation_id                            0x0001c00a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      antenna_band_index                        0x0001c00b       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      station_id                                0x0001c00c       1     RW       uint32     b[15:0]           -  -      -    
+  PIO_JESD_CTRL             1     1     REG    enable                                    0x0001e000       1     RW       uint32     b[30:0]           -  -      -    
+  -                         -     -     -      reset                                     0x0001e000       1     RW       uint32    b[31:31]           -  -      -    
+  JESD204B                  1     1     REG    rx_dll_ctrl                               0x00020014       1     RW       uint32     b[16:0]           -  -      -    
+  -                         -     -     -      rx_syncn_sysref_ctrl                      0x00020015       1     RW       uint32     b[24:0]           -  -      -    
+  -                         -     -     -      rx_csr_sysref_always_on                   0x00020015       1     RW       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      rx_csr_rbd_offset                         0x00020015       1     RW       uint32     b[10:3]           -  -      -    
+  -                         -     -     -      rx_csr_lmfc_offset                        0x00020015       1     RW       uint32    b[19:12]           -  -      -    
+  -                         -     -     -      rx_err0                                   0x00020018       1     RW       uint32      b[8:0]           -  -      -    
+  -                         -     -     -      rx_err1                                   0x00020019       1     RW       uint32      b[9:0]           -  -      -    
+  -                         -     -     -      csr_dev_syncn                             0x00020020       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      csr_rbd_count                             0x00020020       1     RO       uint32     b[10:3]           -  -      -    
+  -                         -     -     -      rx_status1                                0x00020021       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status2                                0x00020022       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status3                                0x00020023       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_l                             0x00020025       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_f                             0x00020025       1     RW       uint32     b[15:8]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_k                             0x00020025       1     RW       uint32    b[20:16]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_m                             0x00020025       1     RW       uint32    b[31:24]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_n                             0x00020026       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_cs                            0x00020026       1     RW       uint32      b[7:6]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_np                            0x00020026       1     RW       uint32     b[12:8]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_subclassv                     0x00020026       1     RW       uint32    b[15:13]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_s                             0x00020026       1     RW       uint32    b[20:16]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_jesdv                         0x00020026       1     RW       uint32    b[23:21]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_cf                            0x00020026       1     RW       uint32    b[28:24]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_hd                            0x00020026       1     RW       uint32    b[31:31]           -  -      -    
+  -                         -     -     -      rx_status4                                0x0002003c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_status5                                0x0002003d       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_status6                                0x0002003e       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status7                                0x0002003f       1     RO       uint32     b[31:0]           -  -      -    
+  REG_DP_SHIFTRAM           1     12    REG    shift                                     0x00022000       1     RW       uint32     b[11:0]           -  12     1    
+  REG_BSN_SOURCE            1     1     REG    dp_on                                     0x00024000       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      dp_on_pps                                 0x00024000       1     RW       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      nof_block_per_sync                        0x00024001       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      bsn                                       0x00024002       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00024003       -      -            -     b[31:0]    b[63:32]  -      -    
+  REG_BSN_SCHEDULER         1     1     REG    scheduled_bsn                             0x00026000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00026001       -      -            -     b[31:0]    b[63:32]  -      -    
+  REG_BSN_MONITOR_INPUT     1     1     REG    xon_stable                                0x00028000       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      ready_stable                              0x00028000       1     RO       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      sync_timeout                              0x00028000       1     RO       uint32      b[2:2]           -  -      -    
+  -                         -     -     -      bsn_at_sync                               0x00028001       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00028002       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      nof_sop                                   0x00028003       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      nof_valid                                 0x00028004       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      nof_err                                   0x00028005       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      bsn_first                                 0x00028006       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00028007       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      bsn_first_cycle_cnt                       0x00028008       1     RO       uint32     b[31:0]           -  -      -    
+  REG_DIAG_WG               1     12    REG    mode                                      0x0002a000       1     RW       uint32      b[7:0]           -  48     4    
+  -                         -     -     -      nof_samples                               0x0002a000       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      phase                                     0x0002a001       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      freq                                      0x0002a002       1     RW       uint32     b[30:0]           -  -      -    
+  -                         -     -     -      ampl                                      0x0002a003       1     RW       uint32     b[16:0]           -  -      -    
   RAM_DIAG_WG               1     12    RAM    data                                      0x0002c000    1024     RW       uint32     b[17:0]           -  16384  1024 
   REG_ADUH_MON              1     12    REG    mean_sum                                  0x00030000       1     RO        int64     b[31:0]     b[31:0]  48     4    
   -                         -     -     -      -                                         0x00030001       -      -            -     b[31:0]    b[63:32]  -      -    
@@ -182,291 +195,278 @@ number_of_columns = 13
   -                         -     -     -      eth_destination_mac                       0x0004a029       1     RW       uint64     b[31:0]     b[31:0]  -      -    
   -                         -     -     -      -                                         0x0004a02a       -      -            -     b[15:0]    b[47:32]  -      -    
   -                         -     -     -      word_align                                0x0004a02b       1     RW       uint32     b[15:0]           -  -      -    
-  REG_SDP_INFO              1     1     REG    beamlet_scale                             0x0004c000       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      block_period                              0x0004c001       1     RO       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      n_rn                                      0x0004c002       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      o_rn                                      0x0004c003       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      n_si                                      0x0004c004       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      o_si                                      0x0004c005       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      beam_repositioning_flag                   0x0004c006       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      fsub_type                                 0x0004c007       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      f_adc                                     0x0004c008       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      nyquist_zone_index                        0x0004c009       1     RW       uint32      b[1:0]           -  -      -    
-  -                         -     -     -      observation_id                            0x0004c00a       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      antenna_band_index                        0x0004c00b       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      station_id                                0x0004c00c       1     RW       uint32     b[15:0]           -  -      -    
-  RAM_SS_SS_WIDE            2     6     RAM    data                                      0x0004e000     976     RW       uint32      b[9:0]           -  8192   1024 
-  RAM_BF_WEIGHTS            2     12    RAM    data                                      0x00054000     976     RW    cint16_ir     b[31:0]           -  16384  1024 
-  REG_BF_SCALE              2     1     REG    scale                                     0x0005c000       1     RW       uint32     b[15:0]           -  2      2    
-  -                         -     -     -      unused                                    0x0005c001       1     RW       uint32     b[31:0]           -  -      -    
-  REG_HDR_DAT               2     1     REG    bsn                                       0x0005e000       1     RW       uint64     b[31:0]     b[31:0]  64     64   
-  -                         -     -     -      -                                         0x0005e001       -      -            -     b[31:0]    b[63:32]  -      -    
-  -                         -     -     -      sdp_block_period                          0x0005e002       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      sdp_nof_beamlets_per_block                0x0005e003       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      sdp_nof_blocks_per_packet                 0x0005e004       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      sdp_beamlet_index                         0x0005e005       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      sdp_beamlet_scale                         0x0005e006       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      sdp_reserved                              0x0005e007       1     RW       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x0005e008       -      -            -      b[7:0]    b[39:32]  -      -    
-  -                         -     -     -      sdp_source_info_gn_index                  0x0005e009       1     RW       uint32      b[4:0]           -  -      -    
-  -                         -     -     -      sdp_source_info_beamlet_width             0x0005e00a       1     RW       uint32      b[7:5]           -  -      -    
-  -                         -     -     -      sdp_source_info_repositioning_flag        0x0005e00b       1     RW       uint32      b[9:9]           -  -      -    
-  -                         -     -     -      sdp_source_info_payload_error             0x0005e00c       1     RW       uint32    b[10:10]           -  -      -    
-  -                         -     -     -      sdp_source_info_fsub_type                 0x0005e00d       1     RW       uint32    b[11:11]           -  -      -    
-  -                         -     -     -      sdp_source_info_f_adc                     0x0005e00e       1     RW       uint32    b[12:12]           -  -      -    
-  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x0005e00f       1     RW       uint32    b[14:13]           -  -      -    
-  -                         -     -     -      sdp_source_info_antenna_band_index        0x0005e010       1     RW       uint32    b[15:15]           -  -      -    
-  -                         -     -     -      sdp_station_id                            0x0005e011       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      sdp_observation_id                        0x0005e012       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      sdp_version_id                            0x0005e013       1     RO       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      sdp_marker                                0x0005e014       1     RO       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      udp_checksum                              0x0005e015       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      udp_length                                0x0005e016       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      udp_destination_port                      0x0005e017       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      udp_source_port                           0x0005e018       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_destination_address                    0x0005e019       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      ip_source_address                         0x0005e01a       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      ip_header_checksum                        0x0005e01b       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_protocol                               0x0005e01c       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      ip_time_to_live                           0x0005e01d       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      ip_fragment_offset                        0x0005e01e       1     RW       uint32     b[12:0]           -  -      -    
-  -                         -     -     -      ip_flags                                  0x0005e01f       1     RW       uint32      b[2:0]           -  -      -    
-  -                         -     -     -      ip_identification                         0x0005e020       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_total_length                           0x0005e021       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_services                               0x0005e022       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      ip_header_length                          0x0005e023       1     RW       uint32      b[3:0]           -  -      -    
-  -                         -     -     -      ip_version                                0x0005e024       1     RW       uint32      b[3:0]           -  -      -    
-  -                         -     -     -      eth_type                                  0x0005e025       1     RO       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      eth_source_mac                            0x0005e026       1     RO       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x0005e027       -      -            -     b[15:0]    b[47:32]  -      -    
-  -                         -     -     -      eth_destination_mac                       0x0005e028       1     RW       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x0005e029       -      -            -     b[15:0]    b[47:32]  -      -    
-  REG_DP_XONOFF             2     1     REG    enable_stream                             0x00060000       1     RW       uint32      b[0:0]           -  1      1    
-  RAM_ST_BST                1     1     RAM    data                                      0x00062000    1952     RW       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x00060001       -      -            -     b[21:0]    b[53:32]  -      -    
-  REG_STAT_ENABLE_BST       1     1     REG    enable                                    0x00064000       1     RW       uint32      b[0:0]           -  -      -    
-  REG_STAT_HDR_INFO_BST     1     1     REG    bsn                                       0x00066000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x00066001       -      -            -     b[31:0]    b[63:32]  -      -    
-  -                         -     -     -      block_period                              0x00066002       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      nof_statistics_per_packet                 0x00066003       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      nof_bytes_per_statistic                   0x00066004       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      nof_signal_inputs                         0x00066005       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      sdp_data_id                               0x00066006       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      sdp_data_id_bst_beamlet_index             0x00066006       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      sdp_data_id_bst_reserved                  0x00066006       1     RW       uint32    b[31:16]           -  -      -    
-  -                         -     -     -      sdp_integration_interval                  0x00066007       1     RW       uint32     b[23:0]           -  -      -    
-  -                         -     -     -      sdp_reserved                              0x00066008       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      sdp_source_info_gn_index                  0x00066009       1     RW       uint32      b[4:0]           -  -      -    
-  -                         -     -     -      sdp_source_info_reserved                  0x0006600a       1     RW       uint32      b[7:5]           -  -      -    
-  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x0006600b       1     RW       uint32      b[8:8]           -  -      -    
-  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x0006600c       1     RW       uint32      b[9:9]           -  -      -    
-  -                         -     -     -      sdp_source_info_payload_error             0x0006600d       1     RW       uint32    b[10:10]           -  -      -    
-  -                         -     -     -      sdp_source_info_fsub_type                 0x0006600e       1     RW       uint32    b[11:11]           -  -      -    
-  -                         -     -     -      sdp_source_info_f_adc                     0x0006600f       1     RW       uint32    b[12:12]           -  -      -    
-  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x00066010       1     RW       uint32    b[14:13]           -  -      -    
-  -                         -     -     -      sdp_source_info_antenna_band_index        0x00066011       1     RW       uint32    b[15:15]           -  -      -    
-  -                         -     -     -      sdp_station_id                            0x00066012       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      sdp_observation_id                        0x00066013       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      sdp_version_id                            0x00066014       1     RO       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      sdp_marker                                0x00066015       1     RO       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      udp_checksum                              0x00066016       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      udp_length                                0x00066017       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      udp_destination_port                      0x00066018       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      udp_source_port                           0x00066019       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_destination_address                    0x0006601a       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      ip_source_address                         0x0006601b       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      ip_header_checksum                        0x0006601c       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_protocol                               0x0006601d       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      ip_time_to_live                           0x0006601e       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      ip_fragment_offset                        0x0006601f       1     RW       uint32     b[12:0]           -  -      -    
-  -                         -     -     -      ip_flags                                  0x00066020       1     RW       uint32      b[2:0]           -  -      -    
-  -                         -     -     -      ip_identification                         0x00066021       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_total_length                           0x00066022       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      ip_services                               0x00066023       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      ip_header_length                          0x00066024       1     RW       uint32      b[3:0]           -  -      -    
-  -                         -     -     -      ip_version                                0x00066025       1     RW       uint32      b[3:0]           -  -      -    
-  -                         -     -     -      eth_type                                  0x00066026       1     RO       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      eth_source_mac                            0x00066027       1     RO       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x00066028       -      -            -     b[15:0]    b[47:32]  -      -    
-  -                         -     -     -      eth_destination_mac                       0x00066029       1     RW       uint64     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      -                                         0x0006602a       -      -            -     b[15:0]    b[47:32]  -      -    
-  -                         -     -     -      word_align                                0x0006602b       1     RW       uint32     b[15:0]           -  -      -    
-  REG_NW_10GBE_MAC          1     1     REG    rx_transfer_control                       0x00068000       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      rx_transfer_status                        0x00068001       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      tx_transfer_control                       0x00068002       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      rx_padcrc_control                         0x00068040       1     RW       uint32      b[1:0]           -  -      -    
-  -                         -     -     -      rx_crccheck_control                       0x00068080       1     RW       uint32      b[1:0]           -  -      -    
-  -                         -     -     -      rx_pktovrflow_error                       0x000680c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x000680c1       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_pktovrflow_etherstatsdropevents        0x000680c2       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x000680c3       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_lane_decoder_preamble_control          0x00068100       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      rx_preamble_inserter_control              0x00068140       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      rx_frame_control                          0x00068800       1     RW       uint32     b[19:0]           -  -      -    
-  -                         -     -     -      rx_frame_maxlength                        0x00068801       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_addr0                            0x00068802       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_addr1                            0x00068803       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr0_0                        0x00068804       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr0_1                        0x00068805       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr1_0                        0x00068806       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr1_1                        0x00068807       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr2_0                        0x00068808       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr2_1                        0x00068809       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr3_0                        0x0006880a       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_frame_spaddr3_1                        0x0006880b       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      rx_pfc_control                            0x00068818       1     RW       uint32     b[16:0]           -  -      -    
-  -                         -     -     -      rx_stats_clr                              0x00068c00       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      rx_stats_framesok                         0x00068c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c03       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_frameserr                        0x00068c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c05       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_framescrcerr                     0x00068c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c07       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_octetsok                         0x00068c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c09       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_pausemacctrl_frames              0x00068c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c0b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_iferrors                         0x00068c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c0d       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_unicast_framesok                 0x00068c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c0f       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_unicast_frameserr                0x00068c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c11       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_multicastframesok                0x00068c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c13       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_multicast_frameserr              0x00068c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c15       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_broadcastframesok                0x00068c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c17       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_broadcast_frameserr              0x00068c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c19       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstatsoctets                 0x00068c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c1b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstatspkts                   0x00068c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c1d       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_undersizepkts         0x00068c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c1f       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_oversizepkts          0x00068c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c21       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_pkts64octets          0x00068c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c23       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_pkts65to127octets     0x00068c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c25       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_pkts128to255octets    0x00068c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c27       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_pkts256to511octets    0x00068c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c29       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_pkts512to1023octets   0x00068c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c2b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstat_pkts1024to1518octets   0x00068c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c2d       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_pkts1519toxoctets     0x00068c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c2f       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_fragments             0x00068c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c31       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstats_jabbers               0x00068c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c33       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_etherstatscrcerr                 0x00068c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c35       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_unicastmacctrlframes             0x00068c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c37       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_multicastmac_ctrlframes          0x00068c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c39       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_broadcastmac_ctrlframes          0x00068c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c3b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      rx_stats_pfcmacctrlframes                 0x00068c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00068c3d       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_transfer_status                        0x00069001       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      tx_padins_control                         0x00069040       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      tx_crcins_control                         0x00069080       1     RW       uint32      b[1:0]           -  -      -    
-  -                         -     -     -      tx_pktunderflow_error                     0x000690c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x000690c1       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_preamble_control                       0x00069100       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      tx_pauseframe_control                     0x00069140       1     RW       uint32      b[1:0]           -  -      -    
-  -                         -     -     -      tx_pauseframe_quanta                      0x00069141       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      tx_pauseframe_enable                      0x00069142       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_0                        0x00069180       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_1                        0x00069181       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_2                        0x00069182       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_3                        0x00069183       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_4                        0x00069184       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_5                        0x00069185       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_6                        0x00069186       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_pause_quanta_7                        0x00069187       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_0                      0x00069190       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_1                      0x00069191       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_2                      0x00069192       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_3                      0x00069193       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_4                      0x00069194       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_5                      0x00069195       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_6                      0x00069196       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      pfc_holdoff_quanta_7                      0x00069197       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      tx_pfc_priority_enable                    0x000691a0       1     RW       uint32      b[7:0]           -  -      -    
-  -                         -     -     -      tx_addrins_control                        0x00069200       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      tx_addrins_macaddr0                       0x00069201       1     RW       uint32     b[31:0]           -  -      -    
-  -                         -     -     -      tx_addrins_macaddr1                       0x00069202       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      tx_frame_maxlength                        0x00069801       1     RW       uint32     b[15:0]           -  -      -    
-  -                         -     -     -      tx_stats_clr                              0x00069c00       1     RW       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      tx_stats_framesok                         0x00069c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c03       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_frameserr                        0x00069c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c05       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_framescrcerr                     0x00069c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c07       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_octetsok                         0x00069c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c09       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_pausemacctrl_frames              0x00069c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c0b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_iferrors                         0x00069c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c0d       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_unicast_framesok                 0x00069c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c0f       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_unicast_frameserr                0x00069c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c11       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_multicastframesok                0x00069c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c13       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_multicast_frameserr              0x00069c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c15       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_broadcastframesok                0x00069c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c17       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_broadcast_frameserr              0x00069c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c19       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstatsoctets                 0x00069c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c1b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstatspkts                   0x00069c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c1d       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_undersizepkts         0x00069c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c1f       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_oversizepkts          0x00069c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c21       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_pkts64octets          0x00069c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c23       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_pkts65to127octets     0x00069c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c25       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_pkts128to255octets    0x00069c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c27       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_pkts256to511octets    0x00069c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c29       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_pkts512to1023octets   0x00069c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c2b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstat_pkts1024to1518octets   0x00069c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c2d       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_pkts1519toxoctets     0x00069c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c2f       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_fragments             0x00069c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c31       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstats_jabbers               0x00069c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c33       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_etherstatscrcerr                 0x00069c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c35       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_unicastmacctrlframes             0x00069c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c37       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_multicastmac_ctrlframes          0x00069c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c39       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_broadcastmac_ctrlframes          0x00069c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c3b       -      -            -     b[31:0]     b[31:0]  -      -    
-  -                         -     -     -      tx_stats_pfcmacctrlframes                 0x00069c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
-  -                         -     -     -      -                                         0x00069c3d       -      -            -     b[31:0]     b[31:0]  -      -    
-  REG_NW_10GBE_ETH10G       1     1     REG    tx_snk_out_xon                            0x0006a000       1     RO       uint32      b[0:0]           -  -      -    
-  -                         -     -     -      xgmii_tx_ready                            0x0006a000       1     RO       uint32      b[1:1]           -  -      -    
-  -                         -     -     -      xgmii_link_status                         0x0006a000       1     RO       uint32      b[3:2]           -  -      -    
\ No newline at end of file
+  RAM_SS_SS_WIDE            2     6     RAM    data                                      0x0004c000     976     RW       uint32      b[9:0]           -  8192   1024 
+  RAM_BF_WEIGHTS            2     12    RAM    data                                      0x00050000     976     RW    cint16_ir     b[31:0]           -  16384  1024 
+  REG_BF_SCALE              2     1     REG    scale                                     0x00058000       1     RW       uint32     b[15:0]           -  2      2    
+  -                         -     -     -      unused                                    0x00058001       1     RW       uint32     b[31:0]           -  -      -    
+  REG_HDR_DAT               2     1     REG    bsn                                       0x0005a000       1     RW       uint64     b[31:0]     b[31:0]  64     64   
+  -                         -     -     -      -                                         0x0005a001       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      sdp_block_period                          0x0005a002       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_beamlets_per_block                0x0005a003       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_blocks_per_packet                 0x0005a004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_beamlet_index                         0x0005a005       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_beamlet_scale                         0x0005a006       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x0005a007       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005a008       -      -            -      b[7:0]    b[39:32]  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x0005a009       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_beamlet_width             0x0005a00a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_repositioning_flag        0x0005a00b       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0005a00c       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0005a00d       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0005a00e       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x0005a00f       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x0005a010       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x0005a011       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x0005a012       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x0005a013       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x0005a014       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x0005a015       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x0005a016       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x0005a017       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x0005a018       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x0005a019       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0005a01a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0005a01b       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0005a01c       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0005a01d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0005a01e       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x0005a01f       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x0005a020       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x0005a021       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x0005a022       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x0005a023       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x0005a024       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x0005a025       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x0005a026       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005a027       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x0005a028       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005a029       -      -            -     b[15:0]    b[47:32]  -      -    
+  REG_DP_XONOFF             2     1     REG    enable_stream                             0x0005c000       1     RW       uint32      b[0:0]           -  1      1    
+  RAM_ST_BST                1     1     RAM    data                                      0x0005e000    1952     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005c001       -      -            -     b[21:0]    b[53:32]  -      -    
+  REG_STAT_ENABLE_BST       1     1     REG    enable                                    0x00060000       1     RW       uint32      b[0:0]           -  -      -    
+  REG_STAT_HDR_INFO_BST     1     1     REG    bsn                                       0x00062000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00062001       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      block_period                              0x00062002       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_statistics_per_packet                 0x00062003       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_bytes_per_statistic                   0x00062004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      nof_signal_inputs                         0x00062005       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id                               0x00062006       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_beamlet_index             0x00062006       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_reserved                  0x00062006       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      sdp_integration_interval                  0x00062007       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x00062008       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x00062009       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_reserved                  0x0006200a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x0006200b       1     RW       uint32      b[8:8]           -  -      -    
+  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x0006200c       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0006200d       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0006200e       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0006200f       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x00062010       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x00062011       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x00062012       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x00062013       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x00062014       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x00062015       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x00062016       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x00062017       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x00062018       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x00062019       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x0006201a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0006201b       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0006201c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0006201d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0006201e       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0006201f       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x00062020       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x00062021       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x00062022       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x00062023       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x00062024       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x00062025       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x00062026       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x00062027       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00062028       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x00062029       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0006202a       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      word_align                                0x0006202b       1     RW       uint32     b[15:0]           -  -      -    
+  REG_NW_10GBE_MAC          1     1     REG    rx_transfer_control                       0x00064000       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_transfer_status                        0x00064001       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_transfer_control                       0x00064002       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_padcrc_control                         0x00064040       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      rx_crccheck_control                       0x00064080       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      rx_pktovrflow_error                       0x000640c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000640c1       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_pktovrflow_etherstatsdropevents        0x000640c2       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000640c3       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_lane_decoder_preamble_control          0x00064100       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_preamble_inserter_control              0x00064140       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_frame_control                          0x00064800       1     RW       uint32     b[19:0]           -  -      -    
+  -                         -     -     -      rx_frame_maxlength                        0x00064801       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_addr0                            0x00064802       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_addr1                            0x00064803       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr0_0                        0x00064804       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr0_1                        0x00064805       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr1_0                        0x00064806       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr1_1                        0x00064807       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr2_0                        0x00064808       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr2_1                        0x00064809       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr3_0                        0x0006480a       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr3_1                        0x0006480b       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_pfc_control                            0x00064818       1     RW       uint32     b[16:0]           -  -      -    
+  -                         -     -     -      rx_stats_clr                              0x00064c00       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_stats_framesok                         0x00064c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c03       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_frameserr                        0x00064c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c05       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_framescrcerr                     0x00064c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c07       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_octetsok                         0x00064c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c09       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_pausemacctrl_frames              0x00064c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c0b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_iferrors                         0x00064c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c0d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicast_framesok                 0x00064c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c0f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicast_frameserr                0x00064c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c11       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicastframesok                0x00064c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c13       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicast_frameserr              0x00064c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c15       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcastframesok                0x00064c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c17       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcast_frameserr              0x00064c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c19       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatsoctets                 0x00064c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c1b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatspkts                   0x00064c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c1d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_undersizepkts         0x00064c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c1f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_oversizepkts          0x00064c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c21       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts64octets          0x00064c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c23       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts65to127octets     0x00064c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c25       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts128to255octets    0x00064c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c27       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts256to511octets    0x00064c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c29       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts512to1023octets   0x00064c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c2b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstat_pkts1024to1518octets   0x00064c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c2d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts1519toxoctets     0x00064c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c2f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_fragments             0x00064c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c31       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_jabbers               0x00064c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c33       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatscrcerr                 0x00064c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c35       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicastmacctrlframes             0x00064c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c37       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicastmac_ctrlframes          0x00064c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c39       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcastmac_ctrlframes          0x00064c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c3b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_pfcmacctrlframes                 0x00064c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00064c3d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_transfer_status                        0x00065001       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_padins_control                         0x00065040       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_crcins_control                         0x00065080       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      tx_pktunderflow_error                     0x000650c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000650c1       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_preamble_control                       0x00065100       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_control                     0x00065140       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_quanta                      0x00065141       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_enable                      0x00065142       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_0                        0x00065180       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_1                        0x00065181       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_2                        0x00065182       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_3                        0x00065183       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_4                        0x00065184       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_5                        0x00065185       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_6                        0x00065186       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_7                        0x00065187       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_0                      0x00065190       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_1                      0x00065191       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_2                      0x00065192       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_3                      0x00065193       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_4                      0x00065194       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_5                      0x00065195       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_6                      0x00065196       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_7                      0x00065197       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      tx_pfc_priority_enable                    0x000651a0       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      tx_addrins_control                        0x00065200       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_addrins_macaddr0                       0x00065201       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      tx_addrins_macaddr1                       0x00065202       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_frame_maxlength                        0x00065801       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_stats_clr                              0x00065c00       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_stats_framesok                         0x00065c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c03       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_frameserr                        0x00065c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c05       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_framescrcerr                     0x00065c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c07       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_octetsok                         0x00065c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c09       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_pausemacctrl_frames              0x00065c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c0b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_iferrors                         0x00065c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c0d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicast_framesok                 0x00065c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c0f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicast_frameserr                0x00065c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c11       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicastframesok                0x00065c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c13       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicast_frameserr              0x00065c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c15       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcastframesok                0x00065c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c17       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcast_frameserr              0x00065c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c19       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatsoctets                 0x00065c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c1b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatspkts                   0x00065c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c1d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_undersizepkts         0x00065c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c1f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_oversizepkts          0x00065c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c21       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts64octets          0x00065c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c23       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts65to127octets     0x00065c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c25       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts128to255octets    0x00065c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c27       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts256to511octets    0x00065c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c29       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts512to1023octets   0x00065c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c2b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstat_pkts1024to1518octets   0x00065c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c2d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts1519toxoctets     0x00065c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c2f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_fragments             0x00065c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c31       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_jabbers               0x00065c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c33       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatscrcerr                 0x00065c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c35       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicastmacctrlframes             0x00065c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c37       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicastmac_ctrlframes          0x00065c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c39       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcastmac_ctrlframes          0x00065c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c3b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_pfcmacctrlframes                 0x00065c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00065c3d       -      -            -     b[31:0]     b[31:0]  -      -    
+  REG_NW_10GBE_ETH10G       1     1     REG    tx_snk_out_xon                            0x00066000       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      xgmii_tx_ready                            0x00066000       1     RO       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      xgmii_link_status                         0x00066000       1     RO       uint32      b[3:2]           -  -      -    
\ No newline at end of file
diff --git a/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml
index 0462ee07fc37fb600588d5e788539ca51040162a..629006f70e379209faff73fc323875805973f7e9 100644
--- a/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml
+++ b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml
@@ -28,20 +28,19 @@ parameters:
   - { name: c_W_sub_weight,         value: 16 }
   - { name: c_W_bf_weight,          value: 16 }
   - { name: c_W_beamlet_scale,      value: 16 }
-  - { name: c_W_beamlet_resolution, value: 0 - 15 }  # EK: FIXME support passing on negative values, workaround use 0 - positive
+  - { name: c_W_beamlet_resolution, value: 0 - 15 }  # EK: FIXME: support passing on negative values, workaround use 0 - positive
   - { name: c_W_beamlet,            value: 8 }
   - { name: c_nof_clk_per_pps,      value: c_f_adc_MHz * 10**6 }  # = 200000000
-  - { name: c_nof_block_per_sync,   value: 195313 }  # TBD temporarily use 390625 = 2 * 195312, to have integer number of blocks in 2 s sync interval, TODO: remove when REG_BSN_SOURCE_V2 is used
 
 peripherals:
   #############################################################################
   # Factory / minimal (see ctrl_unb2b_board.vhd)
   #############################################################################
   - peripheral_name: unb2b_board/system_info
+    lock_base_address: 0x10000
     mm_port_names:
       - ROM_SYSTEM_INFO
       - PIO_SYSTEM_INFO
-    lock_base_address: 0x10000
 
   - peripheral_name: unb2b_board/wdi
     mm_port_names:
@@ -84,6 +83,14 @@ peripherals:
     mm_port_names:
       - REG_REMU
  
+  #############################################################################
+  # SDP Info
+  #############################################################################
+
+  - peripheral_name: sdp/sdp_info
+    mm_port_names:
+      - REG_SDP_INFO
+
   #############################################################################
   # AIT = ADC Input and Timing (see node_adc_input_and_timing.vhd)
   #############################################################################
@@ -165,9 +172,12 @@ peripherals:
       
   - peripheral_name: filter/fil_ppf_w
     parameter_overrides:
-      - { name: g_nof_taps, value: c_N_taps }
-      - { name: g_nof_bands, value: c_N_fft }
-      - { name: g_coef_dat_w, value: c_W_fir_coef }
+      - { name: g_fil_ppf.wb_factor, value: 1 } # process at sample rate (so no parallel wideband factor)
+      - { name: g_fil_ppf.nof_chan, value: 0 } # process at sample rate (so no serial time multiplexing)
+      - { name: g_fil_ppf.nof_bands, value: c_N_fft }
+      - { name: g_fil_ppf.nof_taps, value: c_N_taps }
+      - { name: g_fil_ppf.nof_streams, value: 1 }
+      - { name: g_fil_ppf.coef_dat_w, value: c_W_fir_coef }
     mm_port_names:
       - RAM_FIL_COEFS
       
@@ -218,12 +228,8 @@ peripherals:
   # BF = Beamformer (from node_sdp_beamformer.vhd)
   #############################################################################
   
-  - peripheral_name: sdp/sdp_info
-    mm_port_names:
-      - REG_SDP_INFO
-      
   - peripheral_name: reorder/reorder_col_wide
-    number_of_peripherals: c_N_beamsets  # lofar2_unb2b_sdp_station.vhd
+    number_of_peripherals: c_N_beamsets
     parameter_overrides:
       - { name: g_wb_factor, value: c_P_pfb }
       - { name: g_nof_ch_in, value: c_N_sub * c_Q_fft }
@@ -232,7 +238,7 @@ peripherals:
       - RAM_SS_SS_WIDE
 
   - peripheral_name: sdp/sdp_bf_weights
-    number_of_peripherals: c_N_beamsets  # lofar2_unb2b_sdp_station.vhd
+    number_of_peripherals: c_N_beamsets
     parameter_overrides:
       - { name: g_nof_instances, value: c_N_pol_bf * c_A_pn }  # A_pn = P_pfb = 6
       - { name: g_nof_gains, value: c_N_pol * c_S_sub_bf }  # N_pol = Q_fft = 2
@@ -240,7 +246,7 @@ peripherals:
       - RAM_BF_WEIGHTS
 
   - peripheral_name: sdp/sdp_bf_scale
-    number_of_peripherals: c_N_beamsets  # lofar2_unb2b_sdp_station.vhd
+    number_of_peripherals: c_N_beamsets
     parameter_overrides:
       - { name: g_gain_w, value: c_W_beamlet_scale }
       - { name: g_lsb_w, value: 0 - c_W_beamlet_resolution}
@@ -248,12 +254,12 @@ peripherals:
       - REG_BF_SCALE
 
   - peripheral_name: sdp/sdp_beamformer_output_hdr_dat
-    number_of_peripherals: c_N_beamsets  # lofar2_unb2b_sdp_station.vhd
+    number_of_peripherals: c_N_beamsets
     mm_port_names:
       - REG_HDR_DAT
 
   - peripheral_name: dp/dp_xonoff
-    number_of_peripherals: c_N_beamsets  # lofar2_unb2b_sdp_station.vhd
+    number_of_peripherals: c_N_beamsets
     parameter_overrides:
       - { name: g_nof_streams, value: 1 }
       - { name: g_combine_streams, value: False }
diff --git a/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.mmap.gold b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.mmap.gold
new file mode 100644
index 0000000000000000000000000000000000000000..715d30a6bca49381125b2bdd2a82e063122cab4e
--- /dev/null
+++ b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.mmap.gold
@@ -0,0 +1,520 @@
+fpga_name = lofar2_unb2b_sdp_station
+number_of_columns = 13
+# There can be multiple lines with a single key. The host should ignore unknown keys.
+# The lines with columns follow after the number_of_columns keys. The host should ignore
+# the extra columns in case the mmap contains more columns than the host expects.
+#
+# col 1: mm_port_name, if - then it is part of previous MM port.
+# col 2: number of peripherals, if - then it is part of previous peripheral.
+# col 3: number of mm_ports, if - then it is part of previous MM port.
+# col 4: mm_port_type, if - then it is part of previous MM port.
+# col 5: field_name
+# col 6: field start address (in MM words)
+# col 7: number of fields, if - then it is part of previous field_name.
+# col 8: field access_mode, if - then it is part of previous field_name.
+# col 9: field radix, if - then it is part of previous field_name.
+# col 10: field mm_mask
+# col 11: field user_mask, if - then it is same as mm_mask
+# col 12: mm_peripheral_span (in MM words), if - then the span is not used or already defined on first line of MM port
+# col 13: mm_port_span (in MM words), if - then the span is not used or already defined on first line of MM port
+#
+# col1                      col2  col3  col4   col5                                      col6        col7    col8   col9         col10       col11       col12  col13
+# ------------------------  ----  ----  -----  ----------------------------------------  ----------  ------  -----  -----------  ----------  ----------  -----  -----
+  ROM_SYSTEM_INFO           1     1     RAM    data                                      0x00000000   32768     RO        char8     b[31:0]      b[7:0]  -      -    
+  PIO_SYSTEM_INFO           1     1     REG    info                                      0x00008000       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      info_gn_index                             0x00008000       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      info_hw_version                           0x00008000       1     RO       uint32      b[9:8]           -  -      -    
+  -                         -     -     -      info_cs_sim                               0x00008000       1     RO       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      info_fw_version_major                     0x00008000       1     RO       uint32    b[19:16]           -  -      -    
+  -                         -     -     -      info_fw_version_minor                     0x00008000       1     RO       uint32    b[23:20]           -  -      -    
+  -                         -     -     -      info_rom_version                          0x00008000       1     RO       uint32    b[26:24]           -  -      -    
+  -                         -     -     -      info_technology                           0x00008000       1     RO       uint32    b[31:27]           -  -      -    
+  -                         -     -     -      use_phy                                   0x00008001       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      design_name                               0x00008002      52     RO        char8     b[31:0]      b[7:0]  -      -    
+  -                         -     -     -      stamp_date                                0x0000800f       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      stamp_time                                0x00008010       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      stamp_commit                              0x00008011       3     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      design_note                               0x00008014      52     RO        char8     b[31:0]      b[7:0]  -      -    
+  REG_WDI                   1     1     REG    wdi_override                              0x0000a000       1     WO       uint32     b[31:0]           -  -      -    
+  REG_FPGA_TEMP_SENS        1     1     REG    temp                                      0x0000c000       1     RO       uint32     b[31:0]           -  -      -    
+  REG_FPGA_VOLTAGE_SENS     1     1     REG    voltages                                  0x0000c000       6     RO       uint32     b[31:0]           -  -      -    
+  RAM_SCRAP                 1     1     RAM    data                                      0x0000e000     512     RW       uint32     b[31:0]           -  -      -    
+  AVS_ETH_0_TSE             1     1     REG    status                                    0x00010000    1024     RO       uint32     b[31:0]           -  -      -    
+  AVS_ETH_0_REG             1     1     REG    status                                    0x00010000      12     RO       uint32     b[31:0]           -  -      -    
+  AVS_ETH_0_RAM             1     1     RAM    data                                      0x00010400    1024     RW       uint32     b[31:0]           -  -      -    
+  PIO_PPS                   1     1     REG    capture_cnt                               0x00012000       1     RO       uint32     b[29:0]           -  -      -    
+  -                         -     -     -      stable                                    0x00012000       1     RO       uint32    b[30:30]           -  -      -    
+  -                         -     -     -      toggle                                    0x00012000       1     RO       uint32    b[31:31]           -  -      -    
+  -                         -     -     -      expected_cnt                              0x00012001       1     RW       uint32     b[27:0]           -  -      -    
+  -                         -     -     -      edge                                      0x00012001       1     RW       uint32    b[31:31]           -  -      -    
+  -                         -     -     -      offset_cnt                                0x00012002       1     RO       uint32     b[27:0]           -  -      -    
+  REG_EPCS                  1     1     REG    addr                                      0x00014000       1     WO       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rden                                      0x00014001       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      read_bit                                  0x00014002       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      write_bit                                 0x00014003       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      sector_erase                              0x00014004       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      busy                                      0x00014005       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      unprotect                                 0x00014006       1     WO       uint32     b[31:0]           -  -      -    
+  REG_DPMM_CTRL             1     1     REG    rd_usedw                                  0x00016000       1     RO       uint32     b[31:0]           -  -      -    
+  REG_DPMM_DATA             1     1     FIFO   data                                      0x00016400       1     RO       uint32     b[31:0]           -  -      -    
+  REG_MMDP_CTRL             1     1     REG    wr_usedw                                  0x00018000       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      wr_availw                                 0x00018001       1     RO       uint32     b[31:0]           -  -      -    
+  REG_MMDP_DATA             1     1     FIFO   data                                      0x00018400       1     WO       uint32     b[31:0]           -  -      -    
+  REG_REMU                  1     1     REG    reconfigure                               0x0001a000       1     WO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      param                                     0x0001a001       1     WO       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      read_param                                0x0001a002       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      write_param                               0x0001a003       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      data_out                                  0x0001a004       1     RO       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      data_in                                   0x0001a005       1     WO       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      busy                                      0x0001a006       1     RO       uint32      b[0:0]           -  -      -    
+  REG_SDP_INFO              1     1     REG    beamlet_scale                             0x0001c000       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      block_period                              0x0001c001       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      n_rn                                      0x0001c002       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      o_rn                                      0x0001c003       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      n_si                                      0x0001c004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      o_si                                      0x0001c005       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      beam_repositioning_flag                   0x0001c006       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      fsub_type                                 0x0001c007       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      f_adc                                     0x0001c008       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      nyquist_zone_index                        0x0001c009       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      observation_id                            0x0001c00a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      antenna_band_index                        0x0001c00b       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      station_id                                0x0001c00c       1     RW       uint32     b[15:0]           -  -      -    
+  PIO_JESD_CTRL             1     1     REG    enable                                    0x0001e000       1     RW       uint32     b[30:0]           -  -      -    
+  -                         -     -     -      reset                                     0x0001e000       1     RW       uint32    b[31:31]           -  -      -    
+  JESD204B                  1     1     REG    rx_dll_ctrl                               0x00020014       1     RW       uint32     b[16:0]           -  -      -    
+  -                         -     -     -      rx_syncn_sysref_ctrl                      0x00020015       1     RW       uint32     b[24:0]           -  -      -    
+  -                         -     -     -      rx_csr_sysref_always_on                   0x00020015       1     RW       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      rx_csr_rbd_offset                         0x00020015       1     RW       uint32     b[10:3]           -  -      -    
+  -                         -     -     -      rx_csr_lmfc_offset                        0x00020015       1     RW       uint32    b[19:12]           -  -      -    
+  -                         -     -     -      rx_err0                                   0x00020018       1     RW       uint32      b[8:0]           -  -      -    
+  -                         -     -     -      rx_err1                                   0x00020019       1     RW       uint32      b[9:0]           -  -      -    
+  -                         -     -     -      csr_dev_syncn                             0x00020020       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      csr_rbd_count                             0x00020020       1     RO       uint32     b[10:3]           -  -      -    
+  -                         -     -     -      rx_status1                                0x00020021       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status2                                0x00020022       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status3                                0x00020023       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_l                             0x00020025       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_f                             0x00020025       1     RW       uint32     b[15:8]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_k                             0x00020025       1     RW       uint32    b[20:16]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_m                             0x00020025       1     RW       uint32    b[31:24]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_n                             0x00020026       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_cs                            0x00020026       1     RW       uint32      b[7:6]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_np                            0x00020026       1     RW       uint32     b[12:8]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_subclassv                     0x00020026       1     RW       uint32    b[15:13]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_s                             0x00020026       1     RW       uint32    b[20:16]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_jesdv                         0x00020026       1     RW       uint32    b[23:21]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_cf                            0x00020026       1     RW       uint32    b[28:24]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_hd                            0x00020026       1     RW       uint32    b[31:31]           -  -      -    
+  -                         -     -     -      rx_status4                                0x0002003c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_status5                                0x0002003d       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_status6                                0x0002003e       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status7                                0x0002003f       1     RO       uint32     b[31:0]           -  -      -    
+  REG_DP_SHIFTRAM           1     12    REG    shift                                     0x00022000       1     RW       uint32     b[11:0]           -  12     1    
+  REG_BSN_SOURCE_V2         1     1     REG    dp_on                                     0x00024000       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      dp_on_pps                                 0x00024000       1     RW       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      nof_block_per_sync                        0x00024001       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      bsn_init                                  0x00024002       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00024003       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      bsn_time_offset                           0x00024004       1     RW       uint32      b[9:0]           -  -      -    
+  REG_BSN_SCHEDULER         1     1     REG    scheduled_bsn                             0x00026000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00026001       -      -            -     b[31:0]    b[63:32]  -      -    
+  REG_BSN_MONITOR_INPUT     1     1     REG    xon_stable                                0x00028000       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      ready_stable                              0x00028000       1     RO       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      sync_timeout                              0x00028000       1     RO       uint32      b[2:2]           -  -      -    
+  -                         -     -     -      bsn_at_sync                               0x00028001       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00028002       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      nof_sop                                   0x00028003       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      nof_valid                                 0x00028004       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      nof_err                                   0x00028005       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      bsn_first                                 0x00028006       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00028007       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      bsn_first_cycle_cnt                       0x00028008       1     RO       uint32     b[31:0]           -  -      -    
+  REG_WG                    1     12    REG    mode                                      0x0002a000       1     RW       uint32      b[7:0]           -  48     4    
+  -                         -     -     -      nof_samples                               0x0002a000       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      phase                                     0x0002a001       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      freq                                      0x0002a002       1     RW       uint32     b[30:0]           -  -      -    
+  -                         -     -     -      ampl                                      0x0002a003       1     RW       uint32     b[16:0]           -  -      -    
+  RAM_WG                    1     12    RAM    data                                      0x0002c000    1024     RW       uint32     b[17:0]           -  16384  1024 
+  REG_ADUH_MONITOR          1     12    REG    mean_sum                                  0x00030000       1     RO        int64     b[31:0]     b[31:0]  48     4    
+  -                         -     -     -      -                                         0x00030001       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      power_sum                                 0x00030002       1     RO        int64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00030003       -      -            -     b[31:0]    b[63:32]  -      -    
+  REG_DIAG_DATA_BUFFER_BSN  1     12    REG    sync_cnt                                  0x00032000       1     RO       uint32     b[31:0]           -  24     2    
+  -                         -     -     -      word_cnt                                  0x00032001       1     RO       uint32     b[31:0]           -  -      -    
+  RAM_DIAG_DATA_BUFFER_BSN  1     12    RAM    data                                      0x00034000    1024     RW       uint32     b[15:0]           -  16384  1024 
+  REG_SI                    1     1     REG    enable                                    0x00038000       1     RW       uint32      b[0:0]           -  -      -    
+  RAM_FIL_COEFS             1     16    RAM    data                                      0x0003c000    1024     RW       uint32     b[15:0]           -  16384  1024 
+  RAM_EQUALIZER_GAINS       1     6     RAM    data                                      0x00040000    1024     RW    cint16_ir     b[31:0]           -  8192   1024 
+  REG_DP_SELECTOR           1     1     REG    input_select                              0x00042000       1     RW       uint32      b[0:0]           -  -      -    
+  RAM_ST_SST                1     6     RAM    data                                      0x00044000    2048     RW       uint64     b[31:0]     b[31:0]  16384  2048 
+  -                         -     -     -      -                                         0x00042001       -      -            -     b[21:0]    b[53:32]  -      -    
+  REG_STAT_ENABLE_SST       1     1     REG    enable                                    0x00048000       1     RW       uint32      b[0:0]           -  -      -    
+  REG_STAT_HDR_DAT_SST      1     1     REG    bsn                                       0x0004a000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0004a001       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      sdp_block_period                          0x0004a002       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_statistics_per_packet             0x0004a003       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_bytes_per_statistic               0x0004a004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_nof_signal_inputs                     0x0004a005       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id                               0x0004a006       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_sst_signal_input_index        0x0004a006       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_sst_reserved                  0x0004a006       1     RW       uint32     b[31:8]           -  -      -    
+  -                         -     -     -      sdp_integration_interval                  0x0004a007       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x0004a008       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x0004a009       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_reserved                  0x0004a00a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x0004a00b       1     RW       uint32      b[8:8]           -  -      -    
+  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x0004a00c       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0004a00d       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0004a00e       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0004a00f       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x0004a010       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x0004a011       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x0004a012       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x0004a013       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x0004a014       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x0004a015       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x0004a016       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x0004a017       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x0004a018       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x0004a019       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x0004a01a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0004a01b       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0004a01c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0004a01d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0004a01e       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0004a01f       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x0004a020       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x0004a021       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x0004a022       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x0004a023       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x0004a024       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x0004a025       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x0004a026       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x0004a027       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0004a028       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x0004a029       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0004a02a       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      word_align                                0x0004a02b       1     RW       uint32     b[15:0]           -  -      -    
+  RAM_SS_SS_WIDE            2     6     RAM    data                                      0x0004c000     976     RW       uint32      b[9:0]           -  8192   1024 
+  RAM_BF_WEIGHTS            2     12    RAM    data                                      0x00050000     976     RW    cint16_ir     b[31:0]           -  16384  1024 
+  REG_BF_SCALE              2     1     REG    scale                                     0x00058000       1     RW       uint32     b[15:0]           -  2      2    
+  -                         -     -     -      unused                                    0x00058001       1     RW       uint32     b[31:0]           -  -      -    
+  REG_HDR_DAT               2     1     REG    bsn                                       0x0005a000       1     RW       uint64     b[31:0]     b[31:0]  64     64   
+  -                         -     -     -      -                                         0x0005a001       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      sdp_block_period                          0x0005a002       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_beamlets_per_block                0x0005a003       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_blocks_per_packet                 0x0005a004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_beamlet_index                         0x0005a005       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_beamlet_scale                         0x0005a006       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x0005a007       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005a008       -      -            -      b[7:0]    b[39:32]  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x0005a009       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_beamlet_width             0x0005a00a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_repositioning_flag        0x0005a00b       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0005a00c       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0005a00d       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0005a00e       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x0005a00f       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x0005a010       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x0005a011       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x0005a012       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x0005a013       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x0005a014       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x0005a015       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x0005a016       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x0005a017       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x0005a018       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x0005a019       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0005a01a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0005a01b       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0005a01c       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0005a01d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0005a01e       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x0005a01f       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x0005a020       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x0005a021       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x0005a022       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x0005a023       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x0005a024       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x0005a025       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x0005a026       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005a027       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x0005a028       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005a029       -      -            -     b[15:0]    b[47:32]  -      -    
+  REG_DP_XONOFF             2     1     REG    enable_stream                             0x0005c000       1     RW       uint32      b[0:0]           -  1      1    
+  RAM_ST_BST                1     1     RAM    data                                      0x0005e000    1952     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0005c001       -      -            -     b[21:0]    b[53:32]  -      -    
+  REG_STAT_ENABLE_BST_0     1     1     REG    enable                                    0x00060000       1     RW       uint32      b[0:0]           -  -      -    
+  REG_STAT_HDR_DAT_BST_0    1     1     REG    bsn                                       0x00062000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00062001       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      block_period                              0x00062002       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_statistics_per_packet                 0x00062003       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_bytes_per_statistic                   0x00062004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      nof_signal_inputs                         0x00062005       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id                               0x00062006       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_beamlet_index             0x00062006       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_reserved                  0x00062006       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      sdp_integration_interval                  0x00062007       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x00062008       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x00062009       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_reserved                  0x0006200a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x0006200b       1     RW       uint32      b[8:8]           -  -      -    
+  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x0006200c       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0006200d       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0006200e       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0006200f       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x00062010       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x00062011       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x00062012       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x00062013       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x00062014       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x00062015       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x00062016       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x00062017       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x00062018       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x00062019       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x0006201a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0006201b       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0006201c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0006201d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0006201e       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0006201f       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x00062020       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x00062021       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x00062022       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x00062023       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x00062024       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x00062025       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x00062026       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x00062027       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00062028       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x00062029       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0006202a       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      word_align                                0x0006202b       1     RW       uint32     b[15:0]           -  -      -    
+  REG_STAT_ENABLE_BST_1     1     1     REG    enable                                    0x00064000       1     RW       uint32      b[0:0]           -  -      -    
+  REG_STAT_HDR_DAT_BST_1    1     1     REG    bsn                                       0x00066000       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00066001       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      block_period                              0x00066002       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_statistics_per_packet                 0x00066003       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_bytes_per_statistic                   0x00066004       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      nof_signal_inputs                         0x00066005       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id                               0x00066006       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_beamlet_index             0x00066006       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_reserved                  0x00066006       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      sdp_integration_interval                  0x00066007       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x00066008       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x00066009       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_reserved                  0x0006600a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x0006600b       1     RW       uint32      b[8:8]           -  -      -    
+  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x0006600c       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0006600d       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0006600e       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0006600f       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x00066010       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x00066011       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x00066012       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x00066013       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x00066014       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x00066015       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x00066016       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x00066017       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x00066018       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x00066019       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x0006601a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0006601b       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0006601c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0006601d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0006601e       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0006601f       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x00066020       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x00066021       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x00066022       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x00066023       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x00066024       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x00066025       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x00066026       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x00066027       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00066028       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x00066029       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0006602a       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      word_align                                0x0006602b       1     RW       uint32     b[15:0]           -  -      -    
+  REG_NW_10GBE_MAC          1     1     REG    rx_transfer_control                       0x00068000       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_transfer_status                        0x00068001       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_transfer_control                       0x00068002       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_padcrc_control                         0x00068040       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      rx_crccheck_control                       0x00068080       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      rx_pktovrflow_error                       0x000680c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000680c1       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_pktovrflow_etherstatsdropevents        0x000680c2       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000680c3       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_lane_decoder_preamble_control          0x00068100       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_preamble_inserter_control              0x00068140       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_frame_control                          0x00068800       1     RW       uint32     b[19:0]           -  -      -    
+  -                         -     -     -      rx_frame_maxlength                        0x00068801       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_addr0                            0x00068802       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_addr1                            0x00068803       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr0_0                        0x00068804       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr0_1                        0x00068805       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr1_0                        0x00068806       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr1_1                        0x00068807       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr2_0                        0x00068808       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr2_1                        0x00068809       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr3_0                        0x0006880a       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr3_1                        0x0006880b       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_pfc_control                            0x00068818       1     RW       uint32     b[16:0]           -  -      -    
+  -                         -     -     -      rx_stats_clr                              0x00068c00       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_stats_framesok                         0x00068c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c03       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_frameserr                        0x00068c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c05       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_framescrcerr                     0x00068c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c07       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_octetsok                         0x00068c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c09       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_pausemacctrl_frames              0x00068c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c0b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_iferrors                         0x00068c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c0d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicast_framesok                 0x00068c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c0f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicast_frameserr                0x00068c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c11       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicastframesok                0x00068c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c13       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicast_frameserr              0x00068c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c15       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcastframesok                0x00068c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c17       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcast_frameserr              0x00068c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c19       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatsoctets                 0x00068c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c1b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatspkts                   0x00068c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c1d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_undersizepkts         0x00068c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c1f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_oversizepkts          0x00068c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c21       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts64octets          0x00068c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c23       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts65to127octets     0x00068c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c25       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts128to255octets    0x00068c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c27       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts256to511octets    0x00068c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c29       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts512to1023octets   0x00068c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c2b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstat_pkts1024to1518octets   0x00068c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c2d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts1519toxoctets     0x00068c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c2f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_fragments             0x00068c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c31       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_jabbers               0x00068c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c33       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatscrcerr                 0x00068c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c35       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicastmacctrlframes             0x00068c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c37       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicastmac_ctrlframes          0x00068c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c39       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcastmac_ctrlframes          0x00068c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c3b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_pfcmacctrlframes                 0x00068c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00068c3d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_transfer_status                        0x00069001       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_padins_control                         0x00069040       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_crcins_control                         0x00069080       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      tx_pktunderflow_error                     0x000690c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000690c1       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_preamble_control                       0x00069100       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_control                     0x00069140       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_quanta                      0x00069141       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_enable                      0x00069142       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_0                        0x00069180       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_1                        0x00069181       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_2                        0x00069182       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_3                        0x00069183       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_4                        0x00069184       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_5                        0x00069185       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_6                        0x00069186       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_7                        0x00069187       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_0                      0x00069190       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_1                      0x00069191       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_2                      0x00069192       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_3                      0x00069193       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_4                      0x00069194       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_5                      0x00069195       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_6                      0x00069196       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_7                      0x00069197       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      tx_pfc_priority_enable                    0x000691a0       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      tx_addrins_control                        0x00069200       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_addrins_macaddr0                       0x00069201       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      tx_addrins_macaddr1                       0x00069202       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_frame_maxlength                        0x00069801       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_stats_clr                              0x00069c00       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_stats_framesok                         0x00069c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c03       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_frameserr                        0x00069c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c05       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_framescrcerr                     0x00069c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c07       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_octetsok                         0x00069c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c09       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_pausemacctrl_frames              0x00069c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c0b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_iferrors                         0x00069c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c0d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicast_framesok                 0x00069c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c0f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicast_frameserr                0x00069c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c11       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicastframesok                0x00069c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c13       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicast_frameserr              0x00069c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c15       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcastframesok                0x00069c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c17       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcast_frameserr              0x00069c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c19       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatsoctets                 0x00069c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c1b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatspkts                   0x00069c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c1d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_undersizepkts         0x00069c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c1f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_oversizepkts          0x00069c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c21       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts64octets          0x00069c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c23       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts65to127octets     0x00069c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c25       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts128to255octets    0x00069c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c27       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts256to511octets    0x00069c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c29       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts512to1023octets   0x00069c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c2b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstat_pkts1024to1518octets   0x00069c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c2d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts1519toxoctets     0x00069c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c2f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_fragments             0x00069c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c31       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_jabbers               0x00069c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c33       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatscrcerr                 0x00069c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c35       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicastmacctrlframes             0x00069c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c37       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicastmac_ctrlframes          0x00069c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c39       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcastmac_ctrlframes          0x00069c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c3b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_pfcmacctrlframes                 0x00069c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00069c3d       -      -            -     b[31:0]     b[31:0]  -      -    
+  REG_NW_10GBE_ETH10G       1     1     REG    tx_snk_out_xon                            0x0006a000       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      xgmii_tx_ready                            0x0006a000       1     RO       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      xgmii_link_status                         0x0006a000       1     RO       uint32      b[3:2]           -  -      -    
\ No newline at end of file
diff --git a/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.mmap.qsys.gold b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.mmap.qsys.gold
new file mode 100644
index 0000000000000000000000000000000000000000..5c516153907c7299071b9c4d8de7baa954e7a5c6
--- /dev/null
+++ b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.mmap.qsys.gold
@@ -0,0 +1,520 @@
+fpga_name = lofar2_unb2b_sdp_station
+number_of_columns = 13
+# There can be multiple lines with a single key. The host should ignore unknown keys.
+# The lines with columns follow after the number_of_columns keys. The host should ignore
+# the extra columns in case the mmap contains more columns than the host expects.
+#
+# col 1: mm_port_name, if - then it is part of previous MM port.
+# col 2: number of peripherals, if - then it is part of previous peripheral.
+# col 3: number of mm_ports, if - then it is part of previous MM port.
+# col 4: mm_port_type, if - then it is part of previous MM port.
+# col 5: field_name
+# col 6: field start address (in MM words)
+# col 7: number of fields, if - then it is part of previous field_name.
+# col 8: field access_mode, if - then it is part of previous field_name.
+# col 9: field radix, if - then it is part of previous field_name.
+# col 10: field mm_mask
+# col 11: field user_mask, if - then it is same as mm_mask
+# col 12: mm_peripheral_span (in MM words), if - then the span is not used or already defined on first line of MM port
+# col 13: mm_port_span (in MM words), if - then the span is not used or already defined on first line of MM port
+#
+# col1                      col2  col3  col4   col5                                      col6        col7    col8   col9         col10       col11       col12  col13
+# ------------------------  ----  ----  -----  ----------------------------------------  ----------  ------  -----  -----------  ----------  ----------  -----  -----
+  ROM_SYSTEM_INFO           1     1     RAM    data                                      0x00004000   32768     RO        char8     b[31:0]      b[7:0]  -      -    
+  PIO_SYSTEM_INFO           1     1     REG    info                                      0x00000000       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      info_gn_index                             0x00000000       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      info_hw_version                           0x00000000       1     RO       uint32      b[9:8]           -  -      -    
+  -                         -     -     -      info_cs_sim                               0x00000000       1     RO       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      info_fw_version_major                     0x00000000       1     RO       uint32    b[19:16]           -  -      -    
+  -                         -     -     -      info_fw_version_minor                     0x00000000       1     RO       uint32    b[23:20]           -  -      -    
+  -                         -     -     -      info_rom_version                          0x00000000       1     RO       uint32    b[26:24]           -  -      -    
+  -                         -     -     -      info_technology                           0x00000000       1     RO       uint32    b[31:27]           -  -      -    
+  -                         -     -     -      use_phy                                   0x00000001       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      design_name                               0x00000002      52     RO        char8     b[31:0]      b[7:0]  -      -    
+  -                         -     -     -      stamp_date                                0x0000000f       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      stamp_time                                0x00000010       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      stamp_commit                              0x00000011       3     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      design_note                               0x00000014      52     RO        char8     b[31:0]      b[7:0]  -      -    
+  REG_WDI                   1     1     REG    wdi_override                              0x00000c00       1     WO       uint32     b[31:0]           -  -      -    
+  REG_FPGA_TEMP_SENS        1     1     REG    temp                                      0x00000df8       1     RO       uint32     b[31:0]           -  -      -    
+  REG_FPGA_VOLTAGE_SENS     1     1     REG    voltages                                  0x00000de0       6     RO       uint32     b[31:0]           -  -      -    
+  RAM_SCRAP                 1     1     RAM    data                                      0x00000200     512     RW       uint32     b[31:0]           -  -      -    
+  AVS_ETH_0_TSE             1     1     REG    status                                    0x00000400    1024     RO       uint32     b[31:0]           -  -      -    
+  AVS_ETH_0_REG             1     1     REG    status                                    0x00000c10      12     RO       uint32     b[31:0]           -  -      -    
+  AVS_ETH_0_RAM             1     1     RAM    data                                      0x00000800    1024     RW       uint32     b[31:0]           -  -      -    
+  PIO_PPS                   1     1     REG    capture_cnt                               0x0002d032       1     RO       uint32     b[29:0]           -  -      -    
+  -                         -     -     -      stable                                    0x0002d032       1     RO       uint32    b[30:30]           -  -      -    
+  -                         -     -     -      toggle                                    0x0002d032       1     RO       uint32    b[31:31]           -  -      -    
+  -                         -     -     -      expected_cnt                              0x0002d033       1     RW       uint32     b[27:0]           -  -      -    
+  -                         -     -     -      edge                                      0x0002d033       1     RW       uint32    b[31:31]           -  -      -    
+  -                         -     -     -      offset_cnt                                0x0002d034       1     RO       uint32     b[27:0]           -  -      -    
+  REG_EPCS                  1     1     REG    addr                                      0x0002d000       1     WO       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rden                                      0x0002d001       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      read_bit                                  0x0002d002       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      write_bit                                 0x0002d003       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      sector_erase                              0x0002d004       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      busy                                      0x0002d005       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      unprotect                                 0x0002d006       1     WO       uint32     b[31:0]           -  -      -    
+  REG_DPMM_CTRL             1     1     REG    rd_usedw                                  0x0002d030       1     RO       uint32     b[31:0]           -  -      -    
+  REG_DPMM_DATA             1     1     FIFO   data                                      0x0002d02e       1     RO       uint32     b[31:0]           -  -      -    
+  REG_MMDP_CTRL             1     1     REG    wr_usedw                                  0x0002d02c       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      wr_availw                                 0x0002d02d       1     RO       uint32     b[31:0]           -  -      -    
+  REG_MMDP_DATA             1     1     FIFO   data                                      0x0002d02a       1     WO       uint32     b[31:0]           -  -      -    
+  REG_REMU                  1     1     REG    reconfigure                               0x0002d008       1     WO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      param                                     0x0002d009       1     WO       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      read_param                                0x0002d00a       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      write_param                               0x0002d00b       1     WO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      data_out                                  0x0002d00c       1     RO       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      data_in                                   0x0002d00d       1     WO       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      busy                                      0x0002d00e       1     RO       uint32      b[0:0]           -  -      -    
+  REG_SDP_INFO              1     1     REG    beamlet_scale                             0x00000dd0       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      block_period                              0x00000dd1       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      n_rn                                      0x00000dd2       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      o_rn                                      0x00000dd3       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      n_si                                      0x00000dd4       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      o_si                                      0x00000dd5       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      beam_repositioning_flag                   0x00000dd6       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      fsub_type                                 0x00000dd7       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      f_adc                                     0x00000dd8       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      nyquist_zone_index                        0x00000dd9       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      observation_id                            0x00000dda       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      antenna_band_index                        0x00000ddb       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      station_id                                0x00000ddc       1     RW       uint32     b[15:0]           -  -      -    
+  PIO_JESD_CTRL             1     1     REG    enable                                    0x0002d020       1     RW       uint32     b[30:0]           -  -      -    
+  -                         -     -     -      reset                                     0x0002d020       1     RW       uint32    b[31:31]           -  -      -    
+  JESD204B                  1     1     REG    rx_dll_ctrl                               0x0002c014       1     RW       uint32     b[16:0]           -  -      -    
+  -                         -     -     -      rx_syncn_sysref_ctrl                      0x0002c015       1     RW       uint32     b[24:0]           -  -      -    
+  -                         -     -     -      rx_csr_sysref_always_on                   0x0002c015       1     RW       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      rx_csr_rbd_offset                         0x0002c015       1     RW       uint32     b[10:3]           -  -      -    
+  -                         -     -     -      rx_csr_lmfc_offset                        0x0002c015       1     RW       uint32    b[19:12]           -  -      -    
+  -                         -     -     -      rx_err0                                   0x0002c018       1     RW       uint32      b[8:0]           -  -      -    
+  -                         -     -     -      rx_err1                                   0x0002c019       1     RW       uint32      b[9:0]           -  -      -    
+  -                         -     -     -      csr_dev_syncn                             0x0002c020       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      csr_rbd_count                             0x0002c020       1     RO       uint32     b[10:3]           -  -      -    
+  -                         -     -     -      rx_status1                                0x0002c021       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status2                                0x0002c022       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status3                                0x0002c023       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_l                             0x0002c025       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_f                             0x0002c025       1     RW       uint32     b[15:8]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_k                             0x0002c025       1     RW       uint32    b[20:16]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_m                             0x0002c025       1     RW       uint32    b[31:24]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_n                             0x0002c026       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_cs                            0x0002c026       1     RW       uint32      b[7:6]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_np                            0x0002c026       1     RW       uint32     b[12:8]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_subclassv                     0x0002c026       1     RW       uint32    b[15:13]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_s                             0x0002c026       1     RW       uint32    b[20:16]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_jesdv                         0x0002c026       1     RW       uint32    b[23:21]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_cf                            0x0002c026       1     RW       uint32    b[28:24]           -  -      -    
+  -                         -     -     -      rx_ilas_csr_hd                            0x0002c026       1     RW       uint32    b[31:31]           -  -      -    
+  -                         -     -     -      rx_status4                                0x0002c03c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_status5                                0x0002c03d       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_status6                                0x0002c03e       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      rx_status7                                0x0002c03f       1     RO       uint32     b[31:0]           -  -      -    
+  REG_DP_SHIFTRAM           1     12    REG    shift                                     0x00000c20       1     RW       uint32     b[11:0]           -  16     1    
+  REG_BSN_SOURCE_V2         1     1     REG    dp_on                                     0x00000df0       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      dp_on_pps                                 0x00000df0       1     RW       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      nof_block_per_sync                        0x00000df1       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      bsn_init                                  0x00000df2       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000df3       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      bsn_time_offset                           0x00000df4       1     RW       uint32      b[9:0]           -  -      -    
+  REG_BSN_SCHEDULER         1     1     REG    scheduled_bsn                             0x0002d026       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0002d027       -      -            -     b[31:0]    b[63:32]  -      -    
+  REG_BSN_MONITOR_INPUT     1     1     REG    xon_stable                                0x00000100       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      ready_stable                              0x00000100       1     RO       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      sync_timeout                              0x00000100       1     RO       uint32      b[2:2]           -  -      -    
+  -                         -     -     -      bsn_at_sync                               0x00000101       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000102       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      nof_sop                                   0x00000103       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      nof_valid                                 0x00000104       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      nof_err                                   0x00000105       1     RO       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      bsn_first                                 0x00000106       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000107       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      bsn_first_cycle_cnt                       0x00000108       1     RO       uint32     b[31:0]           -  -      -    
+  REG_WG                    1     12    REG    mode                                      0x00000cc0       1     RW       uint32      b[7:0]           -  64     4    
+  -                         -     -     -      nof_samples                               0x00000cc0       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      phase                                     0x00000cc1       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      freq                                      0x00000cc2       1     RW       uint32     b[30:0]           -  -      -    
+  -                         -     -     -      ampl                                      0x00000cc3       1     RW       uint32     b[16:0]           -  -      -    
+  RAM_WG                    1     12    RAM    data                                      0x00020000    1024     RW       uint32     b[17:0]           -  16384  1024 
+  REG_ADUH_MONITOR          1     12    REG    mean_sum                                  0x00000d00       1     RO        int64     b[31:0]     b[31:0]  64     4    
+  -                         -     -     -      -                                         0x00000d01       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      power_sum                                 0x00000d02       1     RO        int64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000d03       -      -            -     b[31:0]    b[63:32]  -      -    
+  REG_DIAG_DATA_BUFFER_BSN  1     12    REG    sync_cnt                                  0x00000020       1     RO       uint32     b[31:0]           -  32     2    
+  -                         -     -     -      word_cnt                                  0x00000021       1     RO       uint32     b[31:0]           -  -      -    
+  RAM_DIAG_DATA_BUFFER_BSN  1     12    RAM    data                                      0x00200000    1024     RW       uint32     b[15:0]           -  16384  1024 
+  REG_SI                    1     1     REG    enable                                    0x0002d028       1     RW       uint32      b[0:0]           -  -      -    
+  RAM_FIL_COEFS             1     16    RAM    data                                      0x00024000    1024     RW       uint32     b[15:0]           -  16384  1024 
+  RAM_EQUALIZER_GAINS       1     6     RAM    data                                      0x00006000    1024     RW    cint16_ir     b[31:0]           -  8192   1024 
+  REG_DP_SELECTOR           1     1     REG    input_select                              0x0002d024       1     RW       uint32      b[0:0]           -  -      -    
+  RAM_ST_SST                1     6     RAM    data                                      0x00028000    2048     RW       uint64     b[31:0]     b[31:0]  16384  2048 
+  -                         -     -     -      -                                         0x0002d025       -      -            -     b[21:0]    b[53:32]  -      -    
+  REG_STAT_ENABLE_SST       1     1     REG    enable                                    0x0002d01e       1     RW       uint32      b[0:0]           -  -      -    
+  REG_STAT_HDR_DAT_SST      1     1     REG    bsn                                       0x00000c80       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000c81       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      sdp_block_period                          0x00000c82       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_statistics_per_packet             0x00000c83       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_bytes_per_statistic               0x00000c84       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_nof_signal_inputs                     0x00000c85       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id                               0x00000c86       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_sst_signal_input_index        0x00000c86       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_sst_reserved                  0x00000c86       1     RW       uint32     b[31:8]           -  -      -    
+  -                         -     -     -      sdp_integration_interval                  0x00000c87       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x00000c88       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x00000c89       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_reserved                  0x00000c8a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x00000c8b       1     RW       uint32      b[8:8]           -  -      -    
+  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x00000c8c       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x00000c8d       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x00000c8e       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x00000c8f       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x00000c90       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x00000c91       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x00000c92       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x00000c93       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x00000c94       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x00000c95       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x00000c96       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x00000c97       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x00000c98       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x00000c99       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x00000c9a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x00000c9b       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x00000c9c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x00000c9d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x00000c9e       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x00000c9f       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x00000ca0       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x00000ca1       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x00000ca2       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x00000ca3       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x00000ca4       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x00000ca5       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x00000ca6       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x00000ca7       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000ca8       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x00000ca9       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000caa       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      word_align                                0x00000cab       1     RW       uint32     b[15:0]           -  -      -    
+  RAM_SS_SS_WIDE            2     6     RAM    data                                      0x0001c000     976     RW       uint32      b[9:0]           -  8192   1024 
+  RAM_BF_WEIGHTS            2     12    RAM    data                                      0x00010000     976     RW    cint16_ir     b[31:0]           -  16384  1024 
+  REG_BF_SCALE              2     1     REG    scale                                     0x0002d014       1     RW       uint32     b[15:0]           -  2      2    
+  -                         -     -     -      unused                                    0x0002d015       1     RW       uint32     b[31:0]           -  -      -    
+  REG_HDR_DAT               2     1     REG    bsn                                       0x00000080       1     RW       uint64     b[31:0]     b[31:0]  64     64   
+  -                         -     -     -      -                                         0x00000081       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      sdp_block_period                          0x00000082       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_beamlets_per_block                0x00000083       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_nof_blocks_per_packet                 0x00000084       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_beamlet_index                         0x00000085       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_beamlet_scale                         0x00000086       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x00000087       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000088       -      -            -      b[7:0]    b[39:32]  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x00000089       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_beamlet_width             0x0000008a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_repositioning_flag        0x0000008b       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0000008c       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0000008d       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0000008e       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x0000008f       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x00000090       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x00000091       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x00000092       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x00000093       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x00000094       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x00000095       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x00000096       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x00000097       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x00000098       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x00000099       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0000009a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0000009b       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0000009c       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0000009d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0000009e       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x0000009f       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x000000a0       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x000000a1       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x000000a2       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x000000a3       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x000000a4       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x000000a5       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x000000a6       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x000000a7       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x000000a8       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x000000a9       -      -            -     b[15:0]    b[47:32]  -      -    
+  REG_DP_XONOFF             2     1     REG    enable_stream                             0x0002d010       1     RW       uint32      b[0:0]           -  1      1    
+  RAM_ST_BST                1     1     RAM    data                                      0x00001000    1952     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0002d011       -      -            -     b[21:0]    b[53:32]  -      -    
+  REG_STAT_ENABLE_BST_0     1     1     REG    enable                                    0x0002d01c       1     RW       uint32      b[0:0]           -  -      -    
+  REG_STAT_HDR_DAT_BST_0    1     1     REG    bsn                                       0x00000040       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000041       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      block_period                              0x00000042       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_statistics_per_packet                 0x00000043       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_bytes_per_statistic                   0x00000044       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      nof_signal_inputs                         0x00000045       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id                               0x00000046       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_beamlet_index             0x00000046       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_reserved                  0x00000046       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      sdp_integration_interval                  0x00000047       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x00000048       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x00000049       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_reserved                  0x0000004a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x0000004b       1     RW       uint32      b[8:8]           -  -      -    
+  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x0000004c       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x0000004d       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x0000004e       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x0000004f       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x00000050       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x00000051       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x00000052       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x00000053       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x00000054       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x00000055       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x00000056       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x00000057       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x00000058       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x00000059       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x0000005a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x0000005b       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x0000005c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x0000005d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x0000005e       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x0000005f       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x00000060       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x00000061       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x00000062       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x00000063       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x00000064       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x00000065       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x00000066       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x00000067       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000068       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x00000069       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x0000006a       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      word_align                                0x0000006b       1     RW       uint32     b[15:0]           -  -      -    
+  REG_STAT_ENABLE_BST_1     1     1     REG    enable                                    0x0002d01a       1     RW       uint32      b[0:0]           -  -      -    
+  REG_STAT_HDR_DAT_BST_1    1     1     REG    bsn                                       0x00000c40       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000c41       -      -            -     b[31:0]    b[63:32]  -      -    
+  -                         -     -     -      block_period                              0x00000c42       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_statistics_per_packet                 0x00000c43       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      nof_bytes_per_statistic                   0x00000c44       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      nof_signal_inputs                         0x00000c45       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_data_id                               0x00000c46       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_beamlet_index             0x00000c46       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_data_id_bst_reserved                  0x00000c46       1     RW       uint32    b[31:16]           -  -      -    
+  -                         -     -     -      sdp_integration_interval                  0x00000c47       1     RW       uint32     b[23:0]           -  -      -    
+  -                         -     -     -      sdp_reserved                              0x00000c48       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_gn_index                  0x00000c49       1     RW       uint32      b[4:0]           -  -      -    
+  -                         -     -     -      sdp_source_info_reserved                  0x00000c4a       1     RW       uint32      b[7:5]           -  -      -    
+  -                         -     -     -      sdp_source_info_subband_calibrated_flag   0x00000c4b       1     RW       uint32      b[8:8]           -  -      -    
+  -                         -     -     -      sdp_source_info_beam_repositioning_flag   0x00000c4c       1     RW       uint32      b[9:9]           -  -      -    
+  -                         -     -     -      sdp_source_info_payload_error             0x00000c4d       1     RW       uint32    b[10:10]           -  -      -    
+  -                         -     -     -      sdp_source_info_fsub_type                 0x00000c4e       1     RW       uint32    b[11:11]           -  -      -    
+  -                         -     -     -      sdp_source_info_f_adc                     0x00000c4f       1     RW       uint32    b[12:12]           -  -      -    
+  -                         -     -     -      sdp_source_info_nyquist_zone_index        0x00000c50       1     RW       uint32    b[14:13]           -  -      -    
+  -                         -     -     -      sdp_source_info_antenna_band_index        0x00000c51       1     RW       uint32    b[15:15]           -  -      -    
+  -                         -     -     -      sdp_station_id                            0x00000c52       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      sdp_observation_id                        0x00000c53       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      sdp_version_id                            0x00000c54       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      sdp_marker                                0x00000c55       1     RO       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      udp_checksum                              0x00000c56       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_length                                0x00000c57       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_destination_port                      0x00000c58       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      udp_source_port                           0x00000c59       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_destination_address                    0x00000c5a       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_source_address                         0x00000c5b       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      ip_header_checksum                        0x00000c5c       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_protocol                               0x00000c5d       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_time_to_live                           0x00000c5e       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_fragment_offset                        0x00000c5f       1     RW       uint32     b[12:0]           -  -      -    
+  -                         -     -     -      ip_flags                                  0x00000c60       1     RW       uint32      b[2:0]           -  -      -    
+  -                         -     -     -      ip_identification                         0x00000c61       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_total_length                           0x00000c62       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      ip_services                               0x00000c63       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      ip_header_length                          0x00000c64       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      ip_version                                0x00000c65       1     RW       uint32      b[3:0]           -  -      -    
+  -                         -     -     -      eth_type                                  0x00000c66       1     RO       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      eth_source_mac                            0x00000c67       1     RO       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000c68       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      eth_destination_mac                       0x00000c69       1     RW       uint64     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      -                                         0x00000c6a       -      -            -     b[15:0]    b[47:32]  -      -    
+  -                         -     -     -      word_align                                0x00000c6b       1     RW       uint32     b[15:0]           -  -      -    
+  REG_NW_10GBE_MAC          1     1     REG    rx_transfer_control                       0x00002000       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_transfer_status                        0x00002001       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_transfer_control                       0x00002002       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_padcrc_control                         0x00002040       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      rx_crccheck_control                       0x00002080       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      rx_pktovrflow_error                       0x000020c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000020c1       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_pktovrflow_etherstatsdropevents        0x000020c2       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000020c3       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_lane_decoder_preamble_control          0x00002100       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_preamble_inserter_control              0x00002140       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_frame_control                          0x00002800       1     RW       uint32     b[19:0]           -  -      -    
+  -                         -     -     -      rx_frame_maxlength                        0x00002801       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_addr0                            0x00002802       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_addr1                            0x00002803       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr0_0                        0x00002804       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr0_1                        0x00002805       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr1_0                        0x00002806       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr1_1                        0x00002807       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr2_0                        0x00002808       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr2_1                        0x00002809       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr3_0                        0x0000280a       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_frame_spaddr3_1                        0x0000280b       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      rx_pfc_control                            0x00002818       1     RW       uint32     b[16:0]           -  -      -    
+  -                         -     -     -      rx_stats_clr                              0x00002c00       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      rx_stats_framesok                         0x00002c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c03       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_frameserr                        0x00002c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c05       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_framescrcerr                     0x00002c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c07       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_octetsok                         0x00002c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c09       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_pausemacctrl_frames              0x00002c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c0b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_iferrors                         0x00002c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c0d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicast_framesok                 0x00002c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c0f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicast_frameserr                0x00002c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c11       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicastframesok                0x00002c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c13       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicast_frameserr              0x00002c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c15       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcastframesok                0x00002c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c17       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcast_frameserr              0x00002c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c19       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatsoctets                 0x00002c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c1b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatspkts                   0x00002c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c1d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_undersizepkts         0x00002c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c1f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_oversizepkts          0x00002c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c21       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts64octets          0x00002c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c23       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts65to127octets     0x00002c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c25       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts128to255octets    0x00002c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c27       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts256to511octets    0x00002c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c29       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts512to1023octets   0x00002c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c2b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstat_pkts1024to1518octets   0x00002c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c2d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_pkts1519toxoctets     0x00002c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c2f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_fragments             0x00002c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c31       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstats_jabbers               0x00002c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c33       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_etherstatscrcerr                 0x00002c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c35       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_unicastmacctrlframes             0x00002c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c37       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_multicastmac_ctrlframes          0x00002c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c39       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_broadcastmac_ctrlframes          0x00002c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c3b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      rx_stats_pfcmacctrlframes                 0x00002c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00002c3d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_transfer_status                        0x00003001       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_padins_control                         0x00003040       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_crcins_control                         0x00003080       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      tx_pktunderflow_error                     0x000030c0       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x000030c1       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_preamble_control                       0x00003100       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_control                     0x00003140       1     RW       uint32      b[1:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_quanta                      0x00003141       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_pauseframe_enable                      0x00003142       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_0                        0x00003180       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_1                        0x00003181       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_2                        0x00003182       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_3                        0x00003183       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_4                        0x00003184       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_5                        0x00003185       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_6                        0x00003186       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_pause_quanta_7                        0x00003187       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_0                      0x00003190       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_1                      0x00003191       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_2                      0x00003192       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_3                      0x00003193       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_4                      0x00003194       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_5                      0x00003195       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_6                      0x00003196       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      pfc_holdoff_quanta_7                      0x00003197       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      tx_pfc_priority_enable                    0x000031a0       1     RW       uint32      b[7:0]           -  -      -    
+  -                         -     -     -      tx_addrins_control                        0x00003200       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_addrins_macaddr0                       0x00003201       1     RW       uint32     b[31:0]           -  -      -    
+  -                         -     -     -      tx_addrins_macaddr1                       0x00003202       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_frame_maxlength                        0x00003801       1     RW       uint32     b[15:0]           -  -      -    
+  -                         -     -     -      tx_stats_clr                              0x00003c00       1     RW       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      tx_stats_framesok                         0x00003c02       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c03       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_frameserr                        0x00003c04       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c05       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_framescrcerr                     0x00003c06       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c07       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_octetsok                         0x00003c08       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c09       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_pausemacctrl_frames              0x00003c0a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c0b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_iferrors                         0x00003c0c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c0d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicast_framesok                 0x00003c0e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c0f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicast_frameserr                0x00003c10       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c11       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicastframesok                0x00003c12       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c13       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicast_frameserr              0x00003c14       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c15       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcastframesok                0x00003c16       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c17       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcast_frameserr              0x00003c18       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c19       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatsoctets                 0x00003c1a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c1b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatspkts                   0x00003c1c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c1d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_undersizepkts         0x00003c1e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c1f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_oversizepkts          0x00003c20       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c21       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts64octets          0x00003c22       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c23       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts65to127octets     0x00003c24       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c25       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts128to255octets    0x00003c26       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c27       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts256to511octets    0x00003c28       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c29       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts512to1023octets   0x00003c2a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c2b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstat_pkts1024to1518octets   0x00003c2c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c2d       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_pkts1519toxoctets     0x00003c2e       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c2f       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_fragments             0x00003c30       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c31       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstats_jabbers               0x00003c32       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c33       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_etherstatscrcerr                 0x00003c34       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c35       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_unicastmacctrlframes             0x00003c36       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c37       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_multicastmac_ctrlframes          0x00003c38       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c39       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_broadcastmac_ctrlframes          0x00003c3a       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c3b       -      -            -     b[31:0]     b[31:0]  -      -    
+  -                         -     -     -      tx_stats_pfcmacctrlframes                 0x00003c3c       1     RO       uint64      b[3:0]    b[35:32]  -      -    
+  -                         -     -     -      -                                         0x00003c3d       -      -            -     b[31:0]     b[31:0]  -      -    
+  REG_NW_10GBE_ETH10G       1     1     REG    tx_snk_out_xon                            0x0002d022       1     RO       uint32      b[0:0]           -  -      -    
+  -                         -     -     -      xgmii_tx_ready                            0x0002d022       1     RO       uint32      b[1:1]           -  -      -    
+  -                         -     -     -      xgmii_link_status                         0x0002d022       1     RO       uint32      b[3:2]           -  -      -    
\ No newline at end of file
diff --git a/applications/lofar2/images/images.txt b/applications/lofar2/images/images.txt
index 8868ddf4a320adb12733de746f580b7c9642fda1..29135b8ae552db29d9b56d622121a6c8b0bbe813 100644
--- a/applications/lofar2/images/images.txt
+++ b/applications/lofar2/images/images.txt
@@ -4,7 +4,7 @@ unb2b_minimal-r03350b9b9                            | 2021-03-19    |
 lofar2_unb2b_filterbank_full-r8a75c955b             | 2021-03-01    | R vd Walle           | Deprecated, better use lofar2_unb2b_sdp_station_fsub-rc125dfd6d
 lofar2_unb2b_sdp_station_adc-rc125dfd6d             | 2021-04-21    | J. Hargreaves        | -
 lofar2_unb2b_sdp_station_adc-r087d98be6             | 2021-06-14    | J. Hargreaves        | -
-lofar2_unb2b_sdp_station_fsub-ra84011947            | 2021-06-11    | R vd Walle           | See $UPE_GEAR/peripherals/tc_lofar2_unb2b_filterbank.py
+lofar2_unb2b_sdp_station_fsub-rbc8dc7f66            | 2021-06-23    | R vd Walle           | See $UPE_GEAR/peripherals/tc_lofar2_unb2b_filterbank.py
 lofar2_unb2b_sdp_station_bf-rc125dfd6d              | 2021-04-21    | R vd Walle           | See $UPE_GEAR/peripherals/tc_lofar2_unb2b_beamformer.py
 lofar2_unb2b_sdp_station_bf-r087d98be6              | 2021-06-14    | R vd Walle           | See $UPE_GEAR/peripherals/tc_lofar2_unb2b_beamformer.py
 lofar2_unb2b_sdp_station_xsub_one-r087d98be6        | 2021-06-14    | R vd Walle           | 
diff --git a/applications/lofar2/images/lofar2_unb2b_sdp_station_fsub-ra84011947.tar.gz b/applications/lofar2/images/lofar2_unb2b_sdp_station_fsub-rbc8dc7f66.tar.gz
similarity index 54%
rename from applications/lofar2/images/lofar2_unb2b_sdp_station_fsub-ra84011947.tar.gz
rename to applications/lofar2/images/lofar2_unb2b_sdp_station_fsub-rbc8dc7f66.tar.gz
index e623c101226360cf17400d070541a1fd71c5acce..e8682233268a6a5f5b9e1a848437319f942ba078 100644
Binary files a/applications/lofar2/images/lofar2_unb2b_sdp_station_fsub-ra84011947.tar.gz and b/applications/lofar2/images/lofar2_unb2b_sdp_station_fsub-rbc8dc7f66.tar.gz differ
diff --git a/doc/erko_howto_tools.txt b/doc/erko_howto_tools.txt
index 58bd7d22dccf0090f87864f2266bd4a486847293..b74bbd3a32ca0092cb3dbdf5e7165cf2cc0fe0a2 100755
--- a/doc/erko_howto_tools.txt
+++ b/doc/erko_howto_tools.txt
@@ -701,6 +701,8 @@ Start --> Administration --> Synaptic package manager
 > sudo pip install numpy      # to run Python2 library installer as root
 > sudo pip3 install numpy     # to run Python3 library installer as root
 
+> sudo apt-get install python3-tk # worked, now I can do: python3 test_plot.py
+
 > sudo apt-get install pip    # to install Python2 library installer
 > sudo apt-get install python-matplotlib
 
diff --git a/libraries/base/common/src/vhdl/common_pkg.vhd b/libraries/base/common/src/vhdl/common_pkg.vhd
index 79591b0b305fbab6107ee2acb05afe6e709a73ef..ba09970a6f98b5f6896ef7036894ca27fa5b024f 100644
--- a/libraries/base/common/src/vhdl/common_pkg.vhd
+++ b/libraries/base/common/src/vhdl/common_pkg.vhd
@@ -325,36 +325,42 @@ PACKAGE common_pkg IS
   -- . Note that using func_slv_concat() without the BOOLEAN use_* is equivalent to using the 
   --   slv concatenation operator & directly. However this overloaded func_slv_concat() is
   --   still nice to have, because it shows the relation with the inverse func_slv_extract().
-  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a, b, c, d, e, f, g : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d, use_e, use_f        : BOOLEAN; a, b, c, d, e, f    : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d, use_e               : BOOLEAN; a, b, c, d, e       : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d                      : BOOLEAN; a, b, c, d          : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(  use_a, use_b, use_c                             : BOOLEAN; a, b, c             : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(  use_a, use_b                                    : BOOLEAN; a, b                : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(                                                             a, b, c, d, e, f, g : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(                                                             a, b, c, d, e, f    : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(                                                             a, b, c, d, e       : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(                                                             a, b, c, d          : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(                                                             a, b, c             : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat(                                                             a, b                : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL) RETURN NATURAL;
-  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f        : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w      : NATURAL) RETURN NATURAL;
-  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e               : BOOLEAN; a_w, b_w, c_w, d_w, e_w           : NATURAL) RETURN NATURAL;
-  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d                      : BOOLEAN; a_w, b_w, c_w, d_w                : NATURAL) RETURN NATURAL;
-  FUNCTION func_slv_concat_w(use_a, use_b, use_c                             : BOOLEAN; a_w, b_w, c_w                     : NATURAL) RETURN NATURAL;
-  FUNCTION func_slv_concat_w(use_a, use_b                                    : BOOLEAN; a_w, b_w                          : NATURAL) RETURN NATURAL;
-  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d, use_e, use_f        : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w      : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d, use_e               : BOOLEAN; a_w, b_w, c_w, d_w, e_w           : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d                      : BOOLEAN; a_w, b_w, c_w, d_w                : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract( use_a, use_b, use_c                             : BOOLEAN; a_w, b_w, c_w                     : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract( use_a, use_b                                    : BOOLEAN; a_w, b_w                          : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract(                                                            a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract(                                                            a_w, b_w, c_w, d_w, e_w, f_w      : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract(                                                            a_w, b_w, c_w, d_w, e_w           : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract(                                                            a_w, b_w, c_w, d_w                : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract(                                                            a_w, b_w, c_w                     : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
-  FUNCTION func_slv_extract(                                                            a_w, b_w                          : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+
+  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d, use_e, use_f, use_g, use_h : BOOLEAN; a, b, c, d, e, f, g, h : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d, use_e, use_f, use_g        : BOOLEAN; a, b, c, d, e, f, g    : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d, use_e, use_f               : BOOLEAN; a, b, c, d, e, f       : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d, use_e                      : BOOLEAN; a, b, c, d, e          : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(  use_a, use_b, use_c, use_d                             : BOOLEAN; a, b, c, d             : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(  use_a, use_b, use_c                                    : BOOLEAN; a, b, c                : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(  use_a, use_b                                           : BOOLEAN; a, b                   : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(                                                                    a, b, c, d, e, f, g, h : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(                                                                    a, b, c, d, e, f, g    : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(                                                                    a, b, c, d, e, f       : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(                                                                    a, b, c, d, e          : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(                                                                    a, b, c, d             : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(                                                                    a, b, c                : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat(                                                                    a, b                   : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, use_g, use_h : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w, h_w : NATURAL) RETURN NATURAL;
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, use_g        : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w      : NATURAL) RETURN NATURAL;
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f               : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w           : NATURAL) RETURN NATURAL;
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e                      : BOOLEAN; a_w, b_w, c_w, d_w, e_w                : NATURAL) RETURN NATURAL;
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d                             : BOOLEAN; a_w, b_w, c_w, d_w                     : NATURAL) RETURN NATURAL;
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c                                    : BOOLEAN; a_w, b_w, c_w                          : NATURAL) RETURN NATURAL;
+  FUNCTION func_slv_concat_w(use_a, use_b                                           : BOOLEAN; a_w, b_w                               : NATURAL) RETURN NATURAL;
+  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d, use_e, use_f, use_g, use_h : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w, h_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d, use_e, use_f, use_g        : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w      : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d, use_e, use_f               : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w           : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d, use_e                      : BOOLEAN; a_w, b_w, c_w, d_w, e_w                : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract( use_a, use_b, use_c, use_d                             : BOOLEAN; a_w, b_w, c_w, d_w                     : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract( use_a, use_b, use_c                                    : BOOLEAN; a_w, b_w, c_w                          : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract( use_a, use_b                                           : BOOLEAN; a_w, b_w                               : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract(                                                                   a_w, b_w, c_w, d_w, e_w, f_w, g_w, h_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract(                                                                   a_w, b_w, c_w, d_w, e_w, f_w, g_w      : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract(                                                                   a_w, b_w, c_w, d_w, e_w, f_w           : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract(                                                                   a_w, b_w, c_w, d_w, e_w                : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract(                                                                   a_w, b_w, c_w, d_w                     : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract(                                                                   a_w, b_w, c_w                          : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
+  FUNCTION func_slv_extract(                                                                   a_w, b_w                               : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR;
   
   FUNCTION TO_UINT(vec : STD_LOGIC_VECTOR) RETURN NATURAL;  -- beware: NATURAL'HIGH = 2**31-1, not 2*32-1, use TO_SINT to avoid warning
   FUNCTION TO_SINT(vec : STD_LOGIC_VECTOR) RETURN INTEGER;
@@ -1508,10 +1514,9 @@ PACKAGE BODY common_pkg IS
     RETURN v_mat;
   END;
   
-  
-  -- Support concatenation of up to 7 slv into 1 slv
-  FUNCTION func_slv_concat(use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a, b, c, d, e, f, g : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
-    CONSTANT c_max_w : NATURAL := a'LENGTH + b'LENGTH + c'LENGTH + d'LENGTH + e'LENGTH + f'LENGTH + g'LENGTH;
+  -- Support concatenation of up to 8 slv into 1 slv
+  FUNCTION func_slv_concat(use_a, use_b, use_c, use_d, use_e, use_f, use_g, use_h : BOOLEAN; a, b, c, d, e, f, g, h : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
+    CONSTANT c_max_w : NATURAL := a'LENGTH + b'LENGTH + c'LENGTH + d'LENGTH + e'LENGTH + f'LENGTH + g'LENGTH + h'LENGTH;
     VARIABLE v_res   : STD_LOGIC_VECTOR(c_max_w-1 DOWNTO 0) := (OTHERS=>'0');
     VARIABLE v_len   : NATURAL := 0;
   BEGIN
@@ -1522,34 +1527,45 @@ PACKAGE BODY common_pkg IS
     IF use_e = TRUE THEN v_res(e'LENGTH-1 + v_len DOWNTO v_len) := e; v_len := v_len + e'LENGTH; END IF;
     IF use_f = TRUE THEN v_res(f'LENGTH-1 + v_len DOWNTO v_len) := f; v_len := v_len + f'LENGTH; END IF;
     IF use_g = TRUE THEN v_res(g'LENGTH-1 + v_len DOWNTO v_len) := g; v_len := v_len + g'LENGTH; END IF;
+    IF use_h = TRUE THEN v_res(h'LENGTH-1 + v_len DOWNTO v_len) := h; v_len := v_len + h'LENGTH; END IF;
     RETURN v_res(v_len-1 DOWNTO 0);
   END func_slv_concat;
-  
+    
+  FUNCTION func_slv_concat(use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a, b, c, d, e, f, g : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
+  BEGIN
+    RETURN func_slv_concat(use_a, use_b, use_c, use_d, use_e, use_f, use_g, FALSE, a, b, c, d, e, f, g, "0");
+  END func_slv_concat;
+
   FUNCTION func_slv_concat(use_a, use_b, use_c, use_d, use_e, use_f : BOOLEAN; a, b, c, d, e, f : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_concat(use_a, use_b, use_c, use_d, use_e, use_f, FALSE, a, b, c, d, e, f, "0");
+    RETURN func_slv_concat(use_a, use_b, use_c, use_d, use_e, use_f, FALSE, FALSE, a, b, c, d, e, f, "0", "0");
   END func_slv_concat;
   
   FUNCTION func_slv_concat(use_a, use_b, use_c, use_d, use_e : BOOLEAN; a, b, c, d, e : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_concat(use_a, use_b, use_c, use_d, use_e, FALSE, FALSE, a, b, c, d, e, "0", "0");
+    RETURN func_slv_concat(use_a, use_b, use_c, use_d, use_e, FALSE, FALSE, FALSE, a, b, c, d, e, "0", "0", "0");
   END func_slv_concat;
   
   FUNCTION func_slv_concat(use_a, use_b, use_c, use_d : BOOLEAN; a, b, c, d : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_concat(use_a, use_b, use_c, use_d, FALSE, FALSE, FALSE, a, b, c, d, "0", "0", "0");
+    RETURN func_slv_concat(use_a, use_b, use_c, use_d, FALSE, FALSE, FALSE, FALSE, a, b, c, d, "0", "0", "0", "0");
   END func_slv_concat;
   
   FUNCTION func_slv_concat(use_a, use_b, use_c : BOOLEAN; a, b, c : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_concat(use_a, use_b, use_c, FALSE, FALSE, FALSE, FALSE, a, b, c, "0", "0", "0", "0");
+    RETURN func_slv_concat(use_a, use_b, use_c, FALSE, FALSE, FALSE, FALSE, FALSE, a, b, c, "0", "0", "0", "0", "0");
   END func_slv_concat;
   
   FUNCTION func_slv_concat(use_a, use_b : BOOLEAN; a, b : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_concat(use_a, use_b, FALSE, FALSE, FALSE, FALSE, FALSE, a, b, "0", "0", "0", "0", "0");
+    RETURN func_slv_concat(use_a, use_b, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, a, b, "0", "0", "0", "0", "0", "0");
   END func_slv_concat;
-  
+    
+  FUNCTION func_slv_concat(a, b, c, d, e, f, g, h : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
+  BEGIN
+    RETURN func_slv_concat(TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, a, b, c, d, e, f, g, h);
+  END func_slv_concat;
+
   FUNCTION func_slv_concat(a, b, c, d, e, f, g : STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR IS
   BEGIN
     RETURN func_slv_concat(TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, a, b, c, d, e, f, g);
@@ -1580,7 +1596,7 @@ PACKAGE BODY common_pkg IS
     RETURN func_slv_concat(TRUE, TRUE, a, b);
   END func_slv_concat;
   
-  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL) RETURN NATURAL IS
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, use_g, use_h : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w, h_w : NATURAL) RETURN NATURAL IS
     VARIABLE v_len : NATURAL := 0;
   BEGIN
     IF use_a = TRUE THEN v_len := v_len + a_w; END IF;
@@ -1590,36 +1606,42 @@ PACKAGE BODY common_pkg IS
     IF use_e = TRUE THEN v_len := v_len + e_w; END IF;
     IF use_f = TRUE THEN v_len := v_len + f_w; END IF;
     IF use_g = TRUE THEN v_len := v_len + g_w; END IF;
+    IF use_h = TRUE THEN v_len := v_len + h_w; END IF;
     RETURN v_len;
   END func_slv_concat_w;
-  
+    
+  FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL) RETURN NATURAL IS
+  BEGIN
+    RETURN func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, use_g, FALSE, a_w, b_w, c_w, d_w, e_w, f_w, g_w, 0);
+  END func_slv_concat_w;
+
   FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w : NATURAL) RETURN NATURAL IS
   BEGIN
-    RETURN func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, FALSE, a_w, b_w, c_w, d_w, e_w, f_w, 0);
+    RETURN func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, use_f, FALSE, FALSE, a_w, b_w, c_w, d_w, e_w, f_w, 0, 0);
   END func_slv_concat_w;
   
   FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d, use_e : BOOLEAN; a_w, b_w, c_w, d_w, e_w : NATURAL) RETURN NATURAL IS
   BEGIN
-    RETURN func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, FALSE, FALSE, a_w, b_w, c_w, d_w, e_w, 0, 0);
+    RETURN func_slv_concat_w(use_a, use_b, use_c, use_d, use_e, FALSE, FALSE, FALSE, a_w, b_w, c_w, d_w, e_w, 0, 0, 0);
   END func_slv_concat_w;
   
   FUNCTION func_slv_concat_w(use_a, use_b, use_c, use_d : BOOLEAN; a_w, b_w, c_w, d_w : NATURAL) RETURN NATURAL IS
   BEGIN
-    RETURN func_slv_concat_w(use_a, use_b, use_c, use_d, FALSE, FALSE, FALSE, a_w, b_w, c_w, d_w, 0, 0, 0);
+    RETURN func_slv_concat_w(use_a, use_b, use_c, use_d, FALSE, FALSE, FALSE, FALSE, a_w, b_w, c_w, d_w, 0, 0, 0, 0);
   END func_slv_concat_w;
   
   FUNCTION func_slv_concat_w(use_a, use_b, use_c : BOOLEAN; a_w, b_w, c_w : NATURAL) RETURN NATURAL IS
   BEGIN
-    RETURN func_slv_concat_w(use_a, use_b, use_c, FALSE, FALSE, FALSE, FALSE, a_w, b_w, c_w, 0, 0, 0, 0);
+    RETURN func_slv_concat_w(use_a, use_b, use_c, FALSE, FALSE, FALSE, FALSE, FALSE, a_w, b_w, c_w, 0, 0, 0, 0, 0);
   END func_slv_concat_w;
   
   FUNCTION func_slv_concat_w(use_a, use_b : BOOLEAN; a_w, b_w : NATURAL) RETURN NATURAL IS
   BEGIN
-    RETURN func_slv_concat_w(use_a, use_b, FALSE, FALSE, FALSE, FALSE, FALSE, a_w, b_w, 0, 0, 0, 0, 0);
+    RETURN func_slv_concat_w(use_a, use_b, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, a_w, b_w, 0, 0, 0, 0, 0, 0);
   END func_slv_concat_w;
-  
+
   -- extract slv
-  FUNCTION func_slv_extract(use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
+  FUNCTION func_slv_extract(use_a, use_b, use_c, use_d, use_e, use_f, use_g, use_h : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w, h_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
     VARIABLE v_w  : NATURAL := 0;
     VARIABLE v_lo : NATURAL := 0;
   BEGIN
@@ -1660,36 +1682,55 @@ PACKAGE BODY common_pkg IS
         IF use_d = TRUE THEN v_lo := v_lo + d_w; END IF;
         IF use_e = TRUE THEN v_lo := v_lo + e_w; END IF;
         IF use_f = TRUE THEN v_lo := v_lo + f_w; END IF;
+      WHEN 7 =>
+        IF use_h = TRUE THEN v_w := h_w; ELSE RETURN c_slv0(h_w-1 DOWNTO 0); END IF;
+        IF use_a = TRUE THEN v_lo := v_lo + a_w; END IF;
+        IF use_b = TRUE THEN v_lo := v_lo + b_w; END IF;
+        IF use_c = TRUE THEN v_lo := v_lo + c_w; END IF;
+        IF use_d = TRUE THEN v_lo := v_lo + d_w; END IF;
+        IF use_e = TRUE THEN v_lo := v_lo + e_w; END IF;
+        IF use_f = TRUE THEN v_lo := v_lo + f_w; END IF;
+        IF use_g = TRUE THEN v_lo := v_lo + g_w; END IF;
       WHEN OTHERS => REPORT "Unknown common_pkg func_slv_extract argument" SEVERITY FAILURE;
     END CASE;
     RETURN vec(v_w-1 + v_lo DOWNTO v_lo);  -- extracted slv
   END func_slv_extract;
-  
+    
+  FUNCTION func_slv_extract(use_a, use_b, use_c, use_d, use_e, use_f, use_g : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
+  BEGIN
+    RETURN func_slv_extract(use_a, use_b, use_c, use_d, use_e, use_f, use_g, FALSE, a_w, b_w, c_w, d_w, e_w, f_w, g_w, 0, vec, sel);
+  END func_slv_extract;
+
   FUNCTION func_slv_extract(use_a, use_b, use_c, use_d, use_e, use_f : BOOLEAN; a_w, b_w, c_w, d_w, e_w, f_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_extract(use_a, use_b, use_c, use_d, use_e, use_f, FALSE, a_w, b_w, c_w, d_w, e_w, f_w, 0, vec, sel);
+    RETURN func_slv_extract(use_a, use_b, use_c, use_d, use_e, use_f, FALSE, FALSE, a_w, b_w, c_w, d_w, e_w, f_w, 0, 0, vec, sel);
   END func_slv_extract;
   
   FUNCTION func_slv_extract(use_a, use_b, use_c, use_d, use_e : BOOLEAN; a_w, b_w, c_w, d_w, e_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_extract(use_a, use_b, use_c, use_d, use_e, FALSE, FALSE, a_w, b_w, c_w, d_w, e_w, 0, 0, vec, sel);
+    RETURN func_slv_extract(use_a, use_b, use_c, use_d, use_e, FALSE, FALSE, FALSE, a_w, b_w, c_w, d_w, e_w, 0, 0, 0, vec, sel);
   END func_slv_extract;
   
   FUNCTION func_slv_extract(use_a, use_b, use_c, use_d : BOOLEAN; a_w, b_w, c_w, d_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_extract(use_a, use_b, use_c, use_d, FALSE, FALSE, FALSE, a_w, b_w, c_w, d_w, 0, 0, 0, vec, sel);
+    RETURN func_slv_extract(use_a, use_b, use_c, use_d, FALSE, FALSE, FALSE, FALSE, a_w, b_w, c_w, d_w, 0, 0, 0, 0, vec, sel);
   END func_slv_extract;
   
   FUNCTION func_slv_extract(use_a, use_b, use_c : BOOLEAN; a_w, b_w, c_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_extract(use_a, use_b, use_c, FALSE, FALSE, FALSE, FALSE, a_w, b_w, c_w, 0, 0, 0, 0, vec, sel);
+    RETURN func_slv_extract(use_a, use_b, use_c, FALSE, FALSE, FALSE, FALSE, FALSE, a_w, b_w, c_w, 0, 0, 0, 0, 0, vec, sel);
   END func_slv_extract;
   
   FUNCTION func_slv_extract(use_a, use_b : BOOLEAN; a_w, b_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
   BEGIN
-    RETURN func_slv_extract(use_a, use_b, FALSE, FALSE, FALSE, FALSE, FALSE, a_w, b_w, 0, 0, 0, 0, 0, vec, sel);
+    RETURN func_slv_extract(use_a, use_b, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, a_w, b_w, 0, 0, 0, 0, 0, 0, vec, sel);
   END func_slv_extract;
-  
+    
+  FUNCTION func_slv_extract(a_w, b_w, c_w, d_w, e_w, f_w, g_w, h_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
+  BEGIN
+    RETURN func_slv_extract(TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, a_w, b_w, c_w, d_w, e_w, f_w, g_w, h_w, vec, sel);
+  END func_slv_extract;
+
   FUNCTION func_slv_extract(a_w, b_w, c_w, d_w, e_w, f_w, g_w : NATURAL; vec : STD_LOGIC_VECTOR; sel : NATURAL) RETURN STD_LOGIC_VECTOR IS
   BEGIN
     RETURN func_slv_extract(TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, a_w, b_w, c_w, d_w, e_w, f_w, g_w, vec, sel);
diff --git a/libraries/base/dp/hdllib.cfg b/libraries/base/dp/hdllib.cfg
index 35eb45f99ba31ed7867ddb948437b64012e445f1..39ca669c8f184bc1e880bf341840641e720fd402 100644
--- a/libraries/base/dp/hdllib.cfg
+++ b/libraries/base/dp/hdllib.cfg
@@ -43,8 +43,10 @@ synth_files =
     src/vhdl/dp_shiftreg.vhd
     src/vhdl/dp_fifo_info.vhd
     src/vhdl/dp_fifo_core.vhd
+    src/vhdl/dp_fifo_core_arr.vhd
     src/vhdl/dp_fifo_sc.vhd
     src/vhdl/dp_fifo_dc.vhd
+    src/vhdl/dp_fifo_dc_arr.vhd
     src/vhdl/dp_fifo_dc_mixed_widths.vhd
     src/vhdl/dp_fifo_fill_core.vhd
     src/vhdl/dp_fifo_fill_sc.vhd
@@ -219,6 +221,7 @@ test_bench_files =
     tb/vhdl/tb_dp_fifo_fill_sc.vhd
     tb/vhdl/tb_dp_fifo_info.vhd
     tb/vhdl/tb_dp_fifo_dc.vhd
+    tb/vhdl/tb_dp_fifo_dc_arr.vhd
     tb/vhdl/tb_dp_fifo_dc_mixed_widths.vhd
     tb/vhdl/tb_dp_fifo_sc.vhd
     tb/vhdl/tb_dp_fifo_to_mm.vhd
@@ -291,6 +294,7 @@ test_bench_files =
     tb/vhdl/tb_tb_dp_fifo_fill_sc.vhd
     tb/vhdl/tb_tb_dp_fifo_fill_eop.vhd
     tb/vhdl/tb_tb_dp_fifo_dc.vhd
+    tb/vhdl/tb_tb_dp_fifo_dc_arr.vhd
     tb/vhdl/tb_tb_dp_fifo_dc_mixed_widths.vhd
     tb/vhdl/tb_tb_dp_frame_scheduler.vhd
     tb/vhdl/tb_tb_dp_latency_fifo.vhd
diff --git a/libraries/base/dp/src/vhdl/dp_fifo_core_arr.vhd b/libraries/base/dp/src/vhdl/dp_fifo_core_arr.vhd
new file mode 100644
index 0000000000000000000000000000000000000000..bf5fcd921ed889ca348433387b814f265bb68786
--- /dev/null
+++ b/libraries/base/dp/src/vhdl/dp_fifo_core_arr.vhd
@@ -0,0 +1,311 @@
+-------------------------------------------------------------------------------
+--
+-- Copyright 2021
+-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
+-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
+--
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+--     http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+-------------------------------------------------------------------------------
+
+-------------------------------------------------------------------------------
+--
+-- Author: R. van der Walle
+-- Purpose:
+--   Provide input ready control and use output ready control to the FIFO.
+--   Pass sop and eop along with the data through the FIFO if g_use_ctrl=TRUE.
+--   Default the RL=1, use g_fifo_rl=0 for a the show ahead FIFO.
+-- Description:
+--   Provide the sink ready for FIFO write control and use source ready for
+--   FIFO read access. The sink ready output is derived from FIFO almost full.
+--   Data without framing can use g_use_ctrl=FALSE to avoid implementing two
+--   data bits for sop and eop in the FIFO word width. Idem for g_use_sync,
+--   g_use_empty, g_use_channel, g_use_error and g_use_aux.
+-- Remark:
+-- . The bsn, empty, channel and error fields are valid at the sop and or eop.
+--   Therefore alternatively these fields can be passed on through a separate
+--   FIFO, with only one entry per frame, to save FIFO memory in case
+--   concatenating them makes the FIFO word width larger than a standard
+--   memory data word width.
+-- . The FIFO makes that the src_in.ready and snk_out.ready are not
+--   combinatorially connected, so this can ease the timing closure for the
+--   ready signal.
+-- . It is assumed all inputs are synchronous (identical control signals).
+--   If the inputs are asynchronous, better use multiple instances of 
+--   dp_fifo_core.
+-- . It is possible to use additonal signals to the fifo using in_aux/out_aux.
+
+LIBRARY IEEE, common_lib, technology_lib;
+USE IEEE.STD_LOGIC_1164.ALL;
+USE IEEE.numeric_std.ALL;
+USE common_lib.common_pkg.ALL;
+USE work.dp_stream_pkg.ALL;
+USE technology_lib.technology_select_pkg.ALL;
+
+ENTITY dp_fifo_core_arr IS
+  GENERIC (
+    g_technology     : NATURAL := c_tech_select_default;
+    g_nof_streams    : NATURAL := 1;
+    g_note_is_ful    : BOOLEAN := TRUE;   -- when TRUE report NOTE when FIFO goes full, fifo overflow is always reported as FAILURE
+    g_use_dual_clock : BOOLEAN := FALSE;
+    g_use_lut_sc     : BOOLEAN := FALSE;  -- when TRUE then force using LUTs instead of block RAM for single clock FIFO (bot available for dual clock FIFO)
+    g_data_w         : NATURAL := 16; -- Should be 2 times the c_complex_w if g_use_complex = TRUE
+    g_data_signed    : BOOLEAN := FALSE; -- TRUE extends g_data_w bits with the sign bit, FALSE pads g_data_w bits with zeros.
+    g_bsn_w          : NATURAL := 1;
+    g_empty_w        : NATURAL := 1;
+    g_channel_w      : NATURAL := 1;
+    g_error_w        : NATURAL := 1;
+    g_aux_w          : NATURAL := 1;
+    g_use_bsn        : BOOLEAN := FALSE;
+    g_use_empty      : BOOLEAN := FALSE;
+    g_use_channel    : BOOLEAN := FALSE;
+    g_use_error      : BOOLEAN := FALSE;
+    g_use_sync       : BOOLEAN := FALSE;
+    g_use_aux        : BOOLEAN := FALSE; -- extra signal in_aux/out_aux
+    g_use_ctrl       : BOOLEAN := TRUE;  -- sop & eop
+    g_use_complex    : BOOLEAN := FALSE; -- TRUE feeds the concatenated complex fields (im & re) through the FIFO instead of the data field.
+    g_fifo_size      : NATURAL := 512;   -- (16+2) * 512 = 1 M9K, g_data_w+2 for sop and eop
+    g_fifo_af_margin : NATURAL := 4;     -- >=4, Nof words below max (full) at which fifo is considered almost full
+    g_fifo_rl        : NATURAL := 1
+  );
+  PORT (
+    wr_rst      : IN  STD_LOGIC;
+    wr_clk      : IN  STD_LOGIC;
+    rd_rst      : IN  STD_LOGIC;
+    rd_clk      : IN  STD_LOGIC;
+    -- Monitor FIFO filling
+    wr_ful      : OUT STD_LOGIC;  -- corresponds to the carry bit of wr_usedw when FIFO is full
+    wr_usedw    : OUT STD_LOGIC_VECTOR(ceil_log2(g_fifo_size)-1 DOWNTO 0);
+    rd_usedw    : OUT STD_LOGIC_VECTOR(ceil_log2(g_fifo_size)-1 DOWNTO 0);
+    rd_emp      : OUT STD_LOGIC;
+    -- ST sink
+    snk_out_arr : OUT t_dp_siso_arr(g_nof_streams-1 DOWNTO 0);
+    snk_in_arr  : IN  t_dp_sosi_arr(g_nof_streams-1 DOWNTO 0);
+    in_aux      : IN  STD_LOGIC_VECTOR(g_aux_w-1 DOWNTO 0) := (OTHERS => '0');
+    -- ST source
+    src_in_arr  : IN  t_dp_siso_arr(g_nof_streams-1 DOWNTO 0);
+    src_out_arr : OUT t_dp_sosi_arr(g_nof_streams-1 DOWNTO 0);
+    out_aux     : OUT STD_LOGIC_VECTOR(g_aux_w-1 DOWNTO 0)
+  );
+END dp_fifo_core_arr;
+
+
+ARCHITECTURE str OF dp_fifo_core_arr IS
+
+  CONSTANT c_use_data         : BOOLEAN := TRUE;
+  CONSTANT c_total_data_w     : NATURAL := g_nof_streams * g_data_w;
+  CONSTANT c_ctrl_w           : NATURAL := 2;  -- sop and eop
+
+  CONSTANT c_complex_w        : NATURAL := smallest(c_dp_stream_dsp_data_w, g_data_w/2);  -- needed to cope with g_data_w > 2*c_dp_stream_dsp_data_w
+   
+  CONSTANT c_fifo_almost_full : NATURAL := g_fifo_size-g_fifo_af_margin;  -- FIFO almost full level for snk_out.ready
+  CONSTANT c_fifo_dat_w       : NATURAL := func_slv_concat_w(c_use_data,     g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux,
+                                                             c_total_data_w, g_bsn_w,   g_empty_w,   g_channel_w,   g_error_w,   1,          c_ctrl_w,   g_aux_w);  -- concat via FIFO
+  
+  SIGNAL nxt_snk_out   : t_dp_siso := c_dp_siso_rst;
+  
+  SIGNAL arst          : STD_LOGIC;
+    
+  TYPE t_wr_data_complex_arr IS ARRAY (INTEGER RANGE <>) OF STD_LOGIC_VECTOR(2*c_complex_w-1 DOWNTO 0);
+  TYPE t_rd_data_arr IS ARRAY (INTEGER RANGE <>) OF STD_LOGIC_VECTOR(g_data_w-1 DOWNTO 0);
+
+  SIGNAL wr_data_complex_arr : t_wr_data_complex_arr(g_nof_streams-1 DOWNTO 0);
+  SIGNAL wr_data             : STD_LOGIC_VECTOR(c_total_data_w-1 DOWNTO 0);
+  SIGNAL rd_data             : STD_LOGIC_VECTOR(c_total_data_w-1 DOWNTO 0);
+  SIGNAL rd_data_arr         : t_rd_data_arr(g_nof_streams-1 DOWNTO 0);
+
+  SIGNAL fifo_wr_dat   : STD_LOGIC_VECTOR(c_fifo_dat_w-1 DOWNTO 0);
+  SIGNAL fifo_wr_req   : STD_LOGIC;
+  SIGNAL fifo_wr_ful   : STD_LOGIC;
+  SIGNAL fifo_wr_usedw : STD_LOGIC_VECTOR(wr_usedw'RANGE);
+  
+  SIGNAL fifo_rd_dat   : STD_LOGIC_VECTOR(c_fifo_dat_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL fifo_rd_val   : STD_LOGIC;
+  SIGNAL fifo_rd_req   : STD_LOGIC;
+  SIGNAL fifo_rd_emp   : STD_LOGIC;
+  SIGNAL fifo_rd_usedw : STD_LOGIC_VECTOR(rd_usedw'RANGE);
+  
+  SIGNAL wr_sync       : STD_LOGIC_VECTOR(0 DOWNTO 0);
+  SIGNAL rd_sync       : STD_LOGIC_VECTOR(0 DOWNTO 0);
+  SIGNAL wr_ctrl       : STD_LOGIC_VECTOR(1 DOWNTO 0);
+  SIGNAL rd_ctrl       : STD_LOGIC_VECTOR(1 DOWNTO 0);
+  SIGNAL wr_aux        : STD_LOGIC_VECTOR(g_aux_w-1 DOWNTO 0);
+ 
+  SIGNAL rd_siso_arr   : t_dp_siso_arr(g_nof_streams-1 DOWNTO 0);
+  SIGNAL rd_sosi_arr   : t_dp_sosi_arr(g_nof_streams-1 DOWNTO 0) := (OTHERS => c_dp_sosi_rst);  -- initialize default values for unused sosi fields
+
+  SIGNAL in_aux_sosi   : t_dp_sosi := c_dp_sosi_rst; 
+  SIGNAL out_aux_sosi  : t_dp_sosi := c_dp_sosi_rst; 
+  
+BEGIN
+
+  -- Output monitor FIFO filling
+  wr_ful   <= fifo_wr_ful;
+  wr_usedw <= fifo_wr_usedw;
+  rd_usedw <= fifo_rd_usedw;
+  rd_emp   <= fifo_rd_emp;
+  
+  p_wr_clk: PROCESS(wr_clk, wr_rst)
+  BEGIN
+    IF wr_rst='1' THEN
+      snk_out_arr <= (OTHERS => c_dp_siso_rst);
+    ELSIF rising_edge(wr_clk) THEN
+      FOR I IN 0 TO g_nof_streams-1 LOOP
+        snk_out_arr(I) <= nxt_snk_out;
+      END LOOP;
+    END IF;
+  END PROCESS;
+  
+  wr_sync(0) <= snk_in_arr(0).sync;
+  wr_ctrl    <= snk_in_arr(0).sop & snk_in_arr(0).eop;
+  wr_aux     <= in_aux;
+
+  -- Assign the snk_in_arr data field or concatenated complex fields to the FIFO wr_data depending on g_use_complex
+  gen_streams : FOR I IN 0 TO g_nof_streams-1 GENERATE
+    wr_data_complex_arr(I) <= snk_in_arr(I).im(c_complex_w-1 DOWNTO 0) & snk_in_arr(I).re(c_complex_w-1 DOWNTO 0);  
+    wr_data((I+1) * g_data_w -1 DOWNTO I * g_data_w) <= snk_in_arr(I).data(g_data_w-1 DOWNTO 0) WHEN g_use_complex = FALSE ELSE RESIZE_UVEC(wr_data_complex_arr(I), g_data_w);
+  END GENERATE;
+  -- fifo wr wires
+  fifo_wr_req <= snk_in_arr(0).valid;
+  fifo_wr_dat <= func_slv_concat(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux,
+                                 wr_data,
+                                 snk_in_arr(0).bsn(        g_bsn_w-1 DOWNTO 0),
+                                 snk_in_arr(0).empty(    g_empty_w-1 DOWNTO 0),
+                                 snk_in_arr(0).channel(g_channel_w-1 DOWNTO 0),
+                                 snk_in_arr(0).err(      g_error_w-1 DOWNTO 0),
+                                 wr_sync,
+                                 wr_ctrl,
+                                 wr_aux);
+  
+  -- pass on frame level flow control
+  nxt_snk_out.xon <= src_in_arr(0).xon;
+
+  -- up stream use fifo almost full to control snk_out.ready
+  nxt_snk_out.ready <= '1' WHEN UNSIGNED(fifo_wr_usedw)<c_fifo_almost_full ELSE '0';    
+    
+  gen_common_fifo_sc : IF g_use_dual_clock=FALSE GENERATE
+    u_common_fifo_sc : ENTITY common_lib.common_fifo_sc
+    GENERIC MAP (
+      g_technology => g_technology,
+      g_note_is_ful => g_note_is_ful,
+      g_use_lut   => g_use_lut_sc,
+      g_dat_w     => c_fifo_dat_w,
+      g_nof_words => g_fifo_size
+    )
+    PORT MAP (
+      rst      => rd_rst,
+      clk      => rd_clk,
+      wr_dat   => fifo_wr_dat,
+      wr_req   => fifo_wr_req,
+      wr_ful   => fifo_wr_ful,
+      rd_dat   => fifo_rd_dat,
+      rd_req   => fifo_rd_req,
+      rd_emp   => fifo_rd_emp,
+      rd_val   => fifo_rd_val,
+      usedw    => fifo_rd_usedw
+    );
+    
+    fifo_wr_usedw <= fifo_rd_usedw;
+  END GENERATE;
+  
+  gen_common_fifo_dc : IF g_use_dual_clock=TRUE GENERATE
+    u_common_fifo_dc : ENTITY common_lib.common_fifo_dc
+    GENERIC MAP (
+      g_technology => g_technology,
+      g_dat_w     => c_fifo_dat_w,
+      g_nof_words => g_fifo_size
+    )
+    PORT MAP (
+      rst     => arst,
+      wr_clk  => wr_clk,
+      wr_dat  => fifo_wr_dat,
+      wr_req  => fifo_wr_req,
+      wr_ful  => fifo_wr_ful,
+      wrusedw => fifo_wr_usedw,
+      rd_clk  => rd_clk,
+      rd_dat  => fifo_rd_dat,
+      rd_req  => fifo_rd_req,
+      rd_emp  => fifo_rd_emp,
+      rdusedw => fifo_rd_usedw,
+      rd_val  => fifo_rd_val
+    );
+    
+    arst <= wr_rst OR rd_rst;
+  END GENERATE;
+
+  -- Extract the data from the wide FIFO output SLV. rd_data will be assigned to rd_sosi.data or rd_sosi.im & rd_sosi.re depending on g_use_complex.
+  rd_data <= func_slv_extract(c_use_data,     g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, 
+                              c_total_data_w, g_bsn_w,   g_empty_w,   g_channel_w,   g_error_w,            1, c_ctrl_w,   g_aux_w, 
+                              fifo_rd_dat, 0);
+  
+  -- fifo rd wires
+  -- SISO
+  fifo_rd_req <= rd_siso_arr(0).ready;
+  rd_sync           <= func_slv_extract(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, c_total_data_w, g_bsn_w, g_empty_w, g_channel_w, g_error_w, 1, c_ctrl_w, g_aux_w, fifo_rd_dat, 5);
+  rd_ctrl           <= func_slv_extract(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, c_total_data_w, g_bsn_w, g_empty_w, g_channel_w, g_error_w, 1, c_ctrl_w, g_aux_w, fifo_rd_dat, 6);
+
+  -- AUX
+  in_aux_sosi.data  <= RESIZE_DP_DATA(func_slv_extract(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, c_total_data_w, g_bsn_w, g_empty_w, g_channel_w, g_error_w, 1, c_ctrl_w, g_aux_w, fifo_rd_dat, 7));
+  in_aux_sosi.valid <= fifo_rd_val;
+  out_aux           <= out_aux_sosi.data(g_aux_w-1 DOWNTO 0);
+
+  -- SOSI
+  gen_rd_streams : FOR I IN 0 TO g_nof_streams-1 GENERATE
+    rd_data_arr(I)         <= rd_data( (I+1) * g_data_w -1 DOWNTO I * g_data_w);
+    rd_sosi_arr(I).data    <= RESIZE_DP_SDATA(rd_data_arr(I)) WHEN g_data_signed=TRUE ELSE RESIZE_DP_DATA(rd_data_arr(I));
+    rd_sosi_arr(I).re      <= RESIZE_DP_DSP_DATA(rd_data_arr(I)(  c_complex_w-1 DOWNTO 0));
+    rd_sosi_arr(I).im      <= RESIZE_DP_DSP_DATA(rd_data_arr(I)(2*c_complex_w-1 DOWNTO c_complex_w));
+    rd_sosi_arr(I).bsn     <= RESIZE_DP_BSN(func_slv_extract(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, c_total_data_w, g_bsn_w, g_empty_w, g_channel_w, g_error_w, 1, c_ctrl_w, g_aux_w, fifo_rd_dat, 1));
+    rd_sosi_arr(I).empty   <= RESIZE_DP_EMPTY(func_slv_extract(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, c_total_data_w, g_bsn_w, g_empty_w, g_channel_w, g_error_w, 1, c_ctrl_w, g_aux_w, fifo_rd_dat, 2));
+    rd_sosi_arr(I).channel <= RESIZE_DP_CHANNEL(func_slv_extract(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, c_total_data_w, g_bsn_w, g_empty_w, g_channel_w, g_error_w, 1, c_ctrl_w, g_aux_w, fifo_rd_dat, 3));
+    rd_sosi_arr(I).err     <= RESIZE_DP_ERROR(func_slv_extract(c_use_data, g_use_bsn, g_use_empty, g_use_channel, g_use_error, g_use_sync, g_use_ctrl, g_use_aux, c_total_data_w, g_bsn_w, g_empty_w, g_channel_w, g_error_w, 1, c_ctrl_w, g_aux_w, fifo_rd_dat, 4));
+    rd_sosi_arr(I).sync    <= fifo_rd_val AND rd_sync(0);
+    rd_sosi_arr(I).valid   <= fifo_rd_val;
+    rd_sosi_arr(I).sop     <= fifo_rd_val AND rd_ctrl(1);
+    rd_sosi_arr(I).eop     <= fifo_rd_val AND rd_ctrl(0);
+    
+    u_ready_latency : ENTITY work.dp_latency_adapter
+    GENERIC MAP (
+      g_in_latency  => 1,
+      g_out_latency => g_fifo_rl
+    )
+    PORT MAP (
+      rst       => rd_rst,
+      clk       => rd_clk,
+      -- ST sink
+      snk_out   => rd_siso_arr(I),
+      snk_in    => rd_sosi_arr(I),
+      -- ST source
+      src_in    => src_in_arr(I),
+      src_out   => src_out_arr(I)
+    );
+  END GENERATE;
+
+  -- Using extra dp_latency_adapter for aux signal
+  u_ready_latency_aux : ENTITY work.dp_latency_adapter
+  GENERIC MAP (
+    g_in_latency  => 1,
+    g_out_latency => g_fifo_rl
+  )
+  PORT MAP (
+    rst       => rd_rst,
+    clk       => rd_clk,
+    -- ST sink
+    snk_in    => in_aux_sosi,
+    -- ST source
+    src_in    => src_in_arr(0),
+    src_out   => out_aux_sosi
+  );
+
+
+END str;
diff --git a/libraries/base/dp/src/vhdl/dp_fifo_dc_arr.vhd b/libraries/base/dp/src/vhdl/dp_fifo_dc_arr.vhd
new file mode 100644
index 0000000000000000000000000000000000000000..e788c2b57913f8cef7638e3288e83aa7ef55da3c
--- /dev/null
+++ b/libraries/base/dp/src/vhdl/dp_fifo_dc_arr.vhd
@@ -0,0 +1,124 @@
+-------------------------------------------------------------------------------
+--
+-- Copyright 2021
+-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
+-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
+--
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+--     http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+-------------------------------------------------------------------------------
+
+-------------------------------------------------------------------------------
+--
+-- Author: R. van der Walle
+-- Purpose: DP FIFO array for dual clock (= dc) domain wr and rd.
+-- Description: See dp_fifo_core_arr.vhd.
+
+LIBRARY IEEE,common_lib, technology_lib;
+USE IEEE.std_logic_1164.ALL;
+USE IEEE.numeric_std.ALL;
+USE common_lib.common_pkg.ALL;
+USE work.dp_stream_pkg.ALL;
+USE technology_lib.technology_select_pkg.ALL;
+
+ENTITY dp_fifo_dc_arr IS
+  GENERIC (
+    g_technology     : NATURAL := c_tech_select_default;
+    g_nof_streams    : NATURAL := 1;
+    g_data_w         : NATURAL := 16; -- Should be 2 times the c_complex_w if g_use_complex = TRUE
+    g_bsn_w          : NATURAL := 1;
+    g_empty_w        : NATURAL := 1;
+    g_channel_w      : NATURAL := 1;
+    g_error_w        : NATURAL := 1;
+    g_aux_w          : NATURAL := 1;
+    g_use_bsn        : BOOLEAN := FALSE;
+    g_use_empty      : BOOLEAN := FALSE;
+    g_use_channel    : BOOLEAN := FALSE;
+    g_use_error      : BOOLEAN := FALSE;
+    g_use_sync       : BOOLEAN := FALSE;
+    g_use_aux        : BOOLEAN := FALSE; 
+    g_use_ctrl       : BOOLEAN := TRUE;  -- sop & eop
+    g_use_complex    : BOOLEAN := FALSE; -- TRUE feeds the concatenated complex fields (im & re) through the FIFO instead of the data field.
+    g_fifo_size      : NATURAL := 512;   -- (16+2) * 512 = 1 M9K, g_data_w+2 for sop and eop
+    g_fifo_af_margin : NATURAL := 4;     -- >=4, Nof words below max (full) at which fifo is considered almost full
+    g_fifo_rl        : NATURAL := 1
+  );
+  PORT (
+    wr_rst      : IN  STD_LOGIC;
+    wr_clk      : IN  STD_LOGIC;
+    rd_rst      : IN  STD_LOGIC;
+    rd_clk      : IN  STD_LOGIC;
+    -- Monitor FIFO filling
+    wr_ful      : OUT STD_LOGIC;
+    wr_usedw    : OUT STD_LOGIC_VECTOR(ceil_log2(g_fifo_size)-1 DOWNTO 0);
+    rd_usedw    : OUT STD_LOGIC_VECTOR(ceil_log2(g_fifo_size)-1 DOWNTO 0);
+    rd_emp      : OUT STD_LOGIC;
+    -- ST sink
+    snk_out_arr : OUT t_dp_siso_arr(g_nof_streams-1 DOWNTO 0);
+    snk_in_arr  : IN  t_dp_sosi_arr(g_nof_streams-1 DOWNTO 0);
+    in_aux      : IN  STD_LOGIC_VECTOR(g_aux_w-1 DOWNTO 0);    
+    -- ST source
+    src_in_arr  : IN  t_dp_siso_arr(g_nof_streams-1 DOWNTO 0) := (OTHERS => c_dp_siso_rdy);
+    src_out_arr : OUT t_dp_sosi_arr(g_nof_streams-1 DOWNTO 0);
+    out_aux     : OUT STD_LOGIC_VECTOR(g_aux_w-1 DOWNTO 0)
+  );
+END dp_fifo_dc_arr;
+
+
+ARCHITECTURE str OF dp_fifo_dc_arr IS
+BEGIN
+
+  u_dp_fifo_core_arr : ENTITY work.dp_fifo_core_arr 
+  GENERIC MAP (
+    g_technology     => g_technology,
+    g_nof_streams    => g_nof_streams,
+    g_use_dual_clock => TRUE,
+    g_data_w         => g_data_w,
+    g_bsn_w          => g_bsn_w,
+    g_empty_w        => g_empty_w,
+    g_channel_w      => g_channel_w,
+    g_error_w        => g_error_w,
+    g_aux_w          => g_aux_w,
+    g_use_bsn        => g_use_bsn, 
+    g_use_empty      => g_use_empty,
+    g_use_channel    => g_use_channel,
+    g_use_error      => g_use_error,
+    g_use_sync       => g_use_sync,
+    g_use_aux        => g_use_aux,
+    g_use_ctrl       => g_use_ctrl,
+    g_use_complex    => g_use_complex,
+    g_fifo_size      => g_fifo_size,
+    g_fifo_af_margin => g_fifo_af_margin,
+    g_fifo_rl        => g_fifo_rl
+  )
+  PORT MAP (
+    wr_rst      => wr_rst,
+    wr_clk      => wr_clk,
+    rd_rst      => rd_rst,
+    rd_clk      => rd_clk,
+    -- Monitor FIFO filling
+    wr_ful      => wr_ful,
+    wr_usedw    => wr_usedw,
+    rd_usedw    => rd_usedw,
+    rd_emp      => rd_emp,
+    -- ST sink
+    snk_out_arr => snk_out_arr,
+    snk_in_arr  => snk_in_arr,
+    in_aux      => in_aux,
+    -- ST source
+    src_in_arr  => src_in_arr,
+    src_out_arr => src_out_arr,
+    out_aux     => out_aux
+  );
+
+END str;
diff --git a/libraries/base/dp/tb/vhdl/tb_dp_fifo_dc_arr.vhd b/libraries/base/dp/tb/vhdl/tb_dp_fifo_dc_arr.vhd
new file mode 100644
index 0000000000000000000000000000000000000000..514ebe5def34235e3eab48d0502a83b7c860190d
--- /dev/null
+++ b/libraries/base/dp/tb/vhdl/tb_dp_fifo_dc_arr.vhd
@@ -0,0 +1,251 @@
+-------------------------------------------------------------------------------
+--
+-- Copyright 2021
+-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
+-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
+--
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+--     http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+-------------------------------------------------------------------------------
+
+-------------------------------------------------------------------------------
+--
+-- Author: R. van der Walle
+-- Purpose: Test dp_fifo_dc_arr.
+-- Description:
+-- Verifies output data and ctrl signals of DUT. This is configurable using generics.
+
+LIBRARY IEEE, common_lib;
+USE IEEE.std_logic_1164.ALL;
+USE IEEE.numeric_std.ALL;
+USE common_lib.common_pkg.ALL;
+USE work.dp_stream_pkg.ALL;
+USE work.tb_dp_pkg.ALL;
+
+ENTITY tb_dp_fifo_dc_arr IS
+  GENERIC (
+    -- Try FIFO settings
+    g_dut_nof_streams  : NATURAL := 3;
+    g_dut_wr_clk_freq  : POSITIVE := 2;      -- normalized write clock frequency
+    g_dut_rd_clk_freq  : POSITIVE := 3;      -- normalized read  clock frequency
+    g_dut_use_bsn      : BOOLEAN := TRUE;
+    g_dut_use_empty    : BOOLEAN := TRUE;
+    g_dut_use_channel  : BOOLEAN := TRUE;
+    g_dut_use_sync     : BOOLEAN := TRUE;
+    g_dut_use_ctrl     : BOOLEAN := TRUE;
+    g_dut_use_aux      : BOOLEAN := TRUE;
+    g_dut_out_latency  : NATURAL := 1       -- selectable for dp_fifo_dc_arr: default 1 or 0 for look ahead FIFO
+  );
+END tb_dp_fifo_dc_arr;
+
+
+ARCHITECTURE tb OF tb_dp_fifo_dc_arr IS
+
+  -- See tb_dp_pkg.vhd for explanation and run time, increase the run time by g_dut_rd_clk_freq/g_dut_wr_clk_freq if g_dut_rd_clk_freq>g_dut_wr_clk_freq
+
+  -- DUT
+  CONSTANT c_dut_fifo_size   : NATURAL := 64;
+  CONSTANT c_dut_in_latency  : NATURAL := 1;                 -- fixed for dp_fifo_dc_arr
+  
+  -- Stimuli
+  CONSTANT c_tx_latency     : NATURAL := c_dut_in_latency;   -- TX ready latency of TB
+  CONSTANT c_tx_void        : NATURAL := sel_a_b(c_tx_latency, 1, 0);  -- used to avoid empty range VHDL warnings when c_tx_latency=0
+  CONSTANT c_tx_offset_sop  : NATURAL := 3;
+  CONSTANT c_tx_period_sop  : NATURAL := 7;                  -- sop in data valid cycle 3,  10,  17, ...
+  CONSTANT c_tx_offset_eop  : NATURAL := 5;                  -- eop in data valid cycle   5,  12,  19, ...
+  CONSTANT c_tx_period_eop  : NATURAL := c_tx_period_sop;
+  CONSTANT c_tx_offset_sync : NATURAL := 3;                  -- sync in data valid cycle 3, 20, 37, ...
+  CONSTANT c_tx_period_sync : NATURAL := 17;
+  CONSTANT c_rx_latency     : NATURAL := g_dut_out_latency;  -- RX ready latency from DUT
+  CONSTANT c_verify_en_wait : NATURAL := 20;                 -- wait some cycles before asserting verify enable
+  
+  CONSTANT c_bsn_offset     : NATURAL := 1;
+  CONSTANT c_empty_offset   : NATURAL := 2;
+  CONSTANT c_channel_offset : NATURAL := 3;
+  
+  CONSTANT c_random_w       : NATURAL := 19;
+  
+  SIGNAL tb_end         : STD_LOGIC := '0';
+  SIGNAL wr_clk         : STD_LOGIC := '0';
+  SIGNAL rd_clk         : STD_LOGIC := '0';
+  SIGNAL rst            : STD_LOGIC;
+  SIGNAL sync           : STD_LOGIC;
+  SIGNAL lfsr1          : STD_LOGIC_VECTOR(c_random_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL lfsr2          : STD_LOGIC_VECTOR(c_random_w   DOWNTO 0) := (OTHERS=>'0');
+  
+  SIGNAL cnt_dat        : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0);
+  SIGNAL cnt_val        : STD_LOGIC;
+  SIGNAL cnt_en         : STD_LOGIC;
+  
+  SIGNAL tx_data        : t_dp_data_arr(0 TO c_tx_latency + c_tx_void)    := (OTHERS=>(OTHERS=>'0'));
+  SIGNAL tx_val         : STD_LOGIC_VECTOR(0 TO c_tx_latency + c_tx_void) := (OTHERS=>'0');
+  
+  SIGNAL in_ready       : STD_LOGIC;
+  SIGNAL in_data        : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL in_bsn         : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL in_empty       : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL in_channel     : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL in_sync        : STD_LOGIC;
+  SIGNAL in_val         : STD_LOGIC;
+  SIGNAL in_sop         : STD_LOGIC;
+  SIGNAL in_eop         : STD_LOGIC;
+  SIGNAL in_aux         : STD_LOGIC;
+  
+  SIGNAL in_siso_arr    : t_dp_siso_arr(g_dut_nof_streams-1 DOWNTO 0);
+  SIGNAL in_sosi_arr    : t_dp_sosi_arr(g_dut_nof_streams-1 DOWNTO 0) := (OTHERS => c_dp_sosi_rst);
+  SIGNAL out_siso_arr   : t_dp_siso_arr(g_dut_nof_streams-1 DOWNTO 0);
+  SIGNAL out_sosi_arr   : t_dp_sosi_arr(g_dut_nof_streams-1 DOWNTO 0);
+  
+  SIGNAL out_ready      : STD_LOGIC;
+  SIGNAL prev_out_ready : STD_LOGIC_VECTOR(0 TO c_rx_latency);
+  SIGNAL out_data       : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0);
+  SIGNAL out_bsn        : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL out_empty      : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL out_channel    : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := (OTHERS=>'0');
+  SIGNAL out_sync       : STD_LOGIC;
+  SIGNAL out_val        : STD_LOGIC;
+  SIGNAL out_sop        : STD_LOGIC;
+  SIGNAL out_eop        : STD_LOGIC;
+  SIGNAL out_aux        : STD_LOGIC;
+  SIGNAL prev_out_data  : STD_LOGIC_VECTOR(out_data'RANGE);
+  
+  SIGNAL state          : t_dp_state_enum;
+  
+  SIGNAL verify_en      : STD_LOGIC;
+  SIGNAL verify_done    : STD_LOGIC;
+  
+  SIGNAL exp_data       : STD_LOGIC_VECTOR(c_dp_data_w-1 DOWNTO 0) := TO_UVEC(19000/g_dut_wr_clk_freq, c_dp_data_w);
+  
+  SIGNAL usedw          : STD_LOGIC_VECTOR(ceil_log2(c_dut_fifo_size)-1 DOWNTO 0);
+  
+BEGIN
+
+  wr_clk <= NOT wr_clk OR tb_end AFTER g_dut_rd_clk_freq*clk_period/2;
+  rd_clk <= NOT rd_clk OR tb_end AFTER g_dut_wr_clk_freq*clk_period/2;
+  rst <= '1', '0' AFTER clk_period*7;
+  
+  -- Sync interval
+  proc_dp_sync_interval(wr_clk, sync);
+  
+  -- Input data
+  cnt_val <= in_ready AND cnt_en;
+  
+  proc_dp_cnt_dat(rst, wr_clk, cnt_val, cnt_dat);
+  proc_dp_tx_data(c_tx_latency, rst, wr_clk, cnt_val, cnt_dat, tx_data, tx_val, in_data, in_val);
+  proc_dp_tx_ctrl(c_tx_offset_sync, c_tx_period_sync, in_data, in_val, in_sync);
+  proc_dp_tx_ctrl(c_tx_offset_sop, c_tx_period_sop, in_data, in_val, in_sop);
+  proc_dp_tx_ctrl(c_tx_offset_eop, c_tx_period_eop, in_data, in_val, in_eop);
+
+  in_bsn     <= INCR_UVEC(in_data, c_bsn_offset);
+  in_empty   <= INCR_UVEC(in_data, c_empty_offset);
+  in_channel <= INCR_UVEC(in_data, c_channel_offset);
+  
+  -- Stimuli control
+  proc_dp_count_en(rst, wr_clk, sync, lfsr1, state, verify_done, tb_end, cnt_en);
+  proc_dp_out_ready(rst, wr_clk, sync, lfsr2, out_ready);
+  
+  -- Output verify
+  proc_dp_verify_en(c_verify_en_wait, rst, rd_clk, sync, verify_en);
+  proc_dp_verify_data("out_sosi.data", c_rx_latency, rd_clk, verify_en, out_ready, out_val, out_data, prev_out_data);
+  proc_dp_verify_valid(c_rx_latency, rd_clk, verify_en, out_ready, prev_out_ready, out_val);
+  
+  gen_verify_sync : IF g_dut_use_sync=TRUE GENERATE
+    proc_dp_verify_ctrl(c_tx_offset_sync, c_tx_period_sync, "sync", rd_clk, verify_en, out_data, out_val, out_sync);
+  END GENERATE;
+
+  gen_verify_aux : IF g_dut_use_aux=TRUE GENERATE
+    proc_dp_verify_ctrl(c_tx_offset_sync, c_tx_period_sync, "aux", rd_clk, verify_en, out_data, out_val, out_aux);
+  END GENERATE;  
+
+  gen_verify_ctrl : IF g_dut_use_ctrl=TRUE GENERATE
+    proc_dp_verify_ctrl(c_tx_offset_sop, c_tx_period_sop, "sop", rd_clk, verify_en, out_data, out_val, out_sop);
+    proc_dp_verify_ctrl(c_tx_offset_eop, c_tx_period_eop, "eop", rd_clk, verify_en, out_data, out_val, out_eop);
+  END GENERATE;
+  
+  gen_verify_bsn : IF g_dut_use_bsn=TRUE GENERATE
+    proc_dp_verify_other_sosi("bsn", INCR_UVEC(out_data, c_bsn_offset), rd_clk, verify_en, out_bsn);
+  END GENERATE;
+  
+  gen_verify_empty : IF g_dut_use_empty=TRUE GENERATE
+    proc_dp_verify_other_sosi("empty", INCR_UVEC(out_data, c_empty_offset), rd_clk, verify_en, out_empty);
+  END GENERATE;
+  
+  gen_verify_channel : IF g_dut_use_channel=TRUE GENERATE
+    proc_dp_verify_other_sosi("channel", INCR_UVEC(out_data, c_channel_offset), rd_clk, verify_en, out_channel);
+  END GENERATE;
+  
+  -- Check that the test has ran at all
+  proc_dp_verify_value(e_at_least, rd_clk, verify_done, exp_data, out_data);
+  
+  ------------------------------------------------------------------------------
+  -- DUT dp_fifo_dc_arr
+  ------------------------------------------------------------------------------
+  
+  -- map sl, slv to record
+  in_ready <= in_siso_arr(0).ready;                           -- SISO
+  in_aux   <= in_sync;  -- use sync to test aux data
+  gen_streams : FOR I IN 0 TO g_dut_nof_streams -1 GENERATE
+    in_sosi_arr(I).data(c_dp_data_w-1 DOWNTO 0) <= in_data;     -- SOSI
+    in_sosi_arr(I).bsn(c_dp_bsn_w-1 DOWNTO 0)   <= in_bsn(c_dp_bsn_w-1 DOWNTO 0);
+    in_sosi_arr(I).empty                        <= in_empty(c_dp_empty_w-1 DOWNTO 0);
+    in_sosi_arr(I).channel                      <= in_channel(c_dp_channel_w-1 DOWNTO 0);
+    in_sosi_arr(I).sync                         <= in_sync;
+    in_sosi_arr(I).valid                        <= in_val;
+    in_sosi_arr(I).sop                          <= in_sop;
+    in_sosi_arr(I).eop                          <= in_eop;
+    out_siso_arr(I).ready                       <= out_ready;                               -- SISO
+  END GENERATE;
+  out_data                               <= out_sosi_arr(0).data(c_dp_data_w-1 DOWNTO 0);   -- SOSI
+  out_bsn(c_dp_bsn_w-1 DOWNTO 0)         <= out_sosi_arr(0).bsn(c_dp_bsn_w-1 DOWNTO 0);
+  out_empty(c_dp_empty_w-1 DOWNTO 0)     <= out_sosi_arr(0).empty;
+  out_channel(c_dp_channel_w-1 DOWNTO 0) <= out_sosi_arr(0).channel;
+  out_sync                               <= out_sosi_arr(0).sync;
+  out_val                                <= out_sosi_arr(0).valid;
+  out_sop                                <= out_sosi_arr(0).sop;
+  out_eop                                <= out_sosi_arr(0).eop;
+  
+  dut : ENTITY work.dp_fifo_dc_arr
+  GENERIC MAP (
+    g_nof_streams => g_dut_nof_streams,
+    g_data_w      => c_dp_data_w,
+    g_bsn_w       => c_dp_bsn_w,
+    g_empty_w     => c_dp_empty_w,
+    g_channel_w   => c_dp_channel_w,
+    g_error_w     => 1,
+    g_aux_w       => 1,
+    g_use_bsn     => g_dut_use_bsn,
+    g_use_empty   => g_dut_use_empty,
+    g_use_channel => g_dut_use_channel,
+    g_use_error   => FALSE,
+    g_use_sync    => g_dut_use_sync,
+    g_use_aux     => g_dut_use_aux,
+    g_use_ctrl    => g_dut_use_ctrl,
+    g_fifo_size   => c_dut_fifo_size,
+    g_fifo_rl     => g_dut_out_latency
+  )
+  PORT MAP (
+    wr_rst      => rst,
+    wr_clk      => wr_clk,
+    rd_rst      => rst,
+    rd_clk      => rd_clk,
+    snk_out_arr => in_siso_arr,     -- OUT = request to upstream ST source
+    snk_in_arr  => in_sosi_arr,
+    in_aux(0)   => in_aux,
+    wr_usedw    => usedw,
+    rd_usedw    => OPEN,
+    src_in_arr  => out_siso_arr,    -- IN  = request from downstream ST sink
+    src_out_arr => out_sosi_arr,
+    out_aux(0)  => out_aux
+  );
+
+END tb;
diff --git a/libraries/base/dp/tb/vhdl/tb_tb_dp_fifo_dc_arr.vhd b/libraries/base/dp/tb/vhdl/tb_tb_dp_fifo_dc_arr.vhd
new file mode 100644
index 0000000000000000000000000000000000000000..a5a8429a8e0cefa5eae73755b8df3b083df2b55b
--- /dev/null
+++ b/libraries/base/dp/tb/vhdl/tb_tb_dp_fifo_dc_arr.vhd
@@ -0,0 +1,67 @@
+-------------------------------------------------------------------------------
+--
+-- Copyright 2021
+-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
+-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
+--
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+--     http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+-------------------------------------------------------------------------------
+
+-------------------------------------------------------------------------------
+--
+-- Author: R. van der Walle
+-- Purpose: Test multiple instances of tb_dp_fifo_dc_arr.
+
+LIBRARY IEEE;
+USE IEEE.std_logic_1164.ALL;
+
+
+ENTITY tb_tb_dp_fifo_dc_arr IS
+END tb_tb_dp_fifo_dc_arr;
+
+
+ARCHITECTURE tb OF tb_tb_dp_fifo_dc_arr IS
+  SIGNAL tb_end : STD_LOGIC := '0';  -- declare tb_end to avoid 'No objects found' error on 'when -label tb_end'
+BEGIN
+
+  -- > as 10
+  -- > run g_dut_rd_clk_freq * 330 us                 --> OK
+
+  -- Try FIFO settings : GENERIC MAP (g_dut_wr_clk_freq, g_dut_rd_clk_freq, g_dut_use_bsn, g_dut_use_empty, g_dut_use_channel, g_dut_use_sync, g_dut_use_ctrl, g_dut_out_latency)
+
+  u_use_all_rl_0          : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  0);
+  u_use_all_rl_0_clk_2_1  : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 2, 1, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  0);
+  u_use_all_rl_0_clk_1_2  : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 2, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  0);
+  u_use_all_rl_0_clk_3_2  : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 3, 2, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  0);
+  u_use_all_rl_0_clk_2_3  : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 2, 3, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  0);
+  
+  u_use_all               : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (1, 1, 1, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  1);
+  u_use_all_clk_3_1       : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 3, 1, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  1);
+  u_use_all_clk_1_3       : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 3, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  1);
+  
+  u_use_ctrl_rl_0         : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (1, 1, 1, FALSE, FALSE, FALSE, FALSE,  TRUE,  TRUE,  0);
+  u_use_ctrl_rl_0_clk_1_3 : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 3, FALSE, FALSE, FALSE, FALSE,  TRUE,  TRUE,  0);
+  u_use_ctrl_rl_0_clk_3_1 : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 3, 1, FALSE, FALSE, FALSE, FALSE,  TRUE,  TRUE,  0);
+  u_use_ctrl              : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, FALSE, FALSE, FALSE, FALSE,  TRUE,  TRUE,  1);
+  u_use_ctrl_clk_1_2      : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 2, FALSE, FALSE, FALSE, FALSE,  TRUE,  TRUE,  1);
+  u_use_ctrl_clk_2_1      : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 2, 1, FALSE, FALSE, FALSE, FALSE,  TRUE,  TRUE,  1);
+  
+  u_no_bsn                : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, FALSE, TRUE,  TRUE,  TRUE,   TRUE,  TRUE,  1);
+  u_no_empty              : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, TRUE,  FALSE, TRUE,  TRUE,   TRUE,  TRUE,  1);
+  u_no_channel            : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, TRUE,  TRUE,  FALSE, TRUE,   TRUE,  TRUE,  1);
+  u_no_sync               : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, TRUE,  TRUE,  TRUE,  FALSE,  TRUE,  TRUE,  1);
+  u_no_ctrl               : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, TRUE,  TRUE,  TRUE,  TRUE,   FALSE, TRUE,  1);
+  u_no_aux                : ENTITY work.tb_dp_fifo_dc_arr GENERIC MAP (3, 1, 1, TRUE,  TRUE,  TRUE,  TRUE,   TRUE,  FALSE, 1);
+  
+END tb;