semi合集-English.pdf - 第5915页
SEMI P39-0304 E2 © SEMI 2004 18 22.2 In rec ord type ‘1 7’, placement-info-byte contains the bit pattern ‘ CNXYR AAF ’. 22.3 In rec ord type ‘1 8’, placement-info-byte contains the bit pattern ‘ CNXYR MAF ’. 22.4 When C …

SEMI P39-0304
E2
© SEMI 2004 17
19.5 LAYERNAME records may be repeated for the same layer name. The complete mapping for a layer name is
formed by the union of all layer, datatype, textlayer, and texttype ranges associated with that name.
20 CELL Record
20.1 A CELL record introduces a cell definition. It has the following format:
‘13’ reference-number
‘14’ cellname-string
20.2 In record type ‘13’, reference-number is an unsigned-integer referring to a CELLNAME record where the
cell name is stored. In record type ‘14’, cellname-string stores the cell name locally. In either representation, the
cell name must be an n-string.
20.3 All subsequent records in the file up to the next CELL, END, or <name> record are considered to be part of
that cell.
20.4 EXCEPTION HANDLING
— Use of a reference-number for which there is no corresponding CELLNAME
record within the same OASIS file should be treated as a fatal error. Multiple CELL records within a single file
which refer to the same cell name (in effect, a duplicate cell definition) should also be treated as a fatal error.
21 XYABSOLUTE & XYRELATIVE Records
21.1 The XYABSOLUTE and XYRELATIVE records control the value of modal variable xy-mode, which in turn
governs the interpretation of the x and y values found in PLACEMENT, <geometry>, and TEXT records. They
consist simply of a record-ID with no additional fields:
‘15’ = XYABSOLUTE
‘16’ = XYRELATIVE
21.2 When each CELL record is encountered, modal variable xy-mode is set to absolute, and related modal position
variables placement-x, placement-y, geometry-x, geometry-y, text-x, and text-y are set to 0. The presence of an
XYRELATIVE record forces modal variable xy-mode to relative, and the presence of an XYABSOLUTE record
forces modal variable xy-mode to absolute. This mode may be changed any number of times within a cell definition.
21.3 In absolute mode, explicit x and y values, when present, are used directly as the actual (x,y) coordinates.
21.4 In relative mode, explicit x and y values, when present, are interpreted as relative displacements from the
stored position information in modal variables placement-x, placement-y, geometry-x,
geometry-y, text-x, or text-y,
depending on the record type in which they occur. In this mode, the actual x-coordinate is computed as the sum of
the x value and its corresponding modal position variable, and the actual y-coordinate is computed as the sum of the
y value and its corresponding modal position variable.
21.5 In both absolute and relative modes, when an x or y value is not explicitly present in the record, the value of
the corresponding modal position variable is used for the actual x or y coordinate. In both absolute and relative
modes, the corresponding modal position variables are always updated with the actual (x,y) coordinate position.
21.6 The interpretation of point-lists and repetitions does not depend on absolute or relative mode. Also, even when
a given element includes a repetition, the corresponding modal position variables (placement-x, placement-y,
geometry-x, geometry-y, text-x, or text-y) are always updated with the actual (x,y) coordinate of the initial element.
22 PLACEMENT Record
22.1 A PLACEMENT record describes one or more placements of the referenced cell within the current cell. It has
the following format:
‘17’ placement-info-byte [ reference-number | cellname-string ] [ x ] [ y ] [ repetition ]
‘18’ placement-info-byte [ reference-number | cellname-string ] [ magnification ] [ angle ]
[ x ] [ y ] [ repetition ]

