Methods and apparatus are described that allow an integrated circuit designer to design integrated circuits for more than one process technology using a single master design environment. The master design environment is achieved, in part, by the creation of a centralized master database that comprises device models belonging to more than one process technology. Creation of the master database occurs by parsing a plurality of external databases comprising device models belonging to more than one process technology. The use of a single master design environment simplifies the task of designing an integrated circuit, and also reduces the chance of error.
|
14. An apparatus for designing an integrated circuit comprising a data processing unit having a processor and a memory and being operative to:
receive a source design comprising information identifying a plurality of devices;
receive information identifying a target process technology;
determine whether each of the plurality of devices in the source design has a corresponding device model belonging to the target process technology in a master database, the master database being created by parsing a plurality of external databases comprising a plurality of device models belonging to more than one process technology and storing the plurality of device models as a function of the more than one process technology; and
verify the operation of the source design in the target process technology using the corresponding device models belonging to the target process technology in the master database;
wherein the plurality of device models in the master database is represented by one or more device model character strings, the plurality of devices in the source design is represented by one or more source device character strings, and determining whether each of the plurality of devices in the source design has a corresponding device model belonging to the target process technology in the master database comprises comparing at least one of the one or more device model character strings with at least one of the one or more source device character strings.
1. A method for designing an integrated circuit comprising the steps, performed by a data processing unit including a processor and a memory, of:
receiving a source design comprising information identifying a plurality of devices;
receiving information identifying a target process technology;
determining whether each of the plurality of devices in the source design has a corresponding device model belonging to the target process technology in a master database, the master database being created by parsing a plurality of external databases comprising a plurality of device models belonging to more than one process technology and storing the plurality of device models as a function of the more than one process technology; and
verifying the operation of the source design in the target process technology using the corresponding device models belonging to the target process technology in the master database;
wherein the source design is modified when the verifying step indicates the source design is inoperative in the target process technology;
wherein the plurality of device models in the master database is represented by one or more device model character strings, the plurality of devices in the source design is represented by one or more source device character strings, and the step of determining whether each of the plurality of devices in the source design has a corresponding device model belonging to the target process technology in the master database comprises comparing at least one of the one or more device model character strings with at least one of the one or more source device character strings.
13. A computer-readable medium having stored therein instructions for causing a data processing unit including a processor and a memory to execute the steps of:
receiving a source design comprising information identifying a plurality of devices;
receiving information identifying a target process technology;
determining whether each of the plurality of devices in the source design has a corresponding device model belonging to the target process technology in a master database, the master database being created by parsing a plurality of external databases comprising a plurality of device models belonging to more than one process technology and storing the plurality of device models as a function of the more than one process technology; and
verifying the operation of the source design in the target process technology using the corresponding device models belonging to the target process technology in the master database;
wherein the source design is modified when the verifying step indicates the source design is inoperative in the target process technology;
wherein the plurality of device models in the master database is represented by one or more device model character strings, the plurality of devices in the source design is represented by one or more source device character strings, and the step of determining whether each of the plurality of devices in the source design has a corresponding device model belonging to the target process technology in the master database comprises comparing at least one of the one or more device model character strings with at least one of the one or more source device character strings.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
the step of receiving the source design comprises a user entering information characterizing a layout representation and a schematic representation of the source design into the data processing unit; and
the step of verifying the operation of the source design comprises comparing the functionality of an electrical circuit represented by the layout representation with an electrical circuit represented by the schematic representation.
10. The method of
11. The method of
modifying the source design;
determining whether each of the plurality of devices in the modified source design has a corresponding device model belonging to the target process technology in the master database; and
verifying the operation of the modified source design in the target process technology using the corresponding device models belonging to the target process technology in the master database.
12. The method of
|
This invention relates to the design of integrated circuits and, more specifically, to methods and apparatus for the design of integrated circuits.
Circuit designers frequently wish to have a given integrated circuit design be produced at more than one integrated circuit fabrication site (“foundry”). Unfortunately, due to differences in tooling and process specializations, process technologies used at different foundries are rarely identical. Typically, each process technology has at least its own minimum design rules and electrical parameters.
In order to assist the designer in creating designs capable of being produced at a specific foundry, most foundries allow an integrated circuit designer to access a foundry-specific “process design kit,” or PDK. The PDK, coupled with various other generic design software, usually constitutes the basic environment necessary to design an integrated circuit. A fully integrated PDK includes all the necessary components to design, simulate, layout and verify a chip design. Once the design is in acceptable form, a file, typically in a binary format called “Graphic Design System II” or “GDSII” is submitted to the foundry for reticle-build processing and eventual integrated circuit production.
Unfortunately, there is little standardization among process design kits from different foundries. Each provider typically has its own way of developing, delivering and describing the kits. This lack of standardization requires that the designer “migrate” or “port” a design to a given PDK environment in order to create a design capable of being produced at the corresponding foundry. Since each PDK is different, an unfamiliar PDK presents the user with a relatively steep learning curve. Moreover, the migration process is time consuming, error prone and requires the creation of multiple copies of the original design database. Once a design is migrated to more than one process technology, multiple copies of the design will need to be maintained. Future modifications to the design then need to be made independently in each separate design environment, often leading to mistakes and inconsistencies. These added tasks and their associated risks create a significant challenge to integrated circuit designers striving to meet time-to-market opportunities.
Because of these disadvantages, methods and apparatus that allow an integrated circuit designer to design integrated circuits for more than one process technology using a single design environment would be extremely advantageous.
The present invention addresses the above-identified need by providing novel methods and apparatus that allow an integrated circuit designer to design integrated circuits for more than one process technology using a single master design environment. The master design environment is achieved, in part, by the creation of a centralized master database that comprises device models belonging to more than one process technology.
In accordance with an aspect of the invention, a method for designing an integrated circuit comprises the steps, performed by a processing unit including a processor and a memory, of receiving a source design comprising information identifying a plurality of devices and receiving information identifying a target process technology. In addition, the method includes determining whether each of the plurality of devices in the source design has a corresponding device model belonging to the target process technology in a master database. The master database is created by parsing a plurality of external databases comprising a plurality of device models belonging to more than one process technology and storing the plurality of device models as a function of the more than one process technology. The method further comprises verifying the operation of the source design in the target process technology using the corresponding device models belonging to the target process technology in the master database.
Advantageously, the use of a single design environment eliminates the need to migrate or port a given integrated circuit design to a new PDK in order to create a design capable of being produced at the corresponding foundry. Furthermore, the requirement that a designer learn more than one design environment is also eliminated. These benefits simplify the task of designing an integrated circuit, and also reduce the chance of error.
This invention will be illustrated in conjunction with an exemplary method for designing integrated circuits and an associated data precessing unit. It should be understood, however, that the invention is not limited to the illustrative embodiments presented herein. Modifications and expansions of the illustrative embodiments will be readily apparent to those skilled in the art.
Referring again to
In accordance with another aspect of the invention, the master database is created by parsing a plurality of external databases that contain device models belonging to more than one process technology.
The device models obtained by the parsing step preferably contain device parameters which describe common integrated circuit components such as, but not limited to, resistors, capacitors, inductors, voltage and current sources, transmission lines, switches, and semiconductor devices (e.g., diodes and metal-oxide-semiconductor field effect transistors (MOSFETS)). The device models allow electrical operating characteristics of a device to be determined from information supplied from the integrated circuit source design and/or designer such as device size, input voltages and device operating temperatures. For example, a source design may describe a resistor of a given length, width and operating temperature. The associated device model for this type of resistor would allow the electrical resistance of the resistor to be determined if the resistor were formed using a specific process technology at a specific foundry.
The device models in the master database will preferably be in a format compatible with SPICE (Simulation Program with Integrated Circuits Emphasis), a freely available circuit simulation programs developed at the University of California, Berkeley. SPICE is commonly used by foundries to describe devices and by integrated circuit designers to verify integrated circuit designs. SPICE, or program similar to it, will be familiar to one of ordinary skill in the art. Moreover, many publications describe the program in detail, such as The SPICE3f User's Manual, University of California, Berkeley, which may be obtained on the public internet and which is incorporated by reference. As an illustration, a SPICE-compatible device model for a resistor will typically contain device parameters such as temperature coefficients, sheet resistance and length/width parameters that describe device narrowing due to process biases. A device model for a more complex device, such as an n-type MOSFET (NMOS) will, on the other hand, typically contain many more device parameters (often greater than twenty). These parameters may describe the threshold voltage, source and drain resistances, diffusion lengths, and many other characteristics of the device. A device model will also contain a device model name to identify that model.
Again referring to
Once the source design schematic is received, step 115 is performed wherein the user chooses a target process technology from among those process technologies with device models stored on the master database 350. The target process technology is the process technology for which the designer wishes to verify the source design. Step 115 is preferably performed by the user choosing from a list of available process technologies displayed to the user on the user interface of the data processing unit 200.
Subsequently, the data processing unit 200 determines whether each of the plurality of devices in the source design schematic has a corresponding device model belonging to the target process technology contained in the master database. This step is shown as step 120 in
In accordance with yet another aspect of the invention, the data processing unit 200 will indicate to the designer the existence of an “unsupported” device if a device in the source design is determined not to have a corresponding device model in the master database 350. This step is shown as step 125 in
After the devices in the source design are determined to have associated device models in the master database 350, the source design schematic is in position for simulation in the target process technology. This simulation step is represented by step 135 in the illustrative method embodiment shown in
Additionally or alternatively, the simulation step 135 may include a timing verification. Timing verification enables the propagation delays through each branch of the circuit to be determined. This may be particularly useful where the integrated circuit design has to meet stringent time specifications and, therefore, propagation delays must be reduced. Moreover, the simulation step may include fault simulations. Fault simulations check whether possible circuit faults arising out of manufacturing defects can be detected at the outputs by applying suitable sets of test patterns at the inputs. A fault “dictionary” may be produced thereby, allowing the designer to refine the test patterns until the maximum number of faults is covered. This dictionary becomes critical when actual integrated circuits are tested.
Step 140 in
The next series of steps in the illustrative method embodiment of
A source design schematic may be produced in a number of different ways which will be familiar to one skilled in the art. The designer, may, for instance, use a layout-editing program, such as Cadence Virtuoso, to create the layout. Alternatively, some computer-based programs may be capable of automatically converting a source design schematic into a source design layout that is “correct by construction.” Usually, however, a layout produced in this automated way is not optimized for area efficiency and circuit performance. Therefore, the designer will typically use a layout-editing program to modify the resultant layout to achieve these desirable characteristics.
Step 145 in
In step 420 of
Step 430 in
As further shown by step 155 in
If the results of step 155 of
It should be noted that a foundry may periodically change the device models associated with a given process technology. When this occurs, it will be necessary to recreate the master database by again parsing the appropriate external databases. The recreation of the master database may be performed on a regular basis or, alternatively, may be performed only when notice of changes to the device models in an external database is received, if such notice is available.
It should also be noted that integrated circuits formed from integrated circuit designs that were created in accordance with this invention are considered part of this invention. One skilled in the art will know how to form an integrated circuit from an integrated circuit design. Typically, a plurality of identical integrated circuits are formed in a repeated manner on a surface of a silicon wafer using various semiconductor processing equipment and techniques. The integrated circuits are typically cut from the wafer, packaged and tested before they are utilized or sold.
It should be emphasized that the above-described method embodiments of the invention are intended to be illustrative only. Numerous other embodiments of the invention will fall within the scope of the following claims. For instance, another embodiment may comprise a computer-readable medium having stored therein instructions for causing a data processing unit to execute the steps of designing an integrated circuit in accordance with aspects of the invention. These numerous other alternative embodiments will be apparent to one skilled in the art.
Williams, Joshua, Boshart, Shawn, Krska, Jee-Hoon, Lentz, John Gavin
Patent | Priority | Assignee | Title |
7584440, | Oct 12 2006 | Cadence Design Systems, Inc. | Method and system for tuning a circuit |
8612898, | Aug 14 2012 | GLOBALFOUNDRIES U S INC | Identification of illegal devices using contact mapping |
9785734, | Jul 29 2015 | GLOBALFOUNDRIES U S INC | Method and system for adjusting a circuit symbol |
Patent | Priority | Assignee | Title |
5210701, | May 15 1989 | Cascade Design Automation Corporation | Apparatus and method for designing integrated circuit modules |
6128768, | Nov 08 1994 | Synopsys, Inc. | Method of extracting layout parasitics for nets of an integrated circuit using a connectivity-based approach |
6219821, | Apr 03 1998 | Synopsys, Inc | Computers systems and methods for verifying representations of a circuit design |
6477683, | Feb 05 1999 | TENSILICA, INC | Automated processor generation system for designing a configurable processor and method for the same |
6529913, | Oct 15 1999 | CADENCE DESIGN SYSTEMS INC | Database for electronic design automation applications |
6530065, | Mar 14 2000 | Transim Technology Corporation | Client-server simulator, such as an electrical circuit simulator provided by a web server over the internet |
6553542, | Dec 29 2000 | Texas Instruments Incorporated | Semiconductor device extractor for electrostatic discharge and latch-up applications |
6578179, | Sep 29 2000 | Kabushiki Kaisha Toshiba | LSI layout design apparatus, layout design method, recording medium recording layout design program, and semiconductor integrated circuit |
6587997, | Jul 16 2001 | Taiwan Semiconductor Manufacturing Company | Automatic resistance and capacitance technology file generator for multiple RC extractors |
6701289, | Jan 27 1997 | Unisys Corporation | Method and apparatus for using a placement tool to manipulate cell substitution lists |
6704908, | |||
6851094, | Feb 28 2000 | CADENCE DESIGN SYSTEMS INC | Automated method and system for selecting and procuring electronic components used in circuit and chip designs |
6950995, | Jan 21 2003 | Polaris Innovations Limited | Method of resolving mismatched graphical symbols in computer-aided integrated circuit design |
6968518, | Jan 21 2003 | Polaris Innovations Limited | Method of resolving missing graphical symbols in computer-aided integrated circuit design |
6990650, | Jan 31 2002 | Cadence Design Systems | Method and apparatus for performing technology mapping |
7020854, | Feb 05 1999 | Tensilica, Inc. | Automated processor generation system for designing a configurable processor and method for the same |
7028272, | Jan 03 2002 | Texas Instruments Incorporated | Reducing cell library development cycle time |
7039881, | Dec 08 1999 | Modification of integrated circuits | |
7039882, | Jun 17 2002 | Technology dependent transformations for Silicon-On-Insulator in digital design synthesis | |
7051297, | Aug 04 2003 | Bell Semiconductor, LLC | Method and apparatus for mapping platform-based design to multiple foundry processes |
7062729, | Sep 22 2004 | TWITTER, INC | Method and system for obtaining a feasible integer solution from a half-integer solution in hierarchical circuit layout optimization |
7069533, | Mar 14 2003 | Chatered Semiconductor Manufacturing, LTD | System, apparatus and method for automated tapeout support |
7076760, | Jan 31 2002 | Cadence Design Systems | Method and apparatus for specifying encoded sub-networks |
7092865, | Sep 10 2002 | XILINX, Inc. | Method and apparatus for timing modeling |
7146586, | Nov 19 2002 | Prophicy Semiconductor , Inc. | System and method for automated electronic device design |
7171346, | Sep 01 2000 | SHENZHEN XINGUODU TECHNOLOGY CO , LTD | Mismatch modeling tool |
20020032493, | |||
20040143799, | |||
20050071792, | |||
20050216877, | |||
20050273736, | |||
20060101356, | |||
20060212229, | |||
20060218512, | |||
20060271892, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 22 2004 | Agere Systems Inc. | (assignment on the face of the patent) | / | |||
Jan 11 2005 | KRSKA, JEE-HOON | AGERE Systems Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 016244 | /0560 | |
Jan 11 2005 | LENTZ, JOHN GAVIN | AGERE Systems Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 016244 | /0560 | |
Jan 11 2005 | BOSHART, SHAWN | AGERE Systems Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 016244 | /0560 | |
Jan 12 2005 | WILLIAMS, JOSHUA | AGERE Systems Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 016244 | /0560 | |
May 06 2014 | Agere Systems LLC | DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT | PATENT SECURITY AGREEMENT | 032856 | /0031 | |
May 06 2014 | LSI Corporation | DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT | PATENT SECURITY AGREEMENT | 032856 | /0031 | |
Aug 04 2014 | Agere Systems LLC | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 035365 | /0634 | |
Feb 01 2016 | DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT | Agere Systems LLC | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS RELEASES RF 032856-0031 | 037684 | /0039 | |
Feb 01 2016 | DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT | LSI Corporation | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS RELEASES RF 032856-0031 | 037684 | /0039 | |
Dec 08 2017 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | Bell Semiconductor, LLC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 044887 | /0109 | |
Dec 08 2017 | Broadcom Corporation | Bell Semiconductor, LLC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 044887 | /0109 | |
Jan 24 2018 | Bell Northern Research, LLC | CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 045216 | /0020 | |
Jan 24 2018 | Bell Semiconductor, LLC | CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 045216 | /0020 | |
Jan 24 2018 | HILCO PATENT ACQUISITION 56, LLC | CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 045216 | /0020 | |
Apr 01 2022 | CORTLAND CAPITAL MARKET SERVICES LLC | HILCO PATENT ACQUISITION 56, LLC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 059720 | /0223 | |
Apr 01 2022 | CORTLAND CAPITAL MARKET SERVICES LLC | Bell Semiconductor, LLC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 059720 | /0223 | |
Apr 01 2022 | CORTLAND CAPITAL MARKET SERVICES LLC | Bell Northern Research, LLC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 059720 | /0223 |
Date | Maintenance Fee Events |
Jun 27 2008 | ASPN: Payor Number Assigned. |
Aug 26 2011 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Oct 16 2015 | REM: Maintenance Fee Reminder Mailed. |
Mar 04 2016 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Mar 04 2011 | 4 years fee payment window open |
Sep 04 2011 | 6 months grace period start (w surcharge) |
Mar 04 2012 | patent expiry (for year 4) |
Mar 04 2014 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 04 2015 | 8 years fee payment window open |
Sep 04 2015 | 6 months grace period start (w surcharge) |
Mar 04 2016 | patent expiry (for year 8) |
Mar 04 2018 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 04 2019 | 12 years fee payment window open |
Sep 04 2019 | 6 months grace period start (w surcharge) |
Mar 04 2020 | patent expiry (for year 12) |
Mar 04 2022 | 2 years to revive unintentionally abandoned end. (for year 12) |