diff --git a/boards/uniboard2b/designs/unb2b_arp_ping/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip b/boards/uniboard2b/designs/unb2b_arp_ping/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip
index cff76cf566aa6c4f388efd5e0568cd3dc4255afa..320b3db937d06da2e94766e1b01ea19f990e31f8 100644
--- a/boards/uniboard2b/designs/unb2b_arp_ping/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip
+++ b/boards/uniboard2b/designs/unb2b_arp_ping/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip
@@ -607,7 +607,7 @@
           <spirit:direction>in</spirit:direction>
           <spirit:vector>
             <spirit:left>0</spirit:left>
-            <spirit:right>9</spirit:right>
+            <spirit:right>12</spirit:right>
           </spirit:vector>
           <spirit:wireTypeDefs>
             <spirit:wireTypeDef>
@@ -703,7 +703,7 @@
           <spirit:direction>out</spirit:direction>
           <spirit:vector>
             <spirit:left>0</spirit:left>
-            <spirit:right>9</spirit:right>
+            <spirit:right>12</spirit:right>
           </spirit:vector>
           <spirit:wireTypeDefs>
             <spirit:wireTypeDef>
@@ -783,7 +783,7 @@
         <spirit:parameter>
           <spirit:name>g_adr_w</spirit:name>
           <spirit:displayName>g_adr_w</spirit:displayName>
-          <spirit:value spirit:format="long" spirit:id="g_adr_w">10</spirit:value>
+          <spirit:value spirit:format="long" spirit:id="g_adr_w">13</spirit:value>
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>g_dat_w</spirit:name>
@@ -846,7 +846,7 @@
                     <name>coe_address_export</name>
                     <role>export</role>
                     <direction>Output</direction>
-                    <width>10</width>
+                    <width>13</width>
                     <lowerBound>0</lowerBound>
                     <vhdlType>STD_LOGIC_VECTOR</vhdlType>
                 </port>
@@ -910,7 +910,7 @@
                     <name>avs_mem_address</name>
                     <role>address</role>
                     <direction>Input</direction>
-                    <width>10</width>
+                    <width>13</width>
                     <lowerBound>0</lowerBound>
                     <vhdlType>STD_LOGIC_VECTOR</vhdlType>
                 </port>
diff --git a/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_cpu_0.ip b/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_cpu_0.ip
index 722101ac42b4f5f557f3a34753274d39d464ac8f..04eb04a62295e1b1162a6e592d6366acf04e18ab 100644
--- a/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_cpu_0.ip
+++ b/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_cpu_0.ip
@@ -2073,7 +2073,7 @@
         <spirit:parameter>
           <spirit:name>breakAbsoluteAddr</spirit:name>
           <spirit:displayName>Break vector</spirit:displayName>
-          <spirit:value spirit:format="long" spirit:id="breakAbsoluteAddr">20512</spirit:value>
+          <spirit:value spirit:format="long" spirit:id="breakAbsoluteAddr">16416</spirit:value>
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>mmu_TLBMissExcAbsAddr</spirit:name>
@@ -2208,7 +2208,7 @@
         <spirit:parameter>
           <spirit:name>instSlaveMapParam</spirit:name>
           <spirit:displayName>instSlaveMapParam</spirit:displayName>
-          <spirit:value spirit:format="string" spirit:id="instSlaveMapParam"><![CDATA[<address-map><slave name='cpu_0.debug_mem_slave' start='0x5000' end='0x5800' datawidth='32' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /></address-map>]]></spirit:value>
+          <spirit:value spirit:format="string" spirit:id="instSlaveMapParam"><![CDATA[<address-map><slave name='cpu_0.debug_mem_slave' start='0x4000' end='0x4800' datawidth='32' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /></address-map>]]></spirit:value>
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>faSlaveMapParam</spirit:name>
@@ -2218,7 +2218,7 @@
         <spirit:parameter>
           <spirit:name>dataSlaveMapParam</spirit:name>
           <spirit:displayName>dataSlaveMapParam</spirit:displayName>
