Synthesis & Logic Optimization · All levels

Dont-Touch & Preserve Policy: Expanded Case Study

Expanded Case Study for Dont-Touch & Preserve Policy.

Extended case study

Closure review: preserved object count, blocked optimization opportunities, ECO rework regressed after a change touching Dont-Touch & Preserve Policy.

Background

Team previously had stable baseline across weekly compile runs and agreed guardbands.

Symptoms observed

  • preserved object count, blocked optimization opportunities, ECO rework moved beyond threshold

  • Mismatch between local and CI runs

  • Owner disagreement on first fix

Investigation timeline

  1. Hour 0: freeze manifests and compare run metadata

  2. Hour 1: isolate section/topic-specific failure pattern

  3. Hour 2: verify constraints and library view consistency

  4. Hour 3: inspect transform and mapping deltas

  5. Hour 4: choose one reversible fix

  6. Hour 5: execute full regression matrix

  7. Hour 6: publish closure memo and next actions

Root cause

Root cause centered on Dont-Touch & Preserve Policy: dont_touch and preserve are surgical controls; overuse blocks optimization and underuse breaks intended structures such as CDC wrappers or DFT hooks.

Fix and validation

  • Targeted synthesis tweak with audit trail

  • Re-run constraint audit, preserve list, optimization-block report

  • Update dashboard and handoff notes

Lessons learned

  • Compare like-for-like runs only

  • Assign clear owner before ECO

  • Keep rollback ready

diagram
CASE STUDY — Dont-Touch & Preserve Policy
baseline / regression / recovery QoR snapshot

Sequence under stress

diagram
SYNTHESIS FLOW — Dont-Touch & Preserve Policy

RTL + constraints
      |
      v
elaboration + checks
      |
      v
mapping + optimization
      |
      v
QoR reports (timing/area/power)
      |
      v
incremental ECO + regression

Primary metric: preserved object count, blocked optimization opportunities, ECO rework

Synthesis deep dive

Constraint hygiene determines whether synthesis QoR is trustworthy.

Concept diagram

diagram
CONSTRAINT FLOW

RTL intent -> synthesis SDC -> compile checks -> QoR dashboard -> review gate

Metric graph

diagram
QOR HEALTH

constraint lint pass   ███████████████
unconstrained count    ███
policy violations      ██

Reports and artifacts

  • compile QoR

  • unconstrained endpoints

  • constraint lint

  • policy audit log

Mini case study

Nightly WNS improved but unconstrained paths jumped; strict SDC lint restored true QoR picture.

Debug branches

  • Diff SDC first

  • Audit dont_touch scope

  • Track unconstrained trend weekly

Senior review question

Ask: what evidence proves this QoR move is real and stable?

Key takeaways

  • State exact run context (RTL, SDC, libs, switches) with every QoR claim.

  • Re-run timing, area, and power regressions after each synthesis ECO.

Common pitfalls

  • Comparing runs with mismatched constraints or library views.

  • Timing-only fixes that violate power or area budgets.

  • Skipping equivalence checks after structural changes.

Principal synthesis review addendum

dont_touch and preserve are surgical controls; overuse blocks optimization and underuse breaks intended structures such as CDC wrappers or DFT hooks.

Metric: preserved object count, blocked optimization opportunities, ECO rework