Computer-aided design and analysis of circuits and semiconductor – Nanotechnology related integrated circuit design
Reexamination Certificate
2001-08-17
2003-06-17
Smith, Matthew (Department: 2825)
Computer-aided design and analysis of circuits and semiconductor
Nanotechnology related integrated circuit design
C716S030000, C716S030000
Reexamination Certificate
active
06581200
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention generally relates to electronic circuits, specifically, the fabrication of integrated circuits such as microprocessors. More particularly, the present invention relates to computer-aided design (CAD) systems which lay out physical interconnections for logic circuits on an integrated circuit substrate using place and route tools.
2. Description of the Related Art
Modern electronic circuits use many different types of logic components or processing units to carry out numerous functions. In the early years of the semiconducting industry, these components were integrated circuits (ICs) with narrowly limited functionalities. Early small-scale integration ICs contained a few logic gates (AND gates, OR gates, NAND gates, NOR gates, XOR gates, etc.) amounting to a few dozen transistors. These gates are combined in Boolean fashion to implement particular logic circuits. Medium-scale integration increased the range of integrated logic available to counters and similar logic functions, and large-scale integration packed even larger logic functions, such as the first microprocessors, into a single chip. The current era of very large-scale integration (VLSI) offers complex processing and control capabilities with well over a million transistors on a single piece of silicon.
While many digital logic ICs became standard components which could be used to construct a variety of different microelectronic systems, there was a clear desire to provide more customized or tailor-made ICs for the electronics industry. As CMOS process technology has improved, and transistors continue to get smaller, it has become easier for engineers to design larger ICs that may be adapted to a customer's specific needs; these types of ICs are referred to as application-specific integrated circuits (ASICs).
Integrated circuits are designed using computer-aided design (CAD) tools. The integrated circuit design process includes constructing the integrated circuit design out of simple circuits (standard cells) that are connected together electrically using wire interconnects. The standard cells and connections between them are stored in databases called “netlists” (i.e., lists of symbolic interconnections).
As part of the design process, the design information within a netlist is “placed and routed” by the CAD tool. The CAD tool utilizes placing and routing processes (also called placers and routers) that are typically software programs executed on the CAD tool. The placer determines the optimum location of each standard cell within the integrated circuit layout on the semiconductor surface. The placement location is optimized to reduce the distance between standard cells that are electrically connected to each other by wire interconnects (e.g., input/output lines). This is done to minimize semiconductor area consumed by the integrated circuit and is also done to minimize the lengths of wire interconnects to reduce net capacitance within the design. The router optimizes the routing of input/output lines between connected standard cells so that areas of the integrated circuit layout do not become overly congested by input/output lines.
FIG. 1
illustrates a basic flow chart for designing an integrated circuit. In the first step, the designer identifies the primary functions needed for the IC to attain the desired behavior. These primary, high level functions are often specified in a CAD system using a well-known hardware description language (HDL) such as Verilog HDL. The designer simulates and verifies the behavior of the IC high-level design, encapsulated in HDL, using a simulator. The designer then creates the detailed logic for the design using a CAD program that synthesizes the logic from the HDL description using a technology or process-specific library
1
. Library
1
consists of predefined macrocells and design rules for a specific fabrication process. Library
1
is usually provided by the ASIC vendor, and typically includes macrocells such as logic gates, sequential logic functions, adders, counters, multiplexers, and latches among other standard functions. Alternatively, the designer can specify the detailed logic directly as Boolean equations or as logic schematics using a schematic capture program.
In addition to using predefined macrocells from a process specific library, the designer may also use custom-patterned blocks, which may be manually crafted by a mask designer. Examples of such custom blocks include random-access memory (RAM), read-only memory (ROM), microcontrollers, and analog-to-digital (A/D) converters. Netlists between the macrocells and any custom blocks, as well as power, ground, and primary input/output (I/O) interconnections, are often automatically generated using a logic synthesis program.
The IC design is next verified at the logical level, using the functions and the timing characteristics supplied in the macrocell library, to determine whether the design is functionally correct and meets the desired timing requirements. This testing is typically performed using a logic simulation tool, such as Verilog, and other timing analysis tools. Such tools take into account the estimated capacitive loads of physical (mask) interconnections, macrocell delay times, sequential macrocell set-up and hold times and other factors important to achieving an accurate simulation of the IC function and performance. Since capacitive loading due to the physical interconnections is not known at this stage, estimates of the loading based on fanout and design size, among other factors, are used.
After logic simulation and timing analysis are successfully completed, the design logic macrocells are placed on a master array and the macrocells interconnections are physically routed according to the design netlist. Macrocell placement and routing are typically automated using a placement and route tool as mentioned above. After placement and routing (layout) are complete, accurate interconnect parasitics for all nets are extracted from the physical patterns and the resulting delays per net are back annotated to the timing verification tools. The designer then performs post-layout timing verification. If any timing violations are detected, the netlist is modified to remove such violations and placement and routing are incrementally performed on the modified netlist. If no timing violations are found in the post-layout verification, mask layers are generated for the design using special software.
In the next step, the foundry or an external mask supplier uses the generated pattern data to ultimately create wafer masks for the manufacture of the IC. The foundry then uses the resulting masks to fabricate the ICs. Once fabricated, either the foundry or the customer tests the ICs. If the test results are unsatisfactory, the design is modified, and all or a portion of the above process is repeated.
A short netlist for a simple circuit is shown in Table 1:
TABLE 1
Exemplary Netlist
XOR A B C
XOR C CN1 Y
AND A B CA
AND C CN1 CB
NOR CB CA CN
The netlist defines all of the interconnections between the components of the circuit. Each “signal” which interconnects two or more cells, or which represents an input or output for the entire circuit, is actually a node in the circuit which has been assigned a name. Thus the terms “signal” and “node” are often used interchangeably. In the exemplary netlist shown in Table 1, signals A, B and CN
1
are input nodes to the entire circuit, Y and CN are output nodes for the entire circuit, and nodes C, CA and CB are internal nodes.
In order to maintain a competitive edge in the market for microprocessors, it is imperative to reduce the time needed to productize the design, while at the same time increasing the speed and reliability of the microprocessor. Consequently, it becomes necessary for the designers to extract as much as possible from a given family of microprocessors. Advanced design techniques help only to a certain extent in extending the life of a particular family of microprocessors. Most of the des
Chopra Sachin
Wo Kong-Fai
Dinh Paul
Hamilton & Terrile LLP
Smith Matthew
Sun Microsystems Inc.
Terrile Stephen A.
LandOfFree
Abstracting netlist to manage routing information does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Abstracting netlist to manage routing information, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Abstracting netlist to manage routing information will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3153018