semi合集-English.pdf - 第5903页
SEMI P39-0304 E2 © SEMI 2004 6 7.4.2 The set of printable ASCII characters consists of hexadecimal ch aracter codes 21-7E. In ascending order of character code, we ha ve: !"#$%&’()*+,-./0123456789:;<=>?@ […

SEMI P39-0304
E2
© SEMI 2004 5
Table 3 Real Number Types
Format Meaning
‘0’ unsigned-integer Positive whole number
‘1’ unsigned-integer Negative whole number
‘2’ unsigned-integer Positive reciprocal
‘3’ unsigned-integer Negative reciprocal
‘4’ unsigned-integer unsigned-integer Positive ratio
‘5’ unsigned-integer unsigned-integer Negative ratio
‘6’ IEEE-4-byte-float Single-precision floating point
‘7’ IEEE-8-byte-float Double-precision floating point
7.3.2 In types 0 and 1, the real is a whole number—its fractional portion is zero. In types 2 and 3, the unsigned-
integer represents the denominator of a reciprocal, with an implicit numerator of 1. Types 4 and 5 are ratios, with the
numerator listed first, followed by the denominator. Types 6 and 7 are binary floating point numbers in IEEE 754-
1985 format, with the least significant byte of the fraction (byte 0) stored first
.
Figure 3
IEEE Floating Point Formats
Table 4 Real Number Examples
Value Rational Form IEEE-4 Form
0.0 00000000 00000000 00000110 00000000 00000000 00000000 00000000
1.0 00000000 00000001 00000110 00000000 00000000 10000000 00111111
0.5 00000011 00000010 00000110 00000000 00000000 00000000 10111111
0.3125 00000100 00000101 00010000 00000110 00000000 00000000 10100000 00111110
1/3 00000010 00000011 00000110 10101011 10101010 10101010 00111110
2/13 00000101 00000010 00001101 00000110 11011001 10001001 00011101 10111110
7.3.3 EXCEPTION HANDLING
— For types 2–5, a denominator of 0 should be treated as a fatal error. A type
outside the range of 0–7 should be treated as a fatal error.
7.4 Strings
7.4.1 A string is a sequence of zero or more bytes (“characters”) preceded by an unsigned-integer representing the
number of characters in the string:
string -> length byte*
Strings in OASIS are further sub-typed by semantic. A b-string (“binary string”) is a string which may contain any
combination of 8-bit character codes in any sequence. An a-string (“ASCII string”) may contain only printable
ASCII character codes (hexadecimal 21-7E) plus the SP (space) character (hexadecimal 20), in any sequence. An
n-string (“name string”) may contain only printable ASCII character codes (hexadecimal 21-7E), and must have a
length greater than zero.

SEMI P39-0304
E2
© SEMI 2004 6
7.4.2 The set of printable ASCII characters consists of hexadecimal character codes 21-7E. In ascending order of
character code, we have:
!"#$%&’()*+,-./0123456789:;<=>?@ [21-40]
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_‘ [41-60]
abcdefghijklmnopqrstuvwxyz{|}~ [61-7E]
This excludes space (SP), tabs (HT, VT), and all other control characters.
7.4.3 EXCEPTION HANDLING
— OASIS processors should treat illegal characters in a-strings or n-strings as
fatal errors. Zero-length n-strings should also be treated as fatal errors.
7.5 Deltas
7.5.1 A delta represents geometric data (coordinates, vectors, planar offsets, etc.).
7.5.2 A 1-delta is stored as a signed-integer and represents a horizontal or vertical displacement. Bit 0 encodes
direction: 0 for east or north, 1 for west or south. The remaining bits are the magnitude. Horizontal or vertical
alignment is implied by context.
7.5.3 A 2-delta is stored as an unsigned-integer and represents a horizontal or vertical displacement. Bits 0-1
encode direction: 0 for east, 1 for north, 2 for west, and 3 for south. The remaining bits are the magnitude.
7.5.4 A 3-delta is stored as an unsigned-integer and represents a horizontal, vertical, or 45-degree diagonal
displacement. Bits 0-2 encode direction: 0 for east, 1 for north, 2 for west, 3 for south, 4 for northeast, 5 for
northwest, 6 for southwest, and 7 for southeast. The remaining bits are the magnitude (for horizontal and vertical
deltas) or the magnitude of the projection onto the x- or y-axis (for 45-degree deltas).
7.5.5 A g-delta has two alternative forms and is stored either as a single unsigned-integer or as a pair of unsigned-
integers. The first form is indicated when bit 0 is zero, and represents a horizontal, vertical, or 45-degree diagonal
displacement, with bits 1-3 encoding direction, and the remaining bits storing the magnitude, in the same fashion as
a 3-delta. The second form represents a general (x,y) displacement and is a pair of unsigned-integers. Bit 0 of the
first integer is 1. Bit 1 of the first integer is the x-direction (0 for east, 1 for west). The remaining bits of the first
integer represent the magnitude in the x-direction. Bit 0 of the second integer is the y-direction (0 for north, 1 for
south). The remaining bits of the second integer represent the magnitude in the y-direction. Both forms may appear
in a list of g-deltas.
Figure 4
Delta Types