-          <spirit:value spirit:format="string" spirit:id="dataSlaveMapParam"><![CDATA[<address-map><slave name='pio_system_info.mem' start='0x0' end='0x80' datawidth='32' /><slave name='avs_eth_0.mms_reg' start='0x80' end='0xC0' datawidth='32' /><slave name='reg_fpga_voltage_sens.mem' start='0xC0' end='0x100' datawidth='32' /><slave name='reg_unb_pmbus.mem' start='0x100' end='0x200' datawidth='32' /><slave name='reg_unb_sens.mem' start='0x200' end='0x300' datawidth='32' /><slave name='timer_0.s1' start='0x300' end='0x320' datawidth='16' /><slave name='reg_fpga_temp_sens.mem' start='0x320' end='0x340' datawidth='32' /><slave name='reg_epcs.mem' start='0x340' end='0x360' datawidth='32' /><slave name='reg_remu.mem' start='0x360' end='0x380' datawidth='32' /><slave name='pio_wdi.s1' start='0x380' end='0x390' datawidth='32' /><slave name='reg_mmdp_data.mem' start='0x390' end='0x398' datawidth='32' /><slave name='reg_mmdp_ctrl.mem' start='0x398' end='0x3A0' datawidth='32' /><slave name='reg_dpmm_data.mem' start='0x3A0' end='0x3A8' datawidth='32' /><slave name='reg_dpmm_ctrl.mem' start='0x3A8' end='0x3B0' datawidth='32' /><slave name='pio_pps.mem' start='0x3B0' end='0x3B8' datawidth='32' /><slave name='jtag_uart_0.avalon_jtag_slave' start='0x3B8' end='0x3C0' datawidth='32' /><slave name='rom_system_info.mem' start='0x1000' end='0x2000' datawidth='32' /><slave name='avs_eth_0.mms_tse' start='0x2000' end='0x3000' datawidth='32' /><slave name='reg_wdi.mem' start='0x3000' end='0x3008' datawidth='32' /><slave name='ram_scrap.mem' start='0x3800' end='0x4000' datawidth='32' /><slave name='avs_eth_0.mms_ram' start='0x4000' end='0x5000' datawidth='32' /><slave name='cpu_0.debug_mem_slave' start='0x5000' end='0x5800' datawidth='32' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /></address-map>]]></spirit:value>
+          <spirit:value spirit:format="string" spirit:id="dataSlaveMapParam"><![CDATA[<address-map><slave name='pio_system_info.mem' start='0x0' end='0x80' datawidth='32' /><slave name='avs_eth_0.mms_reg' start='0x80' end='0xC0' datawidth='32' /><slave name='reg_fpga_voltage_sens.mem' start='0xC0' end='0x100' datawidth='32' /><slave name='reg_unb_pmbus.mem' start='0x100' end='0x200' datawidth='32' /><slave name='reg_unb_sens.mem' start='0x200' end='0x300' datawidth='32' /><slave name='timer_0.s1' start='0x300' end='0x320' datawidth='16' /><slave name='reg_fpga_temp_sens.mem' start='0x320' end='0x340' datawidth='32' /><slave name='reg_epcs.mem' start='0x340' end='0x360' datawidth='32' /><slave name='reg_remu.mem' start='0x360' end='0x380' datawidth='32' /><slave name='pio_wdi.s1' start='0x380' end='0x390' datawidth='32' /><slave name='reg_mmdp_data.mem' start='0x390' end='0x398' datawidth='32' /><slave name='reg_mmdp_ctrl.mem' start='0x398' end='0x3A0' datawidth='32' /><slave name='reg_dpmm_data.mem' start='0x3A0' end='0x3A8' datawidth='32' /><slave name='reg_dpmm_ctrl.mem' start='0x3A8' end='0x3B0' datawidth='32' /><slave name='pio_pps.mem' start='0x3B0' end='0x3B8' datawidth='32' /><slave name='jtag_uart_0.avalon_jtag_slave' start='0x3B8' end='0x3C0' datawidth='32' /><slave name='avs_eth_0.mms_tse' start='0x1000' end='0x2000' datawidth='32' /><slave name='avs_eth_0.mms_ram' start='0x2000' end='0x3000' datawidth='32' /><slave name='reg_wdi.mem' start='0x3000' end='0x3008' datawidth='32' /><slave name='ram_scrap.mem' start='0x3800' end='0x4000' datawidth='32' /><slave name='cpu_0.debug_mem_slave' start='0x4000' end='0x4800' datawidth='32' /><slave name='rom_system_info.mem' start='0x10000' end='0x18000' datawidth='32' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /></address-map>]]></spirit:value>
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>tightlyCoupledDataMaster0MapParam</spirit:name>
@@ -2344,7 +2344,7 @@
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>embeddedsw.CMacro.BREAK_ADDR</spirit:name>
-          <spirit:value spirit:format="string" spirit:id="embeddedsw.CMacro.BREAK_ADDR">0x00005020</spirit:value>
+          <spirit:value spirit:format="string" spirit:id="embeddedsw.CMacro.BREAK_ADDR">0x00004020</spirit:value>
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>embeddedsw.CMacro.CPU_ARCH_NIOS2_R1</spirit:name>
@@ -3489,7 +3489,7 @@
                 <suppliedSystemInfos>
                     <entry>
                         <key>ADDRESS_MAP</key>
-                        <value>&lt;address-map&gt;&lt;slave name='pio_system_info.mem' start='0x0' end='0x80' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_reg' start='0x80' end='0xC0' datawidth='32' /&gt;&lt;slave name='reg_fpga_voltage_sens.mem' start='0xC0' end='0x100' datawidth='32' /&gt;&lt;slave name='reg_unb_pmbus.mem' start='0x100' end='0x200' datawidth='32' /&gt;&lt;slave name='reg_unb_sens.mem' start='0x200' end='0x300' datawidth='32' /&gt;&lt;slave name='timer_0.s1' start='0x300' end='0x320' datawidth='16' /&gt;&lt;slave name='reg_fpga_temp_sens.mem' start='0x320' end='0x340' datawidth='32' /&gt;&lt;slave name='reg_epcs.mem' start='0x340' end='0x360' datawidth='32' /&gt;&lt;slave name='reg_remu.mem' start='0x360' end='0x380' datawidth='32' /&gt;&lt;slave name='pio_wdi.s1' start='0x380' end='0x390' datawidth='32' /&gt;&lt;slave name='reg_mmdp_data.mem' start='0x390' end='0x398' datawidth='32' /&gt;&lt;slave name='reg_mmdp_ctrl.mem' start='0x398' end='0x3A0' datawidth='32' /&gt;&lt;slave name='reg_dpmm_data.mem' start='0x3A0' end='0x3A8' datawidth='32' /&gt;&lt;slave name='reg_dpmm_ctrl.mem' start='0x3A8' end='0x3B0' datawidth='32' /&gt;&lt;slave name='pio_pps.mem' start='0x3B0' end='0x3B8' datawidth='32' /&gt;&lt;slave name='jtag_uart_0.avalon_jtag_slave' start='0x3B8' end='0x3C0' datawidth='32' /&gt;&lt;slave name='rom_system_info.mem' start='0x1000' end='0x2000' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_tse' start='0x2000' end='0x3000' datawidth='32' /&gt;&lt;slave name='reg_wdi.mem' start='0x3000' end='0x3008' datawidth='32' /&gt;&lt;slave name='ram_scrap.mem' start='0x3800' end='0x4000' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_ram' start='0x4000' end='0x5000' datawidth='32' /&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x5000' end='0x5800' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
+                        <value>&lt;address-map&gt;&lt;slave name='pio_system_info.mem' start='0x0' end='0x80' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_reg' start='0x80' end='0xC0' datawidth='32' /&gt;&lt;slave name='reg_fpga_voltage_sens.mem' start='0xC0' end='0x100' datawidth='32' /&gt;&lt;slave name='reg_unb_pmbus.mem' start='0x100' end='0x200' datawidth='32' /&gt;&lt;slave name='reg_unb_sens.mem' start='0x200' end='0x300' datawidth='32' /&gt;&lt;slave name='timer_0.s1' start='0x300' end='0x320' datawidth='16' /&gt;&lt;slave name='reg_fpga_temp_sens.mem' start='0x320' end='0x340' datawidth='32' /&gt;&lt;slave name='reg_epcs.mem' start='0x340' end='0x360' datawidth='32' /&gt;&lt;slave name='reg_remu.mem' start='0x360' end='0x380' datawidth='32' /&gt;&lt;slave name='pio_wdi.s1' start='0x380' end='0x390' datawidth='32' /&gt;&lt;slave name='reg_mmdp_data.mem' start='0x390' end='0x398' datawidth='32' /&gt;&lt;slave name='reg_mmdp_ctrl.mem' start='0x398' end='0x3A0' datawidth='32' /&gt;&lt;slave name='reg_dpmm_data.mem' start='0x3A0' end='0x3A8' datawidth='32' /&gt;&lt;slave name='reg_dpmm_ctrl.mem' start='0x3A8' end='0x3B0' datawidth='32' /&gt;&lt;slave name='pio_pps.mem' start='0x3B0' end='0x3B8' datawidth='32' /&gt;&lt;slave name='jtag_uart_0.avalon_jtag_slave' start='0x3B8' end='0x3C0' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_tse' start='0x1000' end='0x2000' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_ram' start='0x2000' end='0x3000' datawidth='32' /&gt;&lt;slave name='reg_wdi.mem' start='0x3000' end='0x3008' datawidth='32' /&gt;&lt;slave name='ram_scrap.mem' start='0x3800' end='0x4000' datawidth='32' /&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x4000' end='0x4800' datawidth='32' /&gt;&lt;slave name='rom_system_info.mem' start='0x10000' end='0x18000' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
                     </entry>
                     <entry>
                         <key>ADDRESS_WIDTH</key>
