From 7961b7ed0179cc99427feeaa27a5cd3b39bf2f9d Mon Sep 17 00:00:00 2001 From: Daniela Genius <genius@debussy.soc.lip6.fr> Date: Fri, 18 Oct 2019 16:19:47 +0200 Subject: [PATCH] bugfixes SystemC AMS topcell generatiobugfixes SystemC AMS topcell generationn --- .../toSysCAMS/ClusterCode.java | 17 ++++++---- .../toSysCAMS/PrimitiveCode.java | 33 +++++++++---------- 2 files changed, 26 insertions(+), 24 deletions(-) diff --git a/src/main/java/syscamstranslator/toSysCAMS/ClusterCode.java b/src/main/java/syscamstranslator/toSysCAMS/ClusterCode.java index ed41a0f2cf..83f3333ea0 100644 --- a/src/main/java/syscamstranslator/toSysCAMS/ClusterCode.java +++ b/src/main/java/syscamstranslator/toSysCAMS/ClusterCode.java @@ -109,8 +109,9 @@ public class ClusterCode { } else{ - corpsCluster = corpsCluster + "\tsca_tdf::sca_signal<" + ((SysCAMSTPortConverter) c.get_p1().getComponent()).getConvType()+ "<"+ ((SysCAMSTPortConverter) c.get_p1().getComponent()).getNbits()+"> " + "> " - + c.getName() + ";" + CR; + // corpsCluster = corpsCluster + "\tsca_tdf::sca_signal<" + ((SysCAMSTPortConverter) c.get_p1().getComponent()).getConvType()+ "<"+ ((SysCAMSTPortConverter) c.get_p1().getComponent()).getNbits()+"> " + "> " + corpsCluster = corpsCluster + "\tsc_core::sc_signal<" + ((SysCAMSTPortConverter) c.get_p1().getComponent()).getConvType()+ "<"+ ((SysCAMSTPortConverter) c.get_p1().getComponent()).getNbits()+"> " + "> " + + c.getName() + ";" + CR; //DG 18.10. names.add(c.getName()); } @@ -125,14 +126,15 @@ public class ClusterCode { } else { if( ((SysCAMSTPortConverter) c.get_p2().getComponent()).getNbits()==0 ) { - corpsCluster = corpsCluster + "\tsca_tdf::sca_signal<" + ((SysCAMSTPortConverter) c.get_p2().getComponent()).getConvType() + "> " - + c.getName() + ";" + CR; + // corpsCluster = corpsCluster + "\tsca_tdf::sca_signal<" + ((SysCAMSTPortConverter) c.get_p2().getComponent()).getConvType() + "> " + c.getName() + ";" + CR; + corpsCluster = corpsCluster + "\tsc_core::sc_signal<" + ((SysCAMSTPortConverter) c.get_p2().getComponent()).getConvType() + "> " + c.getName() + ";" + CR; //DG 18.10. names.add(c.getName()); } else{ - corpsCluster = corpsCluster + "\tsca_tdf::sca_signal<" + ((SysCAMSTPortConverter) c.get_p2().getComponent()).getConvType()+ "<"+((SysCAMSTPortConverter) c.get_p2().getComponent()).getNbits() + "> > " - + c.getName() + ";" + CR; + // corpsCluster = corpsCluster + "\tsca_tdf::sca_signal<" + ((SysCAMSTPortConverter) c.get_p2().getComponent()).getConvType()+ "<"+((SysCAMSTPortConverter) c.get_p2().getComponent()).getNbits() + "> > " + c.getName() + ";" + CR; + corpsCluster = corpsCluster + "\tsc_core::sc_signal<" + ((SysCAMSTPortConverter) c.get_p2().getComponent()).getConvType()+ "<"+((SysCAMSTPortConverter) c.get_p2().getComponent()).getNbits() + "> > " + c.getName() + ";" + CR; + //DG 18.10. names.add(c.getName()); } @@ -167,7 +169,8 @@ public class ClusterCode { for (SysCAMSTClock t : clock) { - corpsCluster = corpsCluster + "\t sc_clock " + t.getName() + " (\"" + t.getName() + "\"," + t.getFrequency()+","+ t.getUnit()+","+ t.getDutyCycle()+","+ t.getStartTime()+","+ t.getUnitStartTime()+","+ t.getPosFirst()+");" + CR; + // corpsCluster = corpsCluster + "\t sc_clock " + t.getName() + " (\"" + t.getName() + "\"," + t.getFrequency()+","+ t.getUnit()+","+ t.getDutyCycle()+","+ t.getStartTime()+","+ t.getUnitStartTime()+","+ t.getPosFirst()+");" + CR; + corpsCluster = corpsCluster + "\t sc_clock " + t.getName() + " (\"" + t.getName() + "\"," + t.getFrequency()+", SC_MS,"+ t.getDutyCycle()+","+ t.getStartTime()+", SC_MS,"+ t.getPosFirst()+");" + CR; } nb_block=0; diff --git a/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java b/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java index de822c97f0..79ea0ea704 100644 --- a/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java +++ b/src/main/java/syscamstranslator/toSysCAMS/PrimitiveCode.java @@ -556,10 +556,12 @@ if (t.getOrigin() == 0) { } boolean sensitive = false, method = false; - if (!de.getCode().equals("")) { - corpsPrimitiveDE = corpsPrimitiveDE + "\t{" + CR + "\t\tSC_METHOD(" + de.getNameFn() + ");" + CR; + //if (!de.getCode().equals("")) { + corpsPrimitiveDE = corpsPrimitiveDE + "\t{"+CR; + // corpsPrimitiveDE = corpsPrimitiveDE + "\t{" + CR + "\t\tSC_METHOD(" + de.getNameFn() + ");" + CR; + if (!de.getCode().equals("")) { method = true; - } + } /* for (SysCAMSTPortDE t : deports) { if (t.getSensitive() == true) { @@ -579,31 +581,28 @@ if (t.getOrigin() == 0) { //DG 17.10. if(de.getClockName()!=""){ - corpsPrimitiveDE = corpsPrimitiveDE + "\t\tsensitive << " + de.getClockName() + "."; - if (de.getClockSensitiveMethod().equals("positive")) { + corpsPrimitiveDE = corpsPrimitiveDE + "\t\tsensitive << " + de.getClockName() + ".pos();"+CR; + /* if (de.getClockSensitiveMethod().equals("positive")) { corpsPrimitiveDE = corpsPrimitiveDE + "pos();" + CR; } else if (de.getClockSensitiveMethod().equals("negative")) { corpsPrimitiveDE = corpsPrimitiveDE + "neg();" + CR; - } + }*/ + sensitive = true; } //fin ajoute DG - for (SysCAMSTPortDE t : deports) { + /*for (SysCAMSTPortDE t : deports) { if (t.getSensitive() == true) { if (method == false) { - corpsPrimitiveDE = corpsPrimitiveDE + "\t{" + CR; + corpsPrimitiveDE = corpsPrimitiveDE + "\t" + CR; } - corpsPrimitiveDE = corpsPrimitiveDE + "\t\tsensitive << " + t.getName() + ";"; - if (t.getSensitiveMethod().equals("positive")) { - corpsPrimitiveDE = corpsPrimitiveDE + "pos();" + CR; - } else if (t.getSensitiveMethod().equals("negative")) { - corpsPrimitiveDE = corpsPrimitiveDE + "neg();" + CR; - } - sensitive = true; - } + corpsPrimitiveDE = corpsPrimitiveDE + "\t\tsensitive << " + t.getName() + ";"+ CR; } + sensitive = true; + }*/ + - if (sensitive == true || method == true) { + if (sensitive == true || method == true) { corpsPrimitiveDE = corpsPrimitiveDE + "\t}" + CR2; } else { corpsPrimitiveDE = corpsPrimitiveDE + "\t{}" + CR2; -- GitLab