What is a basic low-power verification check (e.g. check_mv_design), and what is it looking for?
From PDVerse Low-Power Physical Design Mentor Guide, part of the pdVerse Mentor Guide
Short Answer
check_mv_design (ICC2) checks the netlist against the UPF and reports electrical mistakes. By default it looks for missing level shifters and isolation cells, strategies that disagree with the power state table, and supply and PG-pin rule problems. PG-net and PG-connection checks, such as supply nets without a voltage, run only when you add -pg_netlist or -all.
Technical Explanation
- It runs rule sections in turn: power domain, supply set, supply net, isolation cell and more, each reporting errors and warnings.
- Missing cells: crossings that need a level shifter or isolation cell and have none are reported, even if insertion was skipped on purpose.
- Supply voltages: every supply net needs an operating voltage. A missing one is UPF-057;
check_mv_design -pg_netlist(ICC2) checks for it. - Strategy vs PST: isolation insertion follows
set_isolation(UPF) only, not the power state table. Mismatches between the two show up here. - Run it after
create_mv_cells(ICC2) and again after placement, optimization and routing, because each step can add a new violation. - Use
-isolationor-pg_pinto narrow the run while debugging one area.
# [ICC2] icc2_shell
create_mv_cells
check_mv_design
check_mv_design -isolation
check_mv_design -pg_netlist
report_mv_path -cell U_COP/DATA_UPF_ISOWhat To Check
- Zero errors in every rule section.
- Every warning read and explained, not just counted.
- All supply nets carry an operating voltage.
- The run repeats after each major flow step.
Command Checks & Actions
create_mv_cellsInsert the isolation and level-shifter cells the strategies ask for
check_mv_designDefault electrical check against the UPF (PG-net checks need -pg_netlist)
check_mv_design -isolationCheck isolation strategy and isolation cell rules only
check_mv_design -pg_netlistConfirm every supply net has an operating voltage
report_mv_path -cell U_COP/DATA_UPF_ISOExplain one flagged cell: supply, strategy, drivers and loads
Healthy, Suspicious & Hard-stop Results
- Healthy (illustrative): Every rule section prints "No errors or warnings."
- Suspicious (illustrative): An MV-071 warning: an isolation cell not associated with any isolation strategy.
- Hard stop: A missing isolation or level-shifter error, or UPF-057 on a supply net.
Common Mistake
The Trap: Running check_mv_design (ICC2) once at the end of the flow and calling it done.
- Violations added during optimization or ECO, such as a new port without isolation, reach tapeout unseen.
What The Interviewer Is Testing
- Do you know what the check covers and when to run it?
- Can you tell a warning to explain from an error that blocks signoff?
Follow-up Question & Model Response
"If you skip isolation insertion with an app option, does check_mv_design stay quiet?"
Candidate Model Response: No. Skipping insertion only stops the tool from adding the cells. The check still reports the missing isolation as an error for every electrical violation. The exceptions are level-shifter cases that the strategy itself forbids, such as -no_shift; those come out as warnings. So you cannot hide a real violation by switching off insertion.
Practical Example
Design Scenario: (illustrative) In MYCHIP the power state table allows PD_COP off while PD_MYCHIP is on. After create_mv_cells (ICC2), check_mv_design (ICC2) reports the isolation rule section with one error on U_COP output irq_out, which has no strategy. All other sections are clean, so the one fix is a set_isolation (UPF) strategy on that port.
Low-Power & UPF Handbook
Master Low-Power VLSI & Multivoltage Design
Read the complete low-power guide library covering power domains, level shifters, isolation clamps, state retention, and UPF signoff verification.
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