Background Statement for SEMI Draft Document #5486A NEW STANDARD: SPECIFICATION FOR PREDICTIVE CARRIER LOGISTICS (PCL)

Size: px
Start display at page:

Download "Background Statement for SEMI Draft Document #5486A NEW STANDARD: SPECIFICATION FOR PREDICTIVE CARRIER LOGISTICS (PCL)"

Transcription

1 Background Statement for SEMI Draft Document #5486A NEW STANDARD: SPECIFICATION FOR PREDICTIVE CARRIER LOGISTICS (PCL) Notice: This background statement is not part of the balloted item. It is provided solely to assist the recipient in reaching an informed decision based on the rationale of the activity that preceded the creation of this Document. Notice: Recipients of this Document are invited to submit, with their comments, notification of any relevant patented technology or copyrighted items of which they are aware and to provide supporting documentation. In this context, patented technology is defined as technology for which a patent has issued or has been applied for. In the latter case, only publicly available information on the contents of the patent application is to be provided. Background Productivity improvement is becoming more and more crucial, and one of the biggest issues is how to reduce waste time caused by carrier delivery delay, so called equipment starvation time. Process time of equipment is not always constant. Also, transport time of AMHS is hard to shorten and may be even longer in the 450mm era. Therefore, optimization of logistics control based on predictive information is essential to reduce the waste time. Prediction of the completion of a carrier that is currently in process (Carrier Approaching Complete) is partially discussed in E87. However, it simply gives a prediction for unload ready, and does not give an estimated time to stagnation (= estimated time until load or unload needs to be completed). For further improvement, more information and further prediction are required. In order to get enough information for the above purpose, modeling of the equipment from the carrier logistics view is essential. The ballot results will be reviewed and adjudicated at the meetings indicated in the table below. Check under Calendar of Events for the latest update. Review and Adjudication Information Task Force Review Committee Adjudication Group: Japan PCL TF Japan Chapter of Information & Control TC Date: Thursday, June 19, 2014 Friday, June 20, 2014 Time & Timezone: 13:00-17:00 (JST) 13:30-17:00 (JST) Location: SEMI Japan, Ichigaya office SEMI Japan, Ichigaya office City, State/Country: Leader(s): Standards Staff: Tokyo, Japan Terry Asakawa (Tokyo Electron) Yuko Toyoshima (Hitachi High-Technologies) Chie Yanagisawa (SEMI Japan) / cyanagisawa@semi.org Tokyo, Japan Mitsuhiro Matsuda (Hitachi Kokusai Electric) Takayuki Nishimura (Dainippon Screen Manufacturing) Chie Yanagisawa (SEMI Japan) / cyanagisawa@semi.org 1

2 Task Force Review meeting details are subject to change, and additional review sessions may be scheduled if necessary. Contact Standards staff for confirmation. Telephone and web information will be distributed to interested parties as the meeting date approaches. If you will not be able to attend these meetings in person but would like to participate by telephone/web, please contact Standards staff. 2

3 SEMI Draft Document #5486A NEW STANDARD: SPECIFICATION FOR PREDICTIVE CARRIER LOGISTICS (PCL) 1 Purpose 1.1 The purpose of this Standard is to provide a communication scheme for exchanges of carrier logistics related information, especially predictive information, between equipment and the factory system in order to support seamless cascading of carriers for continuous processing of equipment in semiconductor fabrication systems or similar ones. 1.2 The purpose of this Standard is to provide models which represent carrier logistics management status in equipment to exchange predictive carrier logistics information in order to facilitate better synchronization with the factory system. 2 Scope 2.1 This Standard defines a model which represents logistics management of a carrier in equipment as Carrier Logistics Job (hereinafter CLJ). CLJ includes the following functionalities. State management of logistics management of a carrier Prediction management including submission, re-submission and withdrawal upon a change of predicted information such as time or load port assignment Carrier ID assignment Load port assignment 2.2 This Standard defines a model which represents management of multiple CLJs in equipment as Carrier Flow Job (hereinafter CFJ). CFJ includes the following functionalities. Order management of CLJs per process order Prediction management of CLJs per carrier logistics order Carrier scheduling Load port scheduling including a queuing of multiple CLJs on one load port Load port arbitration to CLJs for Internal Buffer Equipment 2.3 This Standard covers specifications for services to and events from CLJ and CFJ models. 2.4 This Standard covers PCL specifications for both Fixed Buffer Equipment and Internal Buffer Equipment. 2.5 This Standard covers compatibility with non-slot-integrity operation. NOTICE: SEMI Standards and Safety Guidelines do not purport to address all safety issues associated with their use. It is the responsibility of the users of the documents to establish appropriate safety and health practices, and determine the applicability of regulatory or other limitations prior to use. 3 Limitations 3.1 On the Fly Control Purpose This Standard is not for metrics (especially not for postmortem analysis) of waste times that may be contained in several time slots defined in this Standard due to the design of equipment and/or fab system. It only cares about synchronization between equipment and fab system. Those metrics should be standardized separately if needed. 3.2 Best Effort Basis The requirements regarding prediction are on a best effort basis, as a prediction has limited accuracy in nature; moreover, in some cases prediction itself might not be provided. 3.3 No Prediction Algorithm Covered This Standard does not cover calculation algorithms for predictions. 3.4 Only for Critical Equipment This Standard is intended to be used for equipment for which carrier logistics are critical, and, application of this Standard especially prediction portions may not be needed for equipment to which carrier logistics are not critical. Page 3

4 3.5 Not for Physical Synchronization of Load Port This Standard is not intended to provide physical status of load ports. 4 Referenced Standards and Documents 4.1 SEMI Standards and Safety Guidelines SEMI E15 Specification for Tool Load Port SEMI E15.1 Specification for 300 mm Tool Load Port SEMI E30 Generic Model for Communications and Control of Manufacturing Equipment (GEM) SEMI E39 Object Services Standard: Concepts, Behavior, and Services (OSS) SEMI E40 Standard for Processing Management (PM) SEMI E62 Specification for 300 mm Front-Opening Interface Mechanical Standard (FIMS) SEMI E84 Specification for Enhanced Carrier Handoff Parallel I/O Interface SEMI E87 Specification for Carrier Management (CMS) SEMI E94 Specification for Control Job Management (CJM) 4.2 ISO Standard ISO 8601: Internet Standard for Date/Time Format 1 NOTICE: Unless otherwise indicated, all documents cited shall be the latest published versions. 5 Terminology 5.1 Abbreviations and Acronyms AMHS automated material handling system CEW carrier exchange window CFJ carrier flow job CLJ carrier logistics job FIMS front-opening interface mechanical standard FOUP front opening unified pod GEM generic equipment model PCL predictive carrier logistics PEC process execution collective 5.2 Definitions automated material handling system (AMHS) an automated system to store and transport materials within the factory buffer a set of one or more locations for holding carriers at or inside the production equipment carrier a container, such as a FOUP or open cassette, with one or more positions for holding substrates carrier exchange window (CEW) a time slot which is allowed for a load port to unload a used carrier and then load a new carrier between AMHS without disturbing the continuous wafer processing of the equipment. Internal Buffer Equipment may have a CEW with multiple load ports to unload multiple used carriers and load multiple new carriers. 1 International Organization for Standardization, ISO Central Secretariat, 1, ch. de la Voie-Creuse, CP 56, CH-1211 Geneva 20 Switzerland Page 4

5 5.2.5 carrier flow a stream of carriers for one process thread which are loaded into the equipment, used by the equipment, and unloaded from the equipment carrier flow job (CFJ) a control action to manage multiple CLJs, which constitute one carrier flow, so that the equipment can continue processing seamlessly carrier logistics job (CLJ) a control action which manages entire logistics operation of one carrier from Load Queued to Unload Request. CLJ requests loading of a carrier, holds the carrier for use, and requests unloading of the carrier CarrierID a readable and unique identifier for the carrier collection event an event (or grouping of related events) on the equipment that is considered to be significant to the host docked position the position where the carrier is ready for substrate extraction or insertion End of Load Request (EoLR) a timing when Load Request state ends End of Unload Request (EoUR) a timing when Unload Request state ends factory system the control system of factory which includes the host and AMHS front-opening interface mechanical standard (FIMS) port the substrate access port where the FOUP is opened and closed Fixed Buffer Equipment production equipment that has only fixed load ports and no internal buffer for carrier storage. Substrates are loaded and unloaded directly from the carrier at the load port for processing host the factory computer system or an intermediate system that represents the factory and the user to the equipment internal buffer a set of locations within the equipment to store carriers. These locations exclude load ports Internal Buffer Equipment equipment that uses an internal buffer load the operation of placing a carrier on a load port load port the interface location on the equipment where carriers are loaded and unloaded load stagnation a stagnation caused by non-readiness of a carrier which loads substrates non-production wafer (NPW) a wafer which is used not for production but for tuning of equipment and its process performance object instantiation the act of storing of information related to a physical or logical entity so that it can be recalled on demand based on its public identifier predictive carrier logistics (PCL) transportation control of carriers in a factory, which uses predictive information from composing elements to minimize delay due to the system inertia process execution collective (PEC) a group of resources and its control logic in equipment, which execute one complete process thread of substrate(s) starting with extraction from carrier and ending with insertion to carrier, and do not share at least load carrier(s) or unload carrier(s) with other process thread(s) process equipment equipment used to produce product, such as semiconductor devices. This excludes metrology and material handling equipment process thread sequentially performed actions that process substrate(s) starting with extraction from carrier and ending with insertion to carrier in equipment. Process thread consists of actions such as transportation, processing and measurement production equipment equipment used to produce product, such as semiconductor devices, including substrate sorting, process, and metrology equipment and excluding material handling equipment properties a set of name value pairs assigned to an object or used in a service message to include additional information about the object (e.g. carrier, port, etc.) Page 5

