From 30156ab6ed83d9a57acf1362901d4a089c2ee14e Mon Sep 17 00:00:00 2001
From: dam1n19 <dam1n19@soton.ac.uk>
Date: Thu, 15 Jun 2023 14:58:09 +0100
Subject: [PATCH] SOC1-230: Renamed Debug Master in Bus Matrix and created
 debug Subsystem

---
 .../nanosoc_busmatrix/nanosoc_busmatrix.xml   | 128 ++++++++--------
 .../nanosoc_busmatrix_lite.xml                | 116 +++++++--------
 system/nanosoc_busmatrix/logs/nanosoc.log     |  58 ++++----
 .../nanosoc_busmatrix/nanosoc_busmatrix.v     | 138 +++++++++---------
 .../nanosoc_busmatrix_lite.v                  | 100 ++++++-------
 ...CDEBUG.v => nanosoc_matrix_decode_DEBUG.v} |   2 +-
 system/nanosoc_busmatrix/xml/nanosoc.xml      |   2 +-
 .../debug/verilog/nanosoc_ss_debug.v          | 115 +++++++++++++++
 8 files changed, 387 insertions(+), 272 deletions(-)
 rename system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/{nanosoc_matrix_decode_SOCDEBUG.v => nanosoc_matrix_decode_DEBUG.v} (99%)
 create mode 100644 system/nanosoc_subsystems/debug/verilog/nanosoc_ss_debug.v

diff --git a/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix.xml b/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix.xml
index 7520bf7..24dd19e 100644
--- a/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix.xml
+++ b/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix.xml
@@ -38,12 +38,12 @@
       <!--Slave interfaces -->
 
       <spirit:busInterface>
-         <spirit:name>AHBLiteTarget_Slave__SOCDEBUG</spirit:name>
-         <spirit:description>Slave port _SOCDEBUG</spirit:description>
+         <spirit:name>AHBLiteTarget_Slave__DEBUG</spirit:name>
+         <spirit:description>Slave port _DEBUG</spirit:description>
          <spirit:busType spirit:library="AMBA3" spirit:name="AHBLiteTarget" spirit:vendor="amba.com" spirit:version="r2p0_0"/>
          <spirit:abstractionType spirit:library="AMBA3" spirit:name="AHBLiteTarget_rtl" spirit:vendor="amba.com" spirit:version="r2p0_0"/>
          <spirit:slave>
-            <spirit:memoryMapRef spirit:memoryMapRef="AHBLiteTarget_Slave__SOCDEBUG_MM"/>
+            <spirit:memoryMapRef spirit:memoryMapRef="AHBLiteTarget_Slave__DEBUG_MM"/>
             <spirit:bridge spirit:masterRef="AHBLiteTarget_Master__BOOTROM_0" spirit:opaque="true"/>
             <spirit:bridge spirit:masterRef="AHBLiteTarget_Master__IMEM_0" spirit:opaque="true"/>
             <spirit:bridge spirit:masterRef="AHBLiteTarget_Master__DMEM_0" spirit:opaque="true"/>
@@ -80,7 +80,7 @@
                  <spirit:name>HSELx</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HSEL_SOCDEBUG</spirit:name>
+                 <spirit:name>HSEL_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -88,7 +88,7 @@
                  <spirit:name>HADDR</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HADDR_SOCDEBUG</spirit:name>
+                 <spirit:name>HADDR_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -96,7 +96,7 @@
                  <spirit:name>HTRANS</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HTRANS_SOCDEBUG</spirit:name>
+                 <spirit:name>HTRANS_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -104,7 +104,7 @@
                  <spirit:name>HWRITE</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HWRITE_SOCDEBUG</spirit:name>
+                 <spirit:name>HWRITE_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -112,7 +112,7 @@
                  <spirit:name>HSIZE</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HSIZE_SOCDEBUG</spirit:name>
+                 <spirit:name>HSIZE_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -120,7 +120,7 @@
                  <spirit:name>HBURST</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HBURST_SOCDEBUG</spirit:name>
+                 <spirit:name>HBURST_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -128,18 +128,18 @@
                  <spirit:name>HPROT</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HPROT_SOCDEBUG</spirit:name>
+                 <spirit:name>HPROT_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
 
-            <!-- HMASTER_SOCDEBUG unmapped -->
+            <!-- HMASTER_DEBUG unmapped -->
 
             <spirit:portMap>
                <spirit:logicalPort>
                  <spirit:name>HWDATA</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HWDATA_SOCDEBUG</spirit:name>
+                 <spirit:name>HWDATA_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -147,7 +147,7 @@
                  <spirit:name>HMASTLOCK</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HMASTLOCK_SOCDEBUG</spirit:name>
+                 <spirit:name>HMASTLOCK_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -155,7 +155,7 @@
                  <spirit:name>HREADY</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HREADY_SOCDEBUG</spirit:name>
+                 <spirit:name>HREADY_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
 
@@ -165,7 +165,7 @@
                  <spirit:name>HRDATA</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HRDATA_SOCDEBUG</spirit:name>
+                 <spirit:name>HRDATA_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -173,7 +173,7 @@
                  <spirit:name>HREADYOUT</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HREADYOUT_SOCDEBUG</spirit:name>
+                 <spirit:name>HREADYOUT_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -181,7 +181,7 @@
                  <spirit:name>HRESP</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HRESP_SOCDEBUG</spirit:name>
+                 <spirit:name>HRESP_DEBUG</spirit:name>
                  <spirit:vector>
                     <spirit:left>0</spirit:left>
                     <spirit:right>0</spirit:right>
@@ -2152,17 +2152,17 @@
    <spirit:remapStates>
 
       <spirit:remapState>
-          <spirit:name>remap_0</spirit:name>
-          <spirit:description>Remap state remap_0</spirit:description>
+          <spirit:name>remap_n0</spirit:name>
+          <spirit:description>Remap state remap_n0</spirit:description>
           <spirit:remapPorts>
-             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">1</spirit:remapPort>
+             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">0</spirit:remapPort>
           </spirit:remapPorts>
       </spirit:remapState>
       <spirit:remapState>
-          <spirit:name>remap_n0</spirit:name>
-          <spirit:description>Remap state remap_n0</spirit:description>
+          <spirit:name>remap_0</spirit:name>
+          <spirit:description>Remap state remap_0</spirit:description>
           <spirit:remapPorts>
-             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">0</spirit:remapPort>
+             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">1</spirit:remapPort>
           </spirit:remapPorts>
       </spirit:remapState>
 
@@ -2335,8 +2335,8 @@
    <spirit:memoryMaps>
 
       <spirit:memoryMap>
-         <spirit:name>AHBLiteTarget_Slave__SOCDEBUG_MM</spirit:name>
-         <spirit:description>_SOCDEBUG memory map</spirit:description>
+         <spirit:name>AHBLiteTarget_Slave__DEBUG_MM</spirit:name>
+         <spirit:description>_DEBUG memory map</spirit:description>
 
          <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__BOOTROM_0"
                              spirit:segmentRef="_BOOTROM_0_0x10000000_0x1fffffff">
@@ -2408,20 +2408,9 @@
             <spirit:baseAddress>0xf0000000</spirit:baseAddress>
          </spirit:subspaceMap>
 
