IP Library Granted Patent US 8,086,972
Granted Patent B2
US 8,086,972 · App. 12/174,650 · Granted Dec 27, 2011

Functional verification of power gated designs by compositional reasoning

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,086,972
App. No.
12/174,650
Granted
Dec 27, 2011
Kind
B2
Abstract

A novel and useful method of functional verification of power gated designs by compositional reasoning. The method of the present invention performs a sequential equivalence check between the power gated design and a version of itself in which power gating is disabled. A compositional approach is first used to look for conditional equivalence of each functional block of the circuit (and its corresponding functional block with power gating disabled) under a suitable set of assumptions, guaranteed by the neighboring functional blocks. Circular reasoning rules are then employed to compose the conditional equivalences proved on the individual functional blocks back into total equivalence on the whole circuit.

Claims (28)

1. A method of verifying a circuit comprising a power gated design, said method comprising the steps of:

partitioning said circuit into a plurality of original functional blocks, wherein power gating is enabled in each said original functional block;

creating a corresponding functional block for each original functional block, wherein said corresponding functional block comprises said original functional block in which power gating is disabled;

defining one or more valid inputs for each said original functional block;

defining one or more valid conditions for each original functional block and its associated corresponding functional block;

performing, by using a computer, a conditional equivalence check between each said original functional block and each said corresponding functional block, utilizing said one or more valid inputs and said one or more valid conditions, thereby determining conditional equivalency; and

verifying, based on the conditional equivalence check, that outputs from each of the original functional blocks and the associated corresponding functional blocks are equivalent.

2. The method according to claim 1 , wherein one or more of said plurality of original functional blocks comprises a power gated design.

3. The method according to claim 1 , wherein zero or more of said plurality of original functional blocks comprises a non power gated design.

4. The method of claim 3 , wherein said functional block comprising a non power gated design directly interacts with a functional block comprising a power gated design.

5. The method according to claim 1 , wherein one or more of said valid inputs comprise an output from a separate functional block.

6. The method according to claim 1 , wherein each of said one or more conditions comprise a signal indicating whether the interface between an original functional block and its corresponding function block is active.

7. The method according to claim 1 , wherein said conditional equivalency comprises equivalent outputs of said original functional block and its corresponding functional block.

8. The method according to claim 1 , wherein said compositional conditional equivalency comprises all said original functional blocks and their corresponding functional blocks having conditional equivalency.

9. A computer program product for verifying a circuit comprising a power gated design, the computer program product comprising a non-transitory computer usable medium storing computer usable codes, wherein the computer usable codes when executed by a computer perform operations comprising:

partitioning said circuit into a plurality of original functional blocks, wherein power gating is enabled in each said original functional block;

creating a corresponding functional block for each original functional block, wherein said corresponding functional block comprises said original functional block in which power gating is disabled;

defining one or more valid inputs for each said original functional block;

computer usable code configured for defining one or more valid conditions for each original functional block and its associated corresponding functional block;

performing a conditional equivalence check between each said original functional block and each said corresponding functional block, utilizing said one or more valid inputs and said one or more valid conditions, thereby determining conditional equivalency; and

verifying, based on the conditional equivalence checks, that outputs from each of the original function blocks and the associated corresponding functional blocks are equivalent.

10. The computer program product of claim 9 , wherein one or more of said plurality of original functional blocks comprises a power gated design.

11. The computer program product of claim 9 , wherein zero or more of said plurality of original functional blocks comprises a non power gated design.

12. The computer program product of claim 11 , wherein said functional block comprising a non power gated design directly interacts with a functional block comprising a power gated design.

13. The computer program product of claim 9 , wherein one or more of said valid inputs comprise an output from a separate functional block.

14. The computer program product of claim 9 , wherein each of said one or more conditions comprise a signal indicating whether the interface between an original functional block and its corresponding function block is active.

15. The computer program product of claim 9 , wherein said conditional equivalency comprises equivalent outputs of said original functional block and its corresponding functional block.

16. The computer program product of claim 9 , wherein said compositional conditional equivalency comprises all said original functional blocks and their corresponding functional blocks having conditional equivalency.

Assignments (3)
MERGER AND CHANGE OF NAME Recorded Jun 18, 2021
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 057261/0545 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2013
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 029733/0156 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2008
From: EISNER, CYNTHIA RAE; YORAV, KAREN FRIDA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 021249/0539 →