GDSII Stream File Translator
The end result of many MMIC designs is a Calma or GDSII stream format file. Advanced Design System's Layout provides a flexible GDSII translator for both reading and writing this format.
The GDSII Stream File Translator is a bi-directional graphics file translator. It can create files in GDSII Stream file format from Advanced Design System layouts, and it can translate graphics files from GDSII Stream file format into Advanced Design System layouts.
The Advanced Design System to GDSII Stream file format translation links the Advanced Design System directly to mask-making equipment that uses the popular GDSII Stream file format. This format, in turn, gives access to a wide range of photoplotters, coordinatographs, E-beam machines, and pattern generators.
The GDSII Stream file format to Advanced Design System format translation makes it easy to use the cell libraries offered by many GaAs semiconductor foundries.
Translation from a layout in the Advanced Design System into GDSII Stream file format is done with the menu command File > Export > GDSII Stream Format.
GDSII has some limitations that may affect your layout, including:
- No support for arcs or circles
- No support for holes or empty regions
- 32-character name limitation
- Limit of 255 mask layers
Curved Element Limitation
Although the Advanced Design System has options for re-mapping layer numbers and structure names, it does not have the full ability to overcome the GDSII limitations regarding curved elements. The program stores arcs as true arcs. When translating arcs to GDSII format, the program converts each arc into line segments. This number can be controlled via the Arc Resolution dialog box (select Edit > Modify > Arc/Circle Resolution from the Layout window). However, a shape with several arcs, such as a transmission line with curved elements, may not be approximated with sufficient resolution given the 200 vertex limitation. Therefore, some consideration should be given to the use of curved elements and the extensive use of arcs and circles in your layout design.
Lack of Support for Holes
Lack of support for holes is usually not a problem, but should be considered. The Advanced Design System can convert shapes with holes into contiguous single polygons by inserting an extra edge (shown below). Inserting an edge is valid for GDSII output, but may be a problem for certain mask generation software.

Filename Limitation
Very long file names (greater than 32 characters) are not supported by GDSII.
Limit on the Number of Layers
If your layout has more than 255 layers, some of these can be re-mapped to appear on the same GDSII layer.
UNITS Limitation
The UNITS record within the GDSII file contains two numbers. The first indicates the ratio of (user units)/(db units), the second indicates the number of db units in a meter. GDSII specifications state that the first number should typically be set to less than 1. ADS requires that this GDSII value to be less than 1 since values greater than 1 are not valid for ADS resolution.
Conclusion
GDSII limitations can affect how you design your layout. The limitation that bears particular consideration is the fact that GDSII Stream format is limited to 200 vertices per polygon/polyline and does not include arcs.
In the Advanced Design System, arcs are stored as true arcs, but are evaluated as polygon segments when translated to GDSII. Although the number of vertices used to approximate an arc can be controlled via the Arc Resolution dialog box (see Curved Element Limitation), the 200 vertices limit may prevent the program from correctly evaluating polygons consisting of several arcs. Therefore, it is best to consider the number of arcs your shapes contain before designing your layout.
GDSII does not have the ability to empty a polygon or create a hole. The translator can output polygons with holes as single-segment polygons with an extra edge added, or as separate polygons. If this is not acceptable, you may want to prohibit the use of holes in your design.
The table below describes GDSII elements and their Advanced Design System layout equivalents.
| Calma/GDSII Element | Layout Equivalent(s) |
|---|---|
| Box element | Rectangle |
| Boundary element | Polygon, Rectangle |
| Path element | Path |
| Boundary element | Circle, Polygon |
| Element | Text |
| Boundary element | Hole |
| Structure element | Design |
| Sref element | Instance |
| None | Pin |
| Path element | Wire |
| Path element | Trace |
| Plex | None |
| Array | Instances |
| Node | None |
Importing GDSII Files
The Advanced Design System reads GDSII files into a layout design without circuit or schematic information, internally converting the drawing data to the current layout units.
For a step-by-step tutorial, see Importing a Layout. For import options, see Import GDSII Options.
Guidelines/Considerations
- If a layers file name is defined in the Import dialog, the file is loaded into memory before the GDSII importer starts. See Importing a Layout for more information.
- If the importer encounters elements on layers not present in the layer definition file, it will automatically add new layers. If new layers are added, the importer saves the revised layer definition file to disk.
- When transferring a GDSII file via FTP, you must specify the binary option.
- When transferring a file via tape, the 2048 block size must be preserved. To write fixed-block sized tapes for transfer to other systems, refer to your computer system documentation.
- When reading a GDSII file, the Advanced Design System ignores reference libraries, font files, generations, format types, and nodes. Element flags (ELFLAGS), complexes (PLEX, see Plex Property), data types, path types, extensions, and element properties are also skipped.
- Reading a GDSII file may also fail if the file is the wrong version or has been corrupted.

