IP Library Granted Patent US 7,561,999
Granted Patent B2
US 7,561,999 · App. 10/852,241 · Granted Jul 14, 2009

Verification apparatus, verification method, and program

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,561,999
App. No.
10/852,241
Granted
Jul 14, 2009
Kind
B2
Abstract

A verification apparatus that efficiently performs hardware verification and software verification in the development of a system LSI with great accuracy. At the hardware verification, an equivalence verification section compares the result of the simulation of an HDL model by a logic simulator and an expected value generated from an expected value calculation model and verifies whether there is equivalence between them. At the software verification, the expected value calculation model is used via an interface section and a firmware is verified by a software debugger. The expected value calculation model is used as an expected value generation model at hardware verification time and is used as a C model of hardware at software verification time. By using the expected value calculation model both for the hardware verification and for the software verification in this way, verification can efficiently be performed with great accuracy.

Claims (34)

1. An apparatus for verifying hardware and software for controlling the hardware, the apparatus comprising:

a computer including a processor and memory storing a program of instructions for;

a hardware model and an expected value calculation model of the hardware, the hardware model being verified by the computer;

a logic simulator performing a simulation on the computer by using the hardware model and generating an expected value by using the expected value calculation model;

an equivalence verification section verifying an equivalence of a result of the simulation and the expected value using the computer; and

a software debugger debugging the software at different verification levels by using the expected value calculation model through an interface section, if the simulation result and the expected value match;

wherein the expected value calculation model includes pieces of timing information, and wherein each of the pieces corresponds to a verification level of the software, and the verification level is one of a function accurate level, a transaction accurate level, or a cycle accurate level.

2. The apparatus according to claim 1 , further comprising:

a transferring unit transferring a respective piece of the pieces of timing information from the expected value calculation model to the software debugger based on the verification level of the respective piece.

3. The apparatus according to claim 1 , wherein:

the expected value calculation model includes a data conversion section converting input data to the expected value calculation model for performing an expected value calculation operation and reconverting a result of the operation performed by using the input data converted,

the result of the operation reconverted is outputted from the expected value calculation model.

4. A method comprising:

verifying on a computer including a processor and memory an equivalence of a result of a simulation performed on a computer including a processor and memory by using a hardware model of hardware and an expected value generated by using an expected value calculation model; and

debugging on the computer software for controlling the hardware by using the expected value calculation model through an interface section, if the simulation result and the expected value match;

wherein the expected value calculation model includes pieces of timing information, and wherein each of the pieces corresponds to a verification level of the software, and the verification level is one of a function accurate level, a transaction accurate level, or a cycle accurate level.

5. The method according to claim 4 , further comprising:

transferring a respective piece of the pieces of timing information from the expected value calculation model to be used in said debugging based on the verification level of the respective piece.

6. The method according to claim 4 , further comprising:

converting input data to the expected value calculation model for performing an expected value calculation operation and reconverting a result of the operation performed by using the input data converted; and

outputting the result of the operation reconverted from the expected value calculation model.

7. A computer readable record medium having embodied thereon computer executable instructions which when executed on a computer perform a method, the medium comprising instructions for:

verifying an equivalence of a result of a simulation performed by using a hardware model of hardware and an expected value generated by using an expected value calculation model; and

debugging the software at different verification levels for controlling the hardware by using the expected value calculation model through an interface section, if the simulation result and the expected value match;

wherein the expected value calculation model includes pieces of timing information, and wherein each of the pieces corresponds to a verification level of the software, and the verification level is one of a function accurate level, a transaction accurate level, or a cycle accurate level.

8. The computer readable record medium according to claim 7 having embodied thereon instructions causing a computer to further perform:

transferring a respective piece of the pieces of timing information from the expected value calculation model to be used in said debugging based on the verification level of the respective piece.

9. The computer readable record medium according to claim 7 , having embodied thereon instructions causing a computer to further perform:

converting input data to the expected value calculation model for performing an operation, and reconverting a result of the operation performed by using the input data converted; and

outputting the result of the operation reconverted from the expected value calculation model.

10. An apparatus comprising:

means for verifying an equivalence of a result of a simulation performed by using a hardware model of hardware and an expected value generated by using an expected value calculation model; and

means for debugging software at different verification levels for controlling the hardware by using the expected value calculation model through an interface section, if the simulation result and the expected value match;

wherein the expected value calculation model includes pieces of timing information, and wherein each of the pieces corresponds to a verification level of the software, and the verification level is one of a function accurate level, a transaction accurate level, or a cycle accurate level.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2015
From: FUJITSU SEMICONDUCTOR LIMITED
To: SOCIONEXT INC.
Reel/Frame 035508/0469 →
CHANGE OF NAME Recorded Jul 27, 2010
From: FUJITSU MICROELECTRONICS LIMITED
To: FUJITSU SEMICONDUCTOR LIMITED
Reel/Frame 024794/0500 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2008
From: FUJITSU LIMITED
To: FUJITSU MICROELECTRONICS LIMITED
Reel/Frame 021985/0715 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2004
From: IWAMOTO, MASAMI; OZAWA, YUICHI
To: FUJITSU LIMITED
Reel/Frame 015373/0928 →