IP Library Granted Patent US 7,890,901
Granted Patent B2
US 7,890,901 · App. 11/684,899 · Granted Feb 15, 2011

Method and system for verifying the equivalence of digital circuits

Assignee: International Business Machines Corporation
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,890,901
App. No.
11/684,899
Granted
Feb 15, 2011
Kind
B2
Abstract

The automatic verification of designs of digital circuits for their equivalence, wherein logic designs implemented in different hardware description languages (HDLs) and different design methodologies are compared. The designs (Code A, Code B) are modified by adding special wrappers (Wrapper A, Wrapper B), and used to equalize the timing of pairs of selected input signals and selected output signals of the logic designs. The wrappers drive certain signals of the designs that are not relevant for actual comparison, such signals including clock signals, clock control signals, scan-path signals, scan-path control signals, and reset signals. In a preferred embodiment, HDL descriptions of logic designs are analyzed. Based on this analysis, the wrappers are implemented as changes to the HDL descriptions. In another embodiment, RTL and/or gate-level netlists are analyzed and modified.

Claims (21)

1. A method for verifying equivalent logic circuits respectively having different clocking configurations, different types of storage elements, and different descriptive languages, the method comprising:

a) comparing with a computer a first logic circuit having a first clocking configuration and a first descriptive language against a second logic circuit having a second clocking configuration and a second descriptive language, the first and second logic circuit each having different descriptive languages from each other, and the first and second logic circuit each having different clocking configurations from each other;

b) based on results of said comparison, creating first and second wrappers respective to said first and second logic circuits, matching said first clocking configuration to said second clocking configuration; and

c) equalizing said first and second wrappers of said first and second logic circuits, said equalization being performed without affecting the respective storage elements.

2. The method of claim 1 , wherein in step a), said clocking configurations are determined by analyzing the first and second clocking configurations of said respective storage elements, wherein said storage elements is determined by selected inputs or selected outputs.

3. The method of claim 1 , wherein in step b), said first and second clocking configurations are equalized based on said storage elements ef attached to said clocking configurations.

4. The method of claim 1 , wherein in step c) said equalization results in an equivalent offset to timing axes of said inputs and outputs.

5. The method of claim 2 , wherein added logic elements are inserted in said logic configurations that are connected to unselected input and outputs.

6. The method of claim 1 , wherein in step b), added storage elements are inserted in said first and second logic configurations connected to a subset of said selected inputs and said selected outputs.

7. The method of claim 1 , wherein said first and second descriptive languages respectively comprise Verilog and VHDL, or vice versa.

8. The method of claim 1 , wherein step c) is performed using a functional formal verification tool.

9. The method of claim 8 , wherein said first and second logic configurations are specified in hardware description languages, and wherein the analyzing step is performed in a lexical analysis tool.

10. The method of claim 9 , wherein said lexical analysis tool is based on coding conventions.

11. The method of claim 8 , wherein said first and second logic configurations are RTL or a gate-level netlist representation of the logic configurations.

12. The method of claim 1 , wherein said clocking configurations include clock staging and controls resulting in differences at the inputs and outputs between models of said first and second logic configurations being compared to each other.

13. The method of claim 12 , wherein said inputs are selected from a group consisting of clocking control signals, scan-path and scan-path control signals, and reset signals.

14. A non-transitory program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for verifying equivalent logic circuits having different clocking configurations, different types of storage elements, and different descriptive languages, the program of instructions executable comprising:

a) comparing with a computer a first logic circuit having a first clocking configuration and a first descriptive language against a second logic circuit having a second clocking configuration and a second descriptive language, the first and second logic circuit each having different descriptive languages from each other, and the first and second logic circuit each having different clocking configurations from each other;

b) based on results of said comparison, creating first and second customized wrappers to said respective first and second logic circuits to match said first clocking configuration to said second clocking configuration; and

c) equalizing said customized wrappers of said first and second logic circuits, said equalization being performed without affecting the respective storage elements.

15. The non-transitory program storage device of claim 14 , wherein the comparing step is performed by a tool selected from a group consisting of a checker, a semiformal verification tool, a simulation tool, and any combination thereof.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded May 12, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES U.S. INC.
Reel/Frame 056987/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 20, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES INC.
Reel/Frame 054636/0001 →
SECURITY AGREEMENT Recorded Nov 29, 2018
From: GLOBALFOUNDRIES INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 049490/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2015
From: GLOBALFOUNDRIES U.S. 2 LLC; GLOBALFOUNDRIES U.S. INC.
To: GLOBALFOUNDRIES INC.
Reel/Frame 036779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2015
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GLOBALFOUNDRIES U.S. 2 LLC
Reel/Frame 036550/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2007
From: GEMMEKE, TOBIAS; LEENSTRA, JENS; MAEDING, NICOLAS; MONY, HARI
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 018996/0124 →
Priority Claims (1)
EP 06111683 · Mar 24, 2006 · regional
Continuity (1)
Related Publication 20070226664A1 · Sep 27, 2007