@@ -3527,7 +3527,7 @@
                 <suppliedSystemInfos>
                     <entry>
                         <key>ADDRESS_MAP</key>
-                        <value>&lt;address-map&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x5000' end='0x5800' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
+                        <value>&lt;address-map&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x4000' end='0x4800' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
                     </entry>
                     <entry>
                         <key>ADDRESS_WIDTH</key>
@@ -3602,4 +3602,4 @@
     <altera:altera_has_warnings>false</altera:altera_has_warnings>
     <altera:altera_has_errors>false</altera:altera_has_errors>
   </spirit:vendorExtensions>
-</spirit:component>
\ No newline at end of file
+</spirit:component>
diff --git a/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip b/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip
index cff76cf566aa6c4f388efd5e0568cd3dc4255afa..c381521846d51d5b1d403f314d189239e1b393f7 100644
--- a/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip
+++ b/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip
@@ -129,7 +129,7 @@
         <spirit:parameter>
           <spirit:name>addressSpan</spirit:name>
           <spirit:displayName>Address span</spirit:displayName>
-          <spirit:value spirit:format="string" spirit:id="addressSpan">4096</spirit:value>
+          <spirit:value spirit:format="string" spirit:id="addressSpan">32768</spirit:value>
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>addressUnits</spirit:name>
@@ -607,7 +607,7 @@
           <spirit:direction>in</spirit:direction>
           <spirit:vector>
             <spirit:left>0</spirit:left>
-            <spirit:right>9</spirit:right>
+            <spirit:right>12</spirit:right>
           </spirit:vector>
           <spirit:wireTypeDefs>
             <spirit:wireTypeDef>
@@ -703,7 +703,7 @@
           <spirit:direction>out</spirit:direction>
           <spirit:vector>
             <spirit:left>0</spirit:left>
-            <spirit:right>9</spirit:right>
+            <spirit:right>12</spirit:right>
           </spirit:vector>
           <spirit:wireTypeDefs>
             <spirit:wireTypeDef>
@@ -783,7 +783,7 @@
         <spirit:parameter>
           <spirit:name>g_adr_w</spirit:name>
           <spirit:displayName>g_adr_w</spirit:displayName>
-          <spirit:value spirit:format="long" spirit:id="g_adr_w">10</spirit:value>
+          <spirit:value spirit:format="long" spirit:id="g_adr_w">13</spirit:value>
         </spirit:parameter>
         <spirit:parameter>
           <spirit:name>g_dat_w</spirit:name>
@@ -846,7 +846,7 @@
                     <name>coe_address_export</name>
                     <role>export</role>
                     <direction>Output</direction>
-                    <width>10</width>
+                    <width>13</width>
                     <lowerBound>0</lowerBound>
                     <vhdlType>STD_LOGIC_VECTOR</vhdlType>
                 </port>
@@ -910,7 +910,7 @@
                     <name>avs_mem_address</name>
                     <role>address</role>
                     <direction>Input</direction>
-                    <width>10</width>
+                    <width>13</width>
                     <lowerBound>0</lowerBound>
                     <vhdlType>STD_LOGIC_VECTOR</vhdlType>
                 </port>
@@ -979,7 +979,7 @@
                     </entry>
                     <entry>
                         <key>addressSpan</key>
-                        <value>4096</value>
+                        <value>32768</value>
                     </entry>
                     <entry>
                         <key>addressUnits</key>
@@ -1374,11 +1374,11 @@
                 <consumedSystemInfos>
                     <entry>
                         <key>ADDRESS_MAP</key>
-                        <value>&lt;address-map&gt;&lt;slave name='mem' start='0x0' end='0x1000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
+                        <value>&lt;address-map&gt;&lt;slave name='mem' start='0x0' end='0x2000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
                     </entry>
                     <entry>
                         <key>ADDRESS_WIDTH</key>
-                        <value>12</value>
+                        <value>13</value>
                     </entry>
                     <entry>
                         <key>MAX_SLAVE_DATA_WIDTH</key>
@@ -1444,4 +1444,4 @@
     <altera:altera_has_warnings>false</altera:altera_has_warnings>
     <altera:altera_has_errors>false</altera:altera_has_errors>
   </spirit:vendorExtensions>
-</spirit:component>
\ No newline at end of file
+</spirit:component>
diff --git a/boards/uniboard2b/designs/unb2b_minimal/quartus/qsys_unb2b_minimal.qsys b/boards/uniboard2b/designs/unb2b_minimal/quartus/qsys_unb2b_minimal.qsys
index 6273fb3ef2b6823de386978aef79d9c09fa12be3..dd4df7f0e7d6fe053ba6e65666bf8128aa983aa0 100644
--- a/boards/uniboard2b/designs/unb2b_minimal/quartus/qsys_unb2b_minimal.qsys
+++ b/boards/uniboard2b/designs/unb2b_minimal/quartus/qsys_unb2b_minimal.qsys
@@ -22,7 +22,7 @@
    {
       datum baseAddress
       {
-         value = "16384";
+         value = "8192";
          type = "String";
       }
    }