SEMI P39-0304
E2
© SEMI 2004 7
Table 5 Delta Examples
Bit Pattern Type Meaning
11111001 00100011 1-delta
= -2300
11111000 00100011 1-delta
= +2300
10011000 00101010 2-delta
x = +1350
10011011 00101010 2-delta
y = -1350
11001101 00000001 3-delta
x = -25, y = +25
11010111 00000111 3-delta
x = +122, y = -122
11101001 00000011 01111010 g-delta
2
x = +122, y = +61
11101100 00000101 g-delta
1
x = -46, y = -46
10111011 00000001 10110111 00001111 g-delta
2
x = -46, y = -987
7.6 Repetitions
7.6.1 A repetition represents an “array” of cell placements, geometries, or text elements. The repetition is part of
the PLACEMENT, <geometry>, or TEXT record itself. A repetition consists of an unsigned-integer which
encodes the type, followed by any related repetition parameters:
Table 6 Repetition Types
TYPE
Format
0
re-use the previous repetition definition
1 x-dimension y-dimension x-space y-space
2 x-dimension x-space
3 y-dimension y-space
4
x-dimension x-space
1
... x-space
N-1
5
x-dimension grid x-space
1
... x-space
N-1
6
y-dimension y-space
1
... y-space
M-1
7
y-dimension grid y-space
1
... y-space
M-1
8 n-dimension m-dimension n-displacement m-displacement
9 dimension displacement
10
dimension displacement
1
... displacement
P-1
11
dimension grid displacement
1
... displacement
P-1
7.6.1.1 x-dimension, y-dimension, x-space, y-space, dimension, n-dimension, m-dimension, and grid are all
unsigned-integers. displacement, n-displacement, and m-displacement are g-deltas.
7.6.2 TYPE 0 indicates that the previous repetition description, stored in modal variable repetition, is to be re-used.
(See Section 10 on page 11.) No additional values are stored with this type.
7.6.3 TYPE 1 is an N-column (N > 1) by M-row (M > 1) matrix with uniform horizontal and vertical spacing
between the elements. x-dimension is N - 2 and y-dimension is M - 2. The (x-offset, y-offset) (cumulative spacing
in the (horizontal,vertical) direction) of element (i,j) of the repetition (i = 0, ..., N-1 and j = 0, ..., M-1) is
(i * x-space, j * y-space).
7.6.4 TYPE 2 is an N-column (N > 1) by 1-row vector with uniform horizontal spacing between the elements. x-
dimension is N - 2. The (x-offset, y-offset) (cumulative spacing in the (horizontal,vertical) direction) of element i of
the repetition (i = 0, ..., N-1) is (i * x-space, 0).
7.6.5 TYPE 3 is a 1-column by M-row (M > 1) vector with uniform vertical spacing between the elements. y-
dimension is M - 2. The (x-offset, y-offset) (cumulative spacing in the (horizontal,vertical) direction) of element j of
the repetition (j = 0, ..., M-1) is (0, j * y-space).