semi合集-English.pdf - 第2683页

SEMI E97-0200A © SEMI 2000 3 Module: Global typedef string Identifier ; typedef unsigned long Flags ; struct NamedValue { Identifier name; any argument; long len; Flags arg_modes; }; typedef NamedValue NameValue ; typede…

100%1 / 7923
SEMI E97-0200A © SEMI 2000 2
These extensions will be addressed before upgrade to
full standard status.
3.1.6 The interfaces specified for MESFactory, Area,
and ComponentManager are included in the E81
responsibilities for the Factory Component within
Factory Operations. These interfaces will need to be
moved to that component when it is considered in a
future ballot.
4 Referenced Standards
4.1 SEMI Standards
SEMI E5 — SEMI Equipment Communications
Standard 2 Message Content (SECS-II)
SEMI E10 — Standard for Definition and
Measurement of Equipment Reliability, Availability,
and Maintainability (RAM)
SEMI E81 — Provisional Specification for CIM
Framework Domain Architecture
4.2 Other Standards
UML Notation Guide, Version 1.1, document number
ad/97-08-05, Object Management Group
1
ISO/IEC International Standard 14750 (also ITU-T
Recommendation X.920) –– Information Technology –
Open Distributed Processing – Interface Definition
Language
2
NOTE 1: As listed or revised, all documents cited shall be the
latest publications of adopted standards.
5 Terminology
5.1 abstract interface — an interface specified only
for inheritance rather than for implementation in order
to standardize common features shared by all
specializations of the interface.
6 Requirements
6.1 Global Type Definitions
6.1.1 This section describes data type definitions and
exceptions that are global in nature. By “global” it is
meant that they are designed to be used by any
component within the CIM Framework. This
specification does not address how they are
implemented within a CIM Framework conformant
1 UML Notation Guide v1.1 is available to the general public at
http://www.omg.org/cgi-bin/doclist.pl, +1-508-820 4300, Object
Management Group, Inc. , Framingham Corporate Center, 492 Old
Connecticut Path, Framingham, MA 01701.
2 ISO Central Secretariat, 1, rue de Varembé, Case postale 56, CH-
1211 Genève 20, Switzerland
application; that level of detail is within the realm of the
development effort.
6.1.2 Global type definitions are specified as IDL
declarations which may be referenced by any CIM
Framework interface. The CIM Framework uses the
keyword typedef to define aliases for basic object types,
but with additional implied semantics. (e.g., the units
typedef defines a string, whose contents conform to
definitions found in SEMI E5). The keyword struct
begins the type declaration for record structures
composed of a collection of named and typed values.
The third form of type definition is an enumerated type
beginning with the reserved word enum. Enumerated
types are used to declare a list of tokens that can be
used as values of that type. Enumerated types are
mainly used to denote the states of an object for
communication in CIM Framework events. Finally,
collections of values are declared with the keyword
sequence. This kind of type definition may or may not
imply significance to the ordering of the members in
the sequence. Where no ordering constraint is
mentioned, the elements of the sequence are not
assumed to be in any meaningful order.
NOTE 2: In the following definitions, “//” or “/* .... */”
delimits a comment.
NOTE TO THE READER: The comments in the following
sections (described in NOTE 2, above) appear to immediately
precede, rather than follow, the items they discuss. — SEMI
Staff
6.1.3 All CIM Framework specifications will be
declared within the context of the CIMFW module
which spans all of the components of the CIM
Framework. Within the CIMFW module, the global
type definitions will be declared within a second-level
module called Global.
SEMI E97-0200A © SEMI 20003
Module: Global
typedef string Identifier;
typedef unsigned long Flags;
struct NamedValue {
Identifier name;
any argument;
long len;
Flags arg_modes;
};
typedef NamedValue NameValue;
typedef sequence <NamedValue> NameValueSequence;
typedef string PropertyName;
struct Property {
PropertyName property_name;
any property_value;
};
typedef sequence <Property> Properties;
/* This type definition represents units for factory parameters, measurements. etc., and conforms to the SEMI E5
standard for representation of units. In that standard, the string contains a code representing a value of the units. For
example, “ns” would mean nano-seconds; “A” for ampere; and “wfr” for wafer. */
typedef string Unit;
typedef string Units;
/* This type definition represents a sequence of string values. */
typedef sequence <string> StringSequence;
/* This type definition represents a sequence of any values. */
typedef sequence <any> AnySequence;
/* This type definition represents a sequence of long values. */
typedef sequence <long> LongSequence;
/* This enumerated type identifies event priorities and is used in each event definition. */
enum PriorityOfEvent {
Low,
Medium,
High,
Alarm };
/* This enumerated type identifies the lifecycle states that an object may go through. It is used in event notifications
of state changes. */
SEMI E97-0200A © SEMI 2000 4
enum LifecycleState {
Undefined,
Created,
Deleted,
Moved,
Copied };
/* This enumerated type identifies the states of objects that can be reserved (Lot, Durable and Machine). It is used in
event notifications of state changes. */
enum ReservationState {
UndefinedReservationState,
Reserved,
UnReserved };
/* This enumerated type represents the SEMI E10 states for Machines and Support Resources. It is used in event
notifications of state changes. */
enum E10State {
E10Productive,
E10Standby,
E10Engineering,
E10ScheduledDowntime,
E10UnscheduledDowntime,
E10NonscheduledTime };
/* TimeT is a ulonglong value (64 bits) that represents the number of 100 nanosecond increments that have passed
since a base time (October 15, 1582 at 00:00, the Universal Time Representation which refers to time in Greenwich
Mean Time). The specification for TimeT is: */
struct ulonglong {
unsigned long low;
unsigned long high;
};
typedef ulonglong TimeT;
/* TimeStamp is mapped to the data type of TimeT. */
typedef TimeT TimeStamp;
typedef sequence <TimeStamp> TimeStampSequence;
/* The notion of a specific interval of time denoting a start time and an end time is represented as a struct called
IntervalT. */
struct IntervalT {
TimeT lower_bound ;
TimeT upper_bound ;
};
/* TimeWindow is mapped to the data type IntervalT. */
typedef IntervalT TimeWindow;
/* Duration is mapped to the datatype TimeT. */
typedef TimeT Duration;
/* This structure is for the representation of a single schedule instance. It should be noted that “EndTime” should
never proceed “StartTime.” */