ExpertQuestion 13 of 20Source PDF page 105

How is an always-on control network constructed, and what is the automatic inference rule for always-on cells?

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

Technical Explanation

Always-on logic is needed wherever a signal must keep functioning even while the domain around it is shut down — retention registers, isolation cells, retention control paths, and isolation enable paths all fall into this category, and any save/ restore signal that has to physically pass through a shutdown voltage area needs an always-on buffer to carry it across. An always-on cell is functionally an ordinary cell (buffer/inverter) but with an added backup power supply that keeps operating continuously through shutdown. The automatic inference rule is that the tool will only perform always-on buffering/optimization if the target library actually contains always-on inverters/ buffers, and those library cells must be marked with the always_on attribute for the tool to recognize and use them.

Architecture-level Reasoning

Always-on buffering can only be inserted automatically if the tool has a real library cell to insert — so the whole mechanism is gated on library characterization: no always_on-attributed cell, no automatic always-on network.

Step-by-step Walkthrough

1) Identify signals that must cross or exist inside a shutdown domain while remaining live — retention save/restore paths, isolation control/enable paths. 2) The tool checks whether the target library has cells carrying the always_on Liberty attribute. 3) If such cells exist, the tool automatically buffers/optimizes the identified always-on paths using them. 4) If the library has none, no automatic always-on insertion can occur for those paths.

Switch-by-switch

always_on (library cell attribute): marks a cell in the library as usable for always-on buffering — this is the flag the tool checks before it will perform always-on optimization at all.

Expected Result

Save/restore and isolation control/enable signals that must remain functional through a domain shutdown are correctly buffered using always-on cells, with the buffering sourced from the domain's always-on backup supply.

Possible Implementation Error

Targeting a library that has no cells marked always_on, expecting the tool to still automatically insert always-on buffering on a save/restore path that physically crosses a shutdown voltage area.

Likely Tool / Clp Warning

This topic is not covered in enough depth here to give a fully reliable answer regarding a specific error code for a missing always_on library cell; the behavior is simply that the optimization does not occur without a qualifying library cell.

Root Cause

Always-on optimization is entirely library-driven — the tool has no generic always-on cell to fall back on, so the presence (or absence) of the always_on attribute on a real library cell is the sole gate on whether the feature can run.

Debugging Sequence

1) Check whether the target library has any cell with the always_on attribute set. 2) If not, either select a library that provides one or manually instantiate/mark the buffering. 3) Recheck every save/restore or isolation control path that physically crosses a shutdown voltage area for correct always-on buffering after library selection. A save/restore or isolation control signal left unbuffered (or buffered by a non-always-on cell) across a shutdown voltage area is a functional failure that must be caught before signoff.

Visual explanationLow-power context: How is an always-on control network constructed, and what is the automatic…
Low-power context: How is an always-on control network constructed, and what is the automatic…A three-step concept map summarizes the focus, core answer, and practical verification for How is an always-on control network constructed, and what is the automatic inference rule for always-on cells?Question focusHow is an always-oncontrol networkconstructed, and what isthe automatic…Core answerAlways-on logic isneeded wherever a signalmust keep functioningeven while…Verify in practice1) Check whether thetarget library has anycell with the always_on…Understand → explain the mechanism → verify the assumptions

Continue learning free

Get a practical low-power chapter

Receive the existing “Low Power and Multivoltage Fundamentals” PDF chapter and its download link by email.