-         <spirit:memoryRemap spirit:state="remap_0">
-            <spirit:name>AHBLiteTarget_Slave__SOCDEBUG_remap_0_remap_MM</spirit:name>
-            <spirit:description>_SOCDEBUG remap_0 remap</spirit:description>
-            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
-                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
-               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
-               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
-               <spirit:baseAddress>0x00000000</spirit:baseAddress>
-            </spirit:subspaceMap>
-         </spirit:memoryRemap>
-
          <spirit:memoryRemap spirit:state="remap_n0">
-            <spirit:name>AHBLiteTarget_Slave__SOCDEBUG_remap_n0_remap_MM</spirit:name>
-            <spirit:description>_SOCDEBUG remap_n0 remap</spirit:description>
+            <spirit:name>AHBLiteTarget_Slave__DEBUG_remap_n0_remap_MM</spirit:name>
+            <spirit:description>_DEBUG remap_n0 remap</spirit:description>
             <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__BOOTROM_0"
                                 spirit:segmentRef="_BOOTROM_0_0x00000000_0x0fffffff">
                <!-- Removable region, active only when REMAP bitcombination is n0 address_region 0x00000000-0x0fffffff -->
@@ -2430,6 +2419,17 @@
             </spirit:subspaceMap>
          </spirit:memoryRemap>
 
+         <spirit:memoryRemap spirit:state="remap_0">
+            <spirit:name>AHBLiteTarget_Slave__DEBUG_remap_0_remap_MM</spirit:name>
+            <spirit:description>_DEBUG remap_0 remap</spirit:description>
+            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
+                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
+               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
+               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
+               <spirit:baseAddress>0x00000000</spirit:baseAddress>
+            </spirit:subspaceMap>
+         </spirit:memoryRemap>
+
       </spirit:memoryMap>
 
       <spirit:memoryMap>
@@ -2658,17 +2658,6 @@
             <spirit:baseAddress>0xf0000000</spirit:baseAddress>
          </spirit:subspaceMap>
 
-         <spirit:memoryRemap spirit:state="remap_0">
-            <spirit:name>AHBLiteTarget_Slave__CPU_0_remap_0_remap_MM</spirit:name>
-            <spirit:description>_CPU_0 remap_0 remap</spirit:description>
-            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
-                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
-               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
-               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
-               <spirit:baseAddress>0x00000000</spirit:baseAddress>
-            </spirit:subspaceMap>
-         </spirit:memoryRemap>
-
          <spirit:memoryRemap spirit:state="remap_n0">
             <spirit:name>AHBLiteTarget_Slave__CPU_0_remap_n0_remap_MM</spirit:name>
             <spirit:description>_CPU_0 remap_n0 remap</spirit:description>
@@ -2680,6 +2669,17 @@
             </spirit:subspaceMap>
          </spirit:memoryRemap>
 
+         <spirit:memoryRemap spirit:state="remap_0">
+            <spirit:name>AHBLiteTarget_Slave__CPU_0_remap_0_remap_MM</spirit:name>
+            <spirit:description>_CPU_0 remap_0 remap</spirit:description>
+            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
+                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
+               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
+               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
+               <spirit:baseAddress>0x00000000</spirit:baseAddress>
+            </spirit:subspaceMap>
+         </spirit:memoryRemap>
+
       </spirit:memoryMap>
 
    </spirit:memoryMaps>
@@ -2735,13 +2735,13 @@
           <!-- Input signals of Slave interfaces -->
 
          <spirit:port>
-            <spirit:name>HSEL_SOCDEBUG</spirit:name>
+            <spirit:name>HSEL_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HADDR_SOCDEBUG</spirit:name>
+            <spirit:name>HADDR_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2751,7 +2751,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HTRANS_SOCDEBUG</spirit:name>
+            <spirit:name>HTRANS_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2761,13 +2761,13 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HWRITE_SOCDEBUG</spirit:name>
+            <spirit:name>HWRITE_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HSIZE_SOCDEBUG</spirit:name>
+            <spirit:name>HSIZE_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2777,7 +2777,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HBURST_SOCDEBUG</spirit:name>
+            <spirit:name>HBURST_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2790,7 +2790,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HPROT_SOCDEBUG</spirit:name>
+            <spirit:name>HPROT_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2800,7 +2800,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HMASTER_SOCDEBUG</spirit:name>
+            <spirit:name>HMASTER_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2813,7 +2813,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HWDATA_SOCDEBUG</spirit:name>
+            <spirit:name>HWDATA_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2823,13 +2823,13 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HMASTLOCK_SOCDEBUG</spirit:name>
+            <spirit:name>HMASTLOCK_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HREADY_SOCDEBUG</spirit:name>
+            <spirit:name>HREADY_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
             </spirit:wire>
@@ -4363,7 +4363,7 @@
          <!-- Output signals of Slave interfaces -->
 
          <spirit:port>
-            <spirit:name>HRDATA_SOCDEBUG</spirit:name>
+            <spirit:name>HRDATA_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>out</spirit:direction>
                <spirit:vector>
@@ -4373,13 +4373,13 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HREADYOUT_SOCDEBUG</spirit:name>
+            <spirit:name>HREADYOUT_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>out</spirit:direction>
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HRESP_SOCDEBUG</spirit:name>
+            <spirit:name>HRESP_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>out</spirit:direction>
                <spirit:vector>
@@ -4497,7 +4497,7 @@
             <spirit:fileType>verilogSource-2001</spirit:fileType>
          </spirit:file>
          <spirit:file>
-            <spirit:name>../../verilog/nanosoc_busmatrix/nanosoc_matrix_decode_SOCDEBUG.v</spirit:name>
+            <spirit:name>../../verilog/nanosoc_busmatrix/nanosoc_matrix_decode_DEBUG.v</spirit:name>
             <spirit:fileType>verilogSource-2001</spirit:fileType>
          </spirit:file>
          <spirit:file>
diff --git a/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix_lite.xml b/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix_lite.xml
index 70ebb8b..1e82bdb 100644
--- a/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix_lite.xml
+++ b/system/nanosoc_busmatrix/ipxact/nanosoc_busmatrix/nanosoc_busmatrix_lite.xml
@@ -38,12 +38,12 @@
       <!--Slave interfaces -->
 
       <spirit:busInterface>
-         <spirit:name>AHBLiteInitiator_Slave__SOCDEBUG</spirit:name>
-         <spirit:description>Slave port _SOCDEBUG</spirit:description>
+         <spirit:name>AHBLiteInitiator_Slave__DEBUG</spirit:name>
+         <spirit:description>Slave port _DEBUG</spirit:description>
          <spirit:busType spirit:library="AMBA3" spirit:name="AHBLiteInitiator" spirit:vendor="amba.com" spirit:version="r2p0_0"/>
          <spirit:abstractionType spirit:library="AMBA3" spirit:name="AHBLiteInitiator_rtl" spirit:vendor="amba.com" spirit:version="r2p0_0"/>
          <spirit:slave>
-            <spirit:memoryMapRef spirit:memoryMapRef="AHBLiteInitiator_Slave__SOCDEBUG_MM"/>
+            <spirit:memoryMapRef spirit:memoryMapRef="AHBLiteInitiator_Slave__DEBUG_MM"/>
             <spirit:bridge spirit:masterRef="AHBLiteTarget_Master__BOOTROM_0" spirit:opaque="true"/>
             <spirit:bridge spirit:masterRef="AHBLiteTarget_Master__IMEM_0" spirit:opaque="true"/>
             <spirit:bridge spirit:masterRef="AHBLiteTarget_Master__DMEM_0" spirit:opaque="true"/>
