Synthesis & Logic Optimization · All levels

Timing-Driven Synthesis: Software / Programmer View

Software / Programmer View for Timing-Driven Synthesis.

RTL / implementation view

Coding style controls expression sharing, operator shape, and mapping freedom.

What designers feel

  • QoR sensitivity to small RTL edits

  • Unexpected retiming blockers

  • Clock-gating mismatch

RTL structure impact

  • Pipeline boundaries

  • Enable semantics

  • Hierarchy and attributes

Synthesis interaction

  • Compile effort knobs

  • Retiming permissions

  • Preserve policy scope

RTL-side mitigations

  • Constraint/code co-review

  • Stable naming for ECO

  • Formal-first posture

diagram
RTL -> synthesis check for Timing-Driven Synthesis
// verify mapping intent before compile signoff

Layer the designer touches

diagram
SYNTHESIS OWNERSHIP LAYERS — Timing-Driven Synthesis

layer               owns                          failure mode
----------------    ---------------------------   -------------------------
constraints         clocks/exceptions/policy      fake QoR optimism
mapping             cell choices/structure        depth/fanout regressions
optimization        timing/power tradeoffs        one-metric overfitting
physical-aware      topo/congestion estimates     handoff delta surprises
closure             ECO order/regression          fixes break other corners

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