IP Library Granted Patent US 8,015,523
Granted Patent B2
US 8,015,523 · App. 12/392,278 · Granted Sep 6, 2011

Method and system for sequential netlist reduction through trace-containment

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,015,523
App. No.
12/392,278
Granted
Sep 6, 2011
Kind
B2
Abstract

Methods and systems are provided for sequential netlist reduction through trace-containment for a circuitry design netlist by first identifying a cut of the netlist and enumerating a set of mismatch traces. Perform time-bounded unfolding of a cofactored version of the cut to reflect the sequential cofactor for a specific input i and temporal uncorrelation constraints for the set of inputs ‘J’. Determine whether there is trace containment by performing equivalence checking with respect to the cut of the netlist under temporal uncorrelation constraints for the set of inputs ‘J’. In response to detecting trace containment, simplify the netlist by merging the input ‘i’ to a constant.

Claims (59)

1. A method of identifying trace-containment for a sequential circuitry design netlist by execution of instructions loaded into a computer system, the method comprising:

identifying, by the execution of said instructions loaded into the computer system, a cut of the netlist comprising an input i;

enumerating, by the execution of said instructions, a set of mismatch traces;

deriving, by the execution of said instructions, a set of inputs ‘J’ from the mismatch traces for equivalence checking to detect trace containment;

performing, by the execution of said instructions, time-bounded unfolding of a cofactored version of the cut reflecting sequential cofactor for the input i and temporal uncorrelation constraints for the set of inputs ‘J’;

determining, by the execution of said instructions, whether there is trace containment;

in response to detecting trace containment, recognizing a constraining relation over the set of inputs ‘J’; and

seeking, by the execution of said instructions, to prove sequential equivalence of said cut subject to the constraining relation.

2. The method of claim 1 , further comprising:

in response to proving the sequential equivalence of the cut, reducing, by the execution of said instructions, said sequential circuitry design netlist by merging said input to a constant.

3. The method of claim 1 , further comprising:

as part of the identifying of said cut, determining, by the execution of said instructions, whether the cut equals the netlist; and

in response to determining that the cut does not equal the netlist, deciding, by the execution of said instructions, whether to grow the cut.

4. The method of claim 1 , wherein the set of mismatch traces is enumerated against the identified cut of the netlist.

5. The method of claim 1 , further comprising:

deriving, by the execution of said instructions, a temporal relation between said set of inputs ‘J’ and a cofactor time for the input i; and

adding, by the execution of said instructions, temporal uncorrelation constraints to said inputs ‘J’ to reflect the temporal relation.

6. The method of claim 5 , wherein said deriving the temporal relation between said set of inputs ‘J’ and the cofactor time further comprises:

obtaining, by the execution of said instructions, a secondary set of minimally assigned mismatch traces which attempt to mismatch same gates as said set of mismatch traces but at later time; and

removing, by the execution of said instructions, an input ‘j’ from the set of minimally assigned mismatch traces.

7. The method of claim 6 , further comprising:

determining, by the execution of said instructions, whether the input ‘j’ is assigned a same time across all traces in the set of minimally assigned mismatch traces ‘J’, or whether the input ‘j’ is assigned a same relative time in all of said traces;

in response to detecting the input ‘j’ to have the same time across all of said traces, deriving, by the execution of said instructions, the temporal relation by postulating that ‘j’ has a fixed time delay;

in response to detecting the input ‘j’ to be assigned to the same relative time in all of said traces, deriving, by the execution of said instructions, the temporal relation by postulating that ‘j’ has a relative fixed delay; and

in response to detecting the input ‘j’ to have a different time in at least one of said traces and in response to detecting the input ‘j’ to have a different relative time in at least one of said traces, removing, by the execution of said instructions, the input ‘j’ from the set of minimally assigned mismatch traces ‘J’.

8. A software product comprising a non-transitory machine readable medium including a program of instructions for identifying trace-containment for a sequential circuitry design netlist by execution of instructions, wherein the program of instructions upon being executed on a computer causes the computer to perform activities comprising:

