semi合集-English.pdf - 第2628页
SEMI E94-0705 © SEMI 2000, 2005 11 Num Previous State Trigger New State Actions Comments 7 WAITING FORSTART User START command received. EXECUTING Same as for transition 5. Same as for transition 5. 8 EXECUTING Received …

SEMI E94-0705 © SEMI 2000, 2005 10
ControlJob, for processing have not arrived at the equipment, the ControlJob will stay in this state until materials
arrive. If the ControlJob or the first process job in the ControlJob does not require material, this state is exited
immediately. A SELECTED ControlJob can be de-selected if specified materials have not arrived.
9.2.3 WAITING FOR START — The ControlJob is waiting to receive a start command manually or remotely from
the host. The ControlJob transitions to this state only if the StartMethod is set to FALSE (UserStart) and materials
have arrived.
9.2.4 EXECUTING — In this state, each process job in the ProcessingCtrlSpec is initiated in order, based on the
value of the ControlJob’s ProcessOrderMgmt attribute as required resources become available and material for the
job has been verified. Process jobs that have been initiated but that are WAITINGFORSTART or PAUSED shall
block the availability of the resources that they require (see SEMI E40).
NOTE 1: Process jobs that have blocked available resources shall cause the ControlJob to stop initiating subsequent process jobs
that use those resources.
9.2.5 PAUSED — When the ControlJob is paused it shall not commence the initiation of any more Process jobs. In
this state, Process jobs that have not entered the “PROCESSING” state can be modified. Various attributes of the
ControlJob can also be modified. This is equipment specific and shall be documented by the equipment supplier.
9.2.6 COMPLETED — A control job enters this state once all of its process jobs have been completed, stopped or
aborted.
Table 3 ControlJob State Transition Table
Num Previous State Trigger New State Actions Comments
1 (No state) Receive “Create” command
from host or operator through
operator console.
QUEUED Create ControlJob
and put it at the tail
of a control job
queue.
If job queue is full, “Create”
request is rejected.
2 QUEUED Receive “Cancel”, “Abort”, or
“Stop” command from host or
operator through operator
console.
(No state) De-queue and
terminate the job.
Send a “ControlJob
Canceled” event to
the host.
If other control jobs are
waiting behind the canceled
job in the queue, they are
shifted forward to fill in the
gap after the de-queuing of
the canceled control job.
3 QUEUED The processing resource has
capacity to begin work on the
next ControlJob.
SELECTED Select and de-queue
the job at the head of
the queue. Send a
“Selected” event to
the host.
Materials are not necessarily
at the equipment.
4 SELECTED Receive “De-select” command
from host or operator through
operator console and materials
for the control job have not
arrived yet.
QUEUED De-selected job
moves to the head of
the job queue and the
job that was at the
head becomes the
SELECTED job.
The command shall be
rejected if the resources for
the job at the head of queue
are not available. See the
Queue Model.
5 SELECTED Material for the first process job
arrives or in the case where the
first (or only) process job does
not require material, this
transition shall be taken as soon
as the processing resource for
that process job becomes
available.
“StartMethod” attribute in the
ControlJob is set for Auto.
EXECUTING Send “Execution
began” event to the
host.
Process jobs associated with
a carrier will not initiate until
the identifier and substrate
slot map for the carrier have
been verified. Process jobs
that don’t use material can be
initiated immediately.
6 SELECTED Same as for transition 5 except
that the “StartMethod” attribute
in the control job is set for user
start.
WAITING
FORSTART
Send a “JobWaiting
for Start” event to
host and/or operator.

SEMI E94-0705 © SEMI 2000, 2005 11
Num Previous State Trigger New State Actions Comments
7 WAITING
FORSTART
User START command
received.
EXECUTING Same as for
transition 5.
Same as for transition 5.
8 EXECUTING Received “Pause” message
from host or operator through
operator console or a
ControlJob. PauseEvent has
occurred.
PAUSED Send a “Paused”
event to the host.
Process jobs which have not
started can be modified in
this state.
9 PAUSED Receive “Resume” message
from host or operator through
operator console.
EXECUTING Commence initiating
process jobs. Send a
“Resumed” event to
the host.
10 EXECUTING All the ProcessJobs specified
for the ControlJob have
completed.
COMPLETED Send a “Complete”
event to the host.
It may include post
processing completion.
11 ACTIVE Receive “CJStop” message
from host or operator through
operator console and all the
process jobs under the
ControlJob have been stopped
and material processing is
stopped.
COMPLETED Send a “Stopped”
event to the host.
12 ACTIVE Receive “CJAbort” command
from host or operator through
operator console and all the
process jobs under the
ControlJob have been aborted
and material processing is
aborted.
COMPLETED Send “Aborted”
message to the host.
13 COMPLETED The ControlJob is deleted. (No state) Equipment should perform
this function automatically
for COMPLETED jobs.
10 Control Job Queue Model
10.1 The Queuing mechanism for control jobs will generally operate under FIFO (First in- First Out) constraints.
The commands used to monitor queue status and prevent deadlock conditions are specified here.
10.2 Queue Integrity
10.2.1 To maintain queue integrity, only one operation shall be performed at any given time (e.g., the “Create”
request shall be rejected by the equipment if the CJHOQ service is being processed). The Queue is defined to be
“locked” while it is performing an operation (and refusing any further operation until completion of the current
operation).
10.3 Head of Queue Service
10.3.1 The Head of Queue service (CJHOQ) shall operate under the following rules:
1) All control jobs positioned between the specified control job and the head of the queue (including the job
currently positioned at the head) will be moved back one position. The specified control job will then be moved
into the head of queue position.
2) When the CJHOQ command is invoked, the queue will be “locked” to maintain integrity.
3) In the case where only one control job exists in the queue, the command will perform no action on the queue.
10.4 DeadLocks
10.4.1 The Head of Queue service (CJHOQ) requests a specific control job to be set as the next control job to be
run. In order to prevent deadlock when the job at Head of Queue and the job in the SELECTED state are both

SEMI E94-0705 © SEMI 2000, 2005 12
awaiting material delivery, the CJHOQ command may be used to move a different job to the head of the queue
position. The potential dead lock is then broken by issuing the DE-SELECT service request.
10.5 Utilization of Queue for Control Job Priority Management
10.5.1 Similar to Deadlock, certain cases may arise where a job at the head of the queue cannot be selected due to a
lack of processing resources. In this case, DE-SELECT command shall be rejected and consequently a series of DE-
SELECT and CJHOQ commands may be issued in an attempt to find a job which can transition to SELECTED
state.
10.5.2 To force a “hot job” to be the next job run, it could be necessary to send the CJStop message to the
SELECTED job. This case only happens when the job at the head of the queue (the hot job) does not yet have
resources available.
NOTE 2: Most equipment where this is possible can support parallel execution of Control Jobs. Management of the queue(s) in
this case is currently beyond the scope of this standard.
10.6 Space in the Queue
10.6.1 The QueueAvailableSpace variable data item is used to query the number of control job openings within the
queue. The QueueAvailableSpace shall function according to the following rules:
1) This variable can only be guaranteed valid when no other operations are being performed simultan-eously on
the queue. For example, don’t request this variable while a Create control job command is being processed by
the equipment.
2) This variable shall be incremented whenever a control job in the queue is de-queued. That is, when a “Cancel”,
“Abort”, or “Stop” command has been received and completed while the control job is queued. It should also
be incremented when the SELECTED state is entered by a control job. However, if this transition occurs as a
result of the “Deselect” command (at least one job in queue, and a control job in the SELECTED state), no
change should be made to the variable value.
3) This variable should be decremented whenever a control job joins the queue. That is, when a “Cre-ate”
command is received and accepted. It should also be decremented if a “Deselect” command is issued on a
control job in the SELECTED state and no other jobs currently reside in the queue.
4) The equipment should reject the “Create” command when this variable is equal to zero.
10.7 Getting a List of Queued Jobs
10.7.1 The QueuedCJobs Variable Data Item is used to query the names of the control jobs currently residing in the
queue. It lists items starting at the head of the queue.
10.7.2 The QueuedCJobs Variable Data Item shall function according to the following rules:
1) This variable can only be guaranteed valid when no other operations are being performed simultan-eously on
the queue.
2) This variable list will be modified whenever a suc-cessful “Create” command is received. Addition-ally,
“Cancel”, “Abort”, and “Stop” commands issued on control jobs residing in the queue will modify this variable
list. Any use of the “Deselect” command will also modify the variable list.
11 Properties for Carriers
11.1 Compliance to Control Job Management requires that the equipment track the status of individual carriers. In
particular, the factory needs to know the status of carriers with respect to control jobs. Carriers may have various
properties that are beyond the scope of this standard. However, there are specific properties that are needed for
Control Jobs.
11.2 Carrier Verification
11.2.1 The equipment needs to know when a carrier has been verified as proper. Only process jobs associated with
the carrier that has been verified shall be initiated by a control job. Depending on the equipment’s capabilities,
verification may include verification by an equipment read of the carrier’s ID (identification) and the reading of the
substrate (e.g., wafer) slot map. The ControlJob determines if the carrier is verified by checking the carrier’s