Note
Because the GDSII stream is a block-structured binary file, it can easily be corrupted when transferring the file from one system to another. - When reading GDSII path elements, note the following for each path type:
type 0 GDSII path is imported as an ADS path with square corner type. type 1 GDSII path is imported as an ADS path with square corner type resulting in the loss of data in the path's round-ended endpoints and corners. type 2 GDSII path is imported as an ADS path with square corner type and with endpoints that have been extended 1/2 of the path's width. GDSII type 3 is non-existent type 4 GDSII path is imported as an ADS path with square corner type resulting in the loss of data in the path's variable defined endpoints.
Filenames Versus Instance Names
When importing a GDSII file into the Advanced Design System, the design name on the Layout title bar may differ from the GDSII filename. The reason for this is as follows.
The GDSII file format can contain multiple top-level instances that may or may not be related to one another. Because of this, the GDSII filename may not be identical to the top-level instance name.
When importing a GDSII file, the top-level instance is automatically displayed in the Layout window. The name of that instance is reflected in the Layout title bar. In some cases, this name does not match that of the imported file.
GDSII file instance names simplify the tracking of hierarchies within the file. Exporting a GDSII file under a new name will have no effect on the named data contained in the file.
Import GDSII Options
The Import GDSII Options dialog box enables you to specify certain local attributes to control the import of GDSII Stream files. An x appears in the box to the left of selected attributes. To select or deselect an attribute, click it.

