BeginnerQuestion 79 of 187

How are clock tree DRC constraints different from clock tree timing constraints, and why does CTS need both?

From PDVerse PnR Interview Handbook, part of the pdVerse Mentor Guide

Short Answer

Timing constraints (setup/hold via skew and latency) ask whether the clock arrives at the right time at every register. DRC constraints (max transition, max capacitance, max fanout) ask whether every individual clock net is electrically sound, independent of when it arrives. A tree can be timing-clean and DRC-broken, or DRC-clean and timing-broken -- they're genuinely separate axes CTS has to satisfy simultaneously.

Technical Reference DiagramHow are clock tree DRC constraints different from clock tree timing constraints, and why does CTS need both?

Technical Explanation

  • Timing constraints (setup/hold via skew and latency) ask whether the clock arrives at the right time at every register.
  • DRC constraints (max transition, max capacitance, max fanout) ask whether every individual clock net is electrically sound, independent of when it arrives.
  • A tree can be timing-clean and DRC-broken, or DRC-clean and timing-broken -- passing one check says nothing about the other.
  • CTS has to satisfy both simultaneously, which is why report_timing and report_constraint are separate commands checking separate things, not two views of the same result.

Common Mistake

The Trap: Assuming a timing-clean clock tree is automatically electrically sound, or vice versa -- they're separate constraint classes that both need explicit checking.

Follow-up Question & Model Response

"Which of the two -- timing or DRC -- would you check first when debugging a clock tree problem, and why?"

Candidate Model Response: Timing first, generally -- because a DRC-clean but timing-broken tree at least tells you where the real skew/latency problem is, while a timing-clean-looking report can be hiding an electrical DRC issue that report_timing was never going to surface in the first place.

Practical Example

Tapeout Scenario: A clock tree closes setup and hold cleanly across every corner, but a max-capacitance violation on one clock net (a DRC constraint, not a timing one) is still a real defect that has to be fixed before signoff.

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.

Offline PDF Bundle

Want all 1109 questions offline?

Get the complete 4-book PDF bundle (PnR, STA, MMMC, Low Power) with a clickable table of contents - no ads, no internet needed.

See what's inside the bundle
PnR Flow Physical Design Mentor Guide โ€” eight chaptersPnR Flow Mentor GuideEight chapters, library setup through to stream-out.