diff --git a/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java b/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java
index a5d42aaf513b5f9dc6c57c8cd9dd17debf58db1a..c2d3e1fb13628546a49105e57c0910a97202371e 100755
--- a/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java
+++ b/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java
@@ -1290,11 +1290,29 @@ public class TasksAndMainGenerator {
                     //ret += "sprintf(__value, \"%d\", " + var + ");" + CR;
                     ret += traceVariableModification(_block.getName(), var, type);
                 }
-
             }
         }
 
         return ret;
     }
+  public static String getDeployInfoRam() {
+        int i=0;
+    int j;
+    String deployinfo_ram = CR;
+    try{
+    for(AvatarRelation ar: avspec.getRelations()){
+        for (j=0; j<ar.nbOfSignals();j++){
+        deployinfo_ram += "DEPLOY_RAM" + i + "_NAME (RWAL) : ORIGIN = DEPLOY_RAM" + i + "_ADDR, LENGTH = DEPLOY_RAM" + i + "_SIZE" + CR;
+        deployinfo_ram += "CACHED_RAM" + i + "_NAME (RWAL) : ORIGIN = CACHED_RAM" + i + "_ADDR, LENGTH = CACHED_RAM" + i + "_SIZE" + CR;
+        i++;
+        }
+    }
+    }catch (Exception e){
+        e.printStackTrace();
+    }
+    return deployinfo_ram;
+    }
+
+
 
 }
diff --git a/src/main/java/ddtranslatorSoclib/toTopCell/TopCellGenerator.java b/src/main/java/ddtranslatorSoclib/toTopCell/TopCellGenerator.java
index dc1cc1df17dfd84289666d5adaec05f8fab0b8c7..46a29fbc6c8b2a825cb79c434d695cca36bf9a88 100755
--- a/src/main/java/ddtranslatorSoclib/toTopCell/TopCellGenerator.java
+++ b/src/main/java/ddtranslatorSoclib/toTopCell/TopCellGenerator.java
@@ -47,7 +47,10 @@
 
 package ddtranslatorSoclib.toTopCell;
 
+import avatartranslator.AvatarRelation;
+import avatartranslator.AvatarSpecification;
 import ddtranslatorSoclib.*;
+import ddtranslatorSoclib.toSoclib.*;
 
 import java.io.*;
 import java.util.ArrayList;
@@ -60,6 +63,8 @@ public class TopCellGenerator
 	public static AvatarddSpecification avatardd;
 	// ---------------------------------------------------
 
+        public static AvatarSpecification avspec;
+
 	public String VCIparameters;
 	public String config;
 	public String mainFile;
@@ -67,6 +72,7 @@ public class TopCellGenerator
 	public String top;
         public String deployinfo;
         public String deployinfo_map; 
+        public String deployinfo_ram;
         public String platform_desc;
         public String procinfo; 
         public String nbproc;
@@ -85,9 +91,10 @@ public class TopCellGenerator
 
         private final static String GENERATED_PATH = "generated_topcell" + File.separator;      
 	 private boolean tracing;
-    public TopCellGenerator(AvatarddSpecification dd, boolean _tracing){
+    public TopCellGenerator(AvatarddSpecification dd, boolean _tracing, AvatarSpecification _avspec){
 		avatardd = dd;
-		tracing=_tracing;
+		tracing =_tracing;
+		avspec =_avspec;
 	}
 
 	public String generateTopCell() {
@@ -207,7 +214,7 @@ public class TopCellGenerator
 			fw.close();
 		} catch (IOException ex) {
 		}
-		saveFileDeploy(path);	
+		saveFileDeploy(path);
 		saveFilePlatform(path);
 		saveFileProcinfo(path);
 		saveFileNBproc(path);
@@ -228,7 +235,14 @@ public class TopCellGenerator
 			fw_map.write(deployinfo_map);
 			fw_map.close();
 
+			//ajout CD 9.6
+ System.err.println(path + GENERATED_PATH + "deployinfo_ram.h");
+		    FileWriter fw_ram = new FileWriter(path + GENERATED_PATH + "/deployinfo_ram.h");
+		    deployinfo_ram = TasksAndMainGenerator.getDeployInfoRam();  
+		    fw_ram.write(deployinfo_ram);
+		    fw_ram.close();
 		} catch (IOException ex) {
+		    ex.printStackTrace();
 		}
 	}