Method to translate UDPs using gate primitives

Computer-aided design and analysis of circuits and semiconductor – Nanotechnology related integrated circuit design

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C716S030000, C716S030000, C716S030000

Reexamination Certificate

active

06658630

ABSTRACT:

REFERENCE TO MICROFICHE APPENDIX
Attached hereto is a microfiche appendix to the present invention, listing source code for an embodiment of the present invention. The total number of microfiche is 18 pages and the total number of frames is 19 frames.
BACKGROUND OF THE INVENTION
1. Field of Invention
The present invention relates generally to a method of translating User Defined Primitives (UDPs) in the Verilog format into another format.
2. Description of Related Art
Modern digital design of complex circuits and systems, which can contain millions of interconnected gates, involves a number of techniques for manageable design. Tools using computer-aided design (CAD), hardware description languages (HDL), logic synthesis, and hierarchy design are employed.
A hardware description language (HDL) representation of a circuit is a representation of a circuit in text rather than graphically, enabling a more uniform, portable representation of the circuit, one that can be manipulated by a computer program. Currently, Verilog and VHDL are two IEEE standards of HDLs. The Verilog standard evolves over time, and the present invention is designed to work with the current version, though it is adaptable to work with future versions of the Verilog IEEE standard. HDL may be stylized into “structural” (e.g. at the gate-level), “behavioral” or “dataflow” (typically at the higher level description of a circuit), or any combination of the above. HDL representations are used in logic synthesis, the conversion of a high-level electronic circuit description into a list of logic gates and their interconnections, called the “netlist”.
An HDL description of a system can be written at an intermediate level referred to as a register transfer language (RTL). A subset of RTL that is used by logic synthesis tools is known as “snythesizable RTL”. A logic synthesis tool with a library of components can convert a RTL description into an interconnection of primitive components that implements the circuit, subject to any specified constraints, such as timing, speed, power consumption and area constraints. The output of the logic synthesis tool, after an optimization process referred to as technology mapping, is a so-called netlist of interconnected storage elements, gates, and other functional blocks (note the term “net” is also a keyword in Verilog, and represents a data type comprising a physical connection between structural elements). The netlist output serves as input to physical design tools that physically place the logic elements and route the interconnections between them to produce a manufacturing circuit layout. When programmable parts are employed, such as field-programmable gate arrays, binary information is produced by design tools to program the logic within the parts.
User-defined primitives (UDP) in the Verilog HDL language are user-defined primitive gates that lie outside the “built-in” primitive gates provided by Verilog, such as “and”, “nand”, “nor”, “or”, “xor”, “xnor”, “buf”, “not”, “cmos”, “pmos”, “nmos”, “tran” and the like. Oftentimes, a designer may wish to translate a Verilog UDP into another format, such as a LogicVision model format.
LogicVision (LV) is a company that produces a suite of test insertion tools that take a netlist, insert structures, and convert the netlist and into a form suitable for testing purposes. The LogicVision suite performs such functions as boundary scan insertion, automatic test pattern generation, logic and memory BIST (Built-In Self Test) insertion. LogicVision uses a particular format, which can be viewed as a subset of the Verilog HDL. The entire Verilog HDL is not understood by LogicVision, and a Verilog model has to be translated into a LogicVision model before it can be used by a LogicVision test insertion tool. The LogicVision model format is easy to describe once the Verilog HDL is translated into basic logic gate descriptions. Thus, concerning the present invention, by translating a circuit described in a Verilog format, having UDPs (User Defined Primitives), into its constituent logic gates, a LogicVision format is easily obtainable, thus making the original circuit description suitable to a test insertion tool such as found in the LogicVision suite.
SUMMARY OF THE INVENTION
The present invention relates generally to a method of translating Verilog User Defined Primitives (UDP) to basic logic gates, i.e., gate level primitives, which can be used in another format, such as the LogicVision model format.
Accordingly, an aspect of the present invention is to provide a software program to translate a Verilog UDP (User Defined Primitive) into basic logic gates, in order to allow easier porting into other HDL languages and non-Verilog models, such as the LogicVision model. LogicVision libraries and many other libraries rely primarily on Verilog models, such as the Verilog XL 3.0 library, thus the present invention has value in providing UDP translation for such non-Verilog models.
In a preferred embodiment, the program is in Perl script, and reads in a Verilog source file. On finding a UDP, the script writes out a gate level description of the UDP.
The advantages of the present invention are:
(1) providing a unique method to translate UDPs into gate primitives;
(2) converting into a lowest common denominator between standards, by way of a gate description of a Verilog UDP, enabling porting of a Verilog UDP into another model, such as a LogicVision model;
(3) allowing better handling of ‘x’ states and event scheduling by using gate level primitives;
(4) providing an interface for other software tools that have difficulty reading in Verilog UDPs.


REFERENCES:
patent: 5987239 (1999-11-01), Kirsch
patent: 6132109 (2000-10-01), Gregory et al.
patent: 6135647 (2000-10-01), Balakrishnan et al.
patent: 6226780 (2001-05-01), Bahra et al.
patent: 6247165 (2001-06-01), Wohl et al.
Li et a, “HML, A Novel Hardware Description Language and its Translation to VHDL,” IEEE, Feb. 2000, pp. 1-8.I.*
Renaudin et al, “A Design Framwork for Asynchronous/Synchronous Circuits Based on CHP to HDL Translation,” IEEE, 1999, pp. 135-144.*
Gary Spivey, “EP3: An Extensible Perl Preprocessor,” IEEE, Mar. 1998, pp. 1-8.*
Lung et al, “Verilog Netlist as an Exchange Language,” IEEE, 1994, pp. 10-14.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method to translate UDPs using gate primitives does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method to translate UDPs using gate primitives, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method to translate UDPs using gate primitives will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3147462

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.