Cell src = design.getSiteInstFromSiteName("SLICE_X6Y159").getCell("B6LUT");
SLICE_X2Y98/B5LUT to IOB_X1Y136/Y3.
design = Design.readCheckpoint("checkpoint.dcp")
src = design.getSiteInstFromSiteName("SLICE_X6Y159").getCell("AFF")
snk = design.createAndPlaceIOB("snk", PinType.OUT, "AB22", "LVCMOS18")
outNet = design.createNet("src")
outNet.connect(src, "Q")
outNet.connect(snk, "I")
design.routeSites()
design.writeCheckpoint("typicalRoute.dcp")
On Friday, May 22, 2020 at 11:15:29 PM UTC+2, RapidWright wrote:
There are appears to be an inconsistency in your initial request vs. the code you have provided. It sounds like you want the (output?) of the LUT at SLICE_X2Y98/B5LUT to drive the input on the IOB_X1Y136? As far as I know, Y3 is not a pin on an IO site, are you referring to the package pin name?
Sorry for inconsistency , Later on I tried something that I wanted to do. You have got the point right. I want to drive the inputs of IOB (If there are unused pins) from the output of LUT or Register. Y3 is the package pin name.
The source code example you provide mostly makes sense, but does not match the same locations as the initial request (SLICE_X2Y98 vs. SLICE_X6Y159), it also is using a FF vs. a LUT as the source. At first glance, the code appears to not have an issue, but it is hard to tell what might be the problem if you are encountering one.
The location in the initial request was LUT and now FF. I want to take the output of both, which may additionally drive the input of IOB.
If you could perhaps share the original DCP that you are using (checkpoint.dcp) or a similar example, then I might be able to help you more, but its hard to see what might be going wrong here.
I would like to inob you the original dcp.
design.routeSites()router.routeDesign();
src = design.getSiteInstFromSiteName("SLICE_X6Y159").getCell("AFF")
snk = design.createAndPlaceIOB("snk", PinType.OUT, "AF23", "LVCMOS18")outputnetname = "newnet"outNet = design.createNet("newnet")
outNet.connect(src, "Q")outNet.connect(snk, "I")
srcNode = outNet.getSource().getRouteNode()snkNode = outNet.getSinkPins().get(0).getRouteNode();router = Router(design)newpath= DesignTools.findRoutingPath(srcNode, snkNode)outNet.getPIPs().addAll(newpath)outNet.lockRouting()design.writeCheckpoint("newNet.dcp")