Synthesis & Logic Optimization · All levels

Timing-Driven Synthesis: Expanded Case Study

Expanded Case Study for Timing-Driven Synthesis.

Extended case study

Closure review: critical path WNS, violating endpoint count, compile effort distribution regressed after a change touching Timing-Driven Synthesis.

Background

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

Symptoms observed

  • critical path WNS, violating endpoint count, compile effort distribution 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 Timing-Driven Synthesis: Timing-driven compile focuses optimization where slack is most constrained, balancing global QoR instead of over-optimizing non-critical logic.

Fix and validation

  • Targeted synthesis tweak with audit trail

  • Re-run critical range report, path-group WNS report, effort histogram

  • Update dashboard and handoff notes

Lessons learned

  • Compare like-for-like runs only

  • Assign clear owner before ECO

  • Keep rollback ready

diagram
CASE STUDY — Timing-Driven Synthesis
baseline / regression / recovery QoR snapshot

Sequence under stress

diagram
SYNTHESIS FLOW — Timing-Driven Synthesis

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

Primary metric: critical path WNS, violating endpoint count, compile effort distribution

Synthesis deep dive

Mapping converts logic intent into real PPA outcomes.

Concept diagram

diagram
MAPPING LOOP

boolean net -> library mapping -> optimization -> report and iterate

Metric graph

diagram
MAPPING IMPACT

depth reduction   ███████
fanout cleanup    █████
runtime overhead  ███

Reports and artifacts

  • mapping summary

  • critical path cell list

  • fanout/slew report

  • library coverage

Mini case study

Cell-heavy critical path improved after restructuring, while blanket buffering had worsened power.

Debug branches

  • Depth issue -> structure

  • Fanout issue -> buffers

  • Library mismatch -> view audit

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

Timing-driven compile focuses optimization where slack is most constrained, balancing global QoR instead of over-optimizing non-critical logic.

Metric: critical path WNS, violating endpoint count, compile effort distribution