6 re-initialization a process where production equipment is either powered off then powered on or when some kind of hardware or software reset is initiated to cause the equipment to reset and possibly reload its software. On production equipment that contains some kind of mass storage device this can also be called a reboot single communication connection exactly one physical connection using exactly one logical session and a standard set of messages slot map the information that relates which slots in a carrier hold substrates, both correctly and incorrectly stagnation a status of a process execution collective (PEC), which shows that the PEC is ready to perform a substrate process, but is forced to stop due to non-readiness of a carrier which loads or unloads substrates standard message set messages conforming to standard message specifications Start of Load Request (SoLR) a timing when Load Request state starts Start of Unload Request (SoUR) a timing when Unload Request state starts substrate material held within a carrier. This can be product, or durables such as reticles undocked the status of a carrier on a load port or in an internal buffer that is not at the docked position unload the operation of removing a carrier from a load port unload stagnation a stagnation caused by non-readiness of a carrier which unloads substrates. Unload stagnation may occur when the carrier for unload is different than the one used for load. When slot integrity is maintained and the carrier remains on the load port, unload stagnation does not occur. 6 Conventions 6.1 Objects Whenever the equipment is required to know about specific kinds of entities and required to manage information concerning these entities, it is useful to treat these entities as objects that comply with the basic requirements of SEMI E39 Object Services Standard (OSS). This is especially true whenever there are a large number of objects of a given type or when the entities are transient rather than permanent. In both cases, it is difficult to describe a general way for the host and equipment to specify which particular entity is referenced and to get information related only to a specific one out of many By defining these entities as objects that comply with OSS, it is only necessary for the host to specify the type of object and its specific identifier in order to inquire about one or more properties of the specific entity of interest Object Properties A property (attribute) is information about an individual object that is presented as a name and value pair. The name is a formally reserved text string that represents the property, and the value is the current setting for that property Properties shall be accessible to the host via the service GetAttr. Using SEMI E39 Object Services Standard, for example, it is possible to: get the list of IDs for the current objects at the equipment, and get the specified properties for one or more individual objects Rules for Object Properties Attributes with RO (Read Only) access cannot be changed using SetAttr service as defined in OSS. Attributes with RW (Read/Write) access can be changed using SetAttr service as defined in OSS. Additional attributes may be specified by the user or the equipment supplier by using an attribute name starting with UD (User Defined). Care should be taken to ensure the name of the attribute is unique Object Attribute Table Page 6

