STA Mastery · All levels

Graph Traversal & Slack: Theory Deep Dive

Theory Deep Dive for Graph Traversal & Slack.

Foundational theory

Graph Traversal & Slack is central to Delay Graph & Path Analysis. STA builds a timing graph of cell and net arcs; setup slack = required time − arrival time along the worst path. Senior STA engineers always tie slack movement to corner, mode, constraint set, and parasitic view — not just a single report line.

Core concepts explained

  • STA builds a timing graph of cell and net arcs; setup slack = required time − arrival time along the worst path.

  • Primary metric: WNS, TNS, path slack distribution, failing endpoint count

  • Primary artifact: report_timing -path_type full, slack histogram, path schematic

  • Owners: STA owner, implementation owner

  • Setup: max delay path; Hold: min delay path

  • WNS/TNS summarize tail risk across endpoints

Why this matters at signoff

At signoff, Graph Traversal & Slack failures block tapeout or force risky ECO. The timing graph turns netlist + parasitics + constraints into slack. Wrong analysis setup wastes weeks of PD effort.

Mental model

diagram
TIMING GRAPH

FF1 --cell--> U1 --net--> U2 --cell--> FF2
 |                                      |
 launch point                           capture point

STA walks worst path (max delay for setup, min for hold).

Worked intuition

  1. Name corner, mode, and view for the failing run.

  2. Open WNS, TNS, path slack distribution, failing endpoint count and identify worst path group.

  3. Read critical path: cell vs net, launch/capture clocks.

  4. Check constraints on that path (exceptions, generated clocks).

  5. Collect report_timing -path_type full, slack histogram, path schematic and tag database versions.

  6. Classify: constraint bug, view mismatch, or real path.

  7. Propose minimal ECO and list MMMC+SI regression.

Common misconceptions

  • One typical corner is enough for signoff.

  • False paths can be applied broadly to green-wash violations.

  • Implementation WNS equals signoff WNS without view mapping.

  • Setup fix automatically preserves hold.

Visual reinforcement

Timing graph arcs

diagram
TIMING GRAPH

FF1 --cell--> U1 --net--> U2 --cell--> FF2
 |                                      |
 launch point                           capture point

STA walks worst path (max delay for setup, min for hold).

Slack distribution

diagram
SLACK HISTOGRAM

paths
  |        *
  |      ****
  |    ********
  |  *************  <- WNS (left tail)
  +--------------------> slack (ns)
   -0.2  0.0  0.2

WNS = worst negative slack (most critical failing path).

Layer responsibilities

diagram
STA OWNERSHIP LAYERS — Graph Traversal & Slack

layer              owns                         failure mode
----------------   --------------------------   ---------------------
constraints        clocks, IO, exceptions       false violations
implementation     cells, nets, placement       real path delay
extraction         SPEF/RC corners              view mismatch
signoff policy     derate, MMMC matrix          margin disputes
closure           ECO order, regression        fix breaks other corner

STA deep dive

Slack is a path story — read the graph, not just the number.

Concept diagram

diagram
TIMING GRAPH

FF --cell-- logic --net-- logic --cell-- FF
launch                              capture

Metric graph

diagram
SLACK TAIL

paths |    ***
      |  *******
      |*********  <- fix WNS first

Reports and artifacts

  • WNS/TNS

  • path slack histogram

  • cell vs net %

  • path group summary

Mini case study

WNS -90ps but 80% net delay on one congested route — PD route fix beat upsizing three cells.

Debug branches

  • Cell-heavy -> sizing/VT

  • Net-heavy -> route/layer

  • Check launch/capture clocks

Senior review question

Ask: what corner/mode/view proves this topic is closed or failing?

Key takeaways

  • State corner, mode, view, and database tag with every slack claim.

  • Run setup and hold plus MMMC regression after every ECO.

Common pitfalls

  • Comparing STA runs with different SPEF or SDC tags.

  • Broad false_path to green-wash violations.

  • Setup-only ECO without hold check.

Theory reinforcement

The timing graph turns netlist + parasitics + constraints into slack.