ExpertQuestion 43 of 50Source: Synopsys PrimeTime User Guide: Power Analysis and Power Recovery (PrimePower); IEEE 1801 (UPF) concepts

How do you choose activity and corners for power signoff?

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

Short Answer

Match the activity source to the question you are answering: default toggle rates for early budgets, SAIF from realistic use-case simulation for average power, and a VCD window around the worst event for peak power. Then pick the corner that makes that number worst, which is the fast, high-voltage, hot corner for leakage and the highest mode voltage for dynamic power.

Technical Reference DiagramHow do you choose activity and corners for power signoff?
Tree from the question being answered to activity source and corner: floorplan budget leads to default toggle rates (520 mW), battery signoff to SAIF from a 10 ms 1080p recording (410 mW at 0.9 V), package peak to a 2 µs VCD window (1.3 W), and leakage to the FF, 0.99 V, 125 °C corner (140 mW versus 35 mW typical).

Technical Explanation

  • Default or vectorless activity: available before testbenches exist and fine for floorplan budgets, but it can be far off on real workloads.
  • SAIF: toggle counts and static probabilities per net over a simulation; the right input for average power in a named use case.
  • VCD: cycle-by-cycle value changes; needed for peak and time-based power, and it captures glitches when the gate-level run is timed.
  • Use-case coverage: simulate modes the product actually spends time in, such as idle, video and boot, and weight them by duty cycle for battery life.
  • Corners: leakage rises steeply with temperature and voltage, so FF, high voltage and hot bound it; dynamic power scales with V squared.
  • PrimePower flow: set_app_var power_enable_analysis true (PT), read_saif (PT) or read_vcd (PT), update_power (PT), then report_power (PT).
  • What breaks: a signoff number from default toggle rates or one short directed test cannot be defended, and thermal or battery budgets fail later.
# [PrimeTime]  pt_shell
set_app_var power_enable_analysis true
read_saif video_1080p.saif
update_power
report_power

What To Check

  • Each reported number names its purpose (budget, average or peak) and its activity source.
  • SAIF annotation covers nearly all registers and clock nets; the rest fall back to default rates.
  • Use cases are weighted by the time the product spends in them.
  • Each number uses its own worst corner: FF, high voltage, hot for leakage; the mode's highest voltage for dynamic.

Command Checks & Actions

PrimeTime (pt_shell)set_app_var power_enable_analysis true

Enable PrimePower analysis in the PT session

PrimeTime (pt_shell)read_saif video_1080p.saif

Annotate average switching activity from the use-case simulation

PrimeTime (pt_shell)read_vcd frame_start_peak.vcd

Annotate time-based activity for the peak-power window

PrimeTime (pt_shell)update_power

Run the power analysis with the annotated activity

PrimeTime (pt_shell)report_power

Report internal, switching and leakage power

Healthy, Suspicious & Hard-stop Results

  • Healthy (illustrative): Video use case: 410 mW average from SAIF, 97% of nets annotated, at the 0.9 V mode voltage.
  • Suspicious (illustrative): Only 70% of nets annotated, so almost a third of the design runs on default toggle rates.
  • Hard stop: The signoff number comes from default toggle rates, or leakage was reported only at the typical 25 °C corner.

Common Mistake

The Trap: Reporting power from one short directed test and calling it the signoff number.

  • A short test drives a few blocks hard and leaves others idle, so the average is wrong in either direction, and the battery and thermal budgets are built on it.

What The Interviewer Is Testing

  • Do you match activity format to the question: budget, average or peak?
  • Do you know which corner is worst for leakage and which for dynamic power?

Follow-up Question & Model Response

"Why not use one long VCD for everything?"

Candidate Model Response: A VCD from a long gate-level run is huge and slow to read, and for average power it adds little over a SAIF of the same run. A SAIF cannot give peak power, because it stores totals and probabilities rather than when each toggle happened. So you use SAIF for averages over long use cases and a short VCD window for the worst burst. The skill is choosing that window, usually from a power-over-time profile of a cheaper run.

Practical Example

Design Scenario: (illustrative) A camera SoC needs four numbers. The floorplan budget uses default toggle rates and gives 520 mW. Battery signoff uses SAIF from a 10 ms 1080p recording simulation with 97% of nets annotated and gives 410 mW average at 0.9 V. The package peak uses a 2 µs VCD window around the frame-start burst and gives 1.3 W. Leakage is 35 mW at the typical corner and 140 mW at FF, 0.99 V, 125 °C, and the thermal budget uses 140 mW.

Low-Power & UPF Handbook

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

VLSI Physical Design Planning Handbook — fourteen chaptersDesign PlanningFourteen chapters, floorplanning through timing budgets. →