How do you find unit mismatches across SDC and libraries?
From PDVerse PnR Interview Handbook · pdVerse Mentor Guide
Short Answer
Compare ICC2 user units with Liberty declarations and the values expected by the STA handoff; inspect representative periods, slews, delays, and loads.
Technical Explanation
Treat this as a readiness check. It should produce named objects and a result that another engineer can repeat from the same handoff.
What To Check
• Warning sign: A 10 ns clock becomes 10 ps or a 20 fF load is treated as 20 pF. • Inspect: Compare one named object across the related reports; the same object should tell a consistent story. • Correct: Fix the declaration or conversion at the producing boundary, reload cleanly, and recheck sample values.
Command Checks & Actions
• report_user_units: shows the units ICC2 uses when reading and printing values
• report_clocks: shows clock definitions and relationships
• report_ports -design_rule [get_ports *]: shows boundary constraints and electrical assumptions
Run the commands in order. Each line answers a separate part of the check.Healthy, Suspicious & Hard-stop Results
• Expected: Compare ICC2 user units with Liberty declarations and the values expected by the STA handoff; inspect representative periods, slews, delays, and loads. • Investigate: A 10 ns clock becomes 10 ps or a 20 fF load is treated as 20 pF. • Stop before floorplanning when required logic or timing coverage is missing or unexplained. Fix the declaration or conversion at the producing boundary, reload cleanly, and recheck sample values.
Common Mistake
Do not assume the check passed just because ICC2 continued: A 10 ns clock becomes 10 ps or a 20 fF load is treated as 20 pF. 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: A 10 ns clock becomes 10 ps or a 20 fF load is treated as 20 pF.
Follow-up Question & Model Response
Model response: “I would save the report, inspect one affected object in the correct block and scenario, and make or request this correction: Fix the declaration or conversion at the producing boundary, reload cleanly, and recheck sample values. Then I would reopen the clean checkpoint and rerun the same evidence.”
Practical Example
Symptom: A 10 ns clock becomes 10 ps or a 20 fF load is treated as 20 pF. Corrective path: Fix the declaration or conversion at the producing boundary, reload cleanly, and recheck sample values.
Continue practising