EDA database
Encyclopedia
An EDA database is a database
specialized for the purpose of electronic design automation
. These application specific databases are required because general purpose databases have historically not provided enough performance for EDA applications.
In examining EDA design databases, it is useful to look at EDA tool architecture, to determine
which parts are to be considered part of the design database, and which parts are the application levels.
In addition to the database itself, many other components are needed for a useful EDA application. Associated with a database are one or more language systems (which, although not directly part of the database, are used by EDA applications such as parameterized cells and user scripts). On top of the database are built the algorithmic engines within the tool (such as timing
, placement
, routing
, or simulation engines
), and the highest level represents the applications built from these component blocks, such as floorplanning. The scope of the design database includes the actual design, library information, technology information, and the set of translators to and from external formats such as Verilog
and GDSII
.
IBM
, Hewlett-Packard
, SDA Systems and ECAD (now Cadence Design Systems
), High Level Design Systems, and many other companies developed EDA specific databases over the last 20 years, and these continue to be the basis of IC-design systems today. Many of these systems took ideas from university research and successfully productized them. Most of the mature design databases have evolved to the point where they can represent netlist data, layout data, and the ties between the two. They are hierarchical to allow for reuse and smaller designs. They can support styles of layout from digital through pure analog and many styles of mixed-signal design.
Coalition has been formed to develop, deploy, and support an open-sourced EDA design database with shared control. The data model presented in the OA DB provides a unified model that currently extends from structural RTL
through GDSII
-level mask data, and now into the reticle
and wafer space. It provides a
rich enough capability to support digital, analog, and mixed-signal design data. It provides technology data that can express foundry process design rules through at least 65 nm, contains the definitions of the layers and purposes used in the design, definitions of VIAs and routing rules, definitions of operating points used for analysis, and so on. OA makes extensive use of IC-specific data compression techniques to reduce the memory footprint, to address the size, capacity, and performance problems of previous DBs. As of 2007, OA is the only modern IC database where the implementation is publicly available.
. It was first released in 1997. Milkyway is the database underlying most of Synopsys' physical design tools:
Milkyway stores topological, parasitic and timing data. Having been used to design thousands of chips, Milkyway is very stable and production worthy. Milkyway is known to be written in C. Its internal implementation is not available outside Synopsys, so no comments may be made about the implementation.
, Avanti released the MDX C-API in 1998. This enables the customers' CAD developers to create plugins that add custom functionality to Milkyway tools (chiefly Astro).
MDX allows fairly complete access to topological data in Milkyway, but does not support timing or RC parasitic data.
, or Scheme. The Scheme interface is deprecated in favor of TCL. IC Compiler supports only TCL.
The MAP-in C-API enables a non-Synopsys application to read and write Milkyway databases. Unlike MDX, MAP-in does not permit the creation of a plugin that can be used from within Synopsys Milkyway tools.
MAP-in does not support access to timing or RC parasitic data. MAP-in also lacks direct support of certain geometric objects.
MAP-in includes Milkyway Development Environment (MDE). MDE is a GUI application used to develop TCL and Scheme interfaces and diagnose problems. Its major features include:
. This database was one of the first in the industry written in C++. Like Milkyway is for Synopsys, Falcon seems to be a stable and mature platform for Mentor’s IC products. Again, the implementation is not publicly available, so little can be said about its features or performance relative to other industry standards.
’s database is not just a disk format with an API, but is an entire system built around their DB as a central data structure. Again, since the details of the system are not publicly available, a direct comparison of features or performance is not possible. Looking at the capabilities of the Magma tools would indicate that this DB has a similar functionality to OpenAccess, and may be capable of representing behavioral (synthesis input) information.
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...
specialized for the purpose of electronic design automation
Electronic design automation
Electronic design automation is a category of software tools for designing electronic systems such as printed circuit boards and integrated circuits...
. These application specific databases are required because general purpose databases have historically not provided enough performance for EDA applications.
In examining EDA design databases, it is useful to look at EDA tool architecture, to determine
which parts are to be considered part of the design database, and which parts are the application levels.
In addition to the database itself, many other components are needed for a useful EDA application. Associated with a database are one or more language systems (which, although not directly part of the database, are used by EDA applications such as parameterized cells and user scripts). On top of the database are built the algorithmic engines within the tool (such as timing
Static timing analysis
Static Timing Analysis is a method of computing the expected timing of a digital circuit without requiring simulation.High-performance integrated circuits have traditionally been characterized by the clock frequency at which they operate...
, placement
Placement (EDA)
Placement is an essential step in electronic design automation - the portion of the physical design flow that assigns exact locations for various circuitcomponents within the chip’s core area...
, routing
Routing (EDA)
In electronic design, wire routing, commonly called simply routing, is a step in the design of printed circuit boards and integrated circuits . It builds on a preceding step, called placement, which determines the location of each active element of an IC or component on a PCB...
, or simulation engines
SPICE
SPICE is a general-purpose, open source analog electronic circuit simulator.It is a powerful program that is used in integrated circuit and board-level design to check the integrity of circuit designs and to predict circuit behavior.- Introduction :Unlike board-level designs composed of discrete...
), and the highest level represents the applications built from these component blocks, such as floorplanning. The scope of the design database includes the actual design, library information, technology information, and the set of translators to and from external formats such as Verilog
Verilog
In the semiconductor and electronic design industry, Verilog is a hardware description language used to model electronic systems. Verilog HDL, not to be confused with VHDL , is most commonly used in the design, verification, and implementation of digital logic chips at the register-transfer level...
and GDSII
GDSII
GDSII stream format, common acronym GDSII, is a database file format which is the de facto industry standard for data exchange of integrated circuit or IC layout artwork. It is a binary file format representing planar geometric shapes, text labels, and other information about the layout in...
.
Mature design databases
Many instances of mature design databases exist in the EDA industry, both as a basis for commercial EDA tools as well as proprietary EDA tools developed by the CAD groups of major electronics companies.IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...
, Hewlett-Packard
Hewlett-Packard
Hewlett-Packard Company or HP is an American multinational information technology corporation headquartered in Palo Alto, California, USA that provides products, technologies, softwares, solutions and services to consumers, small- and medium-sized businesses and large enterprises, including...
, SDA Systems and ECAD (now Cadence Design Systems
Cadence Design Systems
Cadence Design Systems, Inc is an electronic design automation software and engineering services company, founded in 1988 by the merger of SDA Systems and ECAD, Inc...
), High Level Design Systems, and many other companies developed EDA specific databases over the last 20 years, and these continue to be the basis of IC-design systems today. Many of these systems took ideas from university research and successfully productized them. Most of the mature design databases have evolved to the point where they can represent netlist data, layout data, and the ties between the two. They are hierarchical to allow for reuse and smaller designs. They can support styles of layout from digital through pure analog and many styles of mixed-signal design.
The OpenAccess design database
Given the importance of a common design database in the EDA industry, the OpenAccessOpenAccess
OpenAccess is a community effort to provide interoperability, including unified data exchange among integrated circuit design tools through an open standard data API and reference database supporting that API for IC design...
Coalition has been formed to develop, deploy, and support an open-sourced EDA design database with shared control. The data model presented in the OA DB provides a unified model that currently extends from structural RTL
Register transfer level
In integrated circuit design, register-transfer level is a level of abstraction used in describing the operation of a synchronous digital circuit...
through GDSII
GDSII
GDSII stream format, common acronym GDSII, is a database file format which is the de facto industry standard for data exchange of integrated circuit or IC layout artwork. It is a binary file format representing planar geometric shapes, text labels, and other information about the layout in...
-level mask data, and now into the reticle
Photomask
A photomask is an opaque plate with holes or transparencies that allow light to shine through in a defined pattern. They are commonly used in photolithography.-Overview:...
and wafer space. It provides a
rich enough capability to support digital, analog, and mixed-signal design data. It provides technology data that can express foundry process design rules through at least 65 nm, contains the definitions of the layers and purposes used in the design, definitions of VIAs and routing rules, definitions of operating points used for analysis, and so on. OA makes extensive use of IC-specific data compression techniques to reduce the memory footprint, to address the size, capacity, and performance problems of previous DBs. As of 2007, OA is the only modern IC database where the implementation is publicly available.
Synopsys Milkyway
The Milkyway database was originally developed by Avanti Corporation, which has since been acquired by SynopsysSynopsys
Synopsys, Inc. is one of the largest companies in the Electronic Design Automation industry. Synopsys' first and best-known product is Design Compiler, a logic-synthesis tool. Synopsys offers a wide range of other products used in the design of an application-specific integrated circuit...
. It was first released in 1997. Milkyway is the database underlying most of Synopsys' physical design tools:
- IC Compiler and Astro physical synthesisPlace and routePlace and route is a stage in the design of printed circuit boards, integrated circuits, and field-programmable gate arrays. As implied by the name, it is composed of two steps, placement and routing. The first step, placement, involves deciding where to place all electronic components, circuitry,...
- Star-RCXT RC parasitic extractorLayout extractionThe electric circuit extraction or simply circuit extraction, also netlist extraction, is the translation of an integrated circuit layout back into the electrical circuit it is intendedto represent...
- Hercules LVSLayout versus schematicThe Layout Versus Schematic is the class of electronic design automation verification software that determines whether a particular integrated circuit layout corresponds to the original schematic or circuit diagram of the design.-Background:...
/DRCDesign rule checkingDesign Rule Checking or Check is the area of Electronic Design Automation that determines whether the physical layout of a particular chip layout satisfies a series of recommended parameters called Design Rules...
physical verification
Milkyway stores topological, parasitic and timing data. Having been used to design thousands of chips, Milkyway is very stable and production worthy. Milkyway is known to be written in C. Its internal implementation is not available outside Synopsys, so no comments may be made about the implementation.
MDX C-API
At the request of large customers such as Texas InstrumentsTexas Instruments
Texas Instruments Inc. , widely known as TI, is an American company based in Dallas, Texas, United States, which develops and commercializes semiconductor and computer technology...
, Avanti released the MDX C-API in 1998. This enables the customers' CAD developers to create plugins that add custom functionality to Milkyway tools (chiefly Astro).
MDX allows fairly complete access to topological data in Milkyway, but does not support timing or RC parasitic data.
MAP-in Program
In early 2003, Synopsys (which acquired Avanti) opened Milkyway through the Milkyway Access Program (MAP-In). Any EDA company may become a MAP-in member for free (Synopsys customers must use MDX). Members are provided the means to interface their software to Milkyway using C, TclTcl
Tcl is a scripting language created by John Ousterhout. Originally "born out of frustration", according to the author, with programmers devising their own languages intended to be embedded into applications, Tcl gained acceptance on its own...
, or Scheme. The Scheme interface is deprecated in favor of TCL. IC Compiler supports only TCL.
The MAP-in C-API enables a non-Synopsys application to read and write Milkyway databases. Unlike MDX, MAP-in does not permit the creation of a plugin that can be used from within Synopsys Milkyway tools.
MAP-in does not support access to timing or RC parasitic data. MAP-in also lacks direct support of certain geometric objects.
MAP-in includes Milkyway Development Environment (MDE). MDE is a GUI application used to develop TCL and Scheme interfaces and diagnose problems. Its major features include:
- Graphical editor for viewing and editing Milkyway databases
- TCL command interpreter
- Scheme command interpreter
- Translators to read and write popular formats like Verilog, LEF, DEFDesign Exchange FormatDesign Exchange Format is an open specification for representing physical layout of an integrated circuit in an ASCII format. It represents the netlist and circuit layout. DEF is used in conjunction with Library Exchange Format to represent complete physical layout of an integrated circuit while...
and GDSII
Falcon from Mentor
Another significant design database is Falcon, from Mentor GraphicsMentor Graphics
Mentor Graphics, Inc is a US-based multinational corporation dealing in electronic design automation for electrical engineering and electronics, as of 2004, ranked third in the EDA industry it helped create...
. This database was one of the first in the industry written in C++. Like Milkyway is for Synopsys, Falcon seems to be a stable and mature platform for Mentor’s IC products. Again, the implementation is not publicly available, so little can be said about its features or performance relative to other industry standards.
Magma's database
Magma Design AutomationMagma Design Automation
Magma Design Automation is a software company in the electronic design automation industry. The company was founded in 1997 and maintains headquarters in San Jose, California, with facilities throughout North America, Europe, Japan, Asia and India....
’s database is not just a disk format with an API, but is an entire system built around their DB as a central data structure. Again, since the details of the system are not publicly available, a direct comparison of features or performance is not possible. Looking at the capabilities of the Magma tools would indicate that this DB has a similar functionality to OpenAccess, and may be capable of representing behavioral (synthesis input) information.
Major features of an EDA specific database
An EDA specific database is expected to provide many basic constructs and services. Here is a brief and incomplete list of what is needed:- Fundamental Features
- The Design (or Cell) as the Basic Unit
- Shapes and Physical Geometry
- Hierarchy
- Connectivity and Hierarchical Connectivity
- General Constructs
- API Forms
- Utility Layer
- Advanced Features
- Parameterized Designs
- Namespaces and Name Mapping
- Place-and-Route Constructs
- Timing and Parasitic Constructs
- Occurrence Models and Logical/Physical Mapping
- Interface to Configuration management
- Extensibility
- Technology Data
- Layer Definitions
- Design Rules
- Generation and extraction rules for simple devices
- Library Data and Structures: Design-Data Management
- Library Organization: From Designs to Disk Files
- Design-Data Management
- Interoperability Models