UPGRADE YOUR BROWSER
We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!
10-08-2019 04:49 AM
Hello,
I am trying to apply some manual routing to my design. To learn how to do that, I went through Lab 3 of "Vivado Design Suite Tutorial: Implementation (UG986)". The basic methodology is to enter assign routing mode, break up a path and then recompose it by starting from either end and selecting neighbouring paths. At the end, a path is generated and placed in an XDC file for future use.
Is there any way to perform this flow interactively in TCL? What I would need is a command to break a path, list neighbouring nodes and then select one of them until I have a complete path to my destination. Is that possible?
I found this thread from someone that aspires to do a similar thing, but the solution was to do it once in the GUI and then use the generated path. I would like to generate that path in TCL instead of the GUI.
Thanks for any help or pointers
10-09-2019 02:29 AM
10-08-2019 09:07 PM
Hi @bent93,
In order to manually route a net from one site to another site, you first need to fix the placement of the cells the net connects.
which can be done using following commands
set_property is_bel_fixed 1 [get_cells {<source_cell> <destination_cell>}]
set_property is_loc_fixed 1 [get_cells { <source_cell> <destination_cell> }]
and then you need to open the device view and get the names of the nodes of the site pins. ( you can do this by selecting a site pin and looking in site properties window ). Once you have all the node names use the following command to assign routing
set_property fixed_route { { <node_name_of_site_pin_on_Which_source_cell_is_placed> <intermediate_node_1> <intermediate_node_2> <intermediate_node_n> <node_name_of_site_pin_on_Which_desitnation_cell_is_placed> } } [get_nets <net_name>]
however this is very tedious which is why vivado has Assign Routing Mode inbuilt which uses GUI and interactive method to do the same task.
--Suraj
10-09-2019 01:33 AM
Hi @surajc, thanks a lot for your reply.
So there is no way to get the names of the nodes of the site pins in TCL?
Is there any other way I can get to that information? Like is there a database for each fpga that I could use to query routing options?
10-09-2019 02:29 AM
10-09-2019 02:50 AM
That looks promising, thank you so much!