AdvancedQuestion 61 of 63Source: Synopsys PrimeTime User Guide: ECO Fix Verification Scope and MCMM Signoff Re-Run

Why does an ECO verified at one corner still need a full MCMM re-run before signoff?

From PDVerse STA Mentor Guide · pdVerse Mentor Guide

Short Answer

A PrimeTime ECO fix is verified against the single scenario it was computed in, using estimated parasitics for anything not yet physically routed, so it only proves the fix works under that one corner and that one estimate. Signoff needs every scenario in the full MCMM matrix re-checked with the real, post-implementation parasitics, because a fix that clears the violation it targeted can create a new one elsewhere, or fail to hold once the actual routed layout -- rather than the ECO tool's estimate -- is used.

Technical Reference DiagramWhy does an ECO verified at one corner still need a full MCMM re-run before signoff?
Two signoff passes shown for the same ECO buffer insertion: an immediate multi-corner check using estimated parasitics all showing green, and a later multi-corner check using real extracted parasitics revealing a new DRC violation on one corner.

Technical Explanation

fix_eco_timing (PT) computes its proposed fix using the timing scenario currently loaded and whatever parasitic estimate is available at ECO time -- for a new buffer or a net not yet physically routed, this estimate is necessarily a placeholder, not measured data.

  • A fix that clears a violation at one corner does not automatically clear it at every other corner in the signoff matrix, since the delay math behind the fix -- how much a resize helps, how much a buffer adds -- can vary with the PVT and SPEF corner the way any other cell or net delay does.
  • A fix that adds delay to close a hold violation on one path can simultaneously reduce setup margin on that same path, or on a different path sharing the same net or cell, if the ECO method wasn't scoped tightly enough -- something the single scenario used for the fix may not reveal.
  • Once the physical implementation tool places and routes the actual netlist change, the real parasitics on the new or modified nets can differ from the ECO-time estimate, sometimes enough to shift the fix from clearing the violation to falling just short of it.
  • Full multi-corner re-verification also re-runs any DRC-style checks such as max transition or max capacitance that the ECO fix might have affected, since a resized cell's new drive strength or a new buffer's insertion point changes loads on adjacent nets that the timing-only fix check doesn't examine.
  • Because ECOs are often applied late in the schedule under time pressure, skipping full re-verification to save a signoff cycle is the single most common way an ECO that passed during the fix session turns into a new violation discovered after tapeout is already scheduled.

Common Mistake

The Trap: re-running STA only at the corner and scenario where the original violation was found, since that's the one the ECO explicitly targeted, and treating a clean result there as sufficient signoff evidence.

  • Consequence: a fix verified only at its original corner can leave a new or worsened violation undetected at a different corner in the signoff matrix -- the exact failure mode full MCMM re-verification exists to catch, and skipping it defeats the purpose of having a multi-corner signoff matrix in the first place.

Follow-up Question & Model Response

If an ECO is applied and re-verified at every corner but still uses estimated, not final, parasitics for the changed nets, is that verification actually trustworthy?

Candidate Model Response: Re-verifying at every corner with the same estimated parasitics catches any corner-specific interaction the fix introduces, but it does not catch an error in the parasitic estimate itself, which is a separate risk. The fully trustworthy signoff step is re-verification after the physical implementation tool has actually placed and routed the ECO's netlist change and produced real, extracted parasitics for the new or modified nets, not the ECO tool's placeholder estimate. Many flows do both: an immediate multi-corner check with estimated parasitics to catch gross interaction problems quickly, followed by a final multi-corner check with extracted parasitics once the physical tool has processed the change, before the ECO is considered closed. Treating the estimated-parasitics pass as the final word skips exactly the gap between an ECO tool's model and the design's actual physical implementation.

Practical Example

An ECO inserting a buffer to fix a hold violation at the ssg-0.72V-125C corner is re-verified across all 12 signoff scenarios using estimated parasitics immediately after the fix, confirming no new violation at any corner. Two days later, after the physical implementation tool places and routes the new buffer, the design is re-verified again with real extracted parasitics; this second pass reveals the new buffer's actual net, routed 40% longer than the ECO tool's estimate assumed, creates a new max-transition DRC violation on its output that the estimated-parasitics pass never showed.

Complete STA Handbook

Get the complete 10-chapter STA handbook covering setup/hold margins, clock modeling, OCV/POCV, crosstalk noise, and PrimeTime closure.

Static Timing Analysis (STA) Handbook — ten chaptersSTA HandbookTen chapters on setup, hold, OCV, and PrimeTime signoff. →