IntermediateQuestion 59 of 60Source: Synopsys IC Compiler II Implementation User Guide: RedHawk and RedHawk-SC Fusion (Voltage Driven Power Switch Cell Sizing)

How do you size power-switch cells against an IR-drop target?

From PDVerse Low-Power Physical Design Mentor Guide · pdVerse Mentor Guide

Short Answer

Run a voltage-drop analysis with RedHawk Fusion, give each switch cell its on-resistance with set_power_switch_resistance (ICC2), then run size_power_switches -max_irdrop (ICC2) with your drop target. The tool swaps switches for same-footprint cells of a different Vt to meet the target, and skips any switch it cannot improve. You trade drop against switch leakage and area, so check both after the swap.

Technical Reference DiagramHow do you size power-switch cells against an IR-drop target?
Two binned IR-drop maps of the PD_COP voltage area before and after size_power_switches (ICC2): before, 12 central bins over the 50 mV target in red with worst 68 mV; after, no red bins with worst 44 mV; neutral-to-blue legend and the caption simplified map; real tools use a multi-color scale.

Technical Explanation

  • What sets the drop: switches work in parallel, so drop is roughly domain current times single-switch Ron divided by switch count, plus the grid drop after them.
  • Trade-off: lower Ron cuts drop but costs area and off-state leakage; a higher-Vt switch leaks less but conducts worse.
  • Step 1: run analyze_rail -voltage_drop (ICC2) to get the worst drop on cells powered through each switch.
  • Step 2: set each candidate cell Ron from the switch model file with set_power_switch_resistance (ICC2).
  • Step 3: size_power_switches -max_irdrop 0.05 (ICC2) swaps cells to meet the target; the guide example prints -max_irdop, so check the man page for your release.
  • Limits: swaps only between cells with the same footprint and pin shapes; if no cell meets the target and Ron, that switch is left alone.
  • What breaks: too much drop across the switches slows every cell in the domain, so timing signed off at nominal voltage fails in silicon.
# [ICC2]  icc2_shell
analyze_rail -voltage_drop static -nets {VDD1p0_SW VSS}
set_power_switch_resistance HEADER_HVT_X4 0.015
set_power_switch_resistance HEADER_SVT_X4 0.010
report_power_switch_resistance -verbose
size_power_switches -max_irdrop 0.05
analyze_rail -voltage_drop static -nets {VDD1p0_SW VSS}

What To Check

  • Worst drop behind the PD_COP switches before and after sizing, against the 50 mV target.
  • Every switch cell in use has a Ron in report_power_switch_resistance -verbose (ICC2).
  • How many switches the tool left alone because no same-footprint cell fit.
  • Switch-off leakage after any swap to a lower-Vt cell.

Command Checks & Actions

ICC2 (icc2_shell)analyze_rail -voltage_drop static -nets {VDD1p0_SW VSS}

Get the voltage drop map behind the switches

ICC2 (icc2_shell)set_power_switch_resistance HEADER_HVT_X4 0.015

Set the Ron the sizing step uses for a switch cell

ICC2 (icc2_shell)report_power_switch_resistance -verbose

List switch cells with Ron, footprint groups and instance counts

ICC2 (icc2_shell)size_power_switches -max_irdrop 0.05

Swap switch cells to meet the maximum drop target (check the man page for your release)

Healthy, Suspicious & Hard-stop Results

  • Healthy (illustrative): Worst drop behind PD_COP falls from 68 mV to 44 mV against a 50 mV target.
  • Suspicious (illustrative): Target met, but 60 switches moved to a lower-Vt cell and switch-off leakage rose 30%; check the standby budget.
  • Hard stop: Drop stays at 68 mV because most switches were left alone: no same-footprint cell meets the target, so the array itself must change.

Common Mistake

The Trap: Running size_power_switches (ICC2) before setting Ron values for the candidate switch cells.

  • The tool has no Ron to judge candidates by, so the swap does not do what you intended and the drop stays over budget.

What The Interviewer Is Testing

  • Do you know the three-step flow and which step needs RedHawk Fusion?
  • Can you explain the Ron versus leakage trade-off?

Follow-up Question & Model Response

"What if sizing cannot meet the target?"

Candidate Model Response: Then swapping Vt within one footprint is not enough, and you change the array itself. Add switch columns, tighten the pitch, or move to a larger drive footprint, then rerun the drop analysis. Check wake-up rush current too, because more or stronger switches turn on harder. The daisy chain may need more stages to keep the rush inside budget.

Practical Example

Design Scenario: (illustrative) PD_COP draws its peak current through 420 HEADER_HVT_X4 switches with Ron set to 0.015 in library units. analyze_rail -voltage_drop static (ICC2) shows 68 mV worst drop near the centre of the voltage area against a 50 mV target. After setting Ron for the HVT and SVT versions of that footprint and running size_power_switches -max_irdrop 0.05 (ICC2), 60 central switches become HEADER_SVT_X4 and the worst drop falls to 44 mV. Switch-off leakage rises from 0.20 mW to 0.26 mW. Cell names and values are illustrative.

Low-Power & UPF Handbook

Read the complete low-power guide library covering power domains, level shifters, isolation clamps, state retention, and UPF signoff verification.

Low-Power VLSI & UPF Handbook — nine chaptersLow-Power & UPFDomains, isolation, retention, and multivoltage UPF. →