What is the difference between graph-based analysis (GBA) and path-based analysis (PBA)?
From PDVerse STA Mentor Guide · pdVerse Mentor Guide
Explanation
GBA keeps a single worst-case slew at each node in the timing graph and reuses that same value for every path passing through it — fast to compute, but pessimistic, since it can penalize a fast path with a slow, unrelated path's slew. PBA re-times each path individually using its own actual slews along the way — more accurate, but more computationally expensive since it can't be shared across paths.
Timing-path Walkthrough
In the example, path P1 arrives at gate G with a slew of 40 ps and path P2 arrives with a slow slew of 95 ps. GBA uses the worst slew, 95 ps, for both paths, over-penalizing P1 by lending it an unrelated slow path's slew it never actually experienced. PBA instead retimes each path with its real slew — P1 with 40 ps, P2 with 95 ps — giving an accurate result for each.
Expected Report Behavior
A path that fails under GBA may show significantly better (even passing) slack when reanalyzed under PBA, because the pessimistic shared worst-case slew is replaced with the path's actual slew.
Mentor Note — Common Mistake
Treating a GBA-reported violation as necessarily a real silicon failure without rechecking it under PBA, which can reveal the violation was an artifact of GBA's pessimism.
How To Debug
For suspiciously bad GBA slack, re-run PBA on that specific path to see whether the violation persists with the path's true, individually-timed slews.
Continue learning free
Get a practical low-power chapter
Receive the existing “Low Power and Multivoltage Fundamentals” PDF chapter and its download link by email.
Continue practising