diff --git a/src/main/java/tmltranslator/HwNoC.java b/src/main/java/tmltranslator/HwNoC.java
index e9a7913665bd7362b831c98e26d835b05ac22ece..6e8fe884a4103c2ac010751401b025ca7fccbb7e 100755
--- a/src/main/java/tmltranslator/HwNoC.java
+++ b/src/main/java/tmltranslator/HwNoC.java
@@ -68,7 +68,15 @@ public class HwNoC extends HwCommunicationNode  {
     }
 
     public String toXML() {
-        String s = "<ROUTER name=\"" + name + "\" clockRatio=\"" + clockRatio + "\"  bufferByteSize=\"" + bufferByteSize + "\" />\n";
+        String s = "<NOC name=\"" + name + "\" clockRatio=\"" + clockRatio + "\"  bufferByteSize=\"" + bufferByteSize + "\"";
+        s += " infos=\"";
+        String infos = "";
+        for (String elt: placementMap.keySet()) {
+            Point p = placementMap.get(elt);
+            infos += elt + "[" + p.getX() + "," + p.getY() + "] ; ";
+        }
+        s += infos + "\"";
+        s += "/>\n";
         return s;
     }
 
diff --git a/src/main/java/tmltranslator/TMLMapping.java b/src/main/java/tmltranslator/TMLMapping.java
index ff27674926cdc104d08e6da3704d188c2d5132d1..4ac66cb2262824615c98c3eafbf1104f093d47c0 100755
--- a/src/main/java/tmltranslator/TMLMapping.java
+++ b/src/main/java/tmltranslator/TMLMapping.java
@@ -1696,7 +1696,8 @@ public class TMLMapping<E> {
     public String toXML() {
         String s = "<TMLMAPPING>\n";
         s += tmlm.toXML();
-        s += tmla.toXML();
+        s += tmla.toXML() + "\n";
+
         for (int i = 0; i < onnodes.size(); i++) {
             HwExecutionNode node = onnodes.get(i);
             TMLTask task = mappedtasks.get(i);
@@ -1704,6 +1705,7 @@ public class TMLMapping<E> {
         }
         for (int i = 0; i < oncommnodes.size(); i++) {
             HwCommunicationNode node = oncommnodes.get(i);
+
             TMLElement elt = mappedcommelts.get(i);
             s += "<COMMMAP node=\"" + node.getName() + "\" elt=\"" + elt.getName() + "\" />\n";
         }
diff --git a/src/main/java/ui/window/JDialogNoCManagement.java b/src/main/java/ui/window/JDialogNoCManagement.java
index 4c8e02a0a55bb828389bbd98bbbb3fa8faff33c8..cd236a2ba45c002fa993170e1c574648e2bbd358 100644
--- a/src/main/java/ui/window/JDialogNoCManagement.java
+++ b/src/main/java/ui/window/JDialogNoCManagement.java
@@ -309,6 +309,22 @@ public class JDialogNoCManagement extends JDialog implements ActionListener, Lis
 
 
         TraceManager.addDev("Thread started");
+
+        outputText.append("\nGenerating XML With NoC\n");
+        String XML = map.toXML();
+        String dir = SpecConfigTTool.TMLCodeDirectory;
+        try {
+            saveFile(SpecConfigTTool.TMLCodeDirectory + "/WithNoC.xml", XML);
+        } catch (Exception e) {
+            outputText.append("\nException when generating XML file\n");
+            stopProcess();
+            return;
+        }
+
+        outputText.append("\nSpecification generated in " + dir + "/WithNoC.xml\n");
+
+
+
         outputText.append("\nPreparing model\n");
 
         int size = map.getTMLArchitecture().getSizeOfNoC();
@@ -361,7 +377,7 @@ public class JDialogNoCManagement extends JDialog implements ActionListener, Lis
         TMLMappingTextSpecification ts = new TMLMappingTextSpecification<>("noNoc");
         ts.toTextFormat(mapping);
 
-        String dir = SpecConfigTTool.TMLCodeDirectory;
+        dir = SpecConfigTTool.TMLCodeDirectory;
         try {
             ts.saveFile(SpecConfigTTool.TMLCodeDirectory, "NoNoC");
         } catch (Exception e) {
@@ -374,8 +390,8 @@ public class JDialogNoCManagement extends JDialog implements ActionListener, Lis
 
 
 
-        outputText.append("\nGenerating XML\n");
-        String XML = mapping.toXML();
+        outputText.append("\nGenerating XML without NoC\n");
+        XML = mapping.toXML();
         dir = SpecConfigTTool.TMLCodeDirectory;
         try {
             saveFile(SpecConfigTTool.TMLCodeDirectory + "/NoNoC.xml", XML);