@@ -38,7 +38,7 @@
    {
       datum baseAddress
       {
-         value = "8192";
+         value = "4096";
          type = "String";
       }
    }
@@ -62,7 +62,7 @@
    {
       datum baseAddress
       {
-         value = "20480";
+         value = "16384";
          type = "String";
       }
    }
@@ -141,7 +141,7 @@
       }
       datum sopceditor_expanded
       {
-         value = "0";
+         value = "1";
          type = "boolean";
       }
    }
@@ -415,7 +415,7 @@
       }
       datum sopceditor_expanded
       {
-         value = "0";
+         value = "1";
          type = "boolean";
       }
    }
@@ -428,7 +428,7 @@
       }
       datum baseAddress
       {
-         value = "4096";
+         value = "65536";
          type = "String";
       }
    }
@@ -3269,7 +3269,7 @@
                         </entry>
                         <entry>
                             <key>embeddedsw.configuration.isMemoryDevice</key>
-                            <value>0</value>
+                            <value>1</value>
                         </entry>
                         <entry>
                             <key>embeddedsw.configuration.isNonVolatileStorage</key>
@@ -3360,7 +3360,7 @@
                         </entry>
                         <entry>
                             <key>isMemoryDevice</key>
-                            <value>false</value>
+                            <value>true</value>
                         </entry>
                         <entry>
                             <key>isNonVolatileStorage</key>
@@ -4067,7 +4067,7 @@
                     <consumedSystemInfos>
                         <entry>
                             <key>ADDRESS_MAP</key>
-                            <value>&lt;address-map&gt;&lt;slave name='pio_system_info.mem' start='0x0' end='0x80' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_reg' start='0x80' end='0xC0' datawidth='32' /&gt;&lt;slave name='reg_fpga_voltage_sens.mem' start='0xC0' end='0x100' datawidth='32' /&gt;&lt;slave name='reg_unb_pmbus.mem' start='0x100' end='0x200' datawidth='32' /&gt;&lt;slave name='reg_unb_sens.mem' start='0x200' end='0x300' datawidth='32' /&gt;&lt;slave name='timer_0.s1' start='0x300' end='0x320' datawidth='16' /&gt;&lt;slave name='reg_fpga_temp_sens.mem' start='0x320' end='0x340' datawidth='32' /&gt;&lt;slave name='reg_epcs.mem' start='0x340' end='0x360' datawidth='32' /&gt;&lt;slave name='reg_remu.mem' start='0x360' end='0x380' datawidth='32' /&gt;&lt;slave name='pio_wdi.s1' start='0x380' end='0x390' datawidth='32' /&gt;&lt;slave name='reg_mmdp_data.mem' start='0x390' end='0x398' datawidth='32' /&gt;&lt;slave name='reg_mmdp_ctrl.mem' start='0x398' end='0x3A0' datawidth='32' /&gt;&lt;slave name='reg_dpmm_data.mem' start='0x3A0' end='0x3A8' datawidth='32' /&gt;&lt;slave name='reg_dpmm_ctrl.mem' start='0x3A8' end='0x3B0' datawidth='32' /&gt;&lt;slave name='pio_pps.mem' start='0x3B0' end='0x3B8' datawidth='32' /&gt;&lt;slave name='jtag_uart_0.avalon_jtag_slave' start='0x3B8' end='0x3C0' datawidth='32' /&gt;&lt;slave name='rom_system_info.mem' start='0x1000' end='0x2000' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_tse' start='0x2000' end='0x3000' datawidth='32' /&gt;&lt;slave name='reg_wdi.mem' start='0x3000' end='0x3008' datawidth='32' /&gt;&lt;slave name='ram_scrap.mem' start='0x3800' end='0x4000' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_ram' start='0x4000' end='0x5000' datawidth='32' /&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x5000' end='0x5800' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
+                            <value>&lt;address-map&gt;&lt;slave name='pio_system_info.mem' start='0x0' end='0x80' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_reg' start='0x80' end='0xC0' datawidth='32' /&gt;&lt;slave name='reg_fpga_voltage_sens.mem' start='0xC0' end='0x100' datawidth='32' /&gt;&lt;slave name='reg_unb_pmbus.mem' start='0x100' end='0x200' datawidth='32' /&gt;&lt;slave name='reg_unb_sens.mem' start='0x200' end='0x300' datawidth='32' /&gt;&lt;slave name='timer_0.s1' start='0x300' end='0x320' datawidth='16' /&gt;&lt;slave name='reg_fpga_temp_sens.mem' start='0x320' end='0x340' datawidth='32' /&gt;&lt;slave name='reg_epcs.mem' start='0x340' end='0x360' datawidth='32' /&gt;&lt;slave name='reg_remu.mem' start='0x360' end='0x380' datawidth='32' /&gt;&lt;slave name='pio_wdi.s1' start='0x380' end='0x390' datawidth='32' /&gt;&lt;slave name='reg_mmdp_data.mem' start='0x390' end='0x398' datawidth='32' /&gt;&lt;slave name='reg_mmdp_ctrl.mem' start='0x398' end='0x3A0' datawidth='32' /&gt;&lt;slave name='reg_dpmm_data.mem' start='0x3A0' end='0x3A8' datawidth='32' /&gt;&lt;slave name='reg_dpmm_ctrl.mem' start='0x3A8' end='0x3B0' datawidth='32' /&gt;&lt;slave name='pio_pps.mem' start='0x3B0' end='0x3B8' datawidth='32' /&gt;&lt;slave name='jtag_uart_0.avalon_jtag_slave' start='0x3B8' end='0x3C0' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_tse' start='0x1000' end='0x2000' datawidth='32' /&gt;&lt;slave name='avs_eth_0.mms_ram' start='0x2000' end='0x3000' datawidth='32' /&gt;&lt;slave name='reg_wdi.mem' start='0x3000' end='0x3008' datawidth='32' /&gt;&lt;slave name='ram_scrap.mem' start='0x3800' end='0x4000' datawidth='32' /&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x4000' end='0x4800' datawidth='32' /&gt;&lt;slave name='rom_system_info.mem' start='0x10000' end='0x18000' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
                         </entry>
                         <entry>
                             <key>ADDRESS_WIDTH</key>
