Daily target generation and machine allocation with priority5826238Abstract A method and system are provided for operating a data processing system including a data base computer system and a resource allocation computer for control of resource allocation in a manufacturing plant with a manufacturing line comprising a plurality of stages with manufacturing machines, the resource allocation computer including data storage means. The method includes several steps including: deriving data from the data storage means and computing the targets for each of the stages; obtaining machine capacity data from the data storage means and employing the machine capacity data for allocating machine capacity proportionally and adjusting targets; adding limits to stages of penetration and adjusting targets; determining residual capacity and allocating the residual capacity of the manufacturing machines; and checking the convergence of targets and machine allocation until convergence is achieved. Claims Having thus described the invention, what is claimed as new and desirable to be secured by Letters Patent is as follows: Description BACKGROUND OF THE INVENTION
______________________________________
Stage aij
______________________________________
j = 1 ai1 = 1
j = 2 ai2 = 0
j = 3 ai3 = 1
j = 4 ai4 = 0
j = 5 ai5 = 0
j = 6 ai6 = 1
j = 7 a17 = 0
. . . .
. . . .
. . . .
j = n ain = 1, where the stage n is an integer
greater than zero and less than
infinity. The product with process
i will go through stages 1, 3,
6, . . . n because aij = 1 (and will
not go through stages 2, 3, 5, 7,
etc. because aij = 0) If we add up
all of these aij values, it indi-
cates the total number of stages
that the process i will go through.
______________________________________
M: the total number of machine groups; Nm: number of available machines in group m of the day; Cm: capacity of a machine in group m in term of wafers per day; mj: index of the machine group required by stage j,j=1, . . . J; r.sub.o : wafers started at the beginning of the day; ri.sub.o : type-i wafers started at the beginning of the day, d.sub.J : demanded of output wafers on the day, d.sub.iJ : demanded of output wafers on the day; Intermediate variables i: part type index, i J: stage index, j=1, . . . J; m: the machine group index, m=1, . . . ,M): flow.sub.-- inj: number of wafers flowing to stage j from its up-stream stages, flow--inij: number of type-i wafers flowing to stage j from its upstream stages, flow.sub.-- out.sub.j : number of wafers leaving stage j to its down-stream stages, flow.sub.-- outij: number of type-i wafers leaving stage j to its down-stream stages. Decision variables rj: the target moves of stage j and also the flow-in to stage j+1 during the day; rij: the target move of type-i parts at stage j and also the type-i flow-in to stage j+1 during the day; maj: number of machines allocated to process stage j for the day; maij: number of machines allocated to process type-i parts at stage j for the day, The short term production control function of daily target generation and machine allocation (TG&MA) determines the target move, rij, and the allocation of equipment capacity, maij, for every part type and every stage of the reentrant production line. Given the wafer start (ri.sub.o, ".A-inverted.", where ".A-inverted." means "All" i) of each day, the TG&MA function aims the multiple operation objectives as follows: 1. Maximize total moves, .SIGMA.rj , while meeting daily wafer output targets set by weekly or monthly schedule, i.e., riJ.gtoreq.di; 2. Minimize wafer-in-process (WIP), .SIGMA.xj, and fabrication cycle times, while maintaining the standard WIP level, Wj, at stage j for "-" j; 3. Maximize machine utilization, especially for the bottleneck machines, and 4. Balance the production line, i. e., ideally, rj=rj+1 for j=, . . . ,J-1 Objective 1 requires that the TG&MA.sub.-- PR system provides a capacity for tracking the targets set by its higher level in the production control hierarchy. The achievement of objective 2 or 3 requires that the TG&MA.sub.-- PR system sets good targets to its lower level of production control on-line dispatching. As to objective 4, line balancing is a complex issues that requires a good integration of the TG&MA.sub.-- PR system with the wafer start schedule and the determination of standard. Definition of TG&MA.sub.-- PR Method The basic TG&MA.sub.-- PR method can be stated in the following steps: Step 1. Prioritize Lots High Priority Lot: priority "1" in database management system Low Priority Lot: priority "2", "3", "4", "5" in database management system Step 2. Calculate Upper.sub.-- Bound Target by technology, stage and priority Step 3. Apply TG&MA.sub.-- PR to high priority lots Step 4. Apply TG&MA.sub.-- PR to low priority lots using residual machine capacity Step 5. Apply SOPEA.sub.-- PR to Compute Stages of penetration Flow-In Step 6. Iterate from step 2 to step 5 Step 1. Prioritize Lots According to special orders from customers, some high priority lots must be expedited through the manufacturing production line very rapidly. Such high priority lots are assigned a priority of "1" in the control computer system to make assure that they are always handled immediately. Since high priority lots comprises only about 5% of the total number of production lots, the target system must distinguish between high priority lots and low priority lots. Accordingly, the first step of the TG&MA.sub.-- PR system is to prioritize the lots so high priority lots have a priority "1" in the database management system whereas, on the other hand, low priority lots have various priority levels of "2", "3", "4" and "5". Step 2. Calculate Upper Bound Target Maintaining the WIP distribution of the fab at the "standard" WIP distribution is one of the objectives of TG&MA.sub.-- PR . This is a fundamental priority of the TG&MA.sub.-- PR system. An upper bound target for each stage is first determined by a PUSH and PULL procedure. On the one hand, the PUSH procedure pushes the wafers at a stage except those needed for standard WIP to down-stream stages (closer to the end of the production line) so that the WIP of each stage is minimized and the throughput at each stage is maximized in a heuristic sense. On the other hand, the PULL procedure pulls the production flows from up-stream stages, attempting to maintain the "standard" WIP level and to prevent machine starvation for each stage so that production demands can be met and machine utilization can be maximized. Allocate standard-WIP of stage to each technology The standard-WIP of each stage is allocated to each technology in order to calculate the Push Target and Pull Target of each technology. ##EQU1## The Standard WIP of high priority lots is set as zero to avoid queuing in the production line. Determining Push-target The push-target determination procedure tries to "PUSH" as many wafers through a stage as possible while maintaining the "standard" WIP at the stage. The PUSH procedure starts from the first stage and computes the push-target for each stage as follows: ##EQU2## Determining Pull-target This step implements the PULL concept. It determines the amount of wafers that a stage should supply to the next down-stream stage based on both the output demand and the standard WIP of that down-stream stage. The calculation procedure therefore starts from the final stage, i.e., stage J and computes the pull-target of each stage as follows:
______________________________________
Pull-target.sub.J = d.sub.J, and
Pull-target.sub.j = max (0, flow.sub.-- out.sub.j+i +
std.sub.-- wip.sub.j+i - wip.sub.j+i);
for j = J - 1, . . . , 1;
where
flow.sub.-- out.sub.J = d.sub.J
flow.sub.-- out.sub.j = Target.sub.j.sup.(n-1) ; for j = j, . . . , 2
the upper index (n - 1) means the previous iteration
______________________________________
Determining Upper-bound Target To set an aggressive target for each stage, the upper-bound target of a stage without considering capacity constraint is set by taking the maximum between the Push-target and Pull-target of the stage, i.e., UB.sub.-- target.sub.j =max (Push-target.sub.j ; Pull-target.sub.j) Step 3. Apply TG&MA.sub.-- PR to High Priority Lots 3.1 Compute upper bound of the target by stage by technology case:
______________________________________
PUSH Target PULL Target
Target
______________________________________
stage1 30 35 30
stage2 -- -- --
stage3 40 20 55
stage4 60 55
______________________________________
3.2 Compute the Total Target by stage case: There are three technologies in FAB, (i.e. technology A,B,C)
______________________________________
Tech. A
Tech. B Tech. C Total
Target
Target Target Target
______________________________________
stage1 30 10 20 60
stage2 145 -- 55 200
stage3 -- 60 40 100
stage4 50 65 -- 115
stage5 55 -- 25 80
______________________________________
3.3 Machine Allocation case: stage 1, 2, 3 use machine XX number of machine XX=4
______________________________________
Standard Max Machine
Total
Out Limit Target
______________________________________
stage1 70 3 60
stage2 90 2 200
stage3 80 4 100
______________________________________
3.3.1 Change the target unit to the machine unit The capacity of same machine would differ when involved in a different production process according to a realistic situation. Therefore, machine allocation should based on the ratio of machine unit instead of wafer quantity. In the following example, first transfer the target to machine unit. Ideally, stage1 needs 0.86 machine units stage2 needs 2.22 units and stage3 needs 1.25 units.
______________________________________
Total Standard
Target
out Machine
______________________________________
stage1 60 70 60/70 = 0.66
stage2 200 90 200/90 = 2.22
stage3 100 80 100/80 = 1.25
Total = 4.33
______________________________________
3.3.2 Proportion the machine allocation Since the number of machines is limited, it is necessary to allocate the actual machines according to ideal machine proportions.
______________________________________
Machine
______________________________________
stage1 4.0 * 0.86/4.33 = 0.80
stage2 4.0 * 2.22/4.33 = 2.05
stage3 4.0 * 1.25/4.33 = 1.15
______________________________________
3.3.3 Maximum machine limit Due to some factors, the same kinds of machines may not appropriate for every stage. Therefore, the maximum number of available machine should be considered. The machine allocation is the minimum of the maximum machine limit and the machine allocated in 3.3.2 are as follows:
______________________________________
Max Machine Machine
______________________________________
stage1 3 min(0.80, 3) = 0.80
stage2 2 min(2.05, 2) = 2.00
stage3 4 min(1.15, 4) = 1.15
Total = 3.95
______________________________________
3.3.4 Allocate residual machine capacity Because of the restriction of the maximum number of available machines, there is a residual machine capacity which needs to be allocated. In (3.33) four (4) machines are available-but only 3.95 machines are allocated. Therefore, 0.05 machines will be residual for further allocation. In this case, stage1 needs 0.86 units but is allocated only 0.8 units. So, there is a shortage of 0.06 units. Stage3 is 0.1 units short and stage 2 has a sufficient capacity. According to this ratio of shortages, the residual machine capacity can be allocated as follows:
______________________________________
Residual Machine
______________________________________
stage1 0.05 * 0.06/0.16 = 0.019
stage2 --
stage3 0.05 * 0.10/0.16 = 0.031
______________________________________
3.3.5 Compute total machine allocation We add up the numbers from (3.3.4) and (3.3.5) and the sum comprises the actual machine allocation.
______________________________________
Machine Allocation
______________________________________
stage1 0.80 + 0.019 = 0.519
stage2 2.00 + 0.000 = 2.000
stage3 1.15 + 0.031 = 1.181
______________________________________
3.3.6 Compute target Finally the machine units are transferred into actual wafer quantities.
______________________________________
Target
______________________________________
stage1 0.819 * 70 = 57.33
stage2 2.000 * 90 = 180.00
stage3 1.181 * 80 = 94.48
______________________________________
The machine allocation of high priority lots can be completed by following steps (3.1), (3.2) and (3.3) . Step 4. Apply TG&MA.sub.-- PR to Low Priority Lots After the machine allocation of high priority lots, the machine capacity is checked. If there are residual machines, the capacity is allocated to low priority lots by following the same steps. Step 5. Apply SOPEA.sub.-- PR In the above procedures for calculating targets, the time delay of a wafer which is moving from one stage to another stage due to queuing and processing times is not accounted for. As a result, a wafer may be moved throughout the production line within a day, which is obviously not realistic. Actually, a wafer may need about thirty-five days to move throughout a production line if account is taken of the waiting time, process time and hold time. In order to prevent this from happening, it is required to compute the number of stages through which the initial WIP of each stage can be moved during one day. Add that sum as a constraint to the calculation of flow-in WIPs for each stage. Details of estimating the number of stages that WIP can penetrate (pass through) in a single day "Stages Of PEnetrAtion" (SOPEA) is described in the following section. Given the SOPEA of each-stage in the line, it is possible to identify the up-stream stages whose WIP may flow into each stagej within the current day. WIPs of stagej and its up-stream stages are then summed up as an estimate of WIP penetration limit for the stage which the daily target of stagej should not exceed. Thus, all of the targets (target.sub.j ; j=1, . . . J) are then modified. In this section, steps referred to as SOPEA are used to estimate how many stages that wafers at each stage can penetrate within one day. The maximum number of incoming WIPs for each stage is then determined, and finally the targets are modified individually. The number of stages of penetration is a function of part type, processing time, WIP distribution, machine capacity and dispatching. In the fab, wafers of different product types (even the same product type) at the same stage can be anticipated to get different processing priority, and can be anticipated to be randomly queued in the buffer waiting for processing. To reduce the complexity of the problem to a practical level and to focus on the key factors about a one day long penetration estimation, the assumptions are made, as follows: 1. The wafers dispatching rule is that the first work in is the work which is served first or that a "First In First Out" (FIFO) system is used. 2. Neglect consideration of the transfer time which is the time between WIP track-in machine and being processed. 3. The unit being processed being considered is a single piece, but in practice the wafers processed unit is a lot of pieces. Some machines process wafers by batch which may be seven pieces or twenty-four pieces or even more. Wafers of different types at a stage or at another stage may compete for the same type of equipment to be processed, as different stages may use the same type of equipment in processing. The result is that the SOPEA of wafers of a given type at a stage could be greater or less due to the quantity of machine capacity allocated to process the given type at the stage. In addition, this means that the Total Processing Time (T.sub.TP) of wafers at any stage is defined by the basic equation of the SOPEA method which is as follows: ##EQU3## To describe the development of SOPEA method and system, certain notation is defined. Since it considers one product type at a time in the method of SOPEA, for simply and easily capturing the ideas, the type index "i" was omitted from the latter discussion. Thus it is necessary to redefine some notation to prevent confusion with those defined in previous section and further define extra notation in the follows: wj: WIP level for type-i wafers at stage j; Cj: machine capacity in terms of number of machines allocated to process type-i wafers at stage j during a day; .tau.j: processing time (in hours) for type-i wafers at stage j; tjk: time needed for all the wafers for type-i at stage j to be completed at stage k, k>j. In other words, "tjk" is the time to move from stage j to stage k. Method development First, calculate the time needed for all wafers at one stage to be completed at the stage immediately down-stream (called the "two-stage condition") until all of those wafers are done for wafers at every stage. Then the resulting data of two-stage condition is used to calculate another time interval needed for wafers to be processed through three stages (called the "three-stage condition") . Finally these results can be converted to a general condition (n-stage condition) and the time needed to complete wafers from one stage to its n-th down-stream stage is calculated. Then an estimate is easily made as to how many stages that wafers at one stage can penetrate. A determination is made as to the maximum incoming WIPs of each stage during one day. (I.) Two-stage case FIG. 2 illustrates the queuing mode for the two-stage case with a stage W1 and a stage W2. At station W1, a set of buffers B1a, B1b, and B1c are shown leading to the server .tau.1 with machine capacity C.sub.1. The output wafers from stage W1 pass to stage W2. At station wip2, a set of buffers B2a, B2b, and B2c are shown leading to the server .tau.2 with machine capacity C.sub.2. The output wafers from stage W2 pass to the next stage (which is not relevant to the two stage case). Consider the following two cases: (1) If w.sub.2 .tau.2/C.sub.2 >w.sub.1 .tau..sub.1 /C.sub.1, it means by the time when w.sub.2 wafers are completed at stage 2, all w.sub.1 wafers have arrived at the buffer of stage 2. Thus, t.sub.12 =w.sub.1 .tau..sub.1 /C.sub.1 +w.sub.2 .tau..sub.2 /C.sub.2 (2) If w.sub.2 .tau..sub.2 /C.sub.2 .ltoreq.w.sub.1 .tau..sub.1 /C.sub.1 there can be two additional subcases as follows: (a) When the last piece of wafer is finished at stage 1, all other wafers (w.sub.2 +(w.sub.1 -1)) have been completed at stage 2, i.e., if w.sub.1 .tau..sub.1 /C.sub.1 >((w.sub.1 -1)+w.sub.2).tau..sub.2 /C.sub.2 then t.sub.12 =w.sub.1 .tau..sub.1 /C.sub.1+.tau.2 /C.sub.2 (b) If w.sub.2 .tau..sub.2 /C.sub.2 .ltoreq.w.sub.1 .tau..sub.1 /C.sub.1 .ltoreq.((w.sub.1 -1)+w.sub.2).tau..sub.2 /C.sub.2, then there are w.sub.1 -(w.sub.1 .tau..sub.1 /C.sub.1 -w.sub.2 .tau..sub.2 /C.sub.2)/(.tau..sub.2 /C.sub.2) pieces remaining in the buffer of stage 2. So, t.sub.12 =w.sub.1 .tau..sub.1 /C.sub.1 +w.sub.1 -(w.sub.1 .tau..sub.1 /C.sub.1 -w.sub.2 .tau..sub.2 /C.sub.2)/(.tau..sub.2 /C.sub.2))) (.tau..sub.2 /C.sub.2)=(w.sub.1 +w.sub.2)(.tau..sub.2 /C.sub.2) t.sub.12 =(w.sub.1 +w.sub.2)/(.tau..sub.2 /C.sub.2)+(w.sub.2 .tau..sub.2 -.tau..sub.1) Note that there cannot be any vacant time for the stage 2 machine in this subcase; otherwise it goes returns to subcase (a). In summary, we have the following if w1.tau.1/C1>((w1-1)+w.sub.2).tau.2/C.sub.2, then t12=w1.tau.1/C1+.tau.2/C.sub.2 if w1.tau.1/C1.ltoreq.((w1-1)+w2).tau.2/C.sub.2, then t12=(w1+w.sub.2)(.tau.2/C.sub.2 II) General case Assume that ti(j-1) and t(i+1)j have been obtained, we can conclude the method to calculate the time need for wafers to be processed from stage i to stage j as follows: if t.sub.i(j-1) >t.sub.(i+1)j +(w.sub.i -1).tau..sub.j /C.sub.j ; t.sub.ij =t.sub.i(j-1) +.tau..sub.j /C.sub.j ; if ti(j-1).ltoreq.t.sub.(i+1)j +(w.sub.i -1).tau..sub.j /C.sub.j ; t.sub.ij =t.sub.(i+i)j +w.sub.i .tau..sub.j /C.sub.j ; FIG. 3 shows the queuing mode for several stages from stage i to stage j as for stage W.sub.i, W.sub.i+1, . . . .tau..sub.j-1, .tau..sub.j. At station "i" , a set of buffers Bia, Bib, and Bic are shown leading to the server .tau.i. The machine capacity at stage "i" is Ci. The output wafers from stage "i" pass to stage i+1. At station i+1, a set of buffers Bi+1a, Bi+1b, and Bi+1c are shown leading to the server .tau.i+1. The machine capacity at stage "i+1" is Ci+1. The output wafers from stage i+1 pass to stage j-1. At station j-1 a set of buffers Bj-1a, Bj-1b, and Bj-1c are shown leading to the server .tau.j-1. The machine capacity at stage "j-1" is Cj-1. The output wafers from stage j-1 pass to stage j. At station j, a set of buffers Bia, Bjb, and Bjc are shown leading to the server .tau.j. The machine capacity at stage "j" is Cj. The output wafers from stage j pass out to the next stage of the production line. Following the procedures of this method development, we can use SOPEA to determine all the lead time between upper-stream and down-stream stages beginning from 2-stage condition, finally we can know the time need for wafers to be processed from any stage to its any down-stream stage. By summing up the WIPs at the stage during, and then adjust the targets in order not to exceed this quantity. Iterative Scheme in TG&MA.sub.-- PR Method The TG&MA.sub.-- PR method is intrinsically an iterative method for generating daily targets and machine allocation. Using the PUSH and PULL procedures to determine the Push.sub.-- target and the Pull-target for a stage, the TG&MA.sub.-- PR method uses the data of numbers of wafers flowing into and flowing out of a stage (flow.sub.-- in and flow.sub.-- out) individually. The flow.sub.-- in data and flow.sub.-- out data of a stage are just the daily targets of its upstream stage and this stage itself was determined in the previous iteration. In the beginning for executing the TG&MA.sub.-- PR method, it needs a given initial set of targets used as flow-in data and flow-out data. Then a new set of targets and machine allocation can be determined according to the PUSH and PULL procedures. As this machine allocation is determined, SOPEA can be executed then to estimate wafer penetration limits to modify the targets. These targets (after some tuning) are further used to determine new flow.sub.-- in data and new flow.sub.-- out data to generate daily target data and machine allocation data for the next iteration. The iteration process continues until the targets converge. FIG. 4 shows a computer system in accordance with this invention including database computer 10 and target computer 14. The database computer 10 contains a database system employed in operation of the system of this invention. The data from database computer 10 is supplied to the central processing unit (CPU) 16 in target computer 14. The target computer 14 includes CPU 16 and memory and direct access storage device (DASD) 20. CPU 16 is connected as follows: by cable 12 to computer 10; by cable 17 to memory 18; and by cable 19 to DASD 20. FIG. 5 shows an example of a one stage case for stage j which receives wafers wi from the preceding stage i with parameters as follows: ##EQU4## Accordingly, 75 minutes is required to process 100 pieces through this stage given the allocation of two machines. As a result, two machines are included in the specifications which shows how the system and method of this invention are tied to physical devices. FIG. 6 shows an example of a two stage case for stages 1 and 2 for several cases with parameters as follows: First consider the case in which as follows: ##EQU5## Thus, if t14=25.4 hours, t13=20.5 hours means the wafer can pass through three stages within one day. The computer 14 in FIG. 4 performs a sequence of steps shown in a flow chart sequence in FIG. 7. In step 30, the computer 14 computes the target for each stage of the production line. Following step 30, in step 32, the computer 14 allocates machine capacity proportionally and adjusts targets (according to lot priority). Following step 32, in step 34, the computer 14 adds limits to stages of penetration and adjusts targets. Following step 34, in step 36, the computer 14 allocates the residual capacity of the manufacturing line. Following step 36, in step 38, the computer 14 checks the convergence of targets and machine allocation until convergence is achieved. Features of the system of this invention are described in the following sections with reference to FIG. 8 where a sequence of steps is performed by the computer system 14 of FIG. 4. 1. Determining Push-Target Referring to FIG. 8, in step 40, the push target is determined by computer 14 using the equation as follows:
______________________________________
Push-Target.sub.j = max(0, wip.sub.j + flow.sub.-- in.sub.j - std.sub.--
wip.sub.j); for j = 1, . . . J (1)
where: flow.sub.-- in.sub.1 = r.sub.0 (wafer release) and
flow.sub.-- in.sub.j+1 = Target.sub.j (n - 1); for j = 1, . . J
- 1 and
the superscript index (n - 1) refers to the
previous iteration.
______________________________________
2. Determining Pull-Target Referring to FIG. 8, following step 40 in step 42, the pull target is determined by computer 14 using the equation as follows:
______________________________________
Pull-Target.sub.j = max(0, flow.sub.-- out.sub.j+1 + std.sub.-- wip.sub.j+
1 - wip.sub.j+1) (2)
for j = J - 1, . . 1
where:
flow.sub.-- out.sub.j = d.sub.j (demand for output wafers for the day)
and
flow.sub.-- out.sub.j = Target.sub.j (n - 1);
for j = J, . . 2 and the superscript index (n - 1) refers
to the previous iteration.
______________________________________
3. Determining Upper-Bound Target Referring to FIG. 8, following step 42 in step 44, the upper bound target is determined by computer 14 using the equation as follows: UB.sub.-- target.sub.j =max (Pull-Target.sub.j, Push-Target.sub.j)(3) 4. Capacity Constraint and Machine Allocation Referring to FIG. 8, following step 44 in step 46, the capacity constraint and machine allocation are determined by computer 14, as follows: 4.1 Apply UB-Target to high priority lots (having a higher priority of "1" in database management system). 4.2 Apply UB-Target to low priority lots (having lesser priorities of "2", "3", "4", "5" in a database management system) using the residual machine capacity. Consider a stage j, let the set S be the collection of stages competing for machine group Mj. ##EQU6## The number of machines allocated to stage j in a day is ##EQU7## 5. Limiting Stages of Penetration Referring to FIG. 8, following step 46 in step 48, the limits of stages of penetration are determined by computer 14, as follows: Given the stages of penetration of each stage in the line, we can identify the up-stream stages whose Work in Process (WIP) may flow into each stage j within the day. WIPs of stage j and its upstream stages are then summed up as an estimate of the WIP penetration limit for the stage which the daily target of stage j should not exceed. So, all targets (Target j; j=1. . . J) are then modified. At this point reference is made to FIG. 3 above where: W.sub.j : WIP level for type-i at stage j; Cj: machine capacity in terms of number of machines allocated to process type-i wafers at stagej during a day. .tau. j: processing time (in hours) for type-i at stage j; .tau. jk: time, needed for all the wafers for type i at stage j to be completed at stage k, k>j. Referring to FIG. 9, a method and means for calculating the total processing time T.sub.TPR of wafers at any stage is shown, as follows: ##EQU8## where T.sub.SPr : stage processing time N.sub.MA : Number of machines allocated Referring to FIG. 9, the stage processing time T.sub.SPr in block 22, WIP in block 26 and number of machines allocated N.sub.MA in block 24 are derived form DASD 20. In block 28, the value T.sub.SPr from block 22 is multiplied by the WIP value in block 26 yields the product WIP.times.T.sub.SPr. In block 30, the value of T.sub.TPr is calculated by dividing the value of WIP.times.T.sub.SPr in block 28 by the value N.sub.MA from block 24. FIG. 10 shows the method and means for determining the value of t.sub.ij. Block 32 determines the value x for equations (7) and (9) below by block 32 which derives data from DASD 20 to calculate x. In equation (7) below, a test is made as shown by decision block 34 where the test is made whether t.sub.i(j-1) >x. If so, then the result in block 38 is that t.sub.ij =Q which is the value in equation (8) . In equation (9) below, a test is made as shown by decision block 36 where the test is made whether t.sub.i(j-1) .ltoreq.x. If so, then the result in block 40 is that t.sub.ij =R which is the value in equation (10) . When the values of t.sub.i(j-1) and t.sub.(i+1) have been obtained, a method in accordance with this invention for calculating the time need for wafers to be processed from stage i to stage j is as follows: if t.sub.i(j-1) >t.sub.(i+1)j +(w.sub.i -1).tau..sub.j /C.sub.j ;(7) t.sub.ij =Q=t.sub.i(j-1) +.tau..sub.j /C.sub.j ; (8) if ti(j-1).ltoreq.t.sub.(i+1)j +(w.sub.i -1).tau..sub.j /C.sub.j ;(9) t.sub.ij =R=t.sub.(i+i)j +w.sub.i .tau..sub.j /C.sub.j ; (10 ) By summing up the WIPs at the stages of penetration, an estimate is made of the maximum number of wafers that can flow into each stage during a day from 7:00 AM to 19:00 PM, every day, and then the targets are adjusted to avoid exceeding this maximum quantity. 6. Iterate TG&MA.sub.-- PR Method Referring to FIG. 8, following step 48 in step 50, the TG&MA-PR is iterated by computer 14, as follows: In the beginning for executing TG&MA.sub.-- PR , an initial set of targets as to flow-in data and flow-out data is required to determine new targets and machine allocation data according to the Push & Pull target generation procedures. 7. Determine SOPEA Referring to FIG. 8, following step 50 in step 52, the SOPEA is determined by computer 14. As machine allocation is determined, SOPEA can then be executed to estimate wafer penetration limits for modifying the targets. These targets are further used as new flow-in and flow-out to generate daily target and machine allocation for the next iteration. The iteration continues until the targets are converged. While this invention has been described in terms of the above specific embodiment(s), those skilled in the art will recognize that the invention can be practiced with modifications within the spirit and scope of the appended claims, i.e. that changes can be made in form and detail, without departing from the spirit and scope of the invention. Accordingly all such changes come within the purview of the present invention and the invention encompasses the subject matter of the claims which follow.
|
Same subclass Same class Consider this |
||||||||||
