Patent ID: 8239791

Claim:
A method of designing a separately-powerable integrated circuit (IC) functional block, comprising: providing an IC logic design that includes a plurality of storage elements; determining, by a computer, values held by the plurality of storage elements during a powering-down of the IC logic design so as to obtain determined values; characterizing the plurality of storage elements as a function of the determined values; and building a restore logic design for restoring state to the plurality of storage elements as a function of the determined values; and following said characterizing of the plurality of storage elements, categorizing the plurality of storage elements; wherein: said categorizing of the plurality of storage elements includes categorizing each of the plurality of storage elements into one or the other of 1) a restore category and 2) a state-saving category; and said categorizing of the plurality of storage elements further includes categorizing the plurality of storage elements into a constant category and a don't-care category.