diff --git a/src/ddtranslatorSoclib/AvatarComponent.java b/src/ddtranslatorSoclib/AvatarComponent.java index d014d72370eb6e06e6866286edef70f542a9f3cc..55f5df1dc24c514345a43733d623d8d969339b7e 100755 --- a/src/ddtranslatorSoclib/AvatarComponent.java +++ b/src/ddtranslatorSoclib/AvatarComponent.java @@ -47,5 +47,12 @@ package ddtranslatorSoclib; public abstract class AvatarComponent { - + public String name; + + public String getName(){ + return name; + } + public void setName(String _name){ + name=_name; + } } diff --git a/src/ddtranslatorSoclib/AvatarddSpecification.java b/src/ddtranslatorSoclib/AvatarddSpecification.java index d0b4207023d16a23c3822bd2ad9adc2ded03a4f6..fa1e936aa07811e259c1d2c6272e4a6aa4ec16a1 100755 --- a/src/ddtranslatorSoclib/AvatarddSpecification.java +++ b/src/ddtranslatorSoclib/AvatarddSpecification.java @@ -114,24 +114,13 @@ There always is a RAM0, a TTY and an interconnect (Bus or VGMN or crossbar) othe } return channels; } - - public LinkedList<AvatarConnector> getAllConnectors(){ - LinkedList<AvatarConnector> connectors = new LinkedList<AvatarConnector>(); - for (AvatarConnector connector: connectors ) - { - if (connector instanceof AvatarConnector) - connectors.add((AvatarConnector)connector); - } - return connectors; - } - + public LinkedList<AvatarTTY> getAllTTY(){ int i=0; LinkedList<AvatarTTY> ttys = new LinkedList<AvatarTTY>(); for (AvatarComponent tty : components ) { - if (tty instanceof AvatarTTY){ - //tty.setNo_tty(i);i++; + if (tty instanceof AvatarTTY){ ttys.add((AvatarTTY)tty); } } diff --git a/src/ddtranslatorSoclib/toTopCell/Declaration.java b/src/ddtranslatorSoclib/toTopCell/Declaration.java index 6127735a6488b276b4eccb8450ba6b7756f7c4b9..f3325370cdd3e9496d852d4a8bc8004cb34ed182 100755 --- a/src/ddtranslatorSoclib/toTopCell/Declaration.java +++ b/src/ddtranslatorSoclib/toTopCell/Declaration.java @@ -203,74 +203,6 @@ if(nb_clusters==0){ declaration += "soclib::caba::VciVgsb<vci_param> vgsb(\"" + bus.getBusName() + "\"" + " , maptab, cpus.size()+3," + (TopCellGenerator.avatardd.getNb_target()+4)+");" + CR2; int i=0; - - //monitoring connectors marked by spy with the vci_ logger - /* for (AvatarConnector connector : TopCellGenerator.avatardd.getAllConnectors()) { - if (connector.getMonitored()==1){ - - - AvatarConnectingPoint point = connector.getconectingPoint1(); - AvatarComponent component = point.getComponent(); - declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; - i++; - if(component instanceof AvatarRAM){ - - } - - //cache monitoring not yet implemented - // if(component instanceof AvatarCPU){ - // component.setMonitored(1); - // } - //} - }*/ - - -//monitoring CPU either by logger(1) ou stats (2) - for (AvatarCPU cpu : TopCellGenerator.avatardd.getAllCPU()) { - - if (cpu.getMonitored()==1){ - - declaration += "soclib::caba::VciLogger<vci_param> vci_logger"+i+"(\"logger" + i+"\",maptab);" + CR2; - i++; - } - /* else{ - if (cpu.getMonitored()==2){ - - String strArray=""; - //DG 30.01. no channels in case of cpu monitoring; does this make sense? channels associated to RAM not CPU and potentially any CPU can access any RAM...think about - declaration += "soclib::caba::VciMwmrStats<vci_param> mwmr_stats"+i+"(\"mwmr_stats" + i+"\",maptab, data_ldr, \"mwmr"+i+".log\",stringArray("+strArray+"NULL));" + CR2; - i++; - } - }*/ - } - - i=0; - //monitoring RAM either by logger(1) ou stats (2) - for (AvatarRAM ram : TopCellGenerator.avatardd.getAllRAM()) { - - if (ram.getMonitored()==1){ - - declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; - i++; - } - else{ - if (ram.getMonitored()==2){ - - String strArray=""; - - for(AvatarChannel channel: ram.getChannels()){ - - String chname = generateName(channel); - - strArray=strArray+"\""+chname+"\","; - } - - declaration += "soclib::caba::VciMwmrStats<vci_param> mwmr_stats"+i+"(\"mwmr_stats" + i+"\",maptab, data_ldr, \"mwmr"+i+".log\",stringArray("+strArray+"NULL));" + CR2; - i++; - } - } - } - //if BUS was not last in input file, update here bus.setNbOfAttachedInitiators(TopCellGenerator.avatardd.getNb_init()); @@ -290,33 +222,14 @@ if(nb_clusters==0){ declaration += "soclib::caba::VciVgmn<vci_param> vgmn(\"" + vgmn.getVgmnName() + "\"" + " , maptab, cpus.size()+3," + (TopCellGenerator.avatardd.getNb_target()+4)+ "," + vgmn.getMinLatency() + "," + vgmn.getFifoDepth() + ");" + CR2; - int i=0; - - for (AvatarRAM ram : TopCellGenerator.avatardd.getAllRAM()) { - if (ram.getMonitored()==1){ - int number = ram.getNo_target(); - declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; - i++; - } - else{ - - if (ram.getMonitored()==2){ - int number = ram.getNo_target(); - - String strArray=""; - - for(AvatarChannel channel: ram.getChannels()){ - - String chname = generateName(channel); - - strArray=strArray+"\""+chname+"\","; - } - declaration += "soclib::caba::VciMwmrStats<vci_param> mwmr_stats"+i+"(\"mwmr_stats" + i+"\",maptab, data_ldr, \"mwmr0.log\",stringArray("+strArray+"NULL));" + CR2; - i++; - } - } - } + // if VGMN was not last in input file, update here + vgmn.setNbOfAttachedInitiators(TopCellGenerator.avatardd.getNb_init()); + vgmn.setnbOfAttachedTargets(TopCellGenerator.avatardd.getNb_target()+4); + + } + + /* VciMwmrController( sc_module_name name, @@ -330,18 +243,14 @@ if(nb_clusters==0){ const size_t n_from_coproc, const size_t n_config, const size_t n_status, - const bool use_llsc ); + const bool use_llsc ); */ //only non-clustered version for (AvatarCoproMWMR copro : TopCellGenerator.avatardd.getAllCoproMWMR()){ declaration += "caba::VciMwmrController<vci_param> " + copro.getCoprocName()+ "(\"" + copro.getCoprocName()+ "\", maptab, IntTab("+copro.getSrcid() + "), IntTab("+copro.getTgtid() + "),copro.getPlaps(),copro.getFifoToCoProcDepth(),copro.getNToCopro(),copro.getNFromCopro(),copro.getNConfig(),copro.getNStatus(), copro.getUseLLSC());"+ CR; - i++;} - - // if VGMN was not last in input file, update here - vgmn.setNbOfAttachedInitiators(TopCellGenerator.avatardd.getNb_init()); - vgmn.setnbOfAttachedTargets(TopCellGenerator.avatardd.getNb_target()+4); - } + + } } else { @@ -349,101 +258,29 @@ else { /* clustered interconnect architecture */ /***************************************/ - //monitor connectors marked by spy with the vci_ logger - /* for (AvatarConnector connector : TopCellGenerator.avatardd.getAllConnectors()) { - if (connector.getMonitored()==1){ - - AvatarConnectingPoint point = connector.getconectingPoint1(); - AvatarComponent component = point.getComponent(); - declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; - i++; - if(component instanceof AvatarRAM){ - - } - - //cache monitoring not yet implemented - // if(component instanceof AvatarCPU){ - // component.setMonitored(1); - // } - } - }*/ - + for (AvatarBus bus : TopCellGenerator.avatardd.getAllBus()) { declaration += "soclib::caba::VciVgsb<vci_param> vgsb(\"" + bus.getBusName() + "\"" + " , maptab, "+ +nb_clusters+"," + nb_clusters + ");" + CR2; //if BUS was not last in input file, update here - int i=0; - for (AvatarRAM ram : TopCellGenerator.avatardd.getAllRAM()) { - - if (ram.getMonitored()==1){ - - declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; - i++; - } - else{ - if (ram.getMonitored()==2){ - - - String strArray=""; - - for(AvatarChannel channel: ram.getChannels()){ - - String chname = generateName(channel); - - strArray=strArray+"\""+chname+"\","; - } - - declaration += "soclib::caba::VciMwmrStats<vci_param> mwmr_stats"+i+"(\"mwmr_stats" + i+"\",maptab, data_ldr, \"mwmr"+i+".log\",stringArray("+strArray+"NULL));" + CR2; - i++; - } - } - } + int i=0; } - // currently clustered around one vgmn - for (AvatarVgmn vgmn : TopCellGenerator.avatardd.getAllVgmn()) { + + for (AvatarVgmn vgmn : TopCellGenerator.avatardd.getAllVgmn()) { System.out.println("initiators: "+TopCellGenerator.avatardd.getNb_init()); System.out.println("targets: "+TopCellGenerator.avatardd.getNb_target()); declaration += "soclib::caba::VciVgmn<vci_param> vgmn (\"" + vgmn.getVgmnName() + "\"" + " , maptab, "+ nb_clusters +"," + nb_clusters + "," + vgmn.getMinLatency() + "," + vgmn.getFifoDepth() + ");" + CR2; - - int i=0; - - //monitoring either by logger(1) ou stats (2) - for (AvatarRAM ram : TopCellGenerator.avatardd.getAllRAM()) { - - if (ram.getMonitored()==1){ - - declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; - i++; - } - else{ - if (ram.getMonitored()==2){ - - - String strArray=""; - - for(AvatarChannel channel: ram.getChannels()){ - - String chname = generateName(channel); - - strArray=strArray+"\""+chname+"\","; - } - - declaration += "soclib::caba::VciMwmrStats<vci_param> mwmr_stats"+i+"(\"mwmr_stats" + i+"\",maptab, data_ldr, \"mwmr"+i+".log\",stringArray("+strArray+"NULL));" + CR2; - i++; - } - } - } + } int i=0; - for (AvatarCrossbar crossbar : TopCellGenerator.avatardd.getAllCrossbar()) { - - /* attribution d'un index de cluster par ordre d'arrivee */ - //currently number on initiators and targets is fixed + for (AvatarCrossbar crossbar : TopCellGenerator.avatardd.getAllCrossbar()) { + + //currently the number on initiators and targets is fixed crossbar.setClusterIndex(i); @@ -455,8 +292,8 @@ else { //processor(s) and link to central interconnect are initiators //crossbar.setNbOfAttachedInitiators(2); //crossbar.setNbOfAttachedTargets(2); - crossbar.setNbOfAttachedInitiators(1);//DG 27.09. - crossbar.setNbOfAttachedTargets(1);//DG 27.09. + crossbar.setNbOfAttachedInitiators(1); + crossbar.setNbOfAttachedTargets(1); } System.out.println("initiators: "+crossbar.getNbOfAttachedInitiators()); @@ -469,11 +306,51 @@ else { //if CROSSBAR was not last in input file, update here crossbar.setNbOfAttachedInitiators(TopCellGenerator.avatardd.getNb_init()); - crossbar.setNbOfAttachedTargets(TopCellGenerator.avatardd.getNb_target()); - - i++; + crossbar.setNbOfAttachedTargets(TopCellGenerator.avatardd.getNb_target()); + } - } +} +int i=0; + //monitoring CPU by logger(1) + for (AvatarCPU cpu : TopCellGenerator.avatardd.getAllCPU()) { + + if (cpu.getMonitored()==1){ + System.out.println("Spy CPU"); + declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; + i++; + } + } + + int j=0; + //monitoring RAM either by logger(1) ou stats (2) + for (AvatarRAM ram : TopCellGenerator.avatardd.getAllRAM()) { + if (ram.getMonitored()==0){ + + } + if (ram.getMonitored()==1){ + System.out.println("Spy RAM : Logger"); + declaration += "soclib::caba::VciLogger<vci_param> logger"+i+"(\"logger" + i+"\",maptab);" + CR2; + i++; + } + else{ + if (ram.getMonitored()==2){ + System.out.println("Spy RAM : Stats"); + String strArray=""; + + for(AvatarChannel channel: ram.getChannels()){ + + String chname = generateName(channel); + + strArray=strArray+"\""+chname+"\","; + } + + declaration += "soclib::caba::VciMwmrStats<vci_param> mwmr_stats"+j+"(\"mwmr_stats" + j+"\",maptab, data_ldr, \"mwmr"+j+".log\",stringArray("+strArray+"NULL));" + CR2; + j++; + } + } + } + return declaration; } -} + +} \ No newline at end of file diff --git a/src/ddtranslatorSoclib/toTopCell/NetList.java b/src/ddtranslatorSoclib/toTopCell/NetList.java index b7a996c73fbf24c9cdf4d21137d13bc816603235..c6db44071d3e979e826c6b1753e9bbe4c442a284 100755 --- a/src/ddtranslatorSoclib/toTopCell/NetList.java +++ b/src/ddtranslatorSoclib/toTopCell/NetList.java @@ -56,8 +56,8 @@ public class NetList { public static String getNetlist(String icn, boolean _tracing) { int nb_clusters=TopCellGenerator.avatardd.getAllCrossbar().size(); - boolean trace_caba=true; //tracing is enabled in cycle accurate mode tracing = _tracing; + String netlist; netlist = CR2 + "//------------------------------Netlist---------------------------------" + CR2; @@ -347,35 +347,7 @@ public class NetList { netlist = netlist + "mwmr"+i+".p_vci_target(signal_mwmr_"+i+"_target);" + CR; netlist = netlist + copro.getCoprocName()+".p_"+i+"_ctrl(signal_fifo_"+i+"_ctrl);" + CR; } - // } - - //int j; - /* netlist for connecting the monitoring infrastructure */ - /* Which VCI interfaces are marked for full log, with a spy sign? */ - /* Attention we do not want two loggers if RAM ist already logged (currently not checked) */ - /* vci_stats only possible for RAMS with mapped channels */ - - /* for (AvatarConnector connector : TopCellGenerator.avatardd.getAllConnectors()) { - if (connector.getMonitored()==1){ - - // we identify the component on the interface - - AvatarConnectingPoint point = connector.getconectingPoint1(); - AvatarComponent component = point.getComponent(); - - if(component instanceof AvatarRAM){ - int number = number = ram.getNo_ram(); - netlist += "logger"+i+".p_clk(signal_clk);" + CR; - netlist += "logger"+i+".p_resetn(signal_resetn);" + CR; - netlist += "logger"+i+".p_vci(signal_vci_vciram"+number+");" + CR2; - } - - //cache monitoring not yet implemented - // if(component instanceof AvatarCPU){ - // component.setMonitored(1); - // } - } - }*/ + //If there is a spy, add logger or stats to vci interface @@ -383,43 +355,40 @@ public class NetList { for (AvatarCPU cpu : TopCellGenerator.avatardd.getAllCPU()) { int number = cpu.getNo_proc(); if(cpu.getMonitored()==1){ - netlist=netlist+ - "vci_logger"+i+".p_clk(signal_clk);" +CR+ - "vci_logger"+i+".p_resetn(signal_resetn);" +CR+ - "vci_logger"+i+".p_vci(signal_vci_m["+number+"]);" +CR2; - } - /* else{//stats pas encore pour CPU - if(cpu.getMonitored()==2){ - netlist=netlist+ - "mwmr_stats"+i+".p_clk(signal_clk);" +CR+ - "mwmr_stats"+i+".p_resetn(signal_resetn);" +CR+ - "mwmr_stats"+i+".p_vci(signal_vci_m["+number+"]);" +CR2; - } - }*/ + netlist=netlist+CR+ + "logger"+i+".p_clk(signal_clk);" +CR+ + "logger"+i+".p_resetn(signal_resetn);" +CR+ + "logger"+i+".p_vci(signal_vci_m["+number+"]);" +CR2; i++; + } + } - - i=0; + int j=0; + for (AvatarRAM ram : TopCellGenerator.avatardd.getAllRAM()) { if (ram.getMonitored()==1){ int number = number = ram.getNo_ram(); netlist += "logger"+i+".p_clk(signal_clk);" + CR; netlist += "logger"+i+".p_resetn(signal_resetn);" + CR; - netlist += "logger"+i+".p_vci(signal_vci_vciram"+number+");" + CR2; + netlist += "logger"+i+".p_vci(signal_vci_vciram"+number+");" + CR2; + i++; } else{ + if (ram.getMonitored()==2){ int number = number = ram.getNo_ram(); - netlist += "mwmr_stats"+i+".p_clk(signal_clk);" + CR; - netlist += "mwmr_stats"+i+".p_resetn(signal_resetn);" + CR; - netlist += "mwmr_stats"+i+".p_vci(signal_vci_vciram"+number+");" + CR2; - i++; + netlist += "mwmr_stats"+j+".p_clk(signal_clk);" + CR; + netlist += "mwmr_stats"+j+".p_resetn(signal_resetn);" + CR; + netlist += "mwmr_stats"+j+".p_vci(signal_vci_vciram"+number+");" + CR2; + j++; } - } + } } //generate trace file if marked trace option - /* netlist += "sc_trace_file *tf;" + CR; + + if(tracing){ + netlist += "sc_trace_file *tf;" + CR; netlist += "tf=sc_create_vcd_trace_file(\"mytrace\");" + CR; netlist += "sc_trace(tf,signal_clk,\"CLK\");" + CR; netlist += "sc_trace(tf,signal_resetn,\"RESETN\");" + CR; @@ -430,8 +399,6 @@ public class NetList { netlist += "sc_trace(tf, signal_vci_vcirom ,\"signal_vci_vcirom\");" + CR; netlist += "sc_trace(tf, signal_vci_vcisimhelper,\"signal_vci_vcisimhelper\");" + CR; netlist += "sc_trace(tf, signal_vci_vcirttimer ,\"signal_vci_vcirttimer\");" + CR; - //netlist += "sc_trace(tf, signal_vci_mwmr_ram ,\"signal_vci_mwmr_ram\");" + CR; - //netlist += "sc_trace(tf, signal_vci_mwmrd_ram ,\"signal_vci_mwmrd_ram\");" + CR; netlist += "sc_trace(tf, signal_vci_vcifdaccessi,\"signal_vci_vcifdaccessi\");" + CR; netlist += "sc_trace(tf,signal_vci_vcifdaccesst ,\"signal_vci_vcifdaccesst\");" + CR; netlist += "sc_trace(tf,signal_vci_bdi ,\"signal_vci_bdi\");" + CR; @@ -459,16 +426,16 @@ public class NetList { if (ram.getMonitored()==0){ netlist += "sc_trace(tf,signal_vci_vciram"+ram.getNo_ram()+",\"Memory"+ram.getNo_ram()+"\");" + CR; } - }*/ - + } + } netlist = netlist + " sc_core::sc_start(sc_core::sc_time(0, sc_core::SC_NS));" + CR; netlist = netlist + " signal_resetn = false;" + CR; netlist = netlist + " sc_core::sc_start(sc_core::sc_time(1, sc_core::SC_NS));" + CR; netlist = netlist + " signal_resetn = true;" + CR; netlist = netlist + " sc_core::sc_start();" + CR; - //if(tracing){ - // netlist += "sc_close_vcd_trace_file(tf);" + CR; - // } + if(tracing){ + netlist += "sc_close_vcd_trace_file(tf);" + CR; + } netlist = netlist + CR + " return EXIT_SUCCESS;"+ CR; netlist = netlist +"}" + CR; return netlist; diff --git a/src/ddtranslatorSoclib/toTopCell/TopCellGenerator.java b/src/ddtranslatorSoclib/toTopCell/TopCellGenerator.java index 04343ae26a39b9a69a80bba86881a269c5c294e7..7eea27208a58eed0d9ab82859c0e5778b955fbd3 100755 --- a/src/ddtranslatorSoclib/toTopCell/TopCellGenerator.java +++ b/src/ddtranslatorSoclib/toTopCell/TopCellGenerator.java @@ -115,6 +115,7 @@ public class TopCellGenerator System.out.println("***VGSB based ***"); icn="vgsb"; } + // If there is a spy, add spy component to vci interface; // both adjacent componants are spied. // Currently for CPU and RAM only. @@ -122,52 +123,46 @@ public class TopCellGenerator // various infos on MWMR channels // RAM and CPU monitoring are for required for determining latency // of memory accesses other than channel - - System.out.println("@@@@@@@BEFORE SPY@@@@@@@"); - - for (AvatarConnector connector : TopCellGenerator.avatardd.getAllConnectors()){ + + for (AvatarConnector connector : avatardd.getConnectors()){ AvatarConnectingPoint my_p1= (AvatarConnectingPoint)connector.get_p1(); AvatarConnectingPoint my_p2= (AvatarConnectingPoint)connector.get_p2(); - - System.out.println("@@@@@@@BEFORE SPY2@@@@@@@"); - + //If a spy glass symbol is found, and component itself not yet marked AvatarComponent comp1 = my_p1.getComponent(); AvatarComponent comp2 = my_p2.getComponent(); if (connector.getMonitored()==1){ - System.out.println("@@@@@@@SPY@@@@@@@"); + //comp2 devrait toujours etre un interconnect if (comp1 instanceof AvatarRAM){ AvatarRAM comp1ram = (AvatarRAM)comp1; - System.out.println("@@@@@@@RAM1@@@@@@@"); - comp1ram.setMonitored(1); + System.out.println("RAM monitored "+comp1ram.getMonitored()); + comp1ram.setMonitored(comp1ram.getMonitored()); } if (comp1 instanceof AvatarCPU){ AvatarCPU comp1cpu = (AvatarCPU)comp1; - System.out.println("@@@@@@@CPU1@@@@@@@"); - comp1cpu.setMonitored(1); + System.out.println("CPU monitored "+comp1cpu.getMonitored()); + comp1cpu.setMonitored(comp1cpu.getMonitored()); } - if (comp2 instanceof AvatarRAM){ + /* if (comp2 instanceof AvatarRAM){ AvatarRAM comp2ram = (AvatarRAM)comp1; - System.out.println("@@@@@@@RAM2@@@@@@@"); - comp2ram.setMonitored(1); + System.out.println("RAM2 topcell monitored "+comp2ram.getMonitored()); + comp2ram.setMonitored(comp2ram.getMonitored()); } if (comp2 instanceof AvatarCPU){ AvatarCPU comp2cpu = (AvatarCPU)comp2; - System.out.println("@@@@@@@CPU2@@@@@@@"); - comp2cpu.setMonitored(1); - } + System.out.println("CPU2 topcell monitored "+comp2cpu.getMonitored()); + comp2cpu.setMonitored(comp2cpu.getMonitored()); + }*/ } } - /* Central crossbar or local crossbars : ToDo */ - if(TopCellGenerator.avatardd.getNbCrossbar()>0){ System.out.println("***Clustered Interconnect***"); } diff --git a/src/ui/AvatarDeploymentPanelTranslator.java b/src/ui/AvatarDeploymentPanelTranslator.java index 885429013b950b0c9359c348d5a5b01348b08edc..1b82872471fff93d45bdcbc477d6310249bc65b4 100644 --- a/src/ui/AvatarDeploymentPanelTranslator.java +++ b/src/ui/AvatarDeploymentPanelTranslator.java @@ -254,7 +254,7 @@ public class AvatarDeploymentPanelTranslator { String referenceDiagram = c.getReferenceDiagram(); String channelName = c.getChannelName(); - // DG channel is inevitably on same cluster as RAM it is mapped on :) + //channel is inevitably on same cluster as RAM it is mapped on :) AvatarChannel avcl = new AvatarChannel(referenceDiagram, channelName, avram, cluster_index, monitored); avram.addChannel(avcl); avatarMappedObject.add(avcl); @@ -269,25 +269,20 @@ public class AvatarDeploymentPanelTranslator { for (TGComponent dp : tgcComponents) { if (dp instanceof ADDConnector) { -System.out.println("@@@@@@@CONNECTOR FOUND@@@@@@@"); + ADDConnector connector = (ADDConnector) dp; - //ADDConnectingPoint connectingPoint1 = (ADDConnectingPoint) connector.get_p1(); - //ADDConnectingPoint connectingPoint2 = (ADDConnectingPoint) connector.get_p2(); + TGConnectingPoint connectingPoint1 = connector.get_p1(); TGConnectingPoint connectingPoint2 = connector.get_p2(); TGComponent owner_p1 = avatarddDiagramPanel.getComponentToWhichBelongs(connectingPoint1); TGComponent owner_p2 = avatarddDiagramPanel.getComponentToWhichBelongs(connectingPoint2); -System.out.println("@@@@@@@@@@@@@"+owner_p1.getName()+" connected to "+owner_p2.getName()); + System.out.println(owner_p1.getName()+" connected to "+owner_p2.getName()); AvatarComponent avowner_p1 = avatarMap.get(owner_p1); AvatarComponent avowner_p2 = avatarMap.get(owner_p2); - - if(avowner_p1 instanceof AvatarCPU) - System.out.println("@@@@@@IS A CPU @@@@@@@"); - if(avowner_p1 instanceof AvatarRAM) - System.out.println("@@@@@@IS A RAM @@@@@@@"); + //create Avatar connecting points AvatarConnectingPoint avconnectingPoint1 = new AvatarConnectingPoint(avowner_p1); @@ -296,11 +291,12 @@ System.out.println("@@@@@@@@@@@@@"+owner_p1.getName()+" connected to "+owner_p2. int monitored = 0; if (spy == true){ monitored = 1; - System.out.println("@@@@@@HAS A SPY @@@@@@@"); + } AvatarConnector avconnector = new AvatarConnector(avconnectingPoint1, avconnectingPoint2, monitored); avatarConnectors.add(avconnector); + } } } diff --git a/src/ui/avatardd/ADDMemoryNode.java b/src/ui/avatardd/ADDMemoryNode.java index 6eff2b9fdcd6bde25ec1a5dd4116a624e63f490e..56106392ee03c584c12e14e7d8b3893769ee5f7f 100755 --- a/src/ui/avatardd/ADDMemoryNode.java +++ b/src/ui/avatardd/ADDMemoryNode.java @@ -207,7 +207,14 @@ public abstract class ADDMemoryNode extends ADDCommunicationNode implements With if (dialog.getMonitored() != 0) { try { tmp = monitored; + + System.out.println("@@@@ ADDMemoryNode monitored"+monitored); + monitored = dialog.getMonitored();//Integer.decode(dialog.getMonitored()).intValue(); + + System.out.println("@@@@ ADDMemoryNode monitored"+monitored); + + if (index < 0) { monitored = tmp; error = true; diff --git a/src/ui/window/JDialogAvatarddExecutableCodeGeneration.java b/src/ui/window/JDialogAvatarddExecutableCodeGeneration.java index 54f87609e5f970da8fc2b359021d8d39153a9370..702660ea191680333c01ac5c05cdef269c051738 100755 --- a/src/ui/window/JDialogAvatarddExecutableCodeGeneration.java +++ b/src/ui/window/JDialogAvatarddExecutableCodeGeneration.java @@ -78,7 +78,7 @@ public class JDialogAvatarddExecutableCodeGeneration extends javax.swing.JFrame private String textSysC1 = "Base directory of code generation:"; private String textSysC2 = "Compile soclib executable with"; - private String textSysC3 = "Run code and trace traffic on interconnect :"; + //private String textSysC3 = "Run code and trace traffic on interconnect :"; private String textSysC4 = "Run code in soclib / mutekh:"; private String textSysC5 = "Show AVATAR trace from file w/o hardware:"; private String textSysC6 = "Show cycle accurate trace from MPSoC file:"; @@ -127,7 +127,7 @@ public class JDialogAvatarddExecutableCodeGeneration extends javax.swing.JFrame private static boolean removeCFilesValue = true; private static boolean removeXFilesValue = true; private static boolean debugValue = false; - private static boolean tracingValue = true; + private static boolean tracingValue = false; private static boolean optimizeValue = true; private Thread t; @@ -316,12 +316,12 @@ public class JDialogAvatarddExecutableCodeGeneration extends javax.swing.JFrame exegroup = new ButtonGroup(); - exetrace = new JRadioButton(textSysC3, false); + /*exetrace = new JRadioButton(textSysC3, false); exetrace.addActionListener(this); exegroup.add(exetrace); jp03.add(exetrace, c03); exe3 = new JTextField(pathExecuteMPSoC+"-trace", 100); - jp03.add(exe3, c03); + jp03.add(exe3, c03);*/ exesoclib = new JRadioButton(textSysC4, false); exesoclib.addActionListener(this); @@ -331,7 +331,7 @@ public class JDialogAvatarddExecutableCodeGeneration extends javax.swing.JFrame jp03.add(exe4, c03); //exe.setSelected(selectedRun == 0); - exetrace.setSelected(selectedRun == 1); + //exetrace.setSelected(selectedRun == 1); exesoclib.setSelected(selectedRun == 2); jp03.add(new JLabel(" "), c03); @@ -447,14 +447,14 @@ public class JDialogAvatarddExecutableCodeGeneration extends javax.swing.JFrame public void makeSelectionExecute() { - if (exetrace.isSelected()) { - selectedRun = 1; - } else { + //if (exetrace.isSelected()) { + // selectedRun = 1; + //} else { selectedRun = 2; - } + //} // exe2.setEnabled(selectedRun == 0); - exe3.setEnabled(selectedRun == 1); + //exe3.setEnabled(selectedRun == 1); exe4.setEnabled(selectedRun == 2); } @@ -661,11 +661,11 @@ public class JDialogAvatarddExecutableCodeGeneration extends javax.swing.JFrame if (jp1.getSelectedIndex() == 2) { try { - if (selectedRun == 1) { - cmd = exe3.getText(); - } else { + // if (selectedRun == 1) { + //cmd = exe3.getText(); + //} else { cmd = exe4.getText(); - } + // } jta.append("Executing code with command: \n" + cmd + "\n");