identify, by the execution of said instructions, a cut of the netlist comprising an input i;

enumerate, by the execution of said instructions, a set of mismatch traces;

derive, by the execution of said instructions, a set of inputs ‘J’ from the mismatch traces for equivalence checking to detect trace containment;

perform, by the execution of said instructions, time-bounded unfolding of a cofactored version of the cut reflecting sequential cofactor for the input i and temporal uncorrelation constraints for the set of inputs ‘J’;

determine, by the execution of said instructions, whether there is trace containment;

in response to detecting trace containment, recognize, by the execution of said instructions, a constraining relation over the set of inputs ‘J’; and

seek, by the execution of said instructions, to prove sequential equivalence of said cut subject to the constraining relation.

9. The software product of claim 8 , further comprising:

in response to proving the sequential equivalence of the cut, reduce, by the execution of said instructions, said sequential circuitry design netlist by merging said input i to a constant.

10. The software product of claim 8 , further comprising:

as part of the identifying of said cut, determine, by the execution of said instructions, whether the cut equals the netlist; and

in response to determining that the cut does not equal the netlist, decide, by the execution of said instructions, whether to grow the cut.

11. The software product of claim 8 , wherein the set of mismatch traces is enumerated against the identified cut of the netlist.

12. The software product of claim 8 , further comprising:

derive, by the execution of said instructions, a temporal relation between said set of inputs ‘J’ and a cofactor time for the input i; and

add, by the execution of said instructions, temporal uncorrelation constraints to said inputs ‘J’ to reflect the temporal relation.

13. The software product of claim 12 , wherein said deriving the temporal relation between said set of inputs ‘J’ and the cofactor time further comprises:

obtain, by the execution of said instructions, a secondary set of minimally assigned mismatch traces which attempt to mismatch same gates as said set of mismatch traces but at later time; and

remove, by the execution of said instructions, an input ‘j’, from the set of minimally assigned mismatch traces.

14. The software product of claim 13 , further comprising:

determine, by the execution of said instructions, whether the input ‘j’ is assigned a same time across all traces in the set of minimally assigned mismatch traces ‘J’, or whether the input ‘j’ is assigned a same relative time in all of said traces;

in response to detecting the input ‘j’ to have the same time across all of said traces, derive, by the execution of said instructions, the temporal relation by postulating that ‘j’ has a fixed time delay;

in response to detecting the input ‘j’ to be assigned to the same relative time in all of said traces, derive, by the execution of said instructions, the temporal relation by postulating that ‘j’ has a relative fixed delay; and

in response to detecting the input ‘j’ to have a different time in at least one of said traces and in response to detecting the input ‘j’ to have a different relative time in at least one of said traces, remove, by the execution of said instructions, the input ‘j’ from the set of minimally assigned mismatch traces ‘J’.

15. A computer system configured for identifying trace-containment for a sequential circuitry design netlist, the system comprising:

input means for receiving the circuitry design netlist, a cut of the netlist being identified that comprises an input i;

memory configured to store an enumerated set of mismatch traces;

means for deriving a set of inputs ‘J’ from the mismatch traces for equivalence checking to detect trace containment;

a processor suitably disposed to execute instructions for performing time-bounded unfolding of a cofactored version of the cut reflecting sequential cofactor for the input i and temporal uncorrelation constraints for the set of inputs ‘J’;

means for determining whether there is trace containment, and in response to detecting trace containment, recognizing a constraining relation over the set of inputs ‘J’; and

wherein said processor is suitably disposed to execute instructions for seeking to prove sequential equivalence of said cut subject to the constraining relation.

16. The computer system of claim 15 , further comprising:

wherein, in response to proving the sequential equivalence of the cut, said processor is suitably disposed to execute instructions for reducing said sequential circuitry design netlist by merging said input i to a constant.

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 Feb 25, 2009
From: BAUMGARTNER, JASON R.; KANZELMAN, ROBERT L.; MONY, HARI; PARUTHI, VIRESH
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022312/0696 →