What does check_timing check at this stage?
From PDVerse PnR Interview Handbook, part of the pdVerse Mentor Guide
Short Answer
check_timing is not a timing-quality check (it doesn't report slack) โ it's a setup/coverage health check that runs before you should trust any slack numbers at all. It looks specifically for missing or inconsistent timing intent: clock pins with no clock reaching them ("no-clock" points), output/register endpoints that never got constrained (unconstrained endpoints), timing loops (combinational cycles that break static analysis), and generated-clock definition problems (a derived clock missing its source or divide-by relationship).
Technical Explanation
- " โ those are two completely different questions, and skipping this one means any slack report you look at afterward could be silently wrong or incomplete.
- A common trap: a design can report zero violations in a timing summary simply because huge chunks of it were never actually constrained โ
check_timingis what catches that, a slack report by itself won't. - Practically, review every category
check_timingflags (there are several selectable categories beyond the four above) before you start trusting or optimizing against any timing numbers โ celebrating "clean timing" without running this first is a classic beginner mistake.
Visual Verification
The check_timing utility audits the design for missing clock definitions, unconstrained endpoints, timing loops, and unexpanded generated clocks before running timing optimization.
What To Check
- Warning sign: Ordinary timing reports look clean because problematic paths never entered analysis.
- Inspect: Start with one named object in the report and trace it to the netlist, library, or SDC statement that created it.
- Correct: Run defaults first, add relevant named checks deliberately, classify every finding, and rerun after correction.
Command Checks & Actions
check_timing: finds missing or inconsistent timing setupcheck_timing-include {no_clock unconstrained_endpoints loops}: finds missing or inconsistent timing setup
Run the commands in order. Each line answers a separate part of the check.
Healthy, Suspicious & Hard-stop Results
- Expected: It diagnoses missing or inconsistent timing setup such as no-clock points, unconstrained endpoints, loops, generated-clock issues, and other selected categories.
- Stop before floorplanning when required logic or timing coverage is missing or unexplained.
Common Mistake
The Trap: Do not assume the check passed just because ICC2 continued. Fix or narrowly justify the named objects, then rerun the same command.
What The Interviewer Is Testing
Be ready to explain why this matters before floorplanning.
PnR Flow Mentor Guide
Master the Physical Design Implementation Flow
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.

Continue practising