@@ -80,7 +80,7 @@
                  <spirit:name>HADDR</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HADDR_SOCDEBUG</spirit:name>
+                 <spirit:name>HADDR_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -88,7 +88,7 @@
                  <spirit:name>HTRANS</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HTRANS_SOCDEBUG</spirit:name>
+                 <spirit:name>HTRANS_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -96,7 +96,7 @@
                  <spirit:name>HWRITE</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HWRITE_SOCDEBUG</spirit:name>
+                 <spirit:name>HWRITE_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -104,7 +104,7 @@
                  <spirit:name>HSIZE</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HSIZE_SOCDEBUG</spirit:name>
+                 <spirit:name>HSIZE_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -112,7 +112,7 @@
                  <spirit:name>HBURST</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HBURST_SOCDEBUG</spirit:name>
+                 <spirit:name>HBURST_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -120,7 +120,7 @@
                  <spirit:name>HPROT</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HPROT_SOCDEBUG</spirit:name>
+                 <spirit:name>HPROT_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -128,7 +128,7 @@
                  <spirit:name>HWDATA</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HWDATA_SOCDEBUG</spirit:name>
+                 <spirit:name>HWDATA_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -136,7 +136,7 @@
                  <spirit:name>HMASTLOCK</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HMASTLOCK_SOCDEBUG</spirit:name>
+                 <spirit:name>HMASTLOCK_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
 
@@ -146,7 +146,7 @@
                  <spirit:name>HRDATA</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HRDATA_SOCDEBUG</spirit:name>
+                 <spirit:name>HRDATA_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -154,7 +154,7 @@
                  <spirit:name>HREADY</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HREADY_SOCDEBUG</spirit:name>
+                 <spirit:name>HREADY_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
             <spirit:portMap>
@@ -162,7 +162,7 @@
                  <spirit:name>HRESP</spirit:name>
                </spirit:logicalPort>
                <spirit:physicalPort>
-                 <spirit:name>HRESP_SOCDEBUG</spirit:name>
+                 <spirit:name>HRESP_DEBUG</spirit:name>
                </spirit:physicalPort>
             </spirit:portMap>
          </spirit:portMaps>
@@ -1990,17 +1990,17 @@
    <spirit:remapStates>
 
       <spirit:remapState>
-          <spirit:name>remap_0</spirit:name>
-          <spirit:description>Remap state remap_0</spirit:description>
+          <spirit:name>remap_n0</spirit:name>
+          <spirit:description>Remap state remap_n0</spirit:description>
           <spirit:remapPorts>
-             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">1</spirit:remapPort>
+             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">0</spirit:remapPort>
           </spirit:remapPorts>
       </spirit:remapState>
       <spirit:remapState>
-          <spirit:name>remap_n0</spirit:name>
-          <spirit:description>Remap state remap_n0</spirit:description>
+          <spirit:name>remap_0</spirit:name>
+          <spirit:description>Remap state remap_0</spirit:description>
           <spirit:remapPorts>
-             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">0</spirit:remapPort>
+             <spirit:remapPort spirit:portNameRef="REMAP" spirit:portIndex="0">1</spirit:remapPort>
           </spirit:remapPorts>
       </spirit:remapState>
 
@@ -2173,8 +2173,8 @@
    <spirit:memoryMaps>
 
       <spirit:memoryMap>
-         <spirit:name>AHBLiteInitiator_Slave__SOCDEBUG_MM</spirit:name>
-         <spirit:description>_SOCDEBUG memory map</spirit:description>
+         <spirit:name>AHBLiteInitiator_Slave__DEBUG_MM</spirit:name>
+         <spirit:description>_DEBUG memory map</spirit:description>
 
          <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__BOOTROM_0"
                              spirit:segmentRef="_BOOTROM_0_0x10000000_0x1fffffff">
@@ -2246,20 +2246,9 @@
             <spirit:baseAddress>0xf0000000</spirit:baseAddress>
          </spirit:subspaceMap>
 
-         <spirit:memoryRemap spirit:state="remap_0">
-            <spirit:name>AHBLiteInitiator_Slave__SOCDEBUG_remap_0_remap_MM</spirit:name>
-            <spirit:description>_SOCDEBUG remap_0 remap</spirit:description>
-            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
-                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
-               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
-               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
-               <spirit:baseAddress>0x00000000</spirit:baseAddress>
-            </spirit:subspaceMap>
-         </spirit:memoryRemap>
-
          <spirit:memoryRemap spirit:state="remap_n0">
-            <spirit:name>AHBLiteInitiator_Slave__SOCDEBUG_remap_n0_remap_MM</spirit:name>
-            <spirit:description>_SOCDEBUG remap_n0 remap</spirit:description>
+            <spirit:name>AHBLiteInitiator_Slave__DEBUG_remap_n0_remap_MM</spirit:name>
+            <spirit:description>_DEBUG remap_n0 remap</spirit:description>
             <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__BOOTROM_0"
                                 spirit:segmentRef="_BOOTROM_0_0x00000000_0x0fffffff">
                <!-- Removable region, active only when REMAP bitcombination is n0 address_region 0x00000000-0x0fffffff -->
@@ -2268,6 +2257,17 @@
             </spirit:subspaceMap>
          </spirit:memoryRemap>
 
+         <spirit:memoryRemap spirit:state="remap_0">
+            <spirit:name>AHBLiteInitiator_Slave__DEBUG_remap_0_remap_MM</spirit:name>
+            <spirit:description>_DEBUG remap_0 remap</spirit:description>
+            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
+                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
+               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
+               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
+               <spirit:baseAddress>0x00000000</spirit:baseAddress>
+            </spirit:subspaceMap>
+         </spirit:memoryRemap>
+
       </spirit:memoryMap>
 
       <spirit:memoryMap>
@@ -2496,17 +2496,6 @@
             <spirit:baseAddress>0xf0000000</spirit:baseAddress>
          </spirit:subspaceMap>
 
-         <spirit:memoryRemap spirit:state="remap_0">
-            <spirit:name>AHBLiteInitiator_Slave__CPU_0_remap_0_remap_MM</spirit:name>
-            <spirit:description>_CPU_0 remap_0 remap</spirit:description>
-            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
-                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
-               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
-               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
-               <spirit:baseAddress>0x00000000</spirit:baseAddress>
-            </spirit:subspaceMap>
-         </spirit:memoryRemap>
-
          <spirit:memoryRemap spirit:state="remap_n0">
             <spirit:name>AHBLiteInitiator_Slave__CPU_0_remap_n0_remap_MM</spirit:name>
             <spirit:description>_CPU_0 remap_n0 remap</spirit:description>
@@ -2518,6 +2507,17 @@
             </spirit:subspaceMap>
          </spirit:memoryRemap>
 
