Method and apparatus for automatically generating schedules for wafer processing within a multichamber semiconductor wafer processing tool
First Claim
1. A method of producing schedules for processing a wafer in a multichamber semiconductor wafer processing tool comprising the steps of:
- (a) providing a trace defining a series of chambers that are visited by a wafer as the wafer is processed by the tool;
(b) initializing a sequence generator with a particular value of a variable defining particular wafer positions with the tool; and
(c) generating values of said variable that represent all valid successor wafer positions related to the particular value, where said values of said variable, taken together, form a partial schedule that defines all possible wafer movements starting at the particular wafer positions for processing a wafer.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for producing schedules for a wafer in a multichamber semiconductor wafer processing tool comprising the steps of providing a trace defining a series of chambers that are visited by a wafer as the wafer is processed by the tool; initializing a sequence generator with a value of a variable defining initial wafer positioning within the tool; generating all successor variables for the initial variable value to produce a series of values of the variable that represent a partial schedule; backtracking through the series of variables to produce further partial schedules; and stopping the backtracking when all possible variable combinations are produced that represent all possible valid schedules for the trace. All the possible schedules are analyzed to determine a schedule that produces the highest throughput of all the schedules.
-
Citations
17 Claims
-
1. A method of producing schedules for processing a wafer in a multichamber semiconductor wafer processing tool comprising the steps of:
-
(a) providing a trace defining a series of chambers that are visited by a wafer as the wafer is processed by the tool;
(b) initializing a sequence generator with a particular value of a variable defining particular wafer positions with the tool; and
(c) generating values of said variable that represent all valid successor wafer positions related to the particular value, where said values of said variable, taken together, form a partial schedule that defines all possible wafer movements starting at the particular wafer positions for processing a wafer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
(d) backtracking through a series of variable values in said partial schedule and applying step (c) to each value in said partial schedule to produce further values of said variable representing additional series of values that represent additional partial schedules; and
(e) stopping said backtracking when all possible variable value combinations are produced that represent all possible valid schedules for said trace.
-
-
4. The method of claim 3 further comprising the step of:
(f) identifying at least one schedule in all possible valid schedules that provides an optimal throughput for the trace.
-
5. The method of claim 4 wherein said identifying step (f) further comprises the step of computing the throughput for each and every schedule of said all possible schedules and selecting an optimum schedule for the trace which produces the highest throughput.
-
6. The method of claim 3 wherein said backtracking step (d) further comprises the steps of:
-
(a′
) initializing a schedule to an n-string of zeros having a length of one;
(b′
) identifying all unused successors of a last letter in a partial schedule;
(c′
) appending an unused successor to said partial schedule;
(d′
) increasing the length of the partial schedule by one and decreasing a number of unused successors by one;
(e′
) querying whether the last letter of the partial schedule is the same as a previous letter in the partial schedule and, if not, repeat steps (b′
), (c′
), (d′
) and (e′
) until the last letter of the partial schedule is the same as a previous letter in the partial schedule;
(f′
) storing the partial schedule as a full schedule and storing the length of the full schedule;
(g′
) removing the last letter of the full schedule to produce a new partial schedule and decreasing the length of the full schedule by one;
(h′
) querying whether the length of the new partial schedule is one and, if the length is one, stopping;
otherwise, proceeding to step (i′
);
(i′
) querying whether there is an unused successor of the last letter and, if there are no unused successors of the last letter, repeating steps (g′
), (h′
) and (i′
) until there is an unused successor of the last letter;
(j′
) appending the unused successor to the new partial schedule, marking the successor as used and decreasing the number of successors by one; and
(k′
) returning to step (b′
).
-
-
7. The method of claim 1 wherein a value of said variable is a letter and a plurality of letters forms a word.
-
8. The method of claim 7 wherein a valid schedule is defined by a word having no more than one repeated letter.
-
9. The method of claim 7 wherein each letter contains a n-tuple, where n represents a total number of wafer positions within said trace.
-
10. The method of claim 9 wherein n represents a total number of wafer positions within said trace plus a transport robot position.
-
11. The method of claim 1 wherein successor variables values are defined by successor generation rules that are prescribed by wafer processing parameters.
-
12. The method of claim 1 wherein successor variable values are generated with regard to transport robot positioning.
-
13. Apparatus for producing schedules for processing a wafer in a multichamber semiconductor wafer processing tool, having a trace defining a series of chambers that are visited by a wafer as the wafer is processed by the tool, said apparatus comprising:
-
a sequence generator, being initialized with a particular value of a variable defining particular wafer positions within the tool, for generating values of said variable that represent all valid successor wafer positions related to the particular value, where said values of said variable, taken together, form a partial schedule that defines all possible wafer movements starting at the particular wafer position for processing a wafer. - View Dependent Claims (14, 15, 16, 17)
means for backtracking through a series of variable values in said partial sequence and selecting each value in said partial schedule as an input to said sequence generator which produces further values of said variable representing additional series of values that represent additional partial schedules, whereby all possible schedules for said trace are generated.
-
-
16. The apparatus of claim 15 further comprising a throughput model, coupled to said sequence generator, for computing a throughput value for each possible schedule in said all possible schedules.
-
17. The apparatus of claim 16 further comprising means for identifying at least one schedule that has the largest throughput value.
Specification