diff --git a/libraries/base/diag/diag.peripheral.yaml b/libraries/base/diag/diag.peripheral.yaml
index ec4f28671473375570d764b2d7df883483f142e3..5b7932ea9733695a5b0d3ad31e965bfdcfc836d0 100644
--- a/libraries/base/diag/diag.peripheral.yaml
+++ b/libraries/base/diag/diag.peripheral.yaml
@@ -100,10 +100,11 @@ peripherals:
               user_width: g_data_w
     
   - peripheral_name: diag_block_gen    # pi_diag_block_gen.py
-    peripheral_description: "Block generator (BG)"
+    peripheral_description: "Block generator (BG) with g_nof_reg = 1 reg shared by all streams or g_nof_reg = g_nof_streams to have one reg per stream"
     parameters:
       # Parameters of mms_diag_block_gen.vhd
       - { name: g_nof_streams, value: 1 }
+      - { name: g_nof_reg, value: 1 }
       - { name: g_buf_dat_w, value: 16 }
       - { name: g_buf_addr_w, value: 7 }
     mm_ports:
@@ -112,7 +113,7 @@ peripherals:
         mm_port_type: REG
         mm_port_span: 8 * MM_BUS_SIZE
         mm_port_description: "Block generator control."
-        number_of_mm_ports: 1
+        number_of_mm_ports: g_nof_reg
         fields:
           - - field_name: enable
               field_description: "Starts the block generator."