IntermediateQuestion 8 of 222

What does UPF contain, and why is it separate from the netlist?

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

Last updated:

Short Answer

UPF captures power intent, not connectivity — which logic belongs to which power domain, how supplies and power states are modeled, and what protection strategies (isolation, retention) are required. When a power-gated block shuts off, its outputs can float to invalid values, so neighboring always-on logic needs isolation cells; a crossing between two different voltage domains needs a level shifter; registers that must remember their state through a shutdown need retention.

Technical Reference DiagramWhat does UPF contain, and why is it separate from the netlist?

Technical Explanation

  • UPF captures power intent, not connectivity — which logic belongs to which power domain, how supplies and power states are modeled, and what protection strategies (isolation, retention) are required.
  • When a power-gated block shuts off, its outputs can float to invalid values, so neighboring always-on logic needs isolation cells; a crossing between two different voltage domains needs a level shifter; registers that must remember their state through a shutdown need retention.
  • A net literally named "VDD" in the netlist tells you nothing about the actual shutdown sequence or isolation policy — that behavioral intent lives only in UPF, describing domains, supply relationships, power states, and the specific strategies attached to them.
  • The physical voltage area and power grid have to agree with this intent, but a voltage area isn't just a rebranded power domain — always verify that strategies actually bind to the objects they're supposed to, that power/ground conflicts are resolved, and that the UPF loaded with the correct scope; a file that loads without error but the wrong scope can quietly describe a different design than you intended.

Command Checks & Actions

ICC2load_upf block.upf

Loads the power intent -- domains, supply nets, isolation, level-shifter, and retention strategies -- as data kept separate from the netlist itself.

ICC2commit_upf

Commits the power intent and runs the global consistency checks. Most UPF-to-netlist mismatches surface at exactly this step, not at load_upf.

ICC2check_mv_design

Verifies there are no multivoltage violations after the power intent is committed, the direct legality check for a UPF-driven design.

Common Mistake

The Trap: Assuming isolation and level shifting are interchangeable, or inserting cells without checking the receiving supply and power states.

Follow-up Question & Model Response

"Can a single-voltage design need UPF?"

Candidate Model Response: Yes, for example when power gating or retention is modeled, even if active domains share a nominal voltage.

Practical Example

Tapeout Scenario: If a switchable accelerator drives an always-on controller, isolation may hold the interface at a defined value during shutdown. Level shifting addresses voltage compatibility; it does not automatically provide the required shutdown clamp.

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
Low-Power VLSI & UPF Handbook — nine chaptersLow-Power & UPFDomains, isolation, retention, and multivoltage UPF.