SEMI P39-0304
E2
© SEMI 2004 18
22.2 In record type ‘17’, placement-info-byte contains the bit pattern ‘CNXYRAAF’.
22.3 In record type ‘18’, placement-info-byte contains the bit pattern ‘CNXYRMAF’.
22.4 When C = 1, the cell reference is explicit, in which case N = 1 means that reference-number (an unsigned-
integer) is present, and refers to a CELLNAME record where the cell name is stored; N = 0 means that cellname-
string (an n-string) is present and stores the cell name locally. When C = 0, N is ignored, and the value of modal
variable placement-cell is used, referring to the same cell as the previous PLACEMENT record.
22.5 x and y are signed-integer coordinates representing either the absolute or the relative (x,y) location of the
placement. X is 1 if x is present, and Y is 1 if y is present. When either x or y is unspecified, the value of modal
variable placement-x or placement-y, respectively, is used instead. Refer to Section 21 on page 17 for a discussion of
how absolute and relative modes affect the interpretation of x and y.
22.6 R is 1 if repetition is present. F = 1 indicates reflection (or flip) about the x-axis; F = 0 indicates no flip.
22.7 In record type ‘17’, magnification is 1.0 and rotation is a counterclockwise integral multiple of 90°: AA = 0 for
0°,
AA = 1 for 90°, AA = 2 for 180°, and AA = 3 for 270°.
22.8 In record type ‘18’, magnification and rotation are reals; angle is dimensioned in degrees, with positive values
denoting a counterclockwise rotation; magnification is, of course, unitless. A is 1 if angle is present, otherwise the
rotation defaults to 0°. M is 1 if magnification is present, otherwise the magnification defaults to 1.0.
22.9 Each successive PLACEMENT record updates all placement-related modal variables.
22.10 EXCEPTION HANDLING
— Use of a reference-number for which there is no corresponding CELLNAME
record should be treated as a fatal error. Any recursive cell reference (a cell placing a copy of itself within itself)
should be treated as a fatal error. Magnification values which are negative or zero should be treated as fatal errors.
Floating point values of NaN or Inf for either magnification or angle should be treated as fatal errors.
PLACEMENT records may refer to CELL records regardless of their relative location within the file, and may also
refer to external cells which are not defined in the same file.
23 Placement Transform Representation
23.1 EDA applications generally define a placement transform as a 3×3 matrix:
T =
X00 X01 0
X10 X11 0
X20 X21 1
which transforms any point (p,q) via left-multiplication by the 1×3 row matrix [ p q 1 ]. Conversion of OASIS
placement data to this form is defined as follows:
X00 = cos( angle ) * magnification
X01 = sin( angle ) * magnification
X10 = -f * sin( angle ) * magnification
X11 = +f * cos( angle ) * magnification
X20 = x
X21 = y
where f = 1 if F = 0, f = -1 if F = 1, “angle” is the rotation angle given by either AA or angle in the PLACEMENT
record, and “magnification” is magnification if specified, else 1.0. Note that if the rotation is a multiple of 90° and
the magnification is 1.0, then the upper 2×2 sub-matrix takes one of the following eight forms and OASIS
processors may optimize accordingly:

SEMI P39-0304
E2
© SEMI 2004 19
Table 14 Standard Placement Values
F angle X00 X01 X10 X11
0 0° +1 0 0 +1
1 0° +1 0 0 1
0 90° 0 +1 1 0
1 90° 0 +1 +1 0
0 180° 1 0 0 1
1 180° 1 0 0 +1
0 270° 0 1 +1 0
1 270° 0 1 1 0
23.2 When repetition is present, the above transform is that of the first
element of the repetition. In general, the
transform of any element E of the repetition is computed by right-multiplying the transform of the first element by
the matrix:
1
0
x-offset
0
1
y-offset
0
0
1
S =
to yield:
X00
X10
(X20 +
x-offset
)
X01
X11
(X21 +
y-offset
)
0
0
1
(Refer to Section 7.6.3 and subsequent paragraphs beginning on page 7 for a discussion of how x-offset and y-offset
are determined for the various repetition types.)
24 TEXT Record
24.1 A TEXT record represents a text element, consisting of an (x,y) coordinate point and an annotation string. It
has the following format:
‘19’ text-info-byte [ reference-number | text-string] [ textlayer-number ] [ texttype-number ]
[ x ] [ y ] [ repetition ]
24.2 The text-info-byte contains the bit pattern ‘0CNXYRTL’.
24.3 When C = 1, the text reference is explicit, in which case N = 1 means that reference-number (an unsigned-
integer) is present, and refers to a TEXTSTRING record where the text string is stored; N = 0 means that text-
string (an a-string) is present and stores the text string locally. When C = 0, N is ignored, and the value of modal
variable text-string is used instead.
24.4 x and y are signed-integer coordinates representing either the absolute or the relative (x,y) location of the text
element. X is 1 if x is present, and Y is 1 if y is present. When either x or y is unspecified, the value of modal
variable text-x or text-y, respectively, is used instead. Refer to Section 21 on page 17 for a discussion of how
absolute and relative modes affect the interpretation of x and y.
24.5 R is 1 if repetition
is present. L is 1 if textlayer-number is present. T is 1 if texttype-number is present.
Both textlayer-number and texttype-number are unsigned-integers. When textlayer-number and/or texttype-
number are unspecified, they assume the value of modal variables textlayer and texttype, respectively.
24.6 Each successive TEXT record updates all text-related modal variables.