GDSII Stream format is the standard file format for transfering/archiving 2D graphical design data. It contains a hiearchy of structures, each structure containing. Beyond that, let me say that the stream format is quite simple. I suspect that the people at Calma put a lot of thought into creating a file that. Learn files and view a list of programs that open them.
|Published (Last):||8 April 2005|
|PDF File Size:||16.12 Mb|
|ePub File Size:||11.84 Mb|
|Price:||Free* [*Free Regsitration Required]|
Table of Contents Previous section: See also the web site http: This appendix omits the description of tape formatting, since disk files and disk file images on tape and other media cile now the norm .
SPIE Handbook of Microlithography, Micromachining and Microfabrication
The pattern data is considered to be contained in a “library” of “cells”. Cells may contain geometrical objects such as polygons foratpaths, and other cells. Objects in the cell are assigned to “layers” of the design. Different layers typically represent different processing steps for exposure on separate mask plates.
Geometrical objects may also be tagged with “datatypes”, which can be used for any purpose, but are most commonly used to group together similarly sized objects for tile of the proximity effect. There is no explicitly stated limit fil the level of hierarchy the degree of cell nesting ; however, most CAD programs impose a limit of around 32 levels.
GDSII interpreters will either impose such a limit explicitly, or will impose an implicit limit by running out of memory during recursive operations.
A header record 2. One or more Stream records 3.
Library name record 4. End of library token. An example of a common record order see below for record descriptions follows: ENDEL end of element. The minimum record length is four bytes.
Records can be infinitely long. The first four bytes of a record are the header. The first two bytes of the header contain a count in eight-bit bytes of the total record length.
The count tells you where one record ends and another begins. The next record begins immediately after the last byte included in the count.
The third byte of the header is the record type also known as a “token”.
B.2 Calma GDS II stream format (GDSII)
The fourth byte of the header describes the type of data contained within the record see table below. The fifth through last bytes of a record are data. Possible types and values are: No data present 0. Two-byet signed integer 2. Four-byte signed integer 3. Four-byte real not used 4. Two- and four-byte signed integers use the usual twos complement format for negative values.
The more significant bytes appear first in the file, so that by default no byte swapping is required when reading the integers with a big-endian CPU e. Byte swapping is required when reading or writing integers with a little-endian machine, such as a VAX.
Real numbers are not represented in IEEE format. A floating point number is made up of three parts: The value of the number is defined to be mantissa 16 exponent.
For an 8-byte real, gdsii mantissa is in bits 8 to The decimal point of the binary mantissa gdsi just to the left of bit 8. Normalization is a process whereby the mantissa is shifted left one hex digit at a time until its left four bits represent a non-zero quantity. For every hex digit shifted, the fild is decreased by one.
Since the mantssa is shifted four bits at a time, it is possible for the left three bits of a normalized mantissa to be zero. A zero value is represented by a number with all bits zero. The representation of negative numbers is the same as that of positive numbers, except that the highest order bit is 1, not 0.
If a character string is an odd number of bytes long it is padded with a null character. The following is a list of record formwt. The first two numbers in brackets are the record type and the last two numbers in brackets are the data type see the table above.
Fiel that the data type e. The first two bytes of the record header contain a count in eight-bit bytes of the total record length. The third byte of the header is the record type also known as a “token” shown below, and the fourth byte is the data type.
All record numbers are shown in hexidecimal. Values are 0, 3, 4, 5, and The string must adhere to CDOS file name conventions for length and valid characters, and may contain file extensions for,at as “. The first is the size of a database unit in user units. The second is the size of a database unit in meters.
Typically, the first number is less than 1, since you use more than 1 database unit per user ifle. To calculate the size of a user unit in meters, divide the second number by the first. This marks the end of a library. A structure name forma be up to 32 characters long. This marks the end of a structure. This marks the beginning of a bounary element polygon. PATH  No data is present. This marks the beginning of a path element. This marks the beginning of a structure reference element a reference or “call” to another cell in the library.
This marks the beginning of an array reference element an array of cells. This marks the beginning of tormat text element. The value must be from 0 gfsii A negative value for width means that the width is absolute; i. If omitted, zero is assumed. Fkle  Four-byte signed integer: Each X or Y coordinate is four bytes long. Path and boundary elements may have up to pairs of coordinates.
A path must have at least 2, and a formah at least 4 pairs of coordinates. The first and last point of a boundary must coincide. A text or SREF element must have only one pair of coordinates. An AREF has exactly three pairs of coordinates, which specify the orthogonal array lattice. In an AREF the first point locates a position which is displaced from the reference point by the inter-column spacing times the number of columns.
The third point gdsik a position which is displaced from the reference point by the inter-row spacing times the number of rows. A node may have from 1 to 50 pairs of coordinates.
A box must gfsii five pairs of coordinates with the first and last points coinciding. This gsii the end of an element. The third and fourth bytes contain the nunber of rows.
Neither the number of columns nor the number of rows may exceed 32, decimal and both are positive. NODE  No data is present. This marks the beginning of a node. The value of the text type must ge in the range of 0 to Bits 10 and 11, taken together as a binary number, specify the font. Bits 12 and 13 specify the vertical presentaton 00 means top, 01 means middle, and 10 means bottom. Bits 0 through 9 are reserved for future use and must be cleared. If this record is omitted, then top-left justification and font 0 are assumed.
Bit 0 leftmost specifies reflecton.
GDS II (Calma GDS II)
If it is set, then reflection about the X axis is applied before angular rotation. For AREFs, the entire array lattice is reflected, with the individual array elements riidly attached. Bit 13 flags absolute magnification.
Bit 14 flags absolute angle. Bit 15 rightmost and all remaining bits are reserved for future use and must be cleared. If this record is omitted, then cormat element is assumed to have no reflection and its magnification and angle are assumed to be fiel. MAG [1B05] Eight-byte real: If omitted, a magnification of 1 is assumed. For an AREF, the angle rotates the entire array lattice with the individual array elements regidly attached about the array reference point.