Tuesday, August 12, 2008

GDSII

GDS II 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 hierarchical form. The data can be used to reconstruct all or part of the artwork to be used in sharing layouts, transferring artwork between different tools, or creating photomasks.

History of the GDS II format

Initially, GDS II was designed as a format used to control integrated circuit photomask plotting. Despite its limited set of features and low data density, it became the industry conventional format for transfer of IC layout data between design tools of different vendors, all of which operated with proprietary data formats.

It was originally developed by Calma for its layout design software, "Graphic Data System" ("GDS") and "GDS II". Now the format is owned by Cadence Design Systems.

GDS II files are usually the final output product of the IC design cycle and are given to IC foundries for IC fabrication. GDS II files were originally placed on magnetic tapes. This moment was fittingly called tape out though it is not the original root of the term.

Objects contained in a GDS II file are grouped by assigning numeric attributes to them including "layer number", "datatype" or "texttype". While these attributes were designed to correspond to the "layers of material" used in manufacturing an integrated circuit, their meaning rapidly became more abstract to reflect the way that the physical layout is designed.

As of October 2004, many EDA software vendors have begun to support a new format, OASIS, which may replace GDS II.

GDS II utilities

As the GDS II stream format is the de facto standard, it is supported by nearly all EDA software. Beside the commercial vendors there are a plenty of free GDSII utilities [1]. These free tools includes editors [2], viewers [3], utilities to convert the 2D layout data into common 3D formats [4] [5], utilities to convert the binary format to a human readable ASCII format [6] and program libraries [7].

Notes

1. List of free GDSII utilities http://www.layouteditor.net/links
2. LayoutEditor, a free GDSII editor http://www.layouteditor.net
3. "KLayout" is a free GDSII viewer http://www.klayout.de
4. gds2pov easily convert GDSII data into a nicely rendered 3D view. http://www.atchoo.org/gds2pov
5. With GdsViewer tool, any portion of GDSII artwork can be exported to 3D VTK file. The latter can be viewed and manipulated with VTK compatible viewers, e.g. ParaView http://www.gbresearch.com/gdsviewer
6. GDS Utilities can convert binary GDSII files to ASCII representation, http://www.gbresearch.com/gdsutilities
7. Ruby GDSII Library for reading, manipulating, and writing GDSII data in the Ruby programming language http://www.rubyforge.org/projects/gdsii

No comments: