semi合集-English.pdf - 第5510页
SEMI P10-0705 © SEMI 1990, 2005 5 7.4 Mask Or der Structure Syntax — The following sy ntax definit ion uses the upper case ke yword to represent the permissible ap plications o f the correspon ding data recor d within th…

SEMI P10-0705 © SEMI 1990, 2005 4
6.23 All <shippable_data> keywords can be followed by <ship_to> specifying the destination and/or method of
transmission for the transmitted data. Whenever applicable, the SEMI <mask_results> file (see §7.5) should be sent
accordingly if electronic transmission is specified.
6.24 <shippable_data> keywords which require reference to specific mask feature locations will reference
CD_SITE_ID and/or REGISTR_MARK_ID which must be unique for each location within all transmissions of
<mask_order> for a given MASK_SET_ID.
6.25 When modifications to this standard are required between ballot cycles (e.g. new data field values “on
request”), users should contact the N.A. SEMI P10 task force leader directly. After a poll of the active task force
members, a tentative recommendation will be posted on the SEMI P10 task force web site at SEMI so that all users
can adopt a common interim solution until a formal ballot can officially resolve the issue.
6.26 Every effort should be made to construct a SEMI P10 file without inconsistencies or ambiguities. If a vendor
detects such flaws in a file from a customer, the vendor should contact the customer to correct the inconsistencies
and/or remove the ambiguities before proceeding with making the mask.
7 Syntax Specification
The following specifies the syntax for the mask order structures. The record order is specific; records must appear in
the sequence shown. Terminology for the individual records and their allowed data values are specified in §8.
7.1 Syntax Symbol Definition — The lower case syntactic names within < > are used to refer to collections of
records. The use of { } around records or collections of records means an arbitrary number of repetitions of the
records, including none at all. The use of [ ] around a record or collection of records means that the collection is
optional.
7.2 Record Syntax A keyword is followed by a data field which is followed by an optional comment. The record
is terminated by a carriage return and/or linefeed. Each of these elements may be preceded by any combination of
spaces or tabs, which will be ignored. At least one space or tab is required preceding the first data value in the
record. An exclamation point (!) is required to initiate a comment. Exclamation points, carriage returns, and
linefeeds are not allowed in keywords, data values or comments. Note that a record consisting of a comment only is
also allowed. The syntax for individual records is defined as:
<record> = [{<separator>} <keyword>
<separator> {<separator>} <data_field>]
[{<separator>} ! <comment>]
{<separator>} <new_line>
where “separator” is a space or a tab, “comment” is any string of printable ASCII characters (plus spaces and tabs),
and “new_line” is a carriage return, linefeed or both.
7.3 Multi-value Data Field Syntax — When data_field contains more than one data_value, such as (x,y) pairs or
(x1,y1,x2,y2) double pairs (see §8), the individual values must be separated by a comma and any combination of
spaces or tabs. One comma is required between each data_value, but not more than one comma. Two commas
without an intervening data value are not permissible.
(x,y) = data_value {separator} comma {separator} data_value
(x,y,z) = (x,y) {separator} comma {separator} (z)
(x1,y1,x2,y2) = (x1,y1) {separator} comma {separator} (x2,y2)
(x,y,x1,y1,x2,y2) = (x,y) {separator} comma {separator} (x1,y1,x2,y2)
For data manipulation operations only, a semicolon separates layers from its datatype, and a dash indicates a range
of layers or a range of datatypes.
layer1;datatype6 , layer3-layer4;datatype1-datatype9

SEMI P10-0705 © SEMI 1990, 2005 5
7.4 Mask Order Structure Syntax — The following syntax definition uses the upper case keyword to represent the
permissible applications of the corresponding data record within the mask order structure.
<mask_order> = START_ORDER SEMI_REVISION CUSTOMER VENDOR
FILE_DATE_TIME [OPERATOR_NAME]
<
mask_set> END_ORDER CHECKSUM
<mask_set> = MASK_SET_ID <
mask_set_options> END_MASK_SET_OPTIONS
{<
mask_group>} END_MASK_SET
<mask_set_options> = [BUSINESS_CONTACT] {BUSINESS_ADDRESS} {BUSINESS_PHONE}
{BUSINESS_FAX} [BUSINESS_EMAIL]
[BILLING_CONTACT] {BILLING_ADDRESS}
{BILLING_PHONE} {BILLING_FAX} [BILLING_EMAIL]
[DESIGN_RULE] [FAB_TECHNOLOGY] [WAFER_FAB]
[CUSTOMER_SPEC CUSTOMER_SPEC_REVISION]
{WAIVER} {WAIVER_OVERRIDE}
[PRICE_UNITS]
[SECURITY_CLASS]
[QS9000]
[ENGINEERING_CONTACT] {ENGINEERING ADDRESS} {ENGINEERING_PHONE}
{ENGINEERING_FAX} [ENGINEERING_EMAIL]
[SHIPPING_CONTACT] {SHIPPING_ADDRESS} {SHIPPING_PHONE}
{SHIPPING_FAX} [SHIPPING_EMAIL]
{SHIPPING_METHOD}
[REPAIRS_AUTHORIZED]
[<
shippable_data>]
{<
data>}
{<
standard_pattern>}
[MASK_SET_NAME [MASK_SET_VERSION] ] [ORDER_ID]
{ADDITIONAL_MASK_SET_INFO}
<data> = DATA_MEDIUM [DATA_LOCATION] [DATA_ID]
[DATA_FORMAT [DXF_ANGLE DXF_UNIT] ]
[DATA_DENSITY] [DATA_FILE_SIZE]
[DATA_COMPRESSION] [DATA_CONSOLIDATION] [DATA_ENCRYPTION]
[DATA_CHECKSUM DATA_CHECKSUM_TYPE ]
{<pattern_data>} {<job_data>}
[
FRACTURE_FILE FRACTURE_FILE_FORMAT]
{MEASURE_FILE_NAME [MEASURE_FILE_FORMAT] }
{CD_MATRIX_FILE_NAME [CD_MATRIX_FILE_FORMAT] }
END_DATA_MEDIUM
<pattern_data> = DATA_PATTERN_NAME {PATTERN_FORMAT} [DATA_FILE_NUMBER]
[PATTERN_UNITS] [PATTERN_CHARACTER_SET]

SEMI P10-0705 © SEMI 1990, 2005 6
[FRACTURE_FILE]
{ [<
data_manipulation>] [<data_function>] }
END_DATA_PATTERN_NAME
<data_manipulation> = START_DATA_MANIPULATION
[
BOOLEAN
[
PATTERN_GENERATION_AREA]
<
data_file_parameters> { <data_file_parameters> } ]
{<
data_fracture>}
END_DATA_MANIPULATION
<data_file_parameters> =
DATA_SOURCE_FILE [PATTERN_FORMAT]
[
DATA_TOP_CELL] [DATA_LAYER_ID]
[
DATA_PATTERN_WINDOW]
{<
data_fracture>}
END_DATA_SOURCE_FILE
<data_function> = START_DATA_FUNCTION
DATA_FUNCTION_PURPOSE
{ SOFTWARE_NAME {SOFTWARE_REVISION}
{ RUNSET_NAME [RUNSET_REVISION] [DATA_LOCATION]
{ PARAMETER_FILE_NAME [PARAMETER_FILE_REVISION] }
{ INPUT_FILE_NAME INPUT_FILE_FORMAT
[TOP_CELL] [DATA_LOCATION] }
{RESULT_FILE_NAME} {SUMMARY_FILE_NAME} {LOG_FILE_NAME} }
}
END_DATA_FUNCTION
<data_fracture> =
START_DATA_FRACTURE
[
SIZING [SIZING_RULE] [SIZING_BORDER_RULE] ]
[
FRACTURING_SCALE] [DATA_SCALE_FACTOR]
[
PATTERN_ADDRESS_SIZE]
[
DARK_INTERNAL_WINDOW] [CLEAR_INTERNAL_WINDOW]
[
EXTERNAL_WINDOW] [ROTATION] [MIRROR]
END_DATA_FRACTURE
<job_data> = DATA_JOB_NAME JOB_FORMAT
<standard_pattern> = STD_PATTERN_NAME PATTERN_FORMAT
<mask_group> = MASK_GROUP_ID [<
mask_options>] END_MASK_GROUP_OPTIONS
PLACEMENT_TOP_CELL {<
mask_definition>}
{<
cell_definition>} {<pattern_group>} END_MASK_GROUP
<mask_options> = [BLANKET_PO_NUMBER] [PO_NUMBER] [SO_NUMBER] [ORDER_ID]
[RELEASE_NUMBER] [LINE_ITEM_NUMBER] [QUOTE_NUMBER]
[STATUS]
[DUE_DATE_TIME_REQUESTED] [
DELIVERY_PRIORITY]