Example Datafile
Below is a human-readable text representation of the OASIS binary file that allowed the expression of the above "top" cell view called "Placed_shapes_and_cells_within_an_IC_cell". The top cell is defined by a file-level standard PROPERTY record named S_TOP_CELL. The PROPERTY record below references a PROPNAME record (refNum=0) that has a propname-string called S_TOP_CELL. The top cell contains the placement of three cells called "bottom cells". Bottom cells contain geometric shapes only.
Each line of the OASIS representation below contains (from the left) a record number and a record type followed by a set of values that define that record type. For instance, the first RECTANGLE record below defines the following type of rectangle shape, its size and its absolute location:
- Layer
- Datatype
- Width
- Height
- Lower-left x-coordinate
- Lower-left y-coordinate
Absent in this RECTANGLE record is an option to describe the locations of repeated instances of the rectangle. Also, this record type allows the description of a square by defining the value for the width only. To enable these descriptions, one must set what is referred to as the bit pattern for the RECTANGLE record. For a RECTANGLE record, the bit pattern (either a 1 (enabled) or a 0 (disabled)) is:
SWHXYRDL (Square,Width,Height,X-coordinate,Y-coordinate,Repetition,Datatype,Layer-number).For this RECTANGLE record, the bit pattern is set to 0WHXY0DL (Not a square,Width,Height,X-coordinate,Y-coordinate,Not repetitive,Datatype,Layer-number). The first and second RECTANGLE records in cell "Cell_Placed_Shapes_2" (CELL refNum=1)" define repeated instances of a rectangle. The first RECTANGLE record (0WHXYRDL) uses a type 10 repetition (rep=rep10). The second RECTANGLE record (0WHXYR0L) uses a type 11 repetition (rep=Rep11). There are a total of twelve repetition types (Rep0-Rep11). In the second RECTANGLE record bit pattern, the datatype(D) was set to '0' because the same datatype used in the first RECTANGLE record applies to the second RECTANGLE record. Other OASIS-supported geometric shapes having the record types POLYGON, TRAPEZOID, CTRAPEZOID, CIRCLE and PATH are defined by different bit patterns.
According to the CELLNAME records below, the bottom cells have the following cellname-strings "Cell_Placed_Shapes_1, . . . _2 and . . . _3". Each layer-number that had been assigned to a geometric shape has an association with a LAYERNAME record that defines a layer-interval and a layername-string. In this view, the layername-string, "Layer_Color_Mapping", defines the layer intervals used in a layer color table "layercolormap.data".
The example below was not meant to be an exhaustive description of the OASIS language. The objective was to give the interested reader a general understanding of the scope of the OASIS language and how it applies to the representation and the expression of the electronic layout patterns that define an integrated circuit.
- MAGIC "%SEMI-OASIS\015\012 1 START version="1.0" unit=real0(1000) offsetFlag=0 offsets= 28 PROPERTY 00010CNS refNum=0 count=(1) string12("Placed_shapes_and_cells_within_an_IC_cell") 7 PROPNAME name="S_TOP_CELL" refNum=(0) 3 CELLNAME name="Cell_Placed_Shapes_1" refNum=(0) 3 CELLNAME name="Cell_Placed_Shapes_2" refNum=(1) 3 CELLNAME name="Cell_Placed_Shapes_3" refNum=(2) 3 CELLNAME name="Placed_shapes_and_cells_within_an_IC_cell" refNum=(3) 11 LAYERNAME name="Layer_Color_Mapping" layers=3(25:25) datatypes=1(0:0) 11 LAYERNAME name="Layer_Color_Mapping" layers=4(41:46) datatypes=1(0:0) 11 LAYERNAME name="Layer_Color_Mapping" layers=3(49:49) datatypes=1(0:0) 11 LAYERNAME name="Layer_Color_Mapping" layers=3(63:63) datatypes=1(0:0) 13 CELL refNum=3 17 PLACEMENT CNXY0000 refNum=0 x=0 y=0 17 PLACEMENT CNXY0000 refNum=1 x=0 y=0 17 PLACEMENT CNXY0000 refNum=2 x=0 y=0 13 CELL refNum=0 20 RECTANGLE 0WHXY0DL layer=41 datatype=1 width=3960 height=1980 x=-440 y=-220 20 RECTANGLE 00H0Y00L layer=42 height=2420 y=1760 20 RECTANGLE 0WHXY00L layer=63 width=3080 height=3960 x=0 y=0 20 RECTANGLE 0WHXY00L layer=43 width=2255 height=55 x=110 y=605 20 RECTANGLE 0WH0Y000 width=2860 height=330 y=660 20 RECTANGLE 00H0Y000 height=110 y=2530 20 RECTANGLE 0WH0Y000 width=2750 height=220 y=2640 20 RECTANGLE 0WH0Y000 width=2255 height=550 y=2860 20 RECTANGLE 0WHXY000 width=330 height=440 x=2035 y=165 20 RECTANGLE 0WH0Y000 width=935 height=220 y=2310 20 RECTANGLE 0WH0Y000 width=330 height=385 y=3410 20 RECTANGLE S00XY000 x=2585 y=3465 20 RECTANGLE 0WHXY00L layer=44 width=3330 height=1665 x=-125 y=1760 20 RECTANGLE 0WH0Y000 width=2670 height=410 y=3425 20 RECTANGLE 0WH0Y000 width=3330 height=250 y=3835 20 RECTANGLE 0WHXY000 width=250 height=410 x=2955 y=3425 20 RECTANGLE 0WHXY00L layer=45 width=3330 height=1885 x=-125 y=-125 20 RECTANGLE SW0XY000 width=410 x=2545 y=3425 13 CELL refNum=1 20 RECTANGLE SW0XYRDL layer=25 datatype=0 width=160 x=195 y=690 rep=rep10 20 RECTANGLE 0WHXYR0L layer=46 width=340 height=220 x=105 y=2030 rep=rep11 20 RECTANGLE 0WH0YR00 width=505 height=120 y=2250 rep=rep10 20 RECTANGLE 0W0XY000 width=285 x=325 y=1370 20 RECTANGLE 0WH0Y000 width=120 height=540 y=1490 20 RECTANGLE 00HXY000 height=1045 x=490 y=325 20 RECTANGLE 00H0YR00 height=1320 y=2370 rep=rep2 20 RECTANGLE 0WHXY000 width=890 height=120 x=655 y=1700 20 RECTANGLE 0WHXY000 width=120 height=825 x=875 y=325 20 RECTANGLE SW00YR00 width=340 y=1150 rep=rep10 13 CELL refNum=2 20 RECTANGLE 0WH0Y0DL layer=25 datatype=0 width=120 height=1650 y=2040 20 RECTANGLE 00HXY000 height=1375 x=1425 y=325 20 RECTANGLE 00HX0000 height=1155 x=1810 20 RECTANGLE 0WH0Y000 width=835 height=120 y=1480 20 RECTANGLE 0WH0Y000 width=120 height=2090 y=1600 20 RECTANGLE 00HXY000 height=770 x=2470 y=380 20 RECTANGLE 00H0Y000 height=870 y=2150 20 RECTANGLE 00HXY000 height=760 x=2855 y=1270 20 RECTANGLE 0WHXYR0L layer=49 width=3520 height=440 x=-220 y=0 rep=rep3 20 RECTANGLE 0WHXYR00 width=220 height=495 x=110 y=1155 rep=rep10 20 RECTANGLE 0WH0Y000 width=880 height=220 y=1650 20 RECTANGLE 0WH0Y000 width=330 height=440 y=2090 20 RECTANGLE 0WH0Y000 width=715 height=275 y=2530 20 RECTANGLE 0WHXY000 width=220 height=440 x=165 y=3080 20 RECTANGLE S00XY000 x=605 y=2805 20 RECTANGLE 0W00Y000 width=2200 y=3025 20 RECTANGLE 0WHXY000 width=330 height=110 x=660 y=1870 20 RECTANGLE 0WHXY000 width=770 height=220 x=880 y=1210 20 RECTANGLE 0WHXY000 width=1045 height=275 x=1045 y=715 20 RECTANGLE 00H0Y000 height=220 y=2530 20 RECTANGLE 0WH0YR00 width=330 height=55 y=2750 rep=rep10 20 RECTANGLE 0WHXY000 width=440 height=220 x=1210 y=2090 20 RECTANGLE 0WHXY000 width=220 height=660 x=1430 y=1430 20 RECTANGLE 0WHXY000 width=990 height=55 x=1815 y=2970 20 RECTANGLE 0WHXY000 width=220 height=1540 x=1870 y=990 20 RECTANGLE 0WHXY000 width=605 height=220 x=2310 y=1540 20 RECTANGLE 0WHXYR00 width=220 height=880 x=2695 y=660 rep=rep3 2 ENDRead more about this topic: Open Artwork System Interchange Standard