IP Library Granted Patent US 10,852,354
Granted Patent B1
US 10,852,354 · App. 16/685,993 · Granted Dec 1, 2020

System and method for accelerating real X detection in gate-level logic simulation

Inventor: Kai-Hui Chang (Andover, MA)
Assignee: Avery Design Systems, Inc.
G01R31/318357G06F30/337G06F30/3308G06F2119/02
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 10,852,354
App. No.
16/685,993
Granted
Dec 1, 2020
Kind
B1
Abstract

A computer executable tool analyzes Boolean logic in a gate-level netlist with simulated values and efficiently determines whether a subset of the netlist produces real Xs or not. If whether the netlist produces real Xs or not cannot be quickly determined, further formal analysis needs to be performed, and this step can be time-consuming. By quickly determining whether real Xs are produced, the use of time-consuming formal methods can be reduced, thus reducing X-pessimism analysis time.

Claims (47)

1. A method for correcting gate-level simulation, comprising:

identifying unknown values (Xs) that are false when simulating a given trace of a design netlist;

determining a sub-circuit of the design netlist for each false X having inputs of real Xs and an output of a false X;

generating code to correct each false X in simulation based on the sub-circuit to eliminate false Xs in simulation of the design netlist;

converting the sub-circuit into an And-Inverter-Graph (AIG);

calculating a structure-based hash number associated with the AIG; and

looking up at least one vector from a vector database using the hash number.

2. The method of claim 1 , wherein the vector database saves vectors that can distinguish outputs of an AIG with the same hash number.

3. The method of claim 2 , wherein if vectors for the hash number exist, the vectors are applied to primary inputs of the AIG to replace random patterns for simulation.

4. The method of claim 1 , further comprising:

if a status of outputs of the AIG cannot be determined, formally analyzing the AIG.

5. The method of claim 4 , wherein if the outputs of the AIG are not constant vectors, generating vectors that can distinguish all outputs and saving the generated vectors into the vector database.

6. The method of claim 5 , wherein the generating vectors is performed online during simulation or offline after simulation.

7. The method of claim 1 , wherein the hash number is a two-level hash number, with a first level being number of inputs of the AIG and a second level being a 32-bit integer.

8. The method of claim 1 , wherein generating vectors comprises converting the AIG to a Conjunctive Normal Form (CNF).

9. A system for correcting gate-level simulation, comprising:

a memory having program instructions stored thereon; and

a processor configured to:

identify unknown values (Xs) that are false when simulating a given trace of a design netlist;

determine a sub-circuit of the design netlist for each false X having inputs of real Xs and an output of a false X;

generate code to correct each false X in simulation based on the sub-circuit to eliminate false Xs in simulation of the design netlist;

convert the sub-circuit into an And-Inverter-Graph (AIG);

calculate a structure-based hash number associated with the AIG; and

look up at least one vector from a vector database using the hash number.

10. The system of claim 9 , wherein the vector database saves vectors that can distinguish outputs of an AIG with the same hash number.

11. The system of claim 10 , wherein if vectors for the hash number exist, the vectors are applied to primary inputs of the AIG to replace random patterns for simulation.

12. The system of claim 9 , wherein the processor is further configured to:

if a status of outputs of the AIG cannot be determined, formally analyze the AIG.

13. The system of claim 12 , wherein if the outputs of the AIG are not constant vectors, generating vectors that can distinguish all outputs and saving the generated vectors into the vector database.

14. The method of claim 13 , wherein the generating vectors is performed online during simulation or offline after simulation.

15. The method of claim 9 , wherein the hash number is a two-level hash number, with a first level being number of inputs of the AIG and a second level being a 32-bit integer.

16. The system of claim 1 , wherein generating vectors comprises converting the AIG to a Conjunctive Normal Form (CNF).

17. A method for determining if a sub-circuit generates constant value, comprising:

determining whether outputs of a sub-circuit in a simulation are constant;

converting the sub-circuit into an And-Inverter-Graph (AIG);

calculating a structure-based hash number associated with the AIG;

looking up at least one vector from a vector database using the hash number; and

simulating the AIG using the at least one vector to determine sub-circuit output status.

18. A system for determining if a sub-circuit generates constant value, comprising:

a memory having program instructions stored thereon; and

a processor configured to:

determine whether outputs of a sub-circuit in a simulation are constant;

convert the sub-circuit into an And-Inverter-Graph (AIG);

calculate a structure-based hash number associated with the AIG;

look up at least one vector from a vector database using the hash number; and

simulate the AIG using the at least one vector to determine sub-circuit output status.

19. The method of claim 1 , wherein the output of the false X is constant 0 or 1, but not both.

Assignments (3)
MERGER AND CHANGE OF NAME Recorded Jul 21, 2023
From: AVERY DESIGN SYSTEMS, INC-DE; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 064340/0230 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE CORRECT ASSIGNEE SHOULD BE AVERY DESIGN SYSTEMS, INC-DE. PREVIOUSLY RECORDED AT REEL: 051069 FRAME: 0167. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 11, 2023
From: CHANG, KAI-HUI
To: AVERY DESIGN SYSTEMS, INC-DE
Reel/Frame 064239/0692 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2019
From: CHANG, KAI-HUI
To: AVERY DESIGN SYSTEMS, INC.
Reel/Frame 051069/0167 →
Continuity (1)
Provisional Application 62768438 · Nov 16, 2018
Cited By (1)
US 12,579,351