+         <spirit:memoryRemap spirit:state="remap_0">
+            <spirit:name>AHBLiteInitiator_Slave__CPU_0_remap_0_remap_MM</spirit:name>
+            <spirit:description>_CPU_0 remap_0 remap</spirit:description>
+            <spirit:subspaceMap spirit:masterRef="AHBLiteTarget_Master__IMEM_0"
+                                spirit:segmentRef="_IMEM_0_0x00000000_0x0fffffff">
+               <!-- Remapped region, active when REMAP bitcombination is 0 address_region 0x00000000-0x0fffffff -->
+               <spirit:name>AHBLiteTarget_Master__IMEM_0_0x00000000_0_state_remap_0_SM</spirit:name>
+               <spirit:baseAddress>0x00000000</spirit:baseAddress>
+            </spirit:subspaceMap>
+         </spirit:memoryRemap>
+
       </spirit:memoryMap>
 
    </spirit:memoryMaps>
@@ -2573,7 +2573,7 @@
           <!-- Input signals of Slave interfaces -->
 
          <spirit:port>
-            <spirit:name>HADDR_SOCDEBUG</spirit:name>
+            <spirit:name>HADDR_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2583,7 +2583,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HTRANS_SOCDEBUG</spirit:name>
+            <spirit:name>HTRANS_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2593,13 +2593,13 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HWRITE_SOCDEBUG</spirit:name>
+            <spirit:name>HWRITE_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HSIZE_SOCDEBUG</spirit:name>
+            <spirit:name>HSIZE_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2609,7 +2609,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HBURST_SOCDEBUG</spirit:name>
+            <spirit:name>HBURST_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2622,7 +2622,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HPROT_SOCDEBUG</spirit:name>
+            <spirit:name>HPROT_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2632,7 +2632,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HWDATA_SOCDEBUG</spirit:name>
+            <spirit:name>HWDATA_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
                <spirit:vector>
@@ -2642,7 +2642,7 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HMASTLOCK_SOCDEBUG</spirit:name>
+            <spirit:name>HMASTLOCK_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>in</spirit:direction>
             </spirit:wire>
@@ -3957,7 +3957,7 @@
          <!-- Output signals of Slave interfaces -->
 
          <spirit:port>
-            <spirit:name>HRDATA_SOCDEBUG</spirit:name>
+            <spirit:name>HRDATA_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>out</spirit:direction>
                <spirit:vector>
@@ -3967,13 +3967,13 @@
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HREADY_SOCDEBUG</spirit:name>
+            <spirit:name>HREADY_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>out</spirit:direction>
             </spirit:wire>
          </spirit:port>
          <spirit:port>
-            <spirit:name>HRESP_SOCDEBUG</spirit:name>
+            <spirit:name>HRESP_DEBUG</spirit:name>
             <spirit:wire>
                <spirit:direction>out</spirit:direction>
             </spirit:wire>
@@ -4079,7 +4079,7 @@
             <spirit:fileType>verilogSource-2001</spirit:fileType>
          </spirit:file>
          <spirit:file>
-            <spirit:name>../../verilog/nanosoc_busmatrix/nanosoc_matrix_decode_SOCDEBUG.v</spirit:name>
+            <spirit:name>../../verilog/nanosoc_busmatrix/nanosoc_matrix_decode_DEBUG.v</spirit:name>
             <spirit:fileType>verilogSource-2001</spirit:fileType>
          </spirit:file>
          <spirit:file>
diff --git a/system/nanosoc_busmatrix/logs/nanosoc.log b/system/nanosoc_busmatrix/logs/nanosoc.log
index 1f19b5e..dbd71df 100644
--- a/system/nanosoc_busmatrix/logs/nanosoc.log
+++ b/system/nanosoc_busmatrix/logs/nanosoc.log
@@ -14,7 +14,7 @@
 =
 = BuildBusMatrix.pl
 =
-= Run Date : 12/06/2023 11:01:02
+= Run Date : 15/06/2023 14:39:47
 ==============================================================
 
 Script accepted the following parameters:
@@ -26,7 +26,7 @@ Script accepted the following parameters:
  - Architecture type       : 'ahb2'
  - Arbitration scheme      : 'burst'
  - Address map             : user defined
- - Connectivity mapping    : _SOCDEBUG -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, _SYSTABLE, 
+ - Connectivity mapping    : _DEBUG -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, _SYSTABLE, 
                              _DMAC_0 -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, 
                              _DMAC_1 -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, 
                              _CPU_0 -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, _SYSTABLE
@@ -41,14 +41,14 @@ Script accepted the following parameters:
  - IPXact source directory : '/research/AAA/ip_library/latest/Corstone-101/logical/cmsdk_ahb_busmatrix/ipxact/src'
  - Overwrite mode          : enabled
 
-Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_BOOTROM.v' file...
-Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_DMEM.v' file...
+Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_BOOTROM_0.v' file...
+Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_DMEM_0.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_EXP_0.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_EXP_1.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_EXP_2.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_EXPRAM_H.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_EXPRAM_L.v' file...
-Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_IMEM.v' file...
+Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_IMEM_0.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_SYSIO.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_arbiter_SYSTABLE.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix.v' file...
@@ -59,14 +59,14 @@ Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busm
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_DMAC_0.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_DMAC_1.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_SOCDEBUG.v' file...
-Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_BOOTROM.v' file...
-Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_DMEM.v' file...
+Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_BOOTROM_0.v' file...
+Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_DMEM_0.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_EXP_0.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_EXP_1.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_EXP_2.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_EXPRAM_H.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_EXPRAM_L.v' file...
-Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_IMEM.v' file...
+Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_IMEM_0.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_SYSIO.v' file...
 Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_target_output_SYSTABLE.v' file...
 
@@ -75,36 +75,36 @@ Deleting the '/home/dam1n19/accelerator-project/nanosoc_tech/system/nanosoc_busm
 
 Creating the bus matrix variant...
 
- - Rendering 'nanosoc_target_output_BOOTROM_0.v'
+ - Rendering 'nanosoc_matrix_decode_CPU_0.v'
+ - Rendering 'nanosoc_target_output_EXPRAM_H.v'
+ - Rendering 'nanosoc_target_output_EXP_1.v'
  - Rendering 'nanosoc_target_output_SYSIO.v'
- - Rendering 'nanosoc_target_output_EXPRAM_L.v'
- - Rendering 'nanosoc_busmatrix_lite.v'
- - Rendering 'nanosoc_matrix_decode_DMAC_0.v'
- - Rendering 'nanosoc_target_output_EXP_2.v'
+ - Rendering 'nanosoc_inititator_input.v'
  - Rendering 'nanosoc_arbiter_SYSIO.v'
  - Rendering 'nanosoc_arbiter_EXPRAM_L.v'
- - Rendering 'nanosoc_arbiter_BOOTROM_0.v'
- - Rendering 'nanosoc_arbiter_EXP_1.v'
+ - Rendering 'nanosoc_target_output_IMEM_0.v'
+ - Rendering 'nanosoc_target_output_EXPRAM_L.v'
+ - Rendering 'nanosoc_target_output_DMEM_0.v'
+ - Rendering 'nanosoc_arbiter_EXP_2.v'
+ - Rendering 'nanosoc_target_output_EXP_2.v'
+ - Rendering 'nanosoc_arbiter_SYSTABLE.v'
+ - Rendering 'nanosoc_target_output_BOOTROM_0.v'
+ - Rendering 'nanosoc_matrix_decode_DMAC_1.v'
  - Rendering 'nanosoc_arbiter_DMEM_0.v'
- - Rendering 'nanosoc_target_output_EXP_1.v'
- - Rendering 'nanosoc_matrix_decode_CPU_0.v'
- - Rendering 'nanosoc_inititator_input.v'
- - Rendering 'nanosoc_arbiter_EXP_0.v'
+ - Rendering 'nanosoc_target_output_SYSTABLE.v'
+ - Rendering 'nanosoc_matrix_decode_DMAC_0.v'
  - Rendering 'nanosoc_busmatrix_lite.xml'
