IP Library Granted Patent US 7,203,631
Granted Patent B2
US 7,203,631 · App. 10/334,113 · Granted Apr 10, 2007

System and method to analyze VLSI designs

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 7,203,631
App. No.
10/334,113
Granted
Apr 10, 2007
Kind
B2
Abstract

Briefly, a system and a method of formal verification and failure analysis and rectification of models or designs, e.g., VLSI designs, of processors, circuits and logical systems. Embodiments of the system may include a multi-value annotation scheme for annotating different types of values of signals, and a post-annotation scheme for further analysis based on the annotated values. Some embodiments of the invention may optionally include a generator of counter-examples of a given length.

Claims (60)

1. A method for VLSI logic design analysis, the method comprising:

annotating a value at a phase of a trace of a signal by determining a type of influence of the signal on a property of a model, wherein the annotation indicates that the phase of the trace of the signal has a constant value in a plurality of counter-examples of said model; and

based on the annotation, changing the VLSI logic design such that the value of said signal at said phase of said trace is changed from said constant value to a different value in one or more of said plurality of counter-examples of said model.

2. The method of claim 1 , wherein annotating the value comprises annotating the value at a phase of a counter-example.

3. The method of claim 2 , further comprising receiving the counter-example from a source of counter-examples.

4. The method of claim 3 , wherein receiving the counter-example comprises receiving the counter-example from a counter-examples generator.

5. The method of claim 4 , wherein receiving the counter-example from a counter-example generator comprises receiving the counter-example from a counter-example generator which produces effectively all counter-examples of a model.

6. The method of claim 1 , further comprising:

transferring data representing an annotation of the value of said signal onto a secondary device.

7. The method of claim 1 , further comprising:

debugging at least part of the model based on the annotation of the value of said signal by determining a change of the VLSI logic design that causes the value of said signal at said phase of said trace to shift from said constant value to said different value.

8. The method of claim 1 , further comprising:

refining at least part of the model based on the annotation of the value of said signal as a hint, wherein refining comprises:

assigning weights to respective nodes of said VLSI logic design such that a higher weight is assigned to a node associated with said annotation; and

adding a detailed logical description to one or more of said nodes having relatively higher weights to reduce a level of abstraction in a description of said nodes.

9. The method of claim 7 , wherein debugging at least part of said model comprises debugging at least part of said model interactively in real time.

10. The method of claim 8 , wherein refining at least part of said model comprises refining at least part of said model interactively in real time.

11. An apparatus for VLSI logic design analysis, the apparatus comprising:

a memory unit to store a representation of the VLSI logic design; and

a processor to execute instructions to annotate a value at a phase of a trace of a signal by determining a type of influence of the signal on a property of a model,

wherein the annotation indicates that the phase of the trace of the signal has a constant value in a plurality of counter-examples of said model,

wherein the processor executes instructions to change the VLSI logic design based on the annotation such that the value of said signal at said phase of said trace is changed from said constant value to a different value in one or more of said plurality of counter-examples of said model.

12. The apparatus of claim 11 , further comprising:

an input unit to receive a signal representing said model.

13. The apparatus of claim 11 , further comprising:

an output unit to provide an output representing values annotated by said processor.

14. The apparatus of claim 13 , wherein the output unit is associated with a display.

15. The apparatus of claim 13 , further comprising:

a debugging unit to debug said model based on said output by determining a change of the VLSI logic design that causes the value of said signal at said phase of said trace to shift from said constant value to said different value.

16. The apparatus of claim 11 , further comprising:

a refining unit to refine said model based on said output by:

assigning weights to respective nodes of said VLSI logic design such that a higher weight is assigned to a node associated with said annotation; and

adding a detailed logical description to one or more of said nodes having relatively higher weights to reduce a level of abstraction in a description of said nodes.

17. The apparatus of claim 11 , further comprising:

a counter-examples generator to provide counter-examples to said processor.

18. The apparatus of claim 15 , wherein the debugging unit debugs said model in real time.

19. The apparatus of claim 16 , wherein the refining unit refines said model in real time.

20. An article for VLSI logic design analysis, the article comprising a storage medium having stored thereon instructions that, when executed by a computing platform, result in:

annotating a value at a phase of a trace of a signal by determining a type of influence of the signal on a property of a model, wherein the annotation indicates that the phase of the trace of the signal has a constant value in a plurality of counter-examples of said model; and

based on the annotation, changing the VLSI logic design such that the value of said signal at said phase of said trace is changed from said constant value to a different value in one or more of said plurality of counter-examples of said model.

21. The article of claim 20 , wherein the instructions, when executed, further result in:

annotating the value at a phase of a counter-example.

22. The article of claim 21 , wherein the instructions, when executed, further result in:

receiving a counter-example from a source of counter-examples.

23. The article of claim 22 , wherein the instructions, when executed, further result in:

receiving the counter-example from a counter-examples generator.

24. The article of claim 23 , wherein the instructions, when executed, further result in:

receiving the counter-example from a counter-example generator, which produces effectively all counter-examples of a model.

25. The article of claim 20 , wherein the instructions, when executed, further result in:

transferring data representing an annotation of the value of said signal onto a secondary device.

26. The article of claim 20 , wherein the instructions, when executed, further result in:

debugging at least part of the model based on the annotation of the value of said signal by determining a change of the VLSI logic design that causes the value of said signal at said phase of said trace to shift from said constant value to said different value.

27. The article of claim 20 , wherein the instructions, when executed, further result in:

refining at least part of the model based on the annotation of the value of said signal as a hint, wherein refining comprises:

assigning weights to respective nodes of said VLSI logic design such that a higher weight is assigned to a node associated with said annotation; and

adding a detailed logical description to one or more of said nodes having relatively higher weights, to reduce a level of abstraction in a description of said nodes.

28. The article of claim 26 , wherein the instructions, when executed, further result in:

debugging at least part of said model interactively in real time.

29. The article of claim 27 , wherein the instructions, when executed, further result in:

refining at least part of said model interactively in real time.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 4, 2013
From: INTEL CORPORATION
To: MICRON TECHNOLOGY, INC.
Reel/Frame 030747/0001 →