ExpertQuestion 119 of 121Source: Synopsys ICC2 Implementation User Guide: Routing

After routing, ICC2 and PrimeTime with StarRC disagree on slack. Where do you look?

From PDVerse PnR Interview Handbook · pdVerse Mentor Guide

Short Answer

Compare the same path in both tools and find the first stage where they differ, then check the settings that feed it: extraction engine and corner, signal integrity settings, derates and variation, pessimism removal, clock propagation, scenario setup and missing annotations. The goal is to make the two agree, then fix in whichever tool matches signoff. A difference is almost always a setup difference, not a bug.

Technical Reference DiagramAfter routing, ICC2 and PrimeTime with StarRC disagree on slack. Where do you look?
Side-by-side checklist of mismatch sources between ICC2 and PrimeTime: extraction, SI settings, derates and variation, CRPR, clock propagation, scenarios and annotation, with the symptom and the check for each.

Technical Explanation

  • Pick one path that differs and report it in both tools with the same launch and capture points. Compare cell by cell and net by net until the numbers split. That tells you whether the difference is in cell delay, net delay, clock or constraints.
  • Extraction: ICC2 extracts internally while signoff uses StarRC. Different corners, missing coupling, or a different technology file shows up as net delay differences.
  • Signal integrity: if one tool has crosstalk analysis on and the other does not, or they use different SI settings, delta delay differs.
  • Derates and variation: different OCV derates, AOCV tables or POCV settings change every stage.
  • Clock handling: clock reconvergence pessimism removal (CRPR) enabled in one tool and not the other, or ideal clocks in one, shifts slack on every path through shared clock branches.
  • Scenarios: a mode or corner defined differently, or different case analysis, changes which paths even exist.
  • Annotation: nets that have no parasitics in the timing run fall back to estimates, so check the signoff tool's annotation report. In ICC2, check_consistency_settings, set up first with set_consistency_settings_options, compares ICC2 settings with one target tool per run, such as PrimeTime with -tool pt, and reports each setting that differs from the recommended one.

What To Check

  • The same path reported in both tools, compared stage by stage.
  • Corner, extraction source and SI setting in each tool.
  • Derate, variation and CRPR settings.
  • Parasitic annotation coverage in PrimeTime.
  • check_timing in each tool for unconstrained or unclocked paths.

Command Checks & Actions

ICC2check_consistency_settings -tool pt

In ICC2, checks timing settings against PrimeTime for consistency.

ICC2report_timing -from [get_pins u1/CK] -to [get_pins u9/D] -delay_type max -nets -crosstalk_delta

Reports the same path in ICC2 with net and crosstalk detail for comparison.

ICC2report_parasitics [get_nets n1]

Shows the R and C ICC2 has for a suspect net, to compare with the same net in the signoff SPEF.

ICC2check_timing

Finds unclocked or unconstrained paths that make slack incomparable.

Healthy, Suspicious & Hard-stop Results

  • Healthy (illustrative): The two tools agree within a few picoseconds on the worst paths, with settings documented as matching.
  • Suspicious (illustrative): A consistent offset on every path, which usually points to one global setting such as derates or CRPR.
  • Hard stop: Large, path-specific differences with unannotated nets or different scenarios, which make the comparison invalid until fixed.

Common Mistake

The Trap: Adding margin in ICC2 to cover the gap instead of finding it. The team over-constrains by 15 ps, route_opt over-fixes hundreds of paths and adds area and power, and the real cause, PrimeTime running with a stale SPEF from before the last ECO, is found two weeks later.

What The Interviewer Is Testing

  • Whether you debug by comparing one path stage by stage.
  • Do you know the common sources of mismatch?
  • A strong answer shows you correct the setup rather than paper over the gap.

Follow-up Question & Model Response

"If the difference is only in net delays, what is your next step?"

Candidate Model Response: Net-only differences point at parasitics or at how they are used. Check that both tools use the same corner and that PrimeTime has full annotation. Compare the extracted resistance and capacitance of one differing net between ICC2 and the StarRC SPEF. If the parasitics match, look at delay calculation settings and SI; if they do not match, look at the extraction setup, technology files and any nets changed after the SPEF was written.

Practical Example

Tapeout Scenario: ICC2 reports +4 ps on a path and PrimeTime reports -9 ps (illustrative). Stage by stage, cell delays agree within 1 ps, but three nets are 3 to 5 ps slower in PrimeTime. PrimeTime's annotation check shows 214 nets without annotation, including two of those three. The SPEF was written before a late buffer insertion. After re-extraction and a fresh timing update in both tools, which now include the inserted buffer, PrimeTime reports -1 ps and ICC2 +1 ps. The remaining 2 ps traces to CRPR being off in the PrimeTime scenario, and matching that setting brings them within 0.5 ps.

PnR Flow Mentor Guide

Read the complete 8-chapter PnR Flow Mentor Guide free on the web — library setup through placement, clock tree synthesis, routing, chip finishing, hierarchical implementation, and ECO, all the way to stream-out.

PnR Flow Physical Design Mentor Guide — eight chaptersPnR Flow Mentor GuideEight chapters, library setup through to stream-out. →