From a47c1f39275955ef2a5f5e9f65d312d2f6cf6f1b Mon Sep 17 00:00:00 2001
From: Daniela Genius <genius@debussy.soc.lip6.fr>
Date: Thu, 25 Jul 2019 18:11:42 +0200
Subject: [PATCH] =?UTF-8?q?bugfixes=20in=20sy=C5=9AytemC-AMS=20code=20gene?=
 =?UTF-8?q?ration?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../toSysCAMS/PrimitiveCode.java              | 24 +++++++++++++++++--
 .../toSysCAMSSoclib/PrimitiveCodeSoclib.java  |  6 +++--
 2 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java b/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java
index 4ed10ccca5..5a17369992 100644
--- a/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java
+++ b/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java
@@ -152,7 +152,8 @@ public class PrimitiveCode {
 			    // System.out.println("@@@@@ Conv ports non empty");
 				for (SysCAMSTPortConverter conv : convports) {
 
-				    if(conv.getConvType() !="sc_uint") {
+				    //   if(conv.getConvType() !="sc_uint") {
+				    if(conv.getNbits()==0){
 				if (conv.getOrigin() == 0) {
 					    corpsPrimitiveTDF = corpsPrimitiveTDF + "\tsca_tdf::sca_de::sca_in <" + conv.getConvType()+"> " + conv.getName() + ";" + CR;
 					    
@@ -471,7 +472,22 @@ public class PrimitiveCode {
 			if (!deports.isEmpty()) {
 			    //System.out.println("@@@@@@@@@DE ports non empty");
 				for (SysCAMSTPortDE t : deports) {
-					if (t.getOrigin() == 0) {
+
+
+				    if(t.getNbits()==0)	    
+				    {	if (t.getOrigin() == 0) {
+						corpsPrimitiveDE = corpsPrimitiveDE + "\tsc_core::sc_in <" + t.getDEType() + ">"  + t.getName() + ";" + CR;
+					 
+						//System.out.println("@@@@@@@@@2DE "+t.getDEType()+t.getNbits());		
+					} else if (t.getOrigin() == 1) {
+					    corpsPrimitiveDE = corpsPrimitiveDE + "\tsc_core::sc_out <" + t.getDEType() + "> "+ t.getName() + ";" + CR;
+		 
+					    //System.out.println("@@@@@@@@@2DE "+t.getDEType()+t.getNbits());					
+					}
+				}
+				   else {
+
+if (t.getOrigin() == 0) {
 						corpsPrimitiveDE = corpsPrimitiveDE + "\tsc_core::sc_in <" + t.getDEType() + "<"+t.getNbits()+"> >" + t.getName() + ";" + CR;
 					 
 						//System.out.println("@@@@@@@@@2DE "+t.getDEType()+t.getNbits());		
@@ -480,6 +496,10 @@ public class PrimitiveCode {
 		 
 					    //System.out.println("@@@@@@@@@2DE "+t.getDEType()+t.getNbits());					
 					}
+
+				       
+				    }
+					
 				}
 			}
 
diff --git a/src/main/java/syscamstranslator/toSysCAMSSoclib/PrimitiveCodeSoclib.java b/src/main/java/syscamstranslator/toSysCAMSSoclib/PrimitiveCodeSoclib.java
index bb36d3874a..ce64a0b6cf 100644
--- a/src/main/java/syscamstranslator/toSysCAMSSoclib/PrimitiveCodeSoclib.java
+++ b/src/main/java/syscamstranslator/toSysCAMSSoclib/PrimitiveCodeSoclib.java
@@ -150,7 +150,8 @@ public class PrimitiveCodeSoclib {
 			if (!convports.isEmpty()) {
 				for (SysCAMSTPortConverter conv : convports) {
 
-				    if(conv.getConvType()!="sc_uint")
+				    //if(conv.getConvType()!="sc_uint")
+				    if(conv.getNbits()==0)
 				    { 
 					if (conv.getOrigin() == 0) {
 					   
@@ -161,7 +162,8 @@ public class PrimitiveCodeSoclib {
 					}
 
 				}
-				    else{	if (conv.getOrigin() == 0) {
+				    else{
+					if (conv.getOrigin() == 0) {
 					  
 					   corpsPrimitiveTDF = corpsPrimitiveTDF + "\tsca_tdf::sca_de::sca_in <" + conv.getConvType()+"<" + conv.getNbits()+"> > " + conv.getName() + ";" + CR;
 					} else if (conv.getOrigin() == 1) {
-- 
GitLab