What's the difference between single-rail and dual-rail isolation cells, and when is each used?
From PDVerse Low-Power Physical Design Mentor Guide · pdVerse Mentor Guide
Short Answer
A single-rail isolation cell has one power pin and runs from the rail of the domain it sits in, so it must sit where that rail stays on during shutdown. A dual-rail cell adds a backup power pin fed by an always-on supply, which lets it sit inside the domain that switches off and keep clamping. ICC2 picks between them from the cell rail information and the location of the strategy, and warns when the choice looks wrong.
Technical Explanation
- Single-rail: one power and one ground pin; placed in an always-on domain, such as the parent or the sink, and powered by that domain rail.
- Dual-rail: a primary pin on the local rail plus a backup pin on an always-on supply, so the clamp keeps working while the local rail is off.
- Location decides:
-location selfon a switchable domain puts the cell inside it and needs dual-rail;-location parentin an always-on parent usually allows single-rail. - Physical cost: a dual-rail cell inside a shutdown voltage area needs an always-on secondary strap nearby, plus placement constraints and routing for it.
- Automatic choice: ICC2 selects single- or dual-rail from library rail information and location;
use_interface_cell(UPF) can narrow the options. - Fallback: if only single-rail cells are available, ICC2 still inserts them in a shutdown region and issues a warning.
- Rail checks: ICC2 warns for a single-rail cell in a shutdown domain, or a dual-rail cell in a domain that is on more than the shutdown domain.
Common Mistake
The Trap: Ignoring the ICC2 warning about a single-rail isolation cell inside a shutdown domain.
- That cell draws power from the switched rail, so when the domain turns off the clamp turns off with it and the output floats into always-on logic.
- Either move the cell to an always-on location or map the strategy to a dual-rail cell with an always-on backup supply.
Follow-up Question & Model Response
"Why would you ever choose self location and pay for dual-rail cells?"
Candidate Model Response: Because it keeps all the boundary cells of a block inside its own voltage area, which suits hierarchical flows and hard IP delivered with its own UPF. The parent floorplan then needs no room for those isolation cells, and the block closes timing on its own boundary. The cost is an always-on secondary strap across the shutdown area and the larger dual-rail cells. For flat designs with space in the always-on region, parent location with single-rail cells is usually cheaper.
Practical Example
Design Scenario: (illustrative) PD_COP outputs go to PD_CPU and PD_MYCHIP. With -location parent, ISO_COP_OUT uses single-rail ISO_AND_X1 cells in PD_MYCHIP rows on VDD1p0. A reused accelerator block U_ACC arrives with -location self, so its 40 isolation cells are dual-rail ISO_AND_DR_X1 inside its shutdown voltage area, with the primary pin on the switched rail and the backup pin on a VDD1p0 strap every 30 um. When one ISO_AND_X1 lands inside U_ACC because the dual-rail cell was marked dont_use, ICC2 warns and the team fixes the library setting. Cell names and pitch are illustrative.
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.

Continue practising