@@ -4105,7 +4105,7 @@
                     <consumedSystemInfos>
                         <entry>
                             <key>ADDRESS_MAP</key>
-                            <value>&lt;address-map&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x5000' end='0x5800' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
+                            <value>&lt;address-map&gt;&lt;slave name='cpu_0.debug_mem_slave' start='0x4000' end='0x4800' datawidth='32' /&gt;&lt;slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
                         </entry>
                         <entry>
                             <key>ADDRESS_WIDTH</key>
@@ -4167,7 +4167,7 @@
         </entry>
         <entry>
             <key>embeddedsw.CMacro.BREAK_ADDR</key>
-            <value>0x00005020</value>
+            <value>0x00004020</value>
         </entry>
         <entry>
             <key>embeddedsw.CMacro.CPU_ARCH_NIOS2_R1</key>
@@ -14091,7 +14091,7 @@
     </fileSets>
 </generationInfoDefinition>]]></parameter>
   <parameter name="hlsFile" value="" />
-  <parameter name="logicalView">../../../../../build/unb2b/quartus/unb2b_minimal/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_reg_unb_sens.ip</parameter>
+  <parameter name="logicalView">ip/qsys_unb2b_minimal/qsys_unb2b_minimal_reg_unb_sens.ip</parameter>
   <parameter name="moduleAssignmentDefinition"><![CDATA[<assignmentDefinition>
     <assignmentValueMap/>
 </assignmentDefinition>]]></parameter>
@@ -14707,7 +14707,7 @@
     </fileSets>
 </generationInfoDefinition>]]></parameter>
   <parameter name="hlsFile" value="" />
-  <parameter name="logicalView">../../../../../build/unb2b/quartus/unb2b_minimal/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_reg_wdi.ip</parameter>
+  <parameter name="logicalView">ip/qsys_unb2b_minimal/qsys_unb2b_minimal_reg_wdi.ip</parameter>
   <parameter name="moduleAssignmentDefinition"><![CDATA[<assignmentDefinition>
     <assignmentValueMap/>
 </assignmentDefinition>]]></parameter>
@@ -14730,7 +14730,7 @@
                         <name>coe_address_export</name>
                         <role>export</role>
                         <direction>Output</direction>
-                        <width>10</width>
+                        <width>13</width>
                         <lowerBound>0</lowerBound>
                         <vhdlType>STD_LOGIC_VECTOR</vhdlType>
                     </port>
@@ -14794,7 +14794,7 @@
                         <name>avs_mem_address</name>
                         <role>address</role>
                         <direction>Input</direction>
-                        <width>10</width>
+                        <width>13</width>
                         <lowerBound>0</lowerBound>
                         <vhdlType>STD_LOGIC_VECTOR</vhdlType>
                     </port>
@@ -14863,7 +14863,7 @@
                         </entry>
                         <entry>
                             <key>addressSpan</key>
-                            <value>4096</value>
+                            <value>32768</value>
                         </entry>
                         <entry>
                             <key>addressUnits</key>
@@ -15269,11 +15269,11 @@
                     <suppliedSystemInfos>
                         <entry>
                             <key>ADDRESS_MAP</key>
-                            <value>&lt;address-map&gt;&lt;slave name='mem' start='0x0' end='0x1000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
+                            <value>&lt;address-map&gt;&lt;slave name='mem' start='0x0' end='0x2000' datawidth='32' /&gt;&lt;/address-map&gt;</value>
                         </entry>
                         <entry>
                             <key>ADDRESS_WIDTH</key>
-                            <value>12</value>
+                            <value>13</value>
                         </entry>
                         <entry>
                             <key>MAX_SLAVE_DATA_WIDTH</key>
@@ -15323,7 +15323,7 @@
     </fileSets>
 </generationInfoDefinition>]]></parameter>
   <parameter name="hlsFile" value="" />
-  <parameter name="logicalView">../../../../../build/unb2b/quartus/unb2b_minimal/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip</parameter>
+  <parameter name="logicalView">ip/qsys_unb2b_minimal/qsys_unb2b_minimal_rom_system_info.ip</parameter>
   <parameter name="moduleAssignmentDefinition"><![CDATA[<assignmentDefinition>
     <assignmentValueMap/>
 </assignmentDefinition>]]></parameter>
@@ -15994,7 +15994,7 @@
     </fileSets>
 </generationInfoDefinition>]]></parameter>
   <parameter name="hlsFile" value="" />
