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!

AR# 65655

Vivado Implementation - Tcl Store add_probe command leads to partial routed nets

Description

Using Vivado 2014.4.1, I apply the Tcl App Store add_probe command on an open implemented design.

Most of the probes are successful, but one of these fails, leading to several unrouted pins.

The report_route_status show several conflicts due to this one probe:

                                               :      # nets :
   ------------------------------------------- : ----------- :
   # of logical nets.......................... :      140279 :
       # of nets not needing routing.......... :       55018 :
           # of internally routed nets........ :       40897 :
           # of nets with no loads............ :       14121 :
       # of routable nets..................... :       85261 :
           # of fully routed nets............. :       85258 :
       # of nets with routing errors.......... :           3 :
           # of nets with some unrouted pins.. :           3 :
           # of nets with resource conflicts.. :           2 :
           # of nets with antennas/islands.... :           3 :
   ------------------------------------------- : ----------- :

Nets with Routing Errors:

  U7/net[0]
    Unrouted Pin: U7/sig/I1
    Antenna Nodes: CLBLM_R_X11Y215/CLBLM_L_A3
...
...

How can I avoid this?

Solution

The probe in the above example is being added to a net that is already driving a top-level port.


When add_probe is executed, the LUT driving this net has its input bel pins change, but not its site pins.

This causes the route failure.

A work-around would be to re-route each net that connects to the LUT inputs:


route_design -unroute -nets [get_nets U7/sig]
route_design -unroute -nets [get_nets U7/sig2]
route_design -unroute -nets [get_nets U7/sig3]
route_design -nets [get_nets [list U7/sig U7/sig2 U7/sig3]]

This issue is not seen in newer Vivado versions such as 2015.2.

AR# 65655
Date Created 10/12/2015
Last Updated 10/23/2015
Status Active
Type General Article
Tools
  • Vivado Design Suite - 2014.4.1