7 The object attribute table is used to list all the attributes related to the defined object as shown below. The access is defined as Read Only (RO) or Read/Write (RW). The Reqd column is used to specify whether the attribute is required for implementation. Finally, the Form column is used to specify the format of that particular attribute. Table 1 Object Attribute Table Attribute Name Definition Access Reqd Form ObjType Object type RO Y Text = Carrier 6.2 State Model Methodology A state model consists of four elements: a State Model Diagram, a State Model Definition Table, a State Definition, and a State Transition Table State Model Diagram The diagram of the state model uses the Harel State Chart notation. An overview of this notation is presented in an Appendix of SEMI E30. The definition of this notation is presented in Science of Computer Programming 8, Statecharts: A Visual Formalism for Complex Systems, by D. Harel, State Model Definition Table The State Model Definition Table used in this Standard has the following format. This table defines states and possible transition(s) from each state side by side. Each state has one or more transitions. When the transition comes from outside this table, the state definition column associated with the transition may be blank (see #1). When the transition comes from unspecified multiple states with the same condition, the state definition column may say #Any state, and there may not be an explicit transition number Definition of State Columns under the State column define States with No. (Number), Name and Abstract of Definition. No. corresponds to the state number in the associated state diagram. Name defines a name of each state. Abstract of Definition provides an abstract of the State Definition in the State Definition Table Definition of Transition Columns under the Transition column define Transitions with No. (Number), Abstract of Trigger, Abstract of Action, New State, and Comments. No. corresponds to transition number in the associated state diagram. Abstract of Trigger and Abstract of Action provide abstracts of the Trigger and Action in the State Transition Table accordingly. New State defines a state number to move to after the transition is completed by pointing to one of the states defined in the state definition in left side of the table. The Comment column may be used to put comments to each transition or their From state. Table 2 State Model Definition Table State Transition No. Name Abstract of Definition No. Abstract of Trigger Abstract of Action New State - #1 - #1 - #1 T00 S00 Snn #2 # Any state #2 - #2 - S03 S00 T01 S01 S04 #3 T02 S00 S01 T03 S02 T04 S02 T05 #4 S00 S03 Comments S10 # S11 T10 S12 S12 T11 S11 S03 T06 S00 2 Elsevier Science, P. O. Box 945, New York, NY ; Page 7

8 #1 When the transition comes from outside of this table, the state definition column may be blank. #2 When the transition comes from unspecified multiple states with the same condition, the state definition column may say #Any state. #3 A state which has sub-states. #4 One transition path has multiple cases (trigger and action pairs). #5 A state separated by a dotted line is a parallel state of the state above State Definition Table State definition tables are provided in conjunction with the state diagrams to explicitly describe the definition of each state. A state definition table contains columns for State Number, Mnemonic, State Definition, and Comments. Table 3 State Definition Table No. Mnemonic State Definition Comments State Transition Table State Transition Tables are provided in conjunction with the state diagrams to explicitly describe the nature of each state transition. A State Transition Table contains columns for Transition Number, Previous State, Trigger, New State, Actions, and Comments. The trigger (column 3) for the transition occurs while in the Previous State. The Actions (column 5) includes a combination of: Actions taken upon exit of the previous state, Actions taken upon entry of the new state, and Actions taken which are most closely associated with the transition. Table 4 State Transition Table No. Previous State Trigger New State Actions Comments State Model Requirements Requirement The state models included in this Standard are a requirement for compliance. Equipment shall maintain state models for each of the required state models as defined in this Standard. Equipment shall maintain individual and unique state models for each logical entity instantiated or each physical entity in the equipment that has associated state models Representation as the Host View A state model represents the host s view of the equipment, and does not necessarily describe the internal equipment operation. All state model transitions shall be mapped sequentially into the appropriate internal equipment collection events that satisfy the requirements of those transitions. In certain implementations, the equipment may enter a state and have already satisfied all of the conditions required by the state models in this Standard for transition to another state. In this case, the equipment makes the required transition without any additional actions Additional Sub-States Some equipment may need to include additional sub-states other than those in this Standard. Additional sub-states may be added, but shall not change the defined state transitions in this Standard. All expected transitions between states in this Standard shall occur Uniqueness of Event Identifier The event identifier reported during a particular state transition change for each of these state models shall be shared for all associated state models but unique for each transition. For example, if the equipment has two load ports and the load port state model defines ten transitions, there must be exactly ten event identifiers for each load port transfer state model but not ten for each physical load port. The information identifying the physical entity or logical entity undergoing the transition will be contained within the associated event report. Page 8

9 Events All state transitions in this Standard, unless otherwise specified, shall correspond to collection events. More explicitly, there must be a unique collection event for each state transition Events for Multiple AND Sub-states When a state model is defined with multiple AND sub-states, the equipment may report all state entry events with only one collection event Events for Conditional Path When conditional paths are defined in the state model, it is not necessary to report any state transition(s) until a terminal state is reached at which time each transition used to reach that state is reported. 6.3 Object Recognition of Object From the host point of view, an object is instantiated if the host is able to query the equipment about that object, its current state, and other attributes. Once instantiated, the object is considered destroyed (no longer instantiated) if the response to such queries is unknown object Object Identifier (ObjID) The purpose of an Object Identifier is to allow references to an object within the system. The Object Identifier is assigned when an object is instantiated and should be unchanged or persistent until the end of the object lifecycle. The Object Identifier shall be unique at the equipment during lifecycle of the object. 6.4 Services Definition of Service Services are functions or methods that may be provided by either the equipment or the host. A service message may be either a request message, which always requires a response, or a notification message that does not require a response Notification Message Service Notification type messages are initiated by the service provider (e.g., the equipment) and the provider does not expect to get a response from the service user Request Message Service Request messages are initiated by a service user (e.g., the host). Request messages ask for data or an activity from the provider. Request messages expect a specific response message (no presumption on the message content) Service Message Description A service message description table defines the parameters used in a service, as shown in the following table: Table 5 Service Message Description Table Service Name Type #1 Description #1 Type can be either N = Notification or R = Request & Response Service Message Parameter Definition A service parameter dictionary table defines the description, range, and type for parameters used by services, as shown in the following table: Table 6 Service Message Parameter Definition Table Parameter Name Form Description #1 #1 A row is provided in the table for each parameter used on a service Service Message Definition A service message description table defines the parameters used in a service message, and describes each message and its cause/effect to the equipment, as shown in the following table: Page 9

10 Table 7 Service Message Definition Table Service Parameter Req/Ind Rsp/Conf Description Definition of Req/Ind and Rsp/Conf Columns The columns labeled Req/Ind and Rsp/Conf link the parameters to the direction of the message. The message sent by the initiator is called the Request. The receiver terms this message the Indication. The receiver may then send a Response, which the original sender terms the Confirmation Definition of Codes for Req/Ind and Rsp/Conf Columns The following codes appear in the Req/Ind and Rsp/Conf columns and are used in the definition of the parameters (i.e., how each parameter is used in each direction): Table 8 Codes For Req/Ind and Rsp/Conf Columns M C U Mandatory Parameter must be given a valid value Conditional Parameter may be defined in some circumstances and undefined in others. Whether a value is given may be completely optional or may depend on the values of other parameters. User-Defined Parameter - The parameter is not used = (for response only) Indicates that the value of this parameter in the response must match that in the primary (if defined) 6.5 Variable Data Definitions Variable data definitions define variable data requirements. Values of these variables are available to the host via collection event reports and host status queries Event Report Requirement The identifier of an object and all of the attributes of that object shall be available for inclusion in event reports associated with that object Object Attribute Variable in Non-Extinction Event The object attribute variables in event reports linked to non-extinction event(s) shall contain the values of the attributes after the transition. This requirement allows the receiver of the report to know the current condition of the object Object Attribute Variable in Extinction Event The object attribute variables in event reports linked to extinction event(s) shall contain the values of the attributes before the transition unless it is specifically stated that the destruction transition modifies the attribute value. This requirement allows the receiver of the report to know the final condition of the object at the time it was deleted Subscripted variables are used either as items within a list or to differentiate data representing different entities. Subscripted variables are always valid Table Format The following table defines variable data that shall be provided by the production equipment. Table 9 Variable Data Definitions Variable Name Description Type Access Comment 7 PCL Conceptual Descriptions 7.1 Conceptual Descriptions This chapter defines and describes a concept of PCL. This chapter does not contain any requirements. Page 10

11 7.2 Load/Unload Readiness on Load Port and Relationship with E87 In order to avoid conflicts and to be coexistent with SEMI E87 CMS, this standard only provides a scheduling information of carrier logistics, and does not represent physical readiness for Load/Unload which is covered by E Key Timings for Carrier Logistics There are four key timings for carrier logistics between equipment and the factory system. PCL focuses on providing these timings and their predictions as shown below. (See definition of PCL for state names) Basic Timings There are two key timings for carrier logistics between equipment and the factory system. SoUR (Start of Unload Request): Timing when a carrier completes and requests unload EoLR (End of Load Request): Timing by which a carrier has to be loaded to not cause stagnation Figure 1 Key Timings for PCL Additional Timings There are two additional key timings, mainly for Internal Buffer Equipment. SoLR (Start of Load Request): Timing when a carrier is requested EoUR (End of Unload Request): Timing by which a carrier have to be unloaded to not cause stagnation Figure 2 Additional Key Timings for PCL 7.4 Introduction of Carrier Logistics Job (CLJ) In order to model the logistics control of a carrier, including the key timings and their predictions, this Standard introduces CLJ, which represents each carrier s logistics control. CLJ models the management process of a carrier from the request for a new carrier to sending the carrier as shown below. Page 11

12 Figure 3 States and Predictions of CLJ Object 7.5 Introduction of Carrier Exchange Window (CEW) Because the resources of equipment are limited, the number of carriers which can reside in the equipment is also limited. So, in normal cases, loading of new carriers follows after unloading of used carriers. These timings form a window in which AMHS should exchange those carriers Definition of CEW See Terminology chapter CEW for Fixed Buffer Equipment In Fixed Buffer Equipment, loading of a new carrier follows after unloading of a used carrier on each load port. Normally, during CEW, other load ports hold required carriers for cascading of wafers. A carrier has overhead times such as confirmation of carrier ID, opening of the door, confirmation of wafer existence on slots, and creation of process job before the wafers become ready for process, overhead times such as closing of the door, purging with inert gas, and undock after the process completion, and equipment has a wafer queue. Due to those overhead times, Carrier Valid requires Handover Periods. The Handover Period is determined by equipment according to its configuration and operation. Figure 4 Definition of CEW in Fixed Buffer Equipment CEW for Internal Buffer Equipment In Internal Buffer Equipment, loading of new carriers may follow after unloading of used carriers on multiple load ports. Normally, during CEW, internal buffers hold required carriers for cascading of wafers. Page 12

13 Figure 5 Definition of CEW in Internal Buffer Equipment 7.6 Introduction of Carrier Flow Job (CFJ) In order to define the relationship between CLJs, this Standard introduces CFJ, which manages a carrier flow. CFJ manages the order of CLJs and predicted timings, etc. Figure 6 Image of Data Provided by CFJ 7.7 Scalable Specifications In order to enable gradual application to the existing designs, this Standard provides building blocked scalable specifications. Examples are shown in the following table. See Appendixes for explanations. Table 10 Scalability Name Type #1 Main States #2 Predictions Assignment #3 Notes FB IB LQ LR CV UR SoLR EoLR SoUR EoUR LP CID Interim A R R - - R SoUR Prediction only LP-Based A - - R R - - R R Load port by load port Basic A - - R R - - R R - R O Basic for Fixed Buffer Bi-Direction - A - R R R - R R - R R Bi-Direction Internal Buffer Uni-Direction - A R R R R R R R R R R Uni-Direction Internal Buffer #1 FB=Fixed Buffer Equipment, IB=Internal Buffer Equipment #2 LQ=Load Queued, LR=Load Request, CV=Carrier Valid, UR=Unload Request #3 LP=Load Port, CID=Carrier ID #4 A=Applicable, R=Required, O=Optional, -=Not required Page 13

14 7.8 Introduction of Process Execution Collective (PEC) Equipment is not always executing a single thread of process. Some equipment has a capability to execute multiple process threads simultaneously. In such cases, the key timings should be managed separately per process thread. In order to manage the key timings per process thread, this Standard introduces PEC Definition of PEC See Terminology chapter Description of PEC Multiple PECs do not share the same carriers for both load and unload. Process threads which share the same carriers for both load and unload shall be dealt as parallel portions in one PEC, because those process threads also share the same stagnation condition and timing. Process threads of substrates start from and end at carriers on FIMS ports. A FIMS port is located at the load port in Fixed Buffer Equipment, and located at an internal FIMS port in Internal Buffer Equipment. PECs are not always completely independent in their resources, and may share some of the resources with other PECs. See the following Figure for examples. Example 1 shows one PEC which has mutually dependent parallel process threads, as both the solid lined path and dotted lined path use the same carrier for both load and unload, and stagnation timings are not independent. For continuous processing during AMHS access, one more carrier on another load port may be assigned alternately. Example 2 shows two PECs which share the same carrier for load, and use different carriers for unload, so unload stagnation timings are independent. Example 3 shows two completely independent PECs. Example 4 shows two PECs which have different process steps and share some wafer paths such as load locks. Figure 7 Examples of PEC 7.9 Relationship of the Entities in PCL The CLJ and CFJ objects have relationships shown in following figure. Page 14

15 Figure 8 Relationship Model of CFJ and CLJ Objects 7.10 Cascading of CLJ Objects For seamless cascading of wafer process, the Carrier Valid states of consecutive CLJs mapped on multiple load ports should have required overlap which is determined by the equipment. This overlap is typically caused by the carrier handling overheads, such as dock, door open, wafer mapping, door close, inert gas purge, and undock and wafer queue in the equipment. The Unload Request state of a CLJ and Load Request state of a subsequent CLJ assigned to the same load port share the same CEW. Figure 9 Queuing of CLJ Objects and CEW (Two Load Ports) Page 15

16 Figure 10 Queuing of CLJ Objects and CEW (Four Load Ports) 8 PCL Requirements 8.1 PCL Requirements The PCL Standard defines the behavior, data, and services required for the following objects of equipment. This Standard provides a standard interface for host/equipment communications regarding the following information Carrier Flow Job (CFJ) Object CFJ is defined in the chapter Carrier Flow Job (CFJ) Requirements Carrier Logistics Job (CLJ) Object CLJ is defined in the chapter Carrier Logistics Job (CLJ) Object Requirements. 8.2 Reporting Scheme of Time for PCL Every PCL event or service reports the timing as a combination of current time of the equipment clock and predicted time per the equipment clock in order to be free from a time difference problem between the host and equipment. The host is strongly recommended to compare the host clock and equipment clock, and to understand the reported time per equipment clock in host time per host clock. 8.3 Prediction Resubmission Threshold for PCL PCL allows resubmission of predictions to report updated value. However, in order to avoid too many resubmissions, resubmission can only be made when the new value satisfies PTimeSensitivity and PTimeSenseDB definitions. 8.4 PCL Variable Data Definitions This section defines variable data requirements for PCL. Values of these variables are available to the host via collection event reports and host status queries. Table 11 PCL Variable Data Definitions Variable Name Description Type Access Comment PCLActive Activate PCL functionality. PCLActive = PCL functionality is Active PCLInactive = PCL functionality is Inactive Default is PCLInactive. Enumerated: PCLActive, PCLInactive RW This determines whether CFJ and CLJ are active or inactive Page 16

17 Variable Name Description Type Access Comment PTimeSensitivity Sensitivity to decide resending of predicted times defined in this Standard. The purpose of this variable is to prevent too frequent resends. times shall not be resent if the change of remaining time is smaller than this percentage. PTimeSenseDB Dead-band of sensitivity to resend predicted time. The purpose of this variable is to prevent too frequent resends. times shall not be resent if the change of remaining time is smaller than this value. Positive integer [%] RW While the duration from current time to the predicted time is long, small changes are not important. The predicted time is expected to become precise when the duration becomes shorter. Positive integer [sec] RW It is meaningless to resend small changes to which the factory system, including the host and AMHS, cannot respond 8.5 TimeReport This section defines the format, which is used to report a time in this Standard, by using ISO 8601:2004. TimeReport information shall be reported as specified in this section. YYYY-MM-DDThh:mm:ss.sTZD (e.g., T15:30: :00) Table 12 Definition of TimeReport Identifier Description YYYY Four-digit year MM Two-digit month (01 = January through 12 = December) DD Two-digit day of month (01 through 31) T Special separator character ( T ) used between date and time hh Two digits of hour (00 through 23) (am/pm NOT allowed) mm Two digits of minute (00 through 59) ss Two digits of second (00 through 59) s One or more digits representing a fraction of a second TZD time zone designator (Z, +hh:mm, or hh:mm) 9 Carrier Flow Job (CFJ) Object Requirements 9.1 CFJ Object Definition Definition of CFJ Object The CFJ object is a software representation of the carrier flow management in the equipment. CFJ manages multiple CLJs which constitute one carrier flow. Information about CFJ is encapsulated as an object. This allows the host to exchange information with the equipment about one or more specific CFJs by using services defined in SEMI E39 Object Services Standard Number of CFJs Equipment may create multiple CFJs when the equipment manages multiple carrier flows separately per load port. CFJ can be assigned to each load port, to a group of load ports, or to whole equipment depending on the operation of the equipment. (See Appendix for examples.) 9.2 CFJ Object Descriptions CFJ Object Instantiation Under normal circumstances, CFJ object is instantiated by the equipment when the equipment is started up CFJ Object Identifier (ObjID) The CFJID is the CFJ Object Identifier. The equipment is responsible for ensuring uniqueness of the CFJID prior to instantiation CFJ Object Destruction A CFJ Object reaches the end of its lifecycle when the equipment is shut off. Page 17

18 9.2.4 CFJ Object Persistence A CFJ Object may persist over equipment shut down to restart if the carriers still stay in the equipment. Capability to perform this persistence automatically is dependent on equipment design. In any case, when equipment moves into host control with carriers on it, CFJs which represent the carriers shall be created. 9.3 CFJ Object Functional Requirements Order Management of CLJs CFJ maintains an ordered list of CLJs. CLJs shall be listed in order of associated wafer access - the CLJs in Unload Request state first, the CLJs in Carrier Valid state, the CLJs in Load Request state, and then the CLJs in Load Queued state. In the same state, CLJs with earlier wafer access shall be listed in higher order. When the order of wafer access is changed, the order of the CLJs in the CFJ shall be aligned to the order Load/Unload Timing Management of CLJs CFJ maintains predicted timings of CLJs. CFJ reflects the calculation result of Predictions. This standard does not define the prediction algorithm or calculation timing Load Port Assignment to CLJs CFJ performs load port scheduling and assigns load port to CLJs Load Port Assignment for Fixed Buffer Equipment Normally, the load ports used in Load Request and Unload Request states of one CLJ are the same one, and the carrier stays on the same load port all the time. In some cases, a load port may not be assigned at the timing of CLJ creation Load Port Assignment for Internal Buffer Equipment Normally, the load ports used in Load Request state and Unload Request state of one CLJ are independent, and the carrier stays on an internal buffer for most of the time. A load port may or may not be assigned at the beginning of Load Request state or Unload Request state Speculative Assignment of Load Port and On-the-Fly Arbitration Multiple CLJs may be assigned to the same load port, and final arbitration may be done by the arrival order information from AMHS. This Standard does not define the arbitration algorithm. 9.4 CFJ Object Attribute Definitions The following table defines the attributes of CFJ Object Attributes Maintenance All attributes in the following table are always maintained and updated by the equipment. Table 13 CFJ Object Attribute Definition Attribute Name Definition Access #1 Reqd Form ObjID CFJ object identifier RO Y Text CFJID. Numerical text expression of positive integer ObjID is equipment defined ObjType Object Type RO Y Text = CarrierFlowJob MaxCarrierNumber Maximum number of carriers the CFJ can handle Maximum number of CLJs with a carrier which is physically assigned (loaded) RO Y Positive integer CFJData Ordered list of attributes of CLJs RO Y Ordered list of: CLJ attributes: Defined in CLJ #1 Even though a value may be marked as RO (read only), the initial value for the attribute may be provided by the host. 9.5 CFJ State Model The following diagrams and tables define the state model of CFJ object. Equipment shall maintain an appropriate number of CFJs CFJ State Model Diagram Page 18

19 Figure 11 CFJ State Model Diagram CFJ State Model Definition Table 14 CFJ State Model Definition State Transition No. Name Abstract of Definition No. #1 Abstract of Trigger Abstract of Action #2 New State - - (No state) Tf00 Equipment is started Create CFJ Sf01 Comments Sf00 Sf01 CFJ Created CFJ Inactive CFJ is created CFJ is not active Tf01 Activation of CFJ function is done CFJ Event Sf02 CFJ Active CFJ is active Tf02 CFJData change occurred CFJ Event Sc03 CFJData is valid Tf03 Set CFJ to inactive CFJ Event Sc01 #1 Numeric portion of the transition numbers in this column shall be used as event numbers. #2 Events in the Action column report following information. CFJ Event reports CFJID and CFJData. Sf CFJ State Definition Table Table 15 State Definition Table No. Mnemonic State Definition Comments Sf00 CFJ Created A state in which a CFJ is created and in operation Sf01 CFJ Inactive CFJ is inactive. CLJ is also inactive. PCL functionalities are not used. Sf02 CFJ Active CFJ is active. CLJ is also active. PCL functionalities are used CFJ State Transition Table Page 19

20 Table 16 CFJ State Transition Table No. #1 Previous State Trigger New State Actions #2 Comments Tf00 (No state) Equipment started CFJ Inactive Create CLJ Tf01 CFJ Inactive Activate CFJ and CLJ to start use of PCL functionalities CFJ Active CLJ Event Tf02 CFJ Active Any change in CFJData CFJ Active CFJ Event Tcf3 CFJ Active Inactivate CFJ and CLJ to stop use of PCL functionalities CFJ Inactive #1 Numeric portion of the transition numbers in this column shall be used as event numbers. #2 Events in the Action column report following information. CFJ Event reports CFJID and CFJData. CFJ Event 9.6 CFJ Services This section defines the message services required to support CFJ functionalities CFJ Service Message Description The following table is a list of CFJ services. Table 17 CFJ Service Message Description Service Name Type #1 Description GetCFJList R This service gets a list of the CFJ object from the equipment. Use SEMI E39 OSS to get ObjIDList by specifying ObjType and ObjID for ATTRID. GetCFJData R This service gets CFJData attribute of CFJ from the equipment. Use GetAttr service of SEMI E39 OSS for this purpose. PutAMHSArrivalInfo R Optional mainly for Internal Buffer Equipment This service puts AMHS service information to the equipment #1 The Type column is used to indicate whether the service consists of a request/response message pair, R, or a single notification message, N CFJ Service Message Parameter Definition The following is a list of required parameters used in conjunction with CFJ service messages. Table 18 CFJ Service Message Parameter Definition Parameter Name Form Description CFJList List of CFJID List of CFJID CFJID Text ID of CFJ CFJData AMHSArrivalInfo Ordered list of: CLJ attributes: Defined in CLJ Ordered list of: Structure: CLJID EstimatedArrivalTime Variable Data of CFJ Optional Arrival information of AMHS mainly for Internal Buffer Equipment CFJ Service Message Definitions The following tables specify the allowable/required parameters for each service PutAMHSArrivalInfo This service is used to inform the arrival order and estimated timings of AMHS vehicles assigned for the CLJs to CFJ. Page 20

21 Table 19 PutAMHSArrivalInfo Service Parameter Definitions Parameter Name Req/Ind Rsp/Conf Description CFJID M - ID of CFJ AMHSArrivalInfo M - Arrival information of AMHS vehicles EquipmentResponse - M Reply from Equipment 9.7 CFJ Variable Data Definitions This section defines variable data requirements for CFJ. Values of these variables are available to the host via collection event reports and host status queries. Table 20 CFJ Variable Data Definitions CFJID Variable Name Description Type Access Comment MaxCarrierNumber CFJData ObjID of CFJ CFJID is equipment defined. Maximum number of carriers the CFJ can handle Maximum number of CLJs with a carrier physically assigned Ordered list of attributes of CLJs Numerical text expression of positive integer Positive integer Ordered list of: CLJ attributes: Defined in CLJ RO RO RO Event is sent upon any change 10 Carrier Logistics Job (CLJ) Object Requirements 10.1 CLJ Object Definition Definition of CLJ Object The CLJ object is a software representation of the carrier logistics control in the equipment. Information about CLJ is encapsulated as an object. This allows the host to exchange information with the equipment about one or more specific CLJs by using services defined in SEMI E39 Object Services Standard Handoff Readiness on Load Port and CLJ Load Request and Unload Request states, or Load Port Assignment parallel states only provide a schedule among multiple CLJs, and do not represent physical readiness for handoff. Load Port state of E87 shall be used to ensure physical readiness of the load port for handoff Number of CLJ Objects Equipment may create multiple CLJs in order to feed substrates continuously through its process modules. The number of CLJs depends on the structure of the equipment and the depth of predictions. NOTE 1: In principle, equipment normally has two CLJs per one carrier position where a carrier can non-temporarily reside in the equipment, one is the CLJ which currently occupies the carrier position, and the other is the CLJ which is queued to the carrier position. Generally, the carrier positions are load ports in Fixed Buffer Equipment, and internal buffers for Internal Buffer Equipment. Note that, in general, the load ports of Internal Buffer Equipment are not counted in carrier positions where a carrier can non-temporarily reside as they are in the critical path between AMHS and internal buffers and used as temporary positions to handoff carriers to and from AMHS. When equipment uses its load ports as non-temporary carrier positions, they are counted as carrier positions. In other words, normally, Fixed Buffer Equipment expects the same number of CLJs with the number of load ports as currently assigned jobs and another same number of CLJs as the next jobs Internal Buffer Equipment expects the same number of CLJs with the number of internal buffers (and internal FIMS ports) as currently assigned jobs and another same number of CLJs as the next jobs CLJ Object Descriptions CLJ Object Instantiation Under normal circumstances, CLJ object is instantiated by the equipment when the equipment recognizes a requirement to deal with a carrier Host Triggered Instantiation An instantiation which is triggered by the host. The host may request as many CLJ creations as the host plans in order to give predictive information to the equipment. The equipment Page 21

22 creates those CLJs and manages the execution order of them by communicating with the host. This Standard does not define the algorithm to decide the order Equipment Triggered Instantiation An instantiation which is triggered by the equipment. A CLJ object is instantiated when the equipment recognizes that a PEC can receive new carrier CLJ Object Identifier (ObjID) The CLJID is the CLJ Object Identifier. The equipment is responsible for ensuring uniqueness of the CLJID prior to instantiation CLJ Object Destruction A CLJ Object reaches the end of its lifecycle in the following two cases Normal Destruction (Completion) A CLJ object is destructed when the carrier is unloaded from the equipment Abnormal Destruction (Abortion) A CLJ object is destructed when the CLJ is cancelled before receiving a carrier or aborted before unloading the carrier for some reasons such as an error CLJ Object Persistence A CLJ Object may persist over equipment shut down to restart if the carriers still stay in the equipment. Capability to perform this persistence automatically is dependent on equipment design. In any case, when equipment moves into host control with a carrier on it, a CLJ which represents the carrier shall be created CLJ Object Functional Requirements CLJ Main State Management A function to manage the main state of CLJ. The CLJ main state represents the actual (non-predictive) portion of the behavior Predictions A function to predict the start or end timing of Load Request or Unload Request state. Equipment may assert Prediction whenever the equipment can predict those timings Start of Load Request (SoLR) Prediction (Optional) An optional function which predicts the timing at which Load Request state starts. This function is an option mainly for Internal Buffer Equipment. In normal cases, Fixed Buffer Equipment does not need to implement this function End of Load Request (EoLR) Prediction (Optional) An optional function which predicts a required timing of the beginning of Carrier Valid state at which Load Request state should be completed with carrier load. When the carrier is not valid by this timing, the stagnation of related PEC may occur Start of Unload Request (SoUR) Prediction A function which predicts the start timing of Unload Request state, at which the equipment ends all work with the carrier and requests unload End of Unload Request (EoUR) Prediction (Optional) An optional function which predicts the end timing of Unload Request state by which the equipment requires to finish the unloading Carrier ID Assignment (Optional) An optional function which manages the assignment of a carrier to the CLJ. In case neither check nor negotiation of the order of carrier handling is done through PCL functionalities, this option may not be required Late Carrier Assignment A function to assign carrier after CLJ is created. This enables the use of Load Request function, in which equipment basically does not know which carrier will be assigned Carrier Type (Optional) An optional attribute to indicate which kind of carrier is dealt with the CLJ Load Port Assignment (optional) An optional function which manages the assignment of a load port to the CLJ. A CLJ uses load port in order to perform physical handoff operation between AMHS at the last part of Load Request or Unload Request state Dynamic Load Port Assignment (optional) An optional function which creates CLJ without load port assignment and assigns a load port when a coordination is done. This function is mainly for Internal Buffer Equipment. Since load ports in Internal Buffer Equipment are places which can temporarily be used for both Load and Unload, assignment of them should be done just before Load/Unload operation for more effective scheduling CLJ Object Attribute Definitions The following table defines the attributes of CLJ object. Page 22

23 Who to maintain the Attributes All attributes in the following table are always maintained and updated by the equipment Validity of Attributes of Parallel States Attributes of parallel states are valid only when the parent state is active. Table 21 CLJ Object Attribute Definition Attribute Name Definition Access #1 Reqd Form ObjID CLJ object identifier. RO Y Text. CLJID. Numerical text expression of positive integer. ObjID is equipment defined. ObjType Object Type. RO Y Text = CarrierLogisticsJob PECID Optional Identifier of PEC RO Y Positive Integer 0 indicates the case the CLJ is not associated to particular PEC yet. CLJState The main state of CLJ State Model RO Y Enumerated: LoadQueued, LoadRequest, CarrierValid, UnloadRequest SoLRPState SoLRPTime EoLRPState EoLRPTime SoURPState Optional Current state of SoLR Prediction parallel state Optional time of SoLR Prediction Optional Current state of EoLR Prediction parallel state Optional time of EoLR Prediction Current state of SoUR Prediction parallel state RO Y Enumerated: SoLRNot, SoLR RO Y Uses format defined for TimeReport RO Y Enumerated: EoLRNot, EoLR RO Y Uses format defined for TimeReport RO Y Enumerated: SoURNot, SoUR SoURPTime time of SoUR Prediction RO Y Uses format defined for TimeReport EoURPState EoURPTime CLJCarrierType CLJCarrierID Optional Current state of EoUR Prediction parallel state Optional time of EoUR Prediction Optional Type of carrier ID of carrier which is dealt with the CLJ. Carrier ID may not be assigned until a carrier is loaded and confirmed. When carrier ID is not specified yet, this attribute shall inform it. RO Y Enumerated: EoURNot, EoUR RO Y Uses format defined for TimeReport RO Y Enumerated: ProcessCarrier, EmptyCarrier, NPWCarrier RO Y Text 0 80 characters Identifier of a carrier. The CLJCarrierID shall be same as the CarrierID defined in SEMI E87. A zero length is used for CarrierID is not yet specified Page 23

24 Attribute Name Definition Access #1 Reqd Form CLJLPID Load port ID ID of load port which will be used by the CLJ RO Y Positive integer. 0 = Load port is not assigned Non 0 = Load port number The CLJLPID is compatible with the load port number defined in SEMI E87 which says The load port number shall be assigned incrementally from the bottom left to bottom right, then top left to top right when facing the front of the equipment. #1 Even though a value may be marked as RO (read only), the initial value for the attribute may be provided by the host CLJ State Model The following diagrams and tables define the state model of CLJ object. Equipment shall maintain appropriate number of CLJs to achieve continuous substrate processing CLJ State Model Diagram Figure 12 CLJ State Model Diagram Page 24

25 CLJ State Model Definition Table 22 CLJ State Model Definition State Transition No. Name Abstract of Definition No. #1 Abstract of Trigger - - (No state) Tc00 New CLJ demand without load request Sc00 Sc30 1Sc20 Sc10 CLJ Created SoUR Predictable EoLR Predictable SoLR Predictable Sc01 Load Queued Sc11 SoLR Prediction Sc12 SoLR Not Sc13 SoLR Sc02 Sc21 Sc22 Sc23 Sc03 Sc31 Sc32 Sc33 Sc04 Sc41 Load Request EoLR Prediction EoLR Not EoLR Carrier Valid SoUR Prediction SoUR Not SoUR Unload Request EoUR Prediction A CLJ is created and active. Start of Unload Request is predictable End of Load Request is predictable Start of Load Request is predictable The CLJ is queued in CFJ Predictions of the start of Load Request Timing to SoLR is not predicted Timing to SoLR is predicted The CLJ is requesting load of a carrier Predictions of the end of Load Request Timing to EoLR is not predicted Timing to EoLR is predicted The CLJ is loaded with a carrier Predictions of the start of Unload Request Timing to SoUR is not predicted Timing to SoUR is predicted The CLJ is requesting unload of a carrier Predictions of the end of Unload Request Tc02 New CLJ demand with load request Tc04 New CLJ demand triggered by AMHS Tc07 Any fatal error occurred. Abstract of Action #2 Create CLJ CLJ Event Create CLJ CLJ Event Create CLJ CLJ Event Delete CLJ CLD Event New State Comments Sc01 Early creation of CLJ Sc02 Normal creation Sc03 For Interim solution use only -(No state) CLJ is aborted A state for parallel state definition A state for parallel state definition A state for parallel state definition Tc01 The CLJ requests load CLJ Event Sc02 Tc10 None None Sc12 Parallel state of Sc10 Tc11 Prediction is done SoLR Event Sc13 Tc12 Prediction is changed SoLR Event Sc13 Prediction update Tc13 Prediction is withdrawn SoLR Event Sc12 Tc03 A carrier is loaded CLJ Event Sc03 Tc20 None None Sc22 Parallel state of Sc20 Tc21 Prediction is done EoLR Event Sc23 Tc22 Prediction is changed EoLR Event Sc23 Prediction update Tc23 Prediction is withdrawn EoLR Event Sc22 Tc05 The carrier is closed and ready for unload CLJ Event Sc04 Tc30 None None Sc32 Parallel state of Sc30 Tc31 Prediction is done. SoUR Event Sc33 Tc32 Prediction is changed SoUR Event Sc33 Prediction update Tc33 Prediction is withdrawn SoUR Event Sc32 Tc06 The carrier is unloaded Delete CLJ CLD Event -(No state) CLJ is completed Tc40 None None Sc42 Parallel state of Sc00 Sc42 EoUR Not Timing to EoUR is not Tc41 Prediction is done EoUR Event Sc43 Page 25

26 Sc43 Sc50 Sc51 Sc52 Sc60 Sc61 EoUR Load Port Assignment LP Not Assigned LP Assigned Carrier ID Assignment CID Not Assigned predicted Timing to EoUR is predicted Tc42 Prediction is changed EoUR Event Sc43 Prediction update Tc43 Prediction is withdrawn EoUR Event Sc42 Load Port assignment. Tc50 None None Sc51 Parallel state of Sc00 CLJ is not assigned on load port CLJ is assigned on load port Tc51 Load port assignment LP Event Sc52 Tc52 Load port re-assignment LP Event Sc52 Tc53 Load port assignment withdrawal LP Event Carrier ID assignment. Tc60 None None Sc61 Parallel state of Sc00 Carrier ID is not assigned Sc51 Tc61 Carrier ID assignment CID Event Sc62 Sc62 CID Carrier ID is assigned Tc62 Carrier ID reassignment CID Event Sc62 Assigned Tc63 Carrier ID withdrawal CID Event Sc61 #1 Numeric portion of the transition numbers in this column shall be used as event numbers. #2 Events in the Action column report the following information. CLJ Event reports CLJID and CLJState CLD Event reports CLJID and previous CLJState SoLR Event reports CLJID, SoLRPState and SoLRPTime EoLR Event reports CLJID, EoLRPState and EoLRPTime SoUR Event reports CLJID, SoURPState and SoURPTime EoUR Event reports CLJID, EoURPState and EoURPTime CID Event reports CLJID, CLJCarrierType and CLJCarrierID LP Event reports CLJID and CLJLPID CLJ State Definition Table Table 23 State Definition Table No. Mnemonic State Definition Comments Sc00 CLJ Created A state in which a CLJ is created and in operation Sc01 Load Queued Optional The CLJ is queued in CFJ, but is not requesting load of a carrier yet. This state may not be required when SoLR Prediction is not used. Sc02 Load Request The CLJ is requesting load of a carrier. This state may not be required when EoLR Prediction is not used. This state is not equal to ready to load. Logical readiness to load is determined by the position of the CLJ in CFJ. Physical readiness to load shall be confirmed by using E87 functionalities. Fixed Buffer Equipment: In normal cases, the CLJ is assigned on a load port. Internal Buffer Equipment: The CLJ may or may not be assigned on a load port at the beginning of this state. Multiple CLJs may be in Load Request state considering a dynamic use of multiple load ports for multiple CLJs in AMHS arrival order. The arbitration algorithm is not defined in this Standard. Page 26

27 No. Mnemonic State Definition Comments Sc03 Carrier Valid The CLJ is loaded with a carrier. The carrier is waiting for the use or in use, and is valid for the equipment. This state starts with the end of E84 sequence for load, and ends when the use of the carrier at FIMS port (Load port for Fixed Buffer Equipment, internal FIMS port for Internal Buffer Equipment) is completed, the door is closed, undocked or ready to undock, and the equipment has no operation other than unload. Sc04 Unload Request The CLJ is requesting unload of the carrier assigned to the CLJ. This state is not equal to ready to unload. Logical readiness to unload is determined by the priority of the CLJ in CFJ. Physical readiness to unload shall be confirmed by using E87 functionalities. Fixed Buffer Equipment: In normal cases, the CLJ stays assigned on the same load port. Internal Buffer Equipment: The CLJ may not be assigned on a load port at the beginning of this state when arbitration of load ports to CLJs is done by the arrival order information from AMHS. Sc10 SoLR Predictable A super state of Load Queued state This state has SoLR Predictable parallel state. In this state, SoLR Prediction function is active. Sc11 SoLR Prediction An optional parallel state of SoLR Predictable state This state represents the status of Start of Load Request Prediction. Sc12 SoLR Not The timing to SoLR is not predicted. Sc13 SoLR The timing to SoLR is predicted. Sc20 EoLR Predictable A super state of Load Queued and Load Request states This state has EoLR Predictable parallel state. In this state, EoLR Prediction function is active. Sc21 EoLR Prediction An optional parallel state of EoLR Predictable state This state represents the status of End of Load Request Prediction. Sc22 EoLR Not The timing to EoLR is not predicted. Sc23 EoLR The timing to EoLR is predicted. Sc30 SoUR Predictable A super state of Load Queued, Load Request, and Carrier Valid states This state has SoUR Predictable parallel state. In this state, SoUR Prediction function is active. Sc31 SoUR Prediction A parallel state of SoUR Predictable state This state represents the status of Start of Unload Request Prediction. Sc32 SoUR Not The timing to SoUR is not predicted. Sc33 SoUR The timing to SoUR is predicted. Sc41 EoUR Prediction An optional parallel state of CLJ Created state This state represents the status of End of Unload Request Prediction. Sc42 EoUR Not The timing to EoUR is not predicted. Sc43 EoUR The timing to EoUR is predicted. Sc50 Load Port Assignment An optional parallel state of CLJ Created This state represents the status of Load Port Assignment. Sc51 LP Not Assigned The CLJ is not assigned on load port yet. Sc52 LP Assigned The CLJ is assigned on load port. Sc60 Carrier ID Assignment An optional parallel state of CLJ Created This state represents the status of Carrier ID Assignment. Sc61 CID Not Assigned Carrier ID (CLJCarrierID) is not assigned to the CLJ yet. Sc62 CID Assigned Carrier ID (CLJCarrierID) is assigned to the CLJ. Page 27

28 CLJ State Transition Table Table 24 CLJ State Transition Table No. #1 Previous State Trigger New State Actions #2 Comments Tc00 (No state) New Carrier Logistics demand occurred Load Queued Create CLJ CLJ Event Tc01 Load Queued Request loading of a carrier Load Request CLJ Event Tc02 (No state) New Carrier Logistics demand occurred and is requesting load of a carrier Tc03 Load Request A carrier is loaded and E84 sequence is completed. Tc04 (No state) New Carrier Logistics demand occurred by arrival of AMHS while no CLJ is assigned on the load port Tc05 Carrier Valid The carrier is ready to unload. Carrier door shall be closed and undocked before this transition. In case the load port has a purge capability, it shall also be done before this transition. Load Request Create CLJ CLJ Event Carrier Valid CLJ Event Carrier Valid Create CLJ CLJ Event Unload Request CLJ Event Tc06 Unload Request The carrier is unloaded. (No state) Delete CLJ CLD Event Tc07 CLJ Created Any fatal error (No state) Delete CLJ CLD Event Error report Tc10 Tc11 SoLR Prediction SoLR Not None Time of SoLR is predicted. SoLR Not SoLR Tc12 SoLR time of SoLR is changed. SoLR Tc13 SoLR time of SoLR is withdrawn. SoLR Not Tc20 Tc21 EoLR Prediction EoLR Not None Time of EoLR is predicted. EoLR Not EoLR Tc22 EoLR time of EoLR is changed. EoLR Tc23 EoLR time of EoLR is withdrawn. EoLR Not Tc30 Tc31 Tc32 Tc33 SoUR Prediction SoUR Not SoUR SoUR None Time of SoUR is predicted. time of SoUR is changed. time of SoUR is withdrawn. SoUR Not SoUR SoUR SoUR Not None SoLR Event SoLR Event SoLR Event None EoLR Event EoLR Event EoLR Event None SoUR Event SoUR Event SoUR Event Early creation of CLJ Normal creation of CLJ Factory level timing which indicates that the carrier is under control of equipment For Interim solution only Load port may not be assigned yet Normal completion Abnormal end Page 28

29 No. #1 Previous State Trigger New State Actions #2 Comments Tc40 Tc41 Tc42 Tc43 Tc50 EoUR Assignment EoUR Not EoUR EoUR Load Port Assignment Tc51 LP Not Assigned None Time of EoUR is predicted. time of EoUR is changed. time of EoUR is withdrawn. None EoUR Not EoUR EoUR EoUR Not LP Not Assigned None EoUR Event EoUR Event ESoUR Event None CLJ is assigned on load port LP Assigned LP Event Tc52 LP Assigned CLJ is re-assigned on load port LP Assigned LP Event Tc53 LP Assigned Load port assignment withdrawal LP Not Assigned Tc60 Tc61 Carrier ID Assignment CID Not Assigned None Carrier ID assignment CID Not Assigned CID Assigned Tc62 CID Assigned Carrier ID reassignment CID Assigned Tc63 CID Assigned Carrier ID withdrawal CID Not Assigned #1 Numeric portion of the transition numbers in this column shall be used as event numbers. #2 Events in the Action column report the following information. CLJ Event reports CLJID and CLJState. CLD Event reports CLJID and previous CLJState SoLR Event reports CLJID, SoLRPState and SoLRPTime EoLR Event reports CLJID, EoLRPState and EoLRPTime SoUR Event reports CLJID, SoURPState and SoURPTime EoUR Event reports CLJID, EoURPState and EoURPTime CID Event reports CLJID, CLJCarrierType and CLJCarrierID LP Event reports CLJID and CLJLPID LP Event None CID Event CID Event CID Event 10.6 CLJ Services This section defines the message services required to support CLJ functionalities CLJ Service Message Description The following table is a list of CLJ services. Table 25 CLJ Service Message Description Service Name Type #1 Description GetCLJList R Optional This service gets a list of the CLJ objects from the equipment. Use SEMI E39 OSS to get ObjIDList by specifying ObjType and ObjID for ATTRID. GetCLJAttributes R Optional This service gets the attributes of specified CLJ from the equipment. Use GetAttr service of SEMI E39 OSS for this purpose. Page 29

30 #1 The Type column is used to indicate whether the service consists of a request/response message pair, R, or a single notification message, N CLJ Variable Data Definitions This section defines variable data requirements for CLJ compliant equipment. Values of these variables are available to the host via collection event reports and host status queries. Table 26 CLJ Variable Data Definitions Variable Name Description Type Access Comment CLJID PECID ObjID of CLJ CLJID is equipment defined. Optional Identifier of PEC Numerical text expression of positive integer Positive Integer 0 indicates the case the CLJ is not associated to particular PEC yet. CLJState The main state of CLJ State Model Enumerated: LoadQueued, LoadRequest, CarrierValid, UnloadRequest SoLRPState SoLRPTime EoLRPState EoLRPTime SoURPState Optional Current state of SoLR Prediction parallel state Optional time of SoLR Prediction Optional Current state of EoLR Prediction parallel state Optional time of EoLR Prediction Current state of SoUR Prediction parallel state Enumerated: SoLRNot, SoLR Uses format defined for TimeReport Enumerated: EoLRNot, EoLR Uses format defined for TimeReport Enumerated: SoURNot, SoUR SoURPTime time of SoUR Prediction Uses format defined for TimeReport EoURPState EoURPTime CLJCarrierType CLJCarrierID Optional Current state of EoUR Prediction parallel state Optional time of EoUR Prediction Optional Type of carrier Optional ID of carrier which is dealt with the CLJ. Carrier ID may not be assigned until a carrier is loaded and confirmed. In case carrier ID is not specified yet, this variable shall inform it. Enumerated: EoURNot, EoUR Uses format defined for TimeReport Enumerated: ProcessCarrier, EmptyCarrier, NPWCarrier Text 0 80 characters Identifier of a carrier. The CLJCarrierID shall be same as the CarrierID defined in SEMI E87. A zero length is used for CarrierID is not yet specified RO RO RO RO RO RO RO RO RO RO RO RO RO Page 30

31 Variable Name Description Type Access Comment CLJLPID Optional Load port ID ID of load port which will be used by the CLJ Positive integer 0 = Load port is not assigned Non 0 = Load port number The CLJLPID is compatible with the load port number defined in SEMI E87 which says The load port number shall be assigned incrementally from the bottom left to bottom right, then top left to top right when facing the front of the equipment. RO 11 Related Documents 11.1 SEMI Standards and Safety Guidelines SEMI E148 Specification for Time Synchronization and Definition of the TS-CLOCK Object 12 Requirements for Compliance 12.1 Following table provides a checklist for PCL compliance. Table 27 PCL Compliance Statement Fundamental PCL Requirements PCL Section Implemented PCL Compliant PCL Requirements 8 PCL Requirements 8.1 Carrier Flow Job (CFJ) Object Yes No Carrier Logistics Job (CLJ) Object Yes No Reporting Scheme of Time for PCL 8.2 Yes No Prediction Resubmission Threshold for PCL 8.3 Yes No PCL Value Data Definitions 8.4 Yes No TimeReport 8.5 Yes No CFJ Object Requirements 9 CFJ Object Definition 9.1 Yes No CFJ Object Descriptions 9.2 Yes No CFJ Object Functional Requirements 9.3 Order Management of CLJs Yes No Load/Unload Timing Management of CLJs Yes No Load Port Assignment to CLJs Load Port Assignment for Fixed Buffer Equipment Yes No Load Port Assignment for Internal Buffer Equipment Yes No CFJ Attribute Definitions 9.4 Yes No CFJ State Model 9.5 Yes No CFJ Services 9.6 Yes No CFJ Variable Data Definitions 9.7 Yes No CLJ Object Requirements 10 CLJ Object Definition 10.1 Yes No Page 31

32 Fundamental PCL Requirements PCL Section Implemented PCL Compliant CLJ Object Description 10.2 Yes No CLJ Object Functional Requirements 10.3 CLJ Main State Management Yes No Predictions Start of Load Request (SoLR) Prediction (Optional) Yes No End of Load Request (EoLR) Prediction (Optional) Yes No Start of Unload Request (SoUR) Prediction Yes No Endo of Unload Request (EoUR) Prediction (Optional) Yes No Carrier ID Assignment (Optional) Yes No Load Port Assignment (Optional) Yes No CLJ Object Attribute Definitions 10.4 Yes No CLJ State Model 10.5 Yes No CLJ Services 10.6 Yes No CLJ Variable Date Definitions 10.7 Yes No Page 32

33 APPENDIX 1 Application Examples for Simple Fixed Buffer Equipment NOTICE: The material in this Appendix is an official part of SEMI [designation number] and was approved by full letter ballot procedures on [A&R approval date]. A1-1 Implementations for Simple Fixed Buffer Equipment A1-1.1 Purpose The purpose of this appendix is to show how the optional functionalities are used for simple Fixed Buffer Equipment. A1-1.2 Configuration of the Equipment This implementation example uses following configuration. Number of Load Ports Two (Alternative use) Number of PECs One (Single thread of process) A1-2 Interim Implementation for simple Fixed Buffer Equipment A1-2.1 Purpose of Interim Implementation The purpose of this implementation is to provide SoUR prediction capability with minimal implementation effort. This implementation is easily extendable to LP-Based implementation. A1-2.2 Relationship Model of Objects The CFJ and CLJ relationship for simple Fixed Buffer Equipment is shown below. Number of CFJs One CFJ is assigned to each load port (two CFJs are used) Number of CLJs Up to one CLJ is created per load port (= per CFJ) Maximum Number of Carriers (MaxCarrierNumber) One (for one load port) Load Port Assignment Not used Carrier ID Assignment Not used SoLR Prediction Not used EoLR Prediction Not used SoUR Prediction Used EoUR Prediction Not used Figure A1-1 CFJ and CLJ Relationship for Interim Implementation for Simple Fixed Buffer Equipment Page 33

34 A1-2.3 CLJ State Model The CLJ uses the following portions of the CLJ State Model. Figure A1-2 CLJ State Model for Interim Implementation for Simple Fixed Buffer Equipment A1-2.4 CFJ for One Load Port of Simple Fixed Buffer Equipment Each CFJ which is assigned to each load port has the following configuration. Figure A1-3 CFJ for Interim Implementation for Simple Fixed Buffer Equipment A1-3 LP-Based Implementation for simple Fixed Buffer Equipment A1-3.1 Purpose of LP-Based Implementation The purpose of LP-Based implementation is to provide EoLR Prediction and SoUR Prediction capabilities with minimum implementation effort. For simplicity, CLJs are Page 34

35 managed per load port basis, and only current and the next for each load port. So, flexible assignment of load port to CLJ is not covered. A1-3.2 Relationship Model of Objects The CFJ and CLJ relationship for simple Fixed Buffer Equipment is shown below. Number of CFJs One CFJ is assigned to each load port (two CFJs are used) Number of CLJs Up to two CLJs are created per load port (= per CFJ) Maximum Number of Carriers (MaxCarrierNumber) One (for one load port) Load Port Assignment Not used Carrier ID Assignment Not used SoLR Prediction Not used EoLR Prediction Used SoUR Prediction Used EoUR Prediction Not used Figure A1-4 CFJ and CLJ Relationship for LP-Based Implementation for Simple Fixed Buffer Equipment A1-3.3 CLJ State Model The CLJ uses the following portion of the CLJ State Model. Page 35

36 Figure A1-5 CLJ State Model for LP-Based Implementation for Simple Fixed Buffer Equipment A1-3.4 CFJ for One Load Port of Simple Fixed Buffer Equipment Each CFJ which is assigned to each load port has the following configuration. Figure A1-6 CFJ for LP-Based Implementation for Simple Fixed Buffer Equipment Page 36

37 A1-4 Basic Implementation for simple Fixed Buffer Equipment A1-4.1 Relationship Model of Objects The CFJ and CLJ relationship for simple Fixed Buffer Equipment is shown below. Number of CFJs One CFJ is assigned to whole equipment (one CFJ manages two load ports) Number of CLJs Up to four CLJs are created. Maximum Number of Carriers (MaxCarrierNumber) Two (one for one load port) Load Port Assignment Used Carrier ID Assignment Used SoLR Prediction Not used EoLR Prediction Used SoUR Prediction Used EoUR Prediction Not used Figure A1-7 CFJ and CLJ Relationship for Basic Implementation for Simple Fixed Buffer Equipment A1-4.2 CLJ State Model The CLJ uses the following portion of the CLJ State Model. Page 37

38 Figure A1-8 CLJ State Model for Basic Implementation for Simple Fixed Buffer Equipment A1-4.3 CFJ for Simple Fixed Buffer Equipment CFJ which is assigned to the equipment has the following configuration. Figure A1-9 CFJ for Basic Implementation for Simple Fixed Buffer Equipment A1-4.4 Transaction and States of Basic Implementation for Simple Fixed Buffer Equipment Transactions and states are shown in the following table. Page 38

39 Table A1-1 Transactions and States # Action Dir #1. Message & Event E87 #2 LPTS PCL #3 PJ/CJ LP1 LP2 CLJ1 CLJID =0001 CLJ2 CLJID =0002 CLJ3 CLJID =0003 CLJ4 CLJID =0004 Job1 Job2 (CLJ1,3) (CLJ2,4) 1 Initial State RL RL None None None None None None 2 CLJ1,CLJ2 Created & Load Request 3 CLJ1,CLJ2 EoLR F E CLJ Event LR LR F E EoLR Event Time = Now 4 Start of E84 TB 5 CLJ1 Carrier Valid (Loaded) 6 CLJ1 Slot Map Verification PJ Creation 7 CLJ1 SoUR F E F E CLJ Event (@ End of E84) SoUR Event Time = T1 8 Start of E84 TB 9 CLJ2 Carrier Valid (Loaded) 10 CLJ2 Slot Map Verification PJ Creation 11 CLJ2 SoUR 12 CLJ3 Load Request 13 CLJ3 EoLR 14 CLJ1 Unload Request F E F E CLJ Event (@ End of E84) SoUR Event Time = T2 EoLR CV SoUR EoLR CV SoUR F E CLJ Event LR F E EoLR Event Time = T3 (CEW Started) F E CLJ Event RU UR 15 Start of E84 TB 16 CLJ1 Deleted (Unloaded) F E CLJ Event (@End of E84) EoLR Created /Execute RL Deleted Deleted 17 Start of E84 TB None None 18 CLJ3 Carrier Valid (Loaded) F E CLJ Event (@ End of E84) CV Created /Execute Page 39

40 19 CLJ3 Slot Map Verification PJ Creation Created/ Execute 20 CLJ3 SoUR F E SoUR Event Time = T4 SoUR 21 CLJ4 Load Request F E CLJ Event LR 22 CLJ4 EoLR 23 CLJ2 Unload Request F E EoLR Event Time = T5 (CEW Started) F E CLJ Event RU UR 24 Start of E84 TB EoLR 25 CLJ2 Deleted (Unloaded) F E CLJ Event (@ End of E84) RL Deleted Deleted 26 Start of E84 TB None None 27 CLJ4 Carrier Valid (Loaded) 28 CLJ4 Slot Map Verification PJ Creation 29 CLJ4 SoUR 30 CLJ3 Unload Request F E F E CLJ Event (@ End of E84) SoUR Event Time = T6 F E CLJ Event RU UR 31 Start of E84 TB 32 CLJ3 Deleted (Unloaded) 33 CLJ4 Unload Request F E CLJ Event (@ End of E84) CV SoUR RL Deleted Deleted F E CLJ Event RU None UR None 34 Start of E84 TB 35 CLJ4 Deleted (Unloaded) F E #1 F=Factory system, E=Equipment CLJ Event (@ End of E84) #2 LPTS=Load Port Transfer State, RL=Ready to Load, TB=Transfer Blocked, RU=Ready to Unload #3 LR=Load Request, CV=Carrier Valid, UR=Unload Request Created /Execute RL Deleted Deleted Page 40

41 APPENDIX 2 Application Examples for Internal Buffer Equipment NOTICE: The material in this Appendix is an official part of SEMI [designation number] and was approved by full letter ballot procedures on [A&R approval date]. A2-1 Implementation for Internal Buffer Equipment A2-1.1 Purpose The purpose of this appendix is to show how the optional functionalities are used for Internal Buffer Equipment. A2-1.2 Configuration of the Equipment This implementation example uses following configuration. Number of Load Ports Two. Independently usable for both load and unload. Number of PECs One. One batch can be processed at a time. Number of Carriers for One Batch Two. Two carriers of wafers for one batch. Number of Internal Buffers for Carriers for Production Four. Carriers up to two batches can be stored. A2-2 Bi-Direction Implementation for Internal Buffer Equipment A2-2.1 Relationship Model of Objects The CFJ and CLJ relationship for Internal Buffer Equipment is shown below. Number of CFJs One. For flexible use of load port. Number of CLJs Up to six CLJs. Two CLJs for the wafers in process, two CLJs for the wafers being unloaded, and two CLJs for the wafers to be loaded. Maximum Number of Carriers (MaxCarrierNumber) Four Load Port Assignment Used Carrier ID Assignment Used SoLR Prediction Not used EoLR Prediction Used SoUR Prediction Used EoUR Prediction Not used Figure A2-1 CFJ and CLJ Relationship for Bi-Direction Implementation for Internal Buffer Equipment Page 41

42 A2-2.2 CLJ State Model The CLJ uses the following portion of the CLJ State Model. Figure A2-2 CLJ State Model for Bi-Direction Implementation for Internal Buffer Equipment A2-2.3 CFJ for Internal Buffer Equipment CFJ has the following configuration. CFJ has six CLJs at maximum; two are for the carriers in process, two are carriers for being unloaded, and two are for carriers to be loaded. A The First Table The first table shows the timing at which batch A is becoming unload request and batch B is now in process. The wafers for CLJID=0001 are already unloaded from process unit to carrier C0 and the carrier is in Unload Request state. The wafers for CLJID=0002 are being unloaded to carrier C1 and the carrier is predicted to be Unload Requested state at hh.mm.ss1. CLJID=0005, 0006 are in Load Request state and are predicted (requested) to be finished by hh.mm.ss2, hh.mm.ss3. CLJID=0001 and CLJID=0005 share the same CEW on load port 1 and should be completed by hh.mm.ss2. A The Second Table The second table shows the timing at which CLJID=0001 is already deleted as C0 is unloaded, and CLJID=0002 is in Unload Request state. Carrier C4 for CLJID=0005 is already loaded, and CLJID=0006 is in Load Request state. A The Third Table The third table shows the timing at which the batch B is about to end, and batch C is ready to process. CLJID=0007, 0008 are in Load Request state for cascading. Page 42

43 Figure A2-3 CFJ for Bi-Direction Implementation for Internal Buffer Equipment NOTICE: (SEMI) makes no warranties or representations as to the suitability of the Standards and Safety Guidelines set forth herein for any particular application. The determination of the suitability of the Standard or Safety Guideline is solely the responsibility of the user. Users are cautioned to refer to manufacturer s instructions, product labels, product data sheets, and other relevant literature, respecting any materials or equipment mentioned herein. Standards and Safety Guidelines are subject to change without notice. By publication of this Standard or Safety Guideline, SEMI takes no position respecting the validity of any patent rights or copyrights asserted in connection with any items mentioned in this Standard or Safety Guideline. Users of this Standard or Safety Guideline are expressly advised that determination of any such patent rights or copyrights, and the risk of infringement of such rights are entirely their own responsibility. Page 43