• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Blogs
  2. Digital Design
  3. Five-Minute Tutorial: Fixing SI Victim Nets
Kari
Kari

Community Member

Blog Activity
Options
  • Subscribe by email
  • More
  • Cancel
CDNS - RequestDemo

Have a question? Need more information?

Contact Us
SI
EDI
SI victim nets
SI analysis
NanoRoute
encounter
victim nets
Signal Integrity
Digital Implementation
five minute

Five-Minute Tutorial: Fixing SI Victim Nets

18 May 2011 • 2 minute read

It's hard to believe there was a time when we didn't even run signal integrity analysis. It wasn't always a necessity at the larger nodes of several years ago, but it's absolutely essential in today's processes. So I'm sure every one of you out there has battled SI violations at some point. Today's tutorial will show you a quick and easy way to reroute some victim nets in EDI and get some of your SI issues under control.

Let's say you've run your SI analysis in EDI and you know that your violations are due to some victim nets that need to be rerouted away from aggressor nets. (How do you know this? You've either looked at the failing paths graphically and can see the long parallel runs of nets, or you've done a report_timing -net with the incremental delay column displayed, and you can see that the incremental delay is occurring on the net and not a cell.)

Once we know the names of the nets we want to fix, the rest is easy. For this example, imagine that nets named "net1" and "net2" are falling victim and contributing a large amount of incremental delay. So first we'll attach the "si_post_route_fix" attribute to these nets:

    setAttribute -net net1 -si_post_route_fix true
    setAttribute -net net2 -si_post_route_fix true

Next, we'll tell NanoRoute that we want to run in SIPostRouteFix mode:

    setNanoRouteMode -routeWithSiPostRouteFix true

If you have any other setNanoRouteMode variables that you always use, such as a max layer or double-cut via settings, go ahead and set those as well. Finally, we do the actual routing fix:

    globalDetailRoute

The nets in question (net1 and net2) will be rerouted so that they are not so parallel with other nets, thereby lessening the SI effect on them. You can re-extract and run timing again to see the improvement. I've had very good success with this method. It may not solve all of your SI problems, and there may be several issues causing any one path to fail SI timing, but this method should definitely be in your toolbox of SI fixes.

Bonus: I mentioned the "incremental delay" column in the timing report. How do you get that to show up? Add the incr_delay keyword to your report_timing format, as in this example:

    set_global report_timing_format {instance cell arc delay incr_delay arrival load slew fanout pin_location}

- Kari Summers


CDNS - RequestDemo

Try Cadence Software for your next design!

Free Trials

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information