+ - Rendering 'nanosoc_arbiter_EXP_1.v'
+ - Rendering 'nanosoc_arbiter_EXP_0.v'
+ - Rendering 'nanosoc_busmatrix.xml'
+ - Rendering 'nanosoc_busmatrix_lite.v'
  - Rendering 'nanosoc_busmatrix_default_slave.v'
- - Rendering 'nanosoc_matrix_decode_SOCDEBUG.v'
  - Rendering 'nanosoc_target_output_EXP_0.v'
- - Rendering 'nanosoc_target_output_EXPRAM_H.v'
- - Rendering 'nanosoc_target_output_SYSTABLE.v'
- - Rendering 'nanosoc_target_output_DMEM_0.v'
- - Rendering 'nanosoc_arbiter_EXP_2.v'
- - Rendering 'nanosoc_matrix_decode_DMAC_1.v'
- - Rendering 'nanosoc_arbiter_SYSTABLE.v'
  - Rendering 'nanosoc_arbiter_EXPRAM_H.v'
- - Rendering 'nanosoc_target_output_IMEM_0.v'
- - Rendering 'nanosoc_busmatrix.v'
  - Rendering 'nanosoc_arbiter_IMEM_0.v'
- - Rendering 'nanosoc_busmatrix.xml'
+ - Rendering 'nanosoc_matrix_decode_DEBUG.v'
+ - Rendering 'nanosoc_arbiter_BOOTROM_0.v'
+ - Rendering 'nanosoc_busmatrix.v'
 
 Done!
 
diff --git a/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix.v b/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix.v
index 7ab092a..271c3ca 100644
--- a/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix.v
+++ b/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix.v
@@ -35,7 +35,7 @@
 //                         - Routing data width of 32 bits,
 //                         - Arbiter type 'burst',
 //                         - Connectivity mapping:
-//                             _SOCDEBUG -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, _SYSTABLE, 
+//                             _DEBUG -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, _SYSTABLE, 
 //                             _DMAC_0 -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, 
 //                             _DMAC_1 -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, 
 //                             _CPU_0 -> _BOOTROM_0, _IMEM_0, _DMEM_0, _SYSIO, _EXP_0, _EXP_1, _EXP_2, _EXPRAM_L, _EXPRAM_H, _SYSTABLE,
