Currently, the TCP format does not include any commands to manually set intrasite routing. This information was not previously included for the following reasons:
Vivado crashes when you set the SITE_PIPS property for IOB33 sites (in addition to setting the PACKAGE_PIN property). A service request was sent to Vivado, but this bug still occurs at least as of version 2017.3.
Vivado is able to set a valid intrasite configuration automatically for sites based on the first wire used in an intersite route in conjunction with the other cells/nets in a site.
Adding intrasite routing information to a TCP may increase import time.
However, the need to manually set intrasite routing can still come up in some scenarios. I have created a branch that includes code that creates the necessary TCL commands to set the intrasite routing for sites in the routing.xdc. This relies on the pipInValues data structure in CellDesign.
I have already been using this code, but we need to do some more tests (make sure no other site types cause Vivado to crash, etc.), possibly add a couple of helper methods, and update the documentation before integrating this into the master branch.
Currently, the TCP format does not include any commands to manually set intrasite routing. This information was not previously included for the following reasons:
Vivado crashes when you set the SITE_PIPS property for IOB33 sites (in addition to setting the PACKAGE_PIN property). A service request was sent to Vivado, but this bug still occurs at least as of version 2017.3.
Vivado is able to set a valid intrasite configuration automatically for sites based on the first wire used in an intersite route in conjunction with the other cells/nets in a site.
Adding intrasite routing information to a TCP may increase import time.
However, the need to manually set intrasite routing can still come up in some scenarios. I have created a branch that includes code that creates the necessary TCL commands to set the intrasite routing for sites in the routing.xdc. This relies on the pipInValues data structure in CellDesign.
I have already been using this code, but we need to do some more tests (make sure no other site types cause Vivado to crash, etc.), possibly add a couple of helper methods, and update the documentation before integrating this into the master branch.