| Note To control attributes globally, click the Define Layers button to invoke the Layer Editor. For more information on the Layer Editor, see Defining Layers. |
Data Type Property
Selecting Data Type Property enables import of GDSII files that use the Data Type record in GDSII and retain the information in a property attached to the corresponding Advanced Design System data structure. When enabled, any Data Type records encountered on Boundary or Path structures while importing a GDSII file cause a property named Data Type to be created and attached to the resulting data group in the Advanced Design System. The value of the property is set to the integer value found in the GDSII record. In the reverse manner, Data Type records are created in the GDSII file when enabled for data groups that have a Data Type property with integer value.
Plex Property
Selecting Plex Property enables import of GDSII files that use the PLEX record in GDSII and retain the information in a property attached to the corresponding Advanced Design System data structure. When enabled, any PLEX records encountered on Boundary, Path, SREF, AREF, and TEXT structures while importing a GDSII file cause a property named PLEX to be created and attached to the resulting structure in the Advanced Design System. The value of the property is set to the integer value found in the GDSII record. In the reverse manner, PLEX records are created in the GDSII file when enabled for structures that have a PLEX property with integer value.
Define Layers
This button invokes the Layer Editor. For Layer Editor options, see Defining Layers.
Text Size
The size, in layout units, for text in the imported design. The default value is 1.0. The same size is assumed for all fonts in the GDSII file.
Exporting GDSII Files
When writing a Calma/GDSII file, the GDSII 6.0 release format is used.
For a step-by-step tutorial on exporting files, see Exporting a Layout. For export options, see Export GDSII Options.
Guidelines/Considerations
- You can create a bidirectional GDSII file from the current design file. Translated GDSII files appear in layout representation only. Although no electrical connectivity information is included, hierarchy and mask layer information is preserved.
- The Advanced Design System writes the layout representation of a hierarchical design into GDSII stream format using the current layout units and precision.
- The GDSII file created is of fixed-block size (2048 bytes), and is a proper subset of the stream format.
- Valid GDSII layer numbers are from 0 to 255. The data type for all objects is set to 0.
- Note that only some object attributes are translated:
- A polyline is translated as a path with no specified width, path type, or extension.
- When paths are converted, the endpoint type is ignored and the type 0 is applied (square-ended at digitized point).
- Holes in the program are translated as filled polygons, or as a single polygon with the hole joined to other polygons by a new edge.
- Circles are converted to polygons and arcs are converted to chords.
- Text is translated with a bottom left justification. A scale factor showing magnification of the text height over one user unit and an optional rotation angle are also translated.
- Relative mirroring, translation, scaling, and rotation are transferred. Absolute rotation and magnification are not supported.
- Data groups with more vertices than the number specified by the Maximum Number of Verticies option will be skipped during the translation and a warning will be issued. This value can be as high as 8191 (the UI will not allow higher values). Error and warning messages generated during translation are also printed to the log file. After the translation, this file can be viewed.
- Precision and unit information is stored differently in the GDSII Stream format than in Advanced Design System, but no information is lost in translation. A database-unit to user-unit size appears in the GDSII format; this is equivalent to the Advanced Design System's data base precision. This measurement specifies the smallest dimension obtainable in a design. In the Advanced Design System, this is established as a power of ten. For example, a precision of 3 indicates that .001 is the smallest dimension achievable in the design. Since GDSII format contains database to user units, a 3 precision in the Advanced Design System becomes 1000 database to user units in GDSII.
GDSII dB/user unit = 10 | dB precision |
GDSII further employs user units in terms of number of user units to a meter. Since Advanced Design System units can be inches, microns, mils, etc., the GDSII number of user units to meters is equal to the program dB unit converted to meters.
When reading a new GDSII file, the program precision and units should be set to match those that are in the GDSII file, otherwise information may be lost (especially if the program's database precision is less than that of the GDSII Stream file).
Export GDSII Options
The Export GDSII Options dialog box enables you to specify certain local attributes to control the export of GDSII Stream files. An x appears in the box to the left of selected attributes. To select or deselect an attribute, click it.

| Note To control attributes globally, click the Define Layers button to invoke the Layer Editor. For more information on the Layer Editor, see Defining Layers. |
Paths As Polygons
When Paths As Polygons is selected, the program paths or traces are exported as polygons and GDSII paths are imported as polygons. This should be selected for the following conditions:
This option is deselected as the default.
Holes As Polygons
When this is selected, holes are converted to polygons. GDSII has no concept of holes. When Holes As Polygons is not selected, polygons with holes are translated as single-segment polygons, the false edge segment becoming part of the polygon. Some systems may not be able to tolerate this type of complex polygon. For these systems, select Holes As Polygons.
This option is deselected as the default.
Rectangles as Boxes
ADS rectangles get mapped into GDSII box elements.
Flatten Components
When Flatten Components is selected, all instances whose artwork type is defined with an AEL macro will be flattened when exported. For example, if a design contains an MLIN it will be flattened. This option is deselected as the default. It only affects the current design and will not change the hierarchy.
Flatten
When Flatten is selected, all levels of hierarchy are automatically removed and a single flat design is translated. A component is flattened into its geometric primitives. There are no references from the top-level structure to any other structure in the design. This option is useful when your post-processor does not support or correctly translate hierarchy in GDSII Stream files. Please note: if a substructure was instanced more than once, selecting this option increases the size of the file.
This option is deselected as the default.
Auto Merge
When this attribute is selected, the program outputs shapes and forms with data from simulator elements (mlins, slins) and performs an or operation on each layer before outputting. The original dataset is not modified. This option is deselected as the default.
Data Type Property
Selecting Data Type Property enables export of GDSII files that use the Data Type record in GDSII and retain the information in a property attached to the corresponding Advanced Design System data structure. When enabled, any Data Type records encountered on Boundary or Path structures while importing a GDSII file cause a property named Data Type to be created and attached to the resulting data group in the Advanced Design System. The value of the property is set to the integer value found in the GDSII record. In the reverse manner, Data Type records are created in the GDSII file when enabled for data groups that have a Data Type property with integer value.
This option is deselected as the default.
Plex Property
Selecting Plex Property enables export of GDSII files that use the PLEX record in GDSII and retain the information in a property attached to the corresponding Advanced Design System data structure. When enabled, any PLEX records encountered on Boundary, Path, SREF, AREF, and TEXT structures while exporting a GDSII file cause a property named PLEX to be created and attached to the resulting structure in the Advanced Design System. The value of the property is set to the integer value found in the GDSII record. In the reverse manner, PLEX records are created in the GDSII file when enabled for structures that have a PLEX property with integer value.
This option is deselected as the default.
Maximum Number of Vertices
This enables you to define the maximum number of vertices allowed for one polygon. Valid values are 1 - 8191 inclusive. The default value for this option is 8191.
Layers To Exclude
This enables you to exclude one or more layers from the output file by specifying the layer numbers to exclude, separated by commas. For example:
1,4,9
Define Layers
This button invokes the Layer Editor. For Layer Editor options, see Defining Layers.
Text Size
The size, in layout units, for the text in the exported design. The default value is 1.0. The same size is assumed for all fonts in the GDSII file.
Privacy
Statement
|
Terms of Use
|
Legal |
Contact Us
|
© Agilent 2000-2008 ![]()