@@ -55,17 +55,17 @@ module nanosoc_busmatrix (
     REMAP,
 
     // Input port SI0 (inputs from master 0)
-    HSEL_SOCDEBUG,
-    HADDR_SOCDEBUG,
-    HTRANS_SOCDEBUG,
-    HWRITE_SOCDEBUG,
-    HSIZE_SOCDEBUG,
-    HBURST_SOCDEBUG,
-    HPROT_SOCDEBUG,
-    HMASTER_SOCDEBUG,
-    HWDATA_SOCDEBUG,
-    HMASTLOCK_SOCDEBUG,
-    HREADY_SOCDEBUG,
+    HSEL_DEBUG,
+    HADDR_DEBUG,
+    HTRANS_DEBUG,
+    HWRITE_DEBUG,
+    HSIZE_DEBUG,
+    HBURST_DEBUG,
+    HPROT_DEBUG,
+    HMASTER_DEBUG,
+    HWDATA_DEBUG,
+    HMASTLOCK_DEBUG,
+    HREADY_DEBUG,
 
     // Input port SI1 (inputs from master 1)
     HSEL_DMAC_0,
@@ -292,9 +292,9 @@ module nanosoc_busmatrix (
     HREADYMUX_SYSTABLE,
 
     // Input port SI0 (outputs to master 0)
-    HRDATA_SOCDEBUG,
-    HREADYOUT_SOCDEBUG,
-    HRESP_SOCDEBUG,
+    HRDATA_DEBUG,
+    HREADYOUT_DEBUG,
+    HRESP_DEBUG,
 
     // Input port SI1 (outputs to master 1)
     HRDATA_DMAC_0,
@@ -329,17 +329,17 @@ module nanosoc_busmatrix (
     input   [3:0] REMAP;           // REMAP input
 
     // Input port SI0 (inputs from master 0)
-    input         HSEL_SOCDEBUG;          // Slave Select
-    input  [31:0] HADDR_SOCDEBUG;         // Address bus
-    input   [1:0] HTRANS_SOCDEBUG;        // Transfer type
-    input         HWRITE_SOCDEBUG;        // Transfer direction
-    input   [2:0] HSIZE_SOCDEBUG;         // Transfer size
-    input   [2:0] HBURST_SOCDEBUG;        // Burst type
-    input   [3:0] HPROT_SOCDEBUG;         // Protection control
-    input   [3:0] HMASTER_SOCDEBUG;       // Master select
-    input  [31:0] HWDATA_SOCDEBUG;        // Write data
-    input         HMASTLOCK_SOCDEBUG;     // Locked Sequence
-    input         HREADY_SOCDEBUG;        // Transfer done
+    input         HSEL_DEBUG;          // Slave Select
+    input  [31:0] HADDR_DEBUG;         // Address bus
+    input   [1:0] HTRANS_DEBUG;        // Transfer type
+    input         HWRITE_DEBUG;        // Transfer direction
+    input   [2:0] HSIZE_DEBUG;         // Transfer size
+    input   [2:0] HBURST_DEBUG;        // Burst type
+    input   [3:0] HPROT_DEBUG;         // Protection control
+    input   [3:0] HMASTER_DEBUG;       // Master select
+    input  [31:0] HWDATA_DEBUG;        // Write data
+    input         HMASTLOCK_DEBUG;     // Locked Sequence
+    input         HREADY_DEBUG;        // Transfer done
 
     // Input port SI1 (inputs from master 1)
     input         HSEL_DMAC_0;          // Slave Select
@@ -566,9 +566,9 @@ module nanosoc_busmatrix (
     output        HREADYMUX_SYSTABLE;     // Transfer done
 
     // Input port SI0 (outputs to master 0)
-    output [31:0] HRDATA_SOCDEBUG;        // Read data bus
-    output        HREADYOUT_SOCDEBUG;     // HREADY feedback
-    output  [1:0] HRESP_SOCDEBUG;         // Transfer response
+    output [31:0] HRDATA_DEBUG;        // Read data bus
+    output        HREADYOUT_DEBUG;     // HREADY feedback
+    output  [1:0] HRESP_DEBUG;         // Transfer response
 
     // Input port SI1 (outputs to master 1)
     output [31:0] HRDATA_DMAC_0;        // Read data bus
@@ -601,21 +601,21 @@ module nanosoc_busmatrix (
     wire   [3:0] REMAP;           // REMAP signal
 
     // Input Port SI0
-    wire         HSEL_SOCDEBUG;          // Slave Select
-    wire  [31:0] HADDR_SOCDEBUG;         // Address bus
-    wire   [1:0] HTRANS_SOCDEBUG;        // Transfer type
-    wire         HWRITE_SOCDEBUG;        // Transfer direction
-    wire   [2:0] HSIZE_SOCDEBUG;         // Transfer size
-    wire   [2:0] HBURST_SOCDEBUG;        // Burst type
-    wire   [3:0] HPROT_SOCDEBUG;         // Protection control
-    wire   [3:0] HMASTER_SOCDEBUG;       // Master select
-    wire  [31:0] HWDATA_SOCDEBUG;        // Write data
-    wire         HMASTLOCK_SOCDEBUG;     // Locked Sequence
-    wire         HREADY_SOCDEBUG;        // Transfer done
-
-    wire  [31:0] HRDATA_SOCDEBUG;        // Read data bus
-    wire         HREADYOUT_SOCDEBUG;     // HREADY feedback
-    wire   [1:0] HRESP_SOCDEBUG;         // Transfer response
+    wire         HSEL_DEBUG;          // Slave Select
+    wire  [31:0] HADDR_DEBUG;         // Address bus
+    wire   [1:0] HTRANS_DEBUG;        // Transfer type
+    wire         HWRITE_DEBUG;        // Transfer direction
+    wire   [2:0] HSIZE_DEBUG;         // Transfer size
+    wire   [2:0] HBURST_DEBUG;        // Burst type
+    wire   [3:0] HPROT_DEBUG;         // Protection control
+    wire   [3:0] HMASTER_DEBUG;       // Master select
+    wire  [31:0] HWDATA_DEBUG;        // Write data
+    wire         HMASTLOCK_DEBUG;     // Locked Sequence
+    wire         HREADY_DEBUG;        // Transfer done
+
+    wire  [31:0] HRDATA_DEBUG;        // Read data bus
+    wire         HREADYOUT_DEBUG;     // HREADY feedback
+    wire   [1:0] HRESP_DEBUG;         // Transfer response
 
     // Input Port SI1
     wire         HSEL_DMAC_0;          // Slave Select
@@ -1079,16 +1079,16 @@ module nanosoc_busmatrix (
     .HRESETn    (HRESETn),
 
     // Input Port Address/Control Signals
-    .HSELS      (HSEL_SOCDEBUG),
-    .HADDRS     (HADDR_SOCDEBUG),
-    .HTRANSS    (HTRANS_SOCDEBUG),
-    .HWRITES    (HWRITE_SOCDEBUG),
-    .HSIZES     (HSIZE_SOCDEBUG),
-    .HBURSTS    (HBURST_SOCDEBUG),
-    .HPROTS     (HPROT_SOCDEBUG),
-    .HMASTERS   (HMASTER_SOCDEBUG),
-    .HMASTLOCKS (HMASTLOCK_SOCDEBUG),
-    .HREADYS    (HREADY_SOCDEBUG),
+    .HSELS      (HSEL_DEBUG),
+    .HADDRS     (HADDR_DEBUG),
+    .HTRANSS    (HTRANS_DEBUG),
+    .HWRITES    (HWRITE_DEBUG),
+    .HSIZES     (HSIZE_DEBUG),
+    .HBURSTS    (HBURST_DEBUG),
+    .HPROTS     (HPROT_DEBUG),
+    .HMASTERS   (HMASTER_DEBUG),
+    .HMASTLOCKS (HMASTLOCK_DEBUG),
+    .HREADYS    (HREADY_DEBUG),
 
     // Internal Response
     .active_ip     (i_active0),
@@ -1096,8 +1096,8 @@ module nanosoc_busmatrix (
     .resp_ip       (i_resp0),
 
     // Input Port Response
-    .HREADYOUTS (HREADYOUT_SOCDEBUG),
-    .HRESPS     (HRESP_SOCDEBUG),
+    .HREADYOUTS (HREADYOUT_DEBUG),
+    .HRESPS     (HRESP_DEBUG),
 
     // Internal Address/Control Signals
     .sel_ip        (i_sel0),
@@ -1244,7 +1244,7 @@ module nanosoc_busmatrix (
 
 
   // Matrix decoder for SI0
-  nanosoc_matrix_decode_SOCDEBUG u_nanosoc_matrix_decode_socdebug (
+  nanosoc_matrix_decode_DEBUG u_nanosoc_matrix_decode_debug (
 
     // Common AHB signals
     .HCLK       (HCLK),
@@ -1254,7 +1254,7 @@ module nanosoc_busmatrix (
     .remapping_dec  ( REMAP[0] ),
 
     // Signals from Input stage SI0
-    .HREADYS    (HREADY_SOCDEBUG),
+    .HREADYS    (HREADY_DEBUG),
     .sel_dec        (i_sel0),
     .decode_addr_dec (i_addr0[31:10]),   // HADDR[9:0] is not decoded
     .trans_dec      (i_trans0),
@@ -1333,7 +1333,7 @@ module nanosoc_busmatrix (
     .active_dec     (i_active0),
     .HREADYOUTS (i_readyout0),
     .HRESPS     (i_resp0),
-    .HRDATAS    (HRDATA_SOCDEBUG)
+    .HRDATAS    (HRDATA_DEBUG)
 
     );
 
@@ -1620,7 +1620,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -1706,7 +1706,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -1792,7 +1792,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -1878,7 +1878,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -1964,7 +1964,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -2050,7 +2050,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -2136,7 +2136,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -2222,7 +2222,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -2308,7 +2308,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 1 Signals
@@ -2394,7 +2394,7 @@ module nanosoc_busmatrix (
     .prot_op0      (i_prot0),
     .master_op0    (i_master0),
     .mastlock_op0  (i_mastlock0),
-    .wdata_op0     (HWDATA_SOCDEBUG),
+    .wdata_op0     (HWDATA_DEBUG),
     .held_tran_op0  (i_held_tran0),
 
     // Port 3 Signals
diff --git a/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix_lite.v b/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix_lite.v
index 68a8cf5..ffe248a 100644
--- a/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix_lite.v
+++ b/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_busmatrix_lite.v
@@ -40,14 +40,14 @@ module nanosoc_busmatrix_lite (
     REMAP,
 
     // Input port SI0 (inputs from master 0)
-    HADDR_SOCDEBUG,
-    HTRANS_SOCDEBUG,
-    HWRITE_SOCDEBUG,
-    HSIZE_SOCDEBUG,
-    HBURST_SOCDEBUG,
-    HPROT_SOCDEBUG,
-    HWDATA_SOCDEBUG,
-    HMASTLOCK_SOCDEBUG,
+    HADDR_DEBUG,
+    HTRANS_DEBUG,
+    HWRITE_DEBUG,
+    HSIZE_DEBUG,
+    HBURST_DEBUG,
+    HPROT_DEBUG,
+    HWDATA_DEBUG,
+    HMASTLOCK_DEBUG,
 
     // Input port SI1 (inputs from master 1)
     HADDR_DMAC_0,
@@ -255,9 +255,9 @@ module nanosoc_busmatrix_lite (
     HREADYMUX_SYSTABLE,
 
     // Input port SI0 (outputs to master 0)
-    HRDATA_SOCDEBUG,
-    HREADY_SOCDEBUG,
-    HRESP_SOCDEBUG,
+    HRDATA_DEBUG,
+    HREADY_DEBUG,
+    HRESP_DEBUG,
 
     // Input port SI1 (outputs to master 1)
     HRDATA_DMAC_0,
@@ -291,14 +291,14 @@ module nanosoc_busmatrix_lite (
     input   [3:0] REMAP;           // System Address REMAP control
 
     // Input port SI0 (inputs from master 0)
-    input  [31:0] HADDR_SOCDEBUG;         // Address bus
-    input   [1:0] HTRANS_SOCDEBUG;        // Transfer type
-    input         HWRITE_SOCDEBUG;        // Transfer direction
-    input   [2:0] HSIZE_SOCDEBUG;         // Transfer size
-    input   [2:0] HBURST_SOCDEBUG;        // Burst type
-    input   [3:0] HPROT_SOCDEBUG;         // Protection control
-    input  [31:0] HWDATA_SOCDEBUG;        // Write data
-    input         HMASTLOCK_SOCDEBUG;     // Locked Sequence
+    input  [31:0] HADDR_DEBUG;         // Address bus
+    input   [1:0] HTRANS_DEBUG;        // Transfer type
+    input         HWRITE_DEBUG;        // Transfer direction
+    input   [2:0] HSIZE_DEBUG;         // Transfer size
+    input   [2:0] HBURST_DEBUG;        // Burst type
+    input   [3:0] HPROT_DEBUG;         // Protection control
+    input  [31:0] HWDATA_DEBUG;        // Write data
+    input         HMASTLOCK_DEBUG;     // Locked Sequence
 
     // Input port SI1 (inputs from master 1)
     input  [31:0] HADDR_DMAC_0;         // Address bus
@@ -506,9 +506,9 @@ module nanosoc_busmatrix_lite (
     output        HREADYMUX_SYSTABLE;     // Transfer done
 
     // Input port SI0 (outputs to master 0)
-    output [31:0] HRDATA_SOCDEBUG;        // Read data bus
-    output        HREADY_SOCDEBUG;     // HREADY feedback
-    output        HRESP_SOCDEBUG;         // Transfer response
+    output [31:0] HRDATA_DEBUG;        // Read data bus
+    output        HREADY_DEBUG;     // HREADY feedback
+    output        HRESP_DEBUG;         // Transfer response
 
     // Input port SI1 (outputs to master 1)
     output [31:0] HRDATA_DMAC_0;        // Read data bus
@@ -540,18 +540,18 @@ module nanosoc_busmatrix_lite (
     wire   [3:0] REMAP;           // System REMAP signal
 
     // Input Port SI0
-    wire  [31:0] HADDR_SOCDEBUG;         // Address bus
-    wire   [1:0] HTRANS_SOCDEBUG;        // Transfer type
-    wire         HWRITE_SOCDEBUG;        // Transfer direction
-    wire   [2:0] HSIZE_SOCDEBUG;         // Transfer size
-    wire   [2:0] HBURST_SOCDEBUG;        // Burst type
-    wire   [3:0] HPROT_SOCDEBUG;         // Protection control
-    wire  [31:0] HWDATA_SOCDEBUG;        // Write data
-    wire         HMASTLOCK_SOCDEBUG;     // Locked Sequence
-
-    wire  [31:0] HRDATA_SOCDEBUG;        // Read data bus
-    wire         HREADY_SOCDEBUG;     // HREADY feedback
-    wire         HRESP_SOCDEBUG;         // Transfer response
+    wire  [31:0] HADDR_DEBUG;         // Address bus
+    wire   [1:0] HTRANS_DEBUG;        // Transfer type
+    wire         HWRITE_DEBUG;        // Transfer direction
+    wire   [2:0] HSIZE_DEBUG;         // Transfer size
+    wire   [2:0] HBURST_DEBUG;        // Burst type
+    wire   [3:0] HPROT_DEBUG;         // Protection control
+    wire  [31:0] HWDATA_DEBUG;        // Write data
+    wire         HMASTLOCK_DEBUG;     // Locked Sequence
+
+    wire  [31:0] HRDATA_DEBUG;        // Read data bus
+    wire         HREADY_DEBUG;     // HREADY feedback
+    wire         HRESP_DEBUG;         // Transfer response
 
     // Input Port SI1
     wire  [31:0] HADDR_DMAC_0;         // Address bus
@@ -762,7 +762,7 @@ module nanosoc_busmatrix_lite (
     wire   [3:0] tie_hi_4;
     wire         tie_hi;
     wire         tie_low;
-    wire   [1:0] i_hresp_SOCDEBUG;
+    wire   [1:0] i_hresp_DEBUG;
     wire   [1:0] i_hresp_DMAC_0;
     wire   [1:0] i_hresp_DMAC_1;
     wire   [1:0] i_hresp_CPU_0;
@@ -797,7 +797,7 @@ module nanosoc_busmatrix_lite (
     assign tie_low  = 1'b0;
 
 
-    assign HRESP_SOCDEBUG  = i_hresp_SOCDEBUG[0];
+    assign HRESP_DEBUG  = i_hresp_DEBUG[0];
 
     assign HRESP_DMAC_0  = i_hresp_DMAC_0[0];
 
@@ -823,20 +823,20 @@ module nanosoc_busmatrix_lite (
     .REMAP      (REMAP),
 
     // Input port SI0 signals
-    .HSEL_SOCDEBUG       (tie_hi),
-    .HADDR_SOCDEBUG      (HADDR_SOCDEBUG),
-    .HTRANS_SOCDEBUG     (HTRANS_SOCDEBUG),
-    .HWRITE_SOCDEBUG     (HWRITE_SOCDEBUG),
-    .HSIZE_SOCDEBUG      (HSIZE_SOCDEBUG),
-    .HBURST_SOCDEBUG     (HBURST_SOCDEBUG),
-    .HPROT_SOCDEBUG      (HPROT_SOCDEBUG),
-    .HWDATA_SOCDEBUG     (HWDATA_SOCDEBUG),
-    .HMASTLOCK_SOCDEBUG  (HMASTLOCK_SOCDEBUG),
-    .HMASTER_SOCDEBUG    (tie_hi_4),
-    .HREADY_SOCDEBUG     (HREADY_SOCDEBUG),
-    .HRDATA_SOCDEBUG     (HRDATA_SOCDEBUG),
-    .HREADYOUT_SOCDEBUG  (HREADY_SOCDEBUG),
-    .HRESP_SOCDEBUG      (i_hresp_SOCDEBUG),
+    .HSEL_DEBUG       (tie_hi),
+    .HADDR_DEBUG      (HADDR_DEBUG),
+    .HTRANS_DEBUG     (HTRANS_DEBUG),
+    .HWRITE_DEBUG     (HWRITE_DEBUG),
+    .HSIZE_DEBUG      (HSIZE_DEBUG),
+    .HBURST_DEBUG     (HBURST_DEBUG),
+    .HPROT_DEBUG      (HPROT_DEBUG),
+    .HWDATA_DEBUG     (HWDATA_DEBUG),
+    .HMASTLOCK_DEBUG  (HMASTLOCK_DEBUG),
+    .HMASTER_DEBUG    (tie_hi_4),
+    .HREADY_DEBUG     (HREADY_DEBUG),
+    .HRDATA_DEBUG     (HRDATA_DEBUG),
+    .HREADYOUT_DEBUG  (HREADY_DEBUG),
+    .HRESP_DEBUG      (i_hresp_DEBUG),
 
     // Input port SI1 signals
     .HSEL_DMAC_0       (tie_hi),
diff --git a/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_SOCDEBUG.v b/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_DEBUG.v
similarity index 99%
rename from system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_SOCDEBUG.v
rename to system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_DEBUG.v
index ea7c5f4..f65e6d4 100644
--- a/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_SOCDEBUG.v
+++ b/system/nanosoc_busmatrix/verilog/nanosoc_busmatrix/nanosoc_matrix_decode_DEBUG.v
@@ -33,7 +33,7 @@
 
 
 
-module nanosoc_matrix_decode_SOCDEBUG (
+module nanosoc_matrix_decode_DEBUG (
 
     // Common AHB signals
     HCLK,
diff --git a/system/nanosoc_busmatrix/xml/nanosoc.xml b/system/nanosoc_busmatrix/xml/nanosoc.xml
index 417b2a9..f0ec0ce 100644
--- a/system/nanosoc_busmatrix/xml/nanosoc.xml
+++ b/system/nanosoc_busmatrix/xml/nanosoc.xml
@@ -61,7 +61,7 @@
 
   <!-- Slave interface definitions -->
 
-  <slave_interface name="_SOCDEBUG">
+  <slave_interface name="_DEBUG">
     <sparse_connect interface="_BOOTROM_0"/>
     <sparse_connect interface="_IMEM_0"/>
     <sparse_connect interface="_DMEM_0"/>
diff --git a/system/nanosoc_subsystems/debug/verilog/nanosoc_ss_debug.v b/system/nanosoc_subsystems/debug/verilog/nanosoc_ss_debug.v
new file mode 100644
index 0000000..a66d440
--- /dev/null
+++ b/system/nanosoc_subsystems/debug/verilog/nanosoc_ss_debug.v
@@ -0,0 +1,115 @@
+//-----------------------------------------------------------------------------
+// NanoSoC Debug Subsystem - Contains SoCDebug Module
+// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license.
+//
+// Contributors
+//
+// David Mapstone (d.a.masptone@soton.ac.uk)
+//
+// Copyright (C) 2023, SoC Labs (www.soclabs.org)
+//-----------------------------------------------------------------------------
+
+module nanosoc_ss_debug #(
+    // System Parameters
+    parameter         SYS_ADDR_W    = 32,  // System Address Width
+    parameter         SYS_DATA_W    = 32,  // System Data Width
+    
+    // SoCDebug Parameters
+    parameter         PROMPT_CHAR   = "]",
+    parameter integer FT1248_WIDTH	= 1, // FTDI Interface 1,2,4 width supported
+    parameter integer FT1248_CLKON	= 1  // FTDI clock always on - else quiet when no access
+)(  
+    // System Clocks and Resets
+    input  wire                     SYS_HCLK,
+    input  wire                     SYS_HRESETn,
+    input  wire                     SYS_PCLK,   
+    input  wire                     SYS_PCLKG,  
+    input  wire                     SYS_PRESETn,
+    
+    // AHB-lite Master Interface - ADP
+    output wire              [31:0] DEBUG_HADDR,
+    output wire              [ 2:0] DEBUG_HBURST,
+    output wire                     DEBUG_HMASTLOCK,
+    output wire              [ 3:0] DEBUG_HPROT,
+    output wire              [ 2:0] DEBUG_HSIZE,
+    output wire              [ 1:0] DEBUG_HTRANS,
+    output wire              [31:0] DEBUG_HWDATA,
+    output wire                     DEBUG_HWRITE,
+    input  wire              [31:0] DEBUG_HRDATA,
+    input  wire                     DEBUG_HREADY,
+    input  wire                     DEBUG_HRESP,
+    
+    // APB Slave Interface - USRT
+    input  wire                     DEBUG_PSEL,      // Device select
+    input  wire              [11:2] DEBUG_PADDR,     // Address
+    input  wire                     DEBUG_PENABLE,   // Transfer control
+    input  wire                     DEBUG_PWRITE,    // Write control
+    input  wire              [31:0] DEBUG_PWDATA,    // Write data
+    output wire              [31:0] DEBUG_PRDATA,    // Read data
+    output wire                     DEBUG_PREADY,    // Device ready
+    output wire                     DEBUG_PSLVERR,   // Device error response
+    
+    // FT1248 Interace - FT1248
+    output wire                     FT_CLK_O,    // SCLK
+    output wire                     FT_SSN_O,    // SS_N
+    input  wire                     FT_MISO_I,   // MISO
+    output wire  [FT1248_WIDTH-1:0] FT_MIOSIO_O, // MIOSIO tristate output when enabled
+    output wire  [FT1248_WIDTH-1:0] FT_MIOSIO_E, // MIOSIO tristate output enable (active hi)
+    output wire  [FT1248_WIDTH-1:0] FT_MIOSIO_Z, // MIOSIO tristate output enable (active lo)
+    input  wire  [FT1248_WIDTH-1:0] FT_MIOSIO_I, // MIOSIO tristate input
+    input  wire               [7:0] FT_CLKDIV,   // divider prescaler to ensure SCLK <1MHz
+    
+    // GPIO interface
+    output wire               [7:0] GPO8,
+    input  wire               [7:0] GPI8
+);
+
+    socdebug_ahb #(
+        .PROMPT_CHAR(PROMPT_CHAR),
+        .FT1248_WIDTH(FT1248_WIDTH),
+        .FT1248_CLKON(FT1248_CLKON)
+    ) u_socdebbug (
+        // AHB-lite Master Interface - ADP
+        .HCLK(DEBUG_SYS_HCLK),
+        .HRESETn(DEBUG_SYS_HRESETn),
+        .HADDR32_o(DEBUG_HADDR),
+        .HBURST3_o(DEBUG_HBURST),
+        .HMASTLOCK_o(DEBUG_HMASTLOCK),
+        .HPROT4_o(DEBUG_HPROT),
+        .HSIZE3_o(DEBUG_HSIZE),
+        .HTRANS2_o(DEBUG_HTRANS),
+        .HWDATA32_o(DEBUG_HWDATA),
+        .HWRITE_o(DEBUG_HWRITE),
+        .HRDATA32_i(DEBUG_HRDATA32),
+        .HREADY_i(DEBUG_HREADY),
+        .HRESP_i(DEBUG_HRESP),
+
+        // APB Slave Interface - USRT
+        .PCLK(DEBUG_PCLK),
+        .PCLKG(DEBUG_PCLKG),
+        .PRESETn(DEBUG_PRESETn),
+        .PSEL_i(DEBUG_PSEL),
+        .PADDR_i(DEBUG_PADDR),
+        .PENABLE_i(DEBUG_PENABLE),
+        .PWRITE_i(DEBUG_PWRITE),
+        .PWDATA_i(DEBUG_PWDATA),
+        .PRDATA_o(DEBUG_PRDATA),
+        .PREADY_o(DEBUG_PREADY),
+        .PSLVERR_o(DEBUG_PSLVERR),
+
+        // FT1248 Interace - FT1248
+        .FT_CLK_O(FT_CLK_O),
+        .FT_SSN_O(FT_SSN_O),
+        .FT_MISO_I(FT_MISO_I),
+        .FT_MIOSIO_O(FT_MIOSIO_O),
+        .FT_MIOSIO_E(FT_MIOSIO_E),
+        .FT_MIOSIO_Z(FT_MIOSIO_Z),
+        .FT_MIOSIO_I(FT_MIOSIO_I),
+        .FT_CLKDIV(FT_CLKDIV),
+
+        // GPIO interface
+        .GPO8_o(GPO8_o),
+        .GPI8_i(GPI8_i)
+    );
+
+endmodule
\ No newline at end of file
-- 
GitLab