cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
kvsarmaj
Visitor
Visitor
1,464 Views
Registered: ‎12-25-2017

Nets with no loads

When Vivado fails to route a design and generates a report as below,

 

                                           :      # nets :

   ------------------------------------------- : ----------- :

   # of logical nets.......................... :     6205815 :

       # of nets not needing routing.......... :     3515425 :

           # of internally routed nets........ :     3094545 :

           # of nets with no loads............ :      420880 :

       # of routable nets..................... :     2690390 :

           # of fully routed nets............. :     2492302 :

       # of nets with routing errors.......... :      198088 :

           # of nets with resource conflicts.. :      198088 :

   ------------------------------------------- : ----------- :

 

what does "nets with no loads mean?"

Is it that Vivado couldnt route these nets and therefore they have no load ?

Or does it mean that there are logic issues in the design i.e., there are dangling (unused) nets and ports ?

 

If it means the former, then would these nets have loads when routing is successful and all the nets are routed?

If it means the latter, then is there is an option in Vivado synthesis/optimization to remove all these dangling nets and driver logic. I am pretty sure Vivado synthesis does a proper job at constant propagation and logic optimization but I just want to be sure.

0 Kudos
2 Replies
vemulad
Xilinx Employee
Xilinx Employee
1,444 Views
Registered: ‎09-20-2012

Hi @kvsarmaj

 

load less nets are not the reason for the route error. You have to look at nets with routing errors, see below.

 

       # of nets with routing errors.......... :      198088 :

           # of nets with resource conflicts.. :      198088 :

 

Please check the vivado implementation log for congestion related warnings. If the design is indeed congested, you will need to follow the techniques from AR https://www.xilinx.com/support/answers/66314.html

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos
kvsarmaj
Visitor
Visitor
1,438 Views
Registered: ‎12-25-2017

@vemulad,

 

Sure. We are trying to use some of the techniques listed in that AR for routing issues.

 

But I wanted to understand how to read the log. When Vivado says "x number of nets have no loads", is it indicative of an RTL issue? I expected Synthesis and logic optimization stages to iron out any dangling ports, constants and unused logic. Can that be expected of Vivado?

 

To put it in other terms, does "nets with no loads" indicate that some part of RTL has logic which drives nothing and has been preserved by Vivado for some reason? We do not use dont_touch attribute in any of our code. Hence this doubt about Vivado synthesis and implementation.

0 Kudos