STA Mastery · All levels

Graph Traversal & Slack: Mechanism

Mechanism for Graph Traversal & Slack.

Mechanism to understand

Mechanism for Graph Traversal & Slack focuses on WNS, TNS, path slack distribution, failing endpoint count. The goal is to connect the observable symptom to timing mechanism, ownership, and regression risk.

STA builds a timing graph of cell and net arcs; setup slack = required time − arrival time along the worst path. Think of STA as a signed contract between constraints, parasitics, and implementation — slack is the measurable outcome.

  • Identify launch and capture clocks on the failing path.

  • Identify path group: reg2reg, in2reg, reg2out, or async.

  • Identify whether setup, hold, or both fail in the scenario.

Layered view

diagram
STA CLOSURE FLOW — Graph Traversal & Slack

constraints (SDC)
        |
        v
timing graph (cell + net delays)
        |
        v
MMMC scenarios (corner x mode x view)
        |
        v
variation + SI adjustments
        |
        v
slack (WNS/TNS) -> ECO -> regression

Debug rule: always state corner, mode, view, and database tag with slack.

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.

Mechanism deep dive

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