def generateXML(self,masterinterface): """ Generate intercon code """ masterinstance = masterinterface.getParent() # set name and description self.setName(str(masterinstance.getInstanceName()) \ + "_" \ + str(masterinterface.getName())) self.setInstanceName(str(masterinstance.getInstanceName())\ + "_"\ +str(masterinterface.getName())\ + "_intercon") self.setDescription("Connect slaves to "\ + masterinterface.getName()\ + " from "\ + masterinstance.getInstanceName()) # Save to make directories self.saveInstance() ##### # Create interface for each component connected on intercon # for slaves and master: slaveslist = masterinterface.getSlavesList() interfaceslist = [slave.getInterface() for slave in slaveslist] interfaceslist.append(masterinterface) # For each slave and master interface, create interface in intercon for interface in interfaceslist: instance = interface.getParent() ####### # bus (wishbone,...) bus = Interface(self, name=instance.getInstanceName()\ +"_"+interface.getName()) bus.setClass("intercon") # Adding bus interface on intercon self.addInterface(bus) #Creating port with invert direction value for port in interface.getPortsList(): newport = Port(bus, name=instance.getInstanceName()\ +"_"+port.getName()) newport.setDir(self.invertDir(port.getDir())) newport.setSize(port.getSize()) # adding port on bus interface bus.addPort(newport) #connect port new port on instance interface port.connectAllPin(newport) bus.setClass("intercon") self.setNum("0")