-  <parameter name="logicalView">../../../../../build/unb2b/quartus/unb2b_minimal/ip/qsys_unb2b_minimal/qsys_unb2b_minimal_timer_0.ip</parameter>
+  <parameter name="logicalView">ip/qsys_unb2b_minimal/qsys_unb2b_minimal_timer_0.ip</parameter>
   <parameter name="moduleAssignmentDefinition"><![CDATA[<assignmentDefinition>
     <assignmentValueMap>
         <entry>
@@ -16065,7 +16065,7 @@
    version="18.0"
    start="cpu_0.data_master"
    end="cpu_0.debug_mem_slave">
-  <parameter name="baseAddress" value="0x5000" />
+  <parameter name="baseAddress" value="0x4000" />
  </connection>
  <connection
    kind="avalon"
@@ -16079,7 +16079,7 @@
    version="18.0"
    start="cpu_0.data_master"
    end="rom_system_info.mem">
-  <parameter name="baseAddress" value="0x1000" />
+  <parameter name="baseAddress" value="0x00010000" />
  </connection>
  <connection
    kind="avalon"
@@ -16177,7 +16177,7 @@
    version="18.0"
    start="cpu_0.data_master"
    end="avs_eth_0.mms_ram">
-  <parameter name="baseAddress" value="0x4000" />
+  <parameter name="baseAddress" value="0x2000" />
  </connection>
  <connection
    kind="avalon"
@@ -16191,7 +16191,7 @@
    version="18.0"
    start="cpu_0.data_master"
    end="avs_eth_0.mms_tse">
-  <parameter name="baseAddress" value="0x2000" />
+  <parameter name="baseAddress" value="0x1000" />
  </connection>
  <connection
    kind="avalon"
@@ -16219,7 +16219,7 @@
    version="18.0"
    start="cpu_0.instruction_master"
    end="cpu_0.debug_mem_slave">
-  <parameter name="baseAddress" value="0x5000" />
+  <parameter name="baseAddress" value="0x4000" />
  </connection>
  <connection
    kind="avalon"
diff --git a/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/qsys_unb2b_minimal_pkg.vhd b/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/qsys_unb2b_minimal_pkg.vhd
index 14655178f412dac63871f472d83e26abe8e25597..bf055078658ba689bfd1404f05e8a7f4d0539c62 100644
--- a/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/qsys_unb2b_minimal_pkg.vhd
+++ b/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/qsys_unb2b_minimal_pkg.vhd
@@ -129,7 +129,7 @@ PACKAGE qsys_unb2b_minimal_pkg IS
             reg_wdi_write_export               : out std_logic;                                        -- export
             reg_wdi_writedata_export           : out std_logic_vector(31 downto 0);                    -- export
             reset_reset_n                      : in  std_logic                     := 'X';             -- reset_n
-            rom_system_info_address_export     : out std_logic_vector(9 downto 0);                     -- export
+            rom_system_info_address_export     : out std_logic_vector(12 downto 0);                     -- export
             rom_system_info_clk_export         : out std_logic;                                        -- export
             rom_system_info_read_export        : out std_logic;                                        -- export
             rom_system_info_readdata_export    : in  std_logic_vector(31 downto 0) := (others => 'X'); -- export
diff --git a/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/unb2b_minimal.vhd b/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/unb2b_minimal.vhd
index bd5005bfe3983d9ca9962771c61455d836b51ff4..1c4c3425d38c96fe4967e726323401570b20f254 100644
--- a/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/unb2b_minimal.vhd
+++ b/boards/uniboard2b/designs/unb2b_minimal/src/vhdl/unb2b_minimal.vhd
@@ -76,7 +76,8 @@ END unb2b_minimal;
 ARCHITECTURE str OF unb2b_minimal IS
 
   -- Firmware version x.y
-  CONSTANT c_fw_version             : t_unb2b_board_fw_version := (1, 1);
+  -- If x >= 2, rom_info starts on 0x10000 and max size = 0x8192 words
+  CONSTANT c_fw_version             : t_unb2b_board_fw_version := (2, 0);
   CONSTANT c_use_125m               : BOOLEAN := g_design_name="unb2b_minimal_125m";
   CONSTANT c_mm_clk_freq            : NATURAL := sel_a_b(c_use_125m, c_unb2b_board_mm_clk_freq_125M, c_unb2b_board_mm_clk_freq_50M);
 
diff --git a/boards/uniboard2b/designs/unb2b_minimal/unb2b_minimal.fpga.yaml b/boards/uniboard2b/designs/unb2b_minimal/unb2b_minimal.fpga.yaml
index 8159d6e87c2bd87660be3e73a636d7da89e20875..b41d39478e9ea12e034cf11004f99cffe14be507 100644
--- a/boards/uniboard2b/designs/unb2b_minimal/unb2b_minimal.fpga.yaml
+++ b/boards/uniboard2b/designs/unb2b_minimal/unb2b_minimal.fpga.yaml
@@ -7,20 +7,24 @@ fpga_name       : unb2b_minimal
 fpga_description: "unb2b_minimal system"
 
 peripherals:
-  - peripheral_name: unb2b_board/system
-    slave_port_names:
-      - pio_system_info
-    lock_base_address: 0x0
-  - peripheral_name: unb2b_board/rom_system
+  - peripheral_name: unb2b_board/unb2b
     slave_port_names:
       - rom_system_info
-    lock_base_address: 0x1000
-  - peripheral_name: unb2b_board/ctrl
-    slave_port_names:
+      - pio_system_info
       - pio_wdi
-  - peripheral_name: unb2b_board/wdi
-    slave_port_names:
       - reg_wdi
+      - reg_unb_sens
+      - reg_unb_pmbus
+      - reg_fpga_temp_sens
+      - reg_fpga_voltage_sens
+    parameter_overrides:
+      - { name : g_sim,       value: FALSE }
+      - { name : g_clk_freq,  value: 125E6 }
+      - { name : g_temp_high, value: 85 }
+
+    #lock_base_address: 0x0
+    #lock_base_address: 0x4000
+
   - peripheral_name: eth/eth1g
     slave_port_names:
       - avs_eth_0_tse
@@ -41,10 +45,4 @@ peripherals:
   - peripheral_name: remu/remu
     slave_port_names:
       - reg_remu
-  - peripheral_name: unb2b_board/sens
-    slave_port_names:
-      - reg_unb_sens
-    parameter_overrides:
-      - { name : g_sim,       value: FALSE }
-      - { name : g_clk_freq,  value: 125E6 }
-      - { name : g_temp_high, value: 85 }
+ 
\ No newline at end of file
diff --git a/boards/uniboard2b/libraries/unb2b_board/src/vhdl/mms_unb2b_board_system_info.vhd b/boards/uniboard2b/libraries/unb2b_board/src/vhdl/mms_unb2b_board_system_info.vhd
index 2f8ae8ae6e800fe2332542f72be05cabacb5a934..580a5dda6129c73761ce6b602a4555e0f747ddcd 100644
--- a/boards/uniboard2b/libraries/unb2b_board/src/vhdl/mms_unb2b_board_system_info.vhd
+++ b/boards/uniboard2b/libraries/unb2b_board/src/vhdl/mms_unb2b_board_system_info.vhd
@@ -74,7 +74,7 @@ ARCHITECTURE str OF mms_unb2b_board_system_info IS
 --  CONSTANT c_mif_name    : STRING := sel_a_b((g_design_name="UNUSED"), g_design_name, c_path_prefix & g_design_name & ".mif");
   CONSTANT c_mif_name    : STRING :=  sel_a_b(g_sim, "UNUSED", sel_a_b((g_design_name="UNUSED"), g_design_name, c_path_prefix & g_design_name & ".mif"));
 
-  CONSTANT c_rom_addr_w  : NATURAL := 10; -- 2^10 = 1024 addresses * 32 bits = 4 kiB
+  CONSTANT c_rom_addr_w  : NATURAL := 13; -- 2^13 = 8192 addresses * 32 bits = 32 kiB
 
   CONSTANT c_mm_rom      : t_c_mem := (latency  => 1,
                                       adr_w    => c_rom_addr_w,
diff --git a/boards/uniboard2b/libraries/unb2b_board/src/vhdl/unb2b_board_peripherals_pkg.vhd b/boards/uniboard2b/libraries/unb2b_board/src/vhdl/unb2b_board_peripherals_pkg.vhd
index cd4e298078c4eab999d77ea15a3fed5ff3b6b5bd..68a57ffd73a5cdb997b3d3f8dfcf9990f64a5aad 100644
--- a/boards/uniboard2b/libraries/unb2b_board/src/vhdl/unb2b_board_peripherals_pkg.vhd
+++ b/boards/uniboard2b/libraries/unb2b_board/src/vhdl/unb2b_board_peripherals_pkg.vhd
@@ -56,7 +56,7 @@ PACKAGE unb2b_board_peripherals_pkg IS
     
     -- pi_system_info (first word of reg_unb_system_info_adr_w is backwards compatible with the original single word PIO system info)
     reg_unb_system_info_adr_w  : NATURAL;  -- = 5   -- fixed, from c_mm_reg in unb_system_info_reg
-    rom_unb_system_info_adr_w  : NATURAL;  -- = 10  -- fixed, from c_mm_rom in mms_unb_system_info
+    rom_unb_system_info_adr_w  : NATURAL;  -- = 13  -- fixed, from c_mm_rom in mms_unb_system_info
     -- pi_reg_common
     reg_common_adr_w           : NATURAL;  -- = 1   -- fixed, from c_mem_reg in mms_common_reg
     
@@ -165,7 +165,7 @@ PACKAGE unb2b_board_peripherals_pkg IS
     reg_unb_pmbus_adr_w        : NATURAL;  -- = 6
   END RECORD;
   
-  CONSTANT c_unb2b_board_peripherals_mm_reg_default    : t_c_unb2b_board_peripherals_mm_reg := (TRUE, 10, 4, 10, 5, 10, 1, 1, 6, 1, 1, 1, 1, 1, 3, 3, 3, 16, 4, 6, 2, 2, 1, 4, 3, 6, 13, 12, 2, 32, 8, 2, 8, 10, 16, 1024, 14, 5, 3, 11, 2, 3, 5, 16, 11, 3, 1, 3, 4, 6);
+  CONSTANT c_unb2b_board_peripherals_mm_reg_default    : t_c_unb2b_board_peripherals_mm_reg := (TRUE, 10, 4, 10, 5, 13, 1, 1, 6, 1, 1, 1, 1, 1, 3, 3, 3, 16, 4, 6, 2, 2, 1, 4, 3, 6, 13, 12, 2, 32, 8, 2, 8, 10, 16, 1024, 14, 5, 3, 11, 2, 3, 5, 16, 11, 3, 1, 3, 4, 6);
   
 END unb2b_board_peripherals_pkg;
 
diff --git a/boards/uniboard2b/libraries/unb2b_board/unb2b_board.peripheral.yaml b/boards/uniboard2b/libraries/unb2b_board/unb2b_board.peripheral.yaml
index e86d093d5e6320cf51252e5468d965e3bb2c7e94..c8f683d563ffe0d8550f70f4eb4c704a7bef31b2 100644
--- a/boards/uniboard2b/libraries/unb2b_board/unb2b_board.peripheral.yaml
+++ b/boards/uniboard2b/libraries/unb2b_board/unb2b_board.peripheral.yaml
@@ -1,6 +1,7 @@
-schema_name   : args
+---
+schema_name: args
 schema_version: 1.0
-schema_type   : peripheral
+schema_type: peripheral
 
 hdl_library_name       : unb2b_board
 hdl_library_description: " This is the description for the unb2b_board package "
@@ -8,27 +9,28 @@ hdl_library_description: " This is the description for the unb2b_board package "
 # <peripheral_group>_<peripheral_name>_<slave_name>_<slave_type>
 
 peripherals:
-  - peripheral_name: rom_system
+
+  - peripheral_name: unb2b
+    parameters:
+      - { name: g_sim,       value: FALSE }
+      - { name: g_clk_freq,  value: c_unb2b_board_mm_clk_freq_125M }
+      - { name: g_temp_high, value: 85 }
+
     slave_ports:
         # rom_system_info
-      - slave_name   : info  
+      - slave_name   : rom_system
         slave_type   : REG
         fields:
           - - field_name    : info
               access_mode   : RO
               address_offset: 0x0
-              number_of_fields: 1024
+              number_of_fields: 8192
               field_description: |
                   "address place for rom_system_info"
         slave_description: " rom_info  "
-        
-    peripheral_description: |
-        " settings for rom_system_info register "
-  
-  - peripheral_name: system
-    slave_ports:
+
         # reg_system_info
-      - slave_name   : info  
+      - slave_name   : system
         slave_type   : REG
         fields:
           - - field_name    : info
@@ -38,33 +40,20 @@ peripherals:
               field_description: |
                   "address place for reg_system_info"
         slave_description: " reg_info "
-        
-    peripheral_description: |
-        " settings for reg_system_info register "
-
-  # peripheral, unb2b_board_wdi_reg
-  - peripheral_name: ctrl
 
-    slave_ports:
       # actual hdl name: unb2b_board_wdi_reg
-      - slave_name   : pio_wdi
+      - slave_name   : ctrl
         slave_type   : REG
         fields:
           - - field_name      : nios_reset
               width           : 32
               access_mode     : WO
               address_offset  : 0x0
-              number_of_fields: 1
+              number_of_fields: 4
               field_description: " Reset done by nios "
-         
+
         slave_description:  "Reset register, for nios "
-    
-    peripheral_description: " "
-  
-  # peripheral, unb2b_board_wdi_reg
-  - peripheral_name: wdi
 
-    slave_ports:
       # actual hdl name: unb2b_board_wdi_reg
       - slave_name   : wdi
         slave_type   : REG
@@ -73,87 +62,52 @@ peripherals:
               access_mode   : WO
               address_offset: 0x0
               field_description: " Only the value 0xB007FAC7 'Boot factory' will result in a reset "
-           
-        slave_description:  "Reset register, if the right value is provided the factory image will be reloaded "
-    
-    peripheral_description: " "
-  
-  # periheral, unb2b_board_sens
-  - peripheral_name: sens
 
-    parameters:
-      - { name: g_sim,       value: FALSE }
-      - { name: g_clk_freq,  value: c_unb2b_board_mm_clk_freq_125M }
-      - { name: g_temp_high, value: 85 }
+        slave_description:  "Reset register, if the right value is provided the factory image will be reloaded "
 
-    slave_ports:
       # actual hdl name: reg_unb2b_sens
-      - slave_name   : sens
+      - slave_name   : board_sens
         slave_type   : REG
         fields:
-          - - field_name    : sens_data
-              width         : 8
-              access_mode   : RO
-              address_offset: 0x0
-              number_of_fields: 4
-              field_description: | 
-                  " data array with sens data 
-                  0x0 = fpga temperature in degrees (two's complement) 
-                  0x1 = eth_temp temperature in degrees (two's complement)
-                  0x2 = hot_swap_v_sens
-                  0x3 = hot_swap_v_source"
-          
-          - - field_name    : sens_err
-              width         : 1
+          - - field_name    : sens
+              width         : 32
               access_mode   : RO
-              address_offset: 0x10
-              radix         : unsigned 
+              address_offset: 0x00
+              number_of_fields: 40
               field_description: ""
-        
-          - - field_name    : temp_high
-              width         : 7
-              address_offset: 0x14
-              reset_value   : g_temp_high
-              software_value: g_temp_high
+        slave_description:  " "
+      - slave_name   : board_pmbus
+        slave_type   : REG
+        fields:        
+          - - field_name    : pmbus
+              width         : 32
+              access_mode   : RO
+              address_offset: 0x00
+              number_of_fields: 42
               field_description: ""
+        slave_description:  " "
 
+      # actual hdl name: reg_unb2b_sens
+      - slave_name   : fpga_temp
+        slave_type   : REG
+        fields:
+          - - field_name    : temp
+              width         : 32
+              access_mode   : RO
+              address_offset: 0x00
+              number_of_fields: 1
+              field_description: ""
         slave_description:  " "
-    
+      - slave_name   : fpga_voltage
+        slave_type   : REG
+        fields:    
+          - - field_name    : voltage
+              width         : 32
+              access_mode   : RO
+              address_offset: 0x00
+              number_of_fields: 6
+              field_description: ""
+        slave_description:  " "
+
     peripheral_description: |
-        "
-        +-----------------------------------------------------------------------------+
-        |31   (byte3)   24|23   (byte2)   16|15   (byte1)    8|7    (byte0)    0|  wi |
-        |-----------------------------------------------------------------------|-----|
-        |                xxx                     fpga_temp   = sens_data[0][7:0]|  0  |
-        |-----------------------------------------------------------------------|-----|
-        |                xxx                     eth_temp    = sens_data[1][7:0]|  1  |
-        |-----------------------------------------------------------------------|-----|
-        |                xxx               hot_swap_v_sense  = sens_data[2][7:0]|  2  |
-        |-----------------------------------------------------------------------|-----|
-        |                xxx               hot_swap_v_source = sens_data[3][7:0]|  3  |
-        |-----------------------------------------------------------------------|-----|
-        |                xxx                                         sens_err[0]|  4  |
-        |-----------------------------------------------------------------------|-----|
-        |                xxx                                      temp_high[6:0]|  5  |
-        +-----------------------------------------------------------------------------+
-        * The fpga_temp and eth_temp are in degrees (two's complement)
-        * The hot swap voltages depend on:
-            . From i2c_dev_ltc4260_pkg:
-                LTC4260_V_UNIT_SENSE        = 0.0003  --   0.3 mV over Rs for current sense
-                LTC4260_V_UNIT_SOURCE       = 0.4     -- 400   mV supply voltage (e.g +48 V)
-                LTC4260_V_UNIT_ADIN         = 0.01    --  10   mV ADC
-     
-            . From UniBoard unb_sensors.h:
-                SENS_HOT_SWAP_R_SENSE       = 0.005   -- R sense on UniBoard is 5 mOhm (~= 10 mOhm // 10 mOhm)
-                SENS_HOT_SWAP_I_UNIT_SENSE  = LTC4260_V_UNIT_SENSE / SENS_HOT_SWAP_R_SENSE
-                SENS_HOT_SWAP_V_UNIT_SOURCE = LTC4260_V_UNIT_SOURCE
-     
-        ==> 
-            Via all FN and BN:
-            0 = FPGA temperature                 = TInt8(fpga_temp)
-            Only via BN3:
-            1 = UniBoard ETH PHY temperature     = TInt8(eth_temp)
-            2 = UniBoard hot swap supply current = hot_swap_v_sense * SENS_HOT_SWAP_I_UNIT_SENSE
-            3 = UniBoard hot swap supply voltage = hot_swap_v_source * SENS_HOT_SWAP_V_UNIT_SOURCE
-            4 = I2C error status for BN3 sensors access only, 0 = ok"
-    
+        "
\ No newline at end of file
diff --git a/libraries/io/epcs/epcs.peripheral.yaml b/libraries/io/epcs/epcs.peripheral.yaml
index f569cf6840f74fd0be8c15685287715a519a2f7f..c0bea5651cacc1d90a41e2fddcfaca2fbf4b0dae 100644
--- a/libraries/io/epcs/epcs.peripheral.yaml
+++ b/libraries/io/epcs/epcs.peripheral.yaml
@@ -67,15 +67,17 @@ peripherals:
               width         : 32
               access_mode   : RW
               address_offset: 0x0
+              number_of_fields: 1
               field_description: "  "
       
       - slave_name   : DPMM_DATA
-        slave_type   : REG
+        slave_type   : FIFO
         fields:
           - - field_name    : data
               width         : 32
-              access_mode   : RW
+              access_mode   : RO
               address_offset: 0x0
+              number_of_fields: 1
               field_description: "  "
 
       # actual hdl name: mms_dp_fifo_from_mm
@@ -86,15 +88,17 @@ peripherals:
               width         : 32
               access_mode   : RW
               address_offset: 0x0
+              number_of_fields: 2
               field_description: "  "
       
       - slave_name   : MMDP_DATA
-        slave_type   : REG
+        slave_type   : FIFO
         fields:
           - - field_name    : data
               width         : 32
-              access_mode   : RW
+              access_mode   : WO
               address_offset: 0x0
+              number_of_fields: 2
               field_description: "  "
     
     peripheral_description: |