IntermediateQuestion 17 of 20Source PDF page 51

How do you read the arc-by-arc breakdown in a report_timing output to find the dominant delay contributor?

From PDVerse STA Mentor Guide · pdVerse Mentor Guide

Explanation

report_timing prints a Point/Incr/Path table walking down the launch path arc by arc, showing each cell or net's incremental delay and the running cumulative total. To find the dominant contributor, scan the Incr column for the single largest jump rather than just looking at the final cumulative arrival time.

Timing-path Walkthrough

In the worked example: reg_a/Q (clk-to-Q) contributes 0.09, u1/Z (buffer) 0.12, u2/Z (logic) 0.31 — flagged as the big contributor — u3/Z (logic) 0.28, and reg_b/D (net) 0.07, giving a cumulative data arrival time of 0.87. Against a data required time of 0.93 (after clock skew +0.03, library setup −0.06, and uncertainty −0.04 are applied to the 1.00 capture edge), the slack comes out to +0.06, MET. The notes advise reading slack first: if it had instead FAILED, u2 at 0.31 would be the fix target.

Command

report_timing -delay_type max -transition_time -capacitance -input_pins nets

Switch-by-switch

-delay_type max: reports max-delay (setup-relevant) arcs. -transition_time: shows the slew at each point. -capacitance: shows the load at each point. -input_pins: shows input pin timing detail. -nets: includes net delays explicitly in the breakdown.

Expected Report Behavior

The Point/Incr/Path table shows per-arc cell/net delay, slew, and load down the path, ending in data arrival time, data required time, and a final slack line (MET or VIOLATED).

Mentor Note — Common Mistake

Fixating on the final cumulative arrival number instead of scanning each Incr value individually, missing that one specific arc (like u2/Z at 0.31) is the actual dominant contributor worth targeting.

How To Debug

Read the slack line first to know pass/fail, then scan the Incr column top to bottom for the largest single jump as the primary fix target, following up with -transition_time and capacitance to understand why that arc is slow.

Visual explanationSTA context: How do you read the arc-by-arc breakdown in a report_timing output to…
STA context: How do you read the arc-by-arc breakdown in a report_timing output to…A three-step concept map summarizes the focus, core answer, and practical verification for How do you read the arc-by-arc breakdown in a report_timing output to find the dominant delay contributor?Question focusHow do you read thearc-by-arc breakdown ina report_timing outputto…Core answerreport_timing prints aPoint/Incr/Path tablewalking down the launchpath arc by…Verify in practicereport_timing-delay_type max-transition_time-capacitance -input_pin…Understand → explain the mechanism → verify the assumptions

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.