# US 7,467,364 B2 · Database mining method and computer readable medium carrying instructions for coverage analysis of functional verification of integrated circuit designs

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,467,364 B2
- Document ID: US7467364B2
- Status: Granted
- Kind: B2
- Application number: 11/299,497
- Filed: 2005-12-12
- Published: 2006-05-18
- Granted: 2008-12-16
- Earliest claimed: 2003-11-12
- Assignees: International Business Machines Corporation
- Inventors: Amir Hekmatpour
- Web page: https://patentgrep.com/patent/US7467364B2

## CPC

- G01R 31/318364: {as a result of hardware simulation, e.g. in an HDL environment (computer-aided simulation of circuits G06F30/3308)}
- G01R 31/31835: {Analysis of test coverage or failure detectability}
- G01R 31/318357: {Simulation (computer simulation of digital circuits G06F30/3308)}
- G06F 30/33: Design verification, e.g. functional simulation or model checking
- G01R: MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES (indicating correct tuning of resonant circuits H03J3/12)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Database mining, analysis and optimization techniques in conjunction with the model-based functional coverage analysis are used to turn raw verification and coverage data into design intelligence (DI) and verification intelligence (VA). The required data and attributes are automatically extracted from verification, simulation and coverage analysis databases. Design finite state machine extraction, design functional event extraction, and automatic coverage model generation and optimization techniques are applied to the design HDL description. Coverage model tuning and optimization directives, as well as test spec tuning and optimization directives are generated based on the analysis and mining of various verification, simulation, and coverage databases. An integrated web-based interface portlet is used for access, analysis and management of the resulting databases, generated reports and verification directives. Dissemination rules are used to automatically generate and distribute analysis reports and verification directives to engineers at wired or wireless interface devices via Internet or Intranet.

## Claims

### Claim 1

A database mining method for coverage analysis of functional verification of integrated circuit designs comprising the steps of
a) generating test programs using machine readable design specifications, and storing specifications of the test programs in a test program database for mining pattern relevancy and dependencies;
b) comparing the test programs against design models to produce simulation traces, and storing the resultant traces in a simulation traces database for mining relationships, relevancy and dependencies among traces;
wherein the method further includes:
c) mining and analyzing the test program database and the simulation traces database;
d) developing deterministic tests, and providing feedback to these tests, based on the mining and analysis of the simulation traces database;
e) creating architectural and microarchitectural coverage models based on the test programs and the simulation traces, and
f) storing the models in a functional coverage analysis environment.

### Claim 2 (depends on 1)

The method according to claim 1 further including the use of the analysis and mining of the functional coverage database to detect and report trends and patterns of interest to verification.

### Claim 3 (depends on 2)

The method according to claim 2 wherein some of the architectural and microarchitectural coverage models are generated manually whereas other models are computer generated.

### Claim 4 (depends on 1)

The method according to claim 1 wherein coverage reports are interpreted and made available to user via a plurality of interface devices and medium.

### Claim 5 (depends on 4)

The method according to claim 4 wherein coverage directives are generated indicating tasks to be performed requiring certain skills and design knowledge.

### Claim 6 (depends on 5)

The method according to claim 5 wherein generated reports, advisories, and directives are disseminated according to predefined methods and media protocols.

### Claim 7 (depends on 1)

The method according to claim 1 further including the generation of test specifications for design hardware description language (HDL).

### Claim 8 (depends on 7)

The method according to claim 7 further including adjustment and optimization of test specifications.

### Claim 9 (depends on 7)

The method according to claim 7 further including the step of converting dominant patterns and sequences into the architectural and microarchitectural coverage models.

### Claim 10 (depends on 1)

The method according to claim 1 including the step of making fuzzy estimations of incomplete and partially masked fields.

### Claim 11 (depends on 1)

The method according to claim 1 including the step conducting a test program database analysis preceding test program simulation.

### Claim 12 (depends on 7)

The method according to claim 7 including the step of extracting a architectural or microarchitectural design feature from the design HDL and converting the feature to a test spec input to a test spec generator.

### Claim 13

An article of manufacture comprising a computer usable medium having a computer readable program embodied in said medium, wherein the computer readable program, when executed on a computer, causes the computer to:
a) generate a test specification based upon a predetermined design model, and forward the test specification to a test generator,
b) create a test program based on the test specification, and store the test program in a test programs database;
c) forward each test program and manually generated tests to a simulator;
d) simulate the test program and the generated tests against the design model, and generate a trace of the simulation;
e) store the trace in a simulation traces database;
f) mine the simulation traces for patterns;
g) mine data in the test programs database;
h) analyze data received from the test programs database, the simulation traces database and the database mining, and generate new models if required, based on the presence or absence of a model;
i) store the new models in a functional coverage database;
j) use the new models based on the analysis of the test program database and the simulation traces database, and the mining of said databases.

### Claim 14 (depends on 13)

The article of manufacture according to claim 13 wherein the computer readable program further causes the computer to generate design specifications, and to generate coverage models based on these specifications.

### Claim 15 (depends on 13)

The article according to claim 13 wherein the computer readable program creates architectural and microarchitectural coverage models based on the analyzed data received from the test programs database and the simulation traces database.
