US20020059015A1 - Method and apparatus for resolving conflicts in a substrate processing system - Google Patents
Method and apparatus for resolving conflicts in a substrate processing system Download PDFInfo
- Publication number
- US20020059015A1 US20020059015A1 US09/336,353 US33635399A US2002059015A1 US 20020059015 A1 US20020059015 A1 US 20020059015A1 US 33635399 A US33635399 A US 33635399A US 2002059015 A1 US2002059015 A1 US 2002059015A1
- Authority
- US
- United States
- Prior art keywords
- wafer
- modules
- module
- processing system
- sending period
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Container, Conveyance, Adherence, Positioning, Of Wafer (AREA)
Abstract
Description
- This application claims priority to U.S. Provisional Patent Application No. 60/114,422, entitled “Conflict Resolving Synchronized Scheduler for Substrate Processing Apparatus,” filed Dec. 31, 1998, which is incorporated herein by reference.
- 1. Field of the Invention
- The invention relates generally to the field of microelectronic fabrication. More particularly, the invention relates to a technique of optimizing the throughput, reliability, and quality of microelectronic fabrication by synchronizing the individual processing and transportation mechanisms within a fabrication system.
- 2. Discussion of the Related Art
- In the process of manufacturing a semiconductor device such as an integrated circuit, numerous steps of micro-fabrication are performed to form a device. These steps are performed serially on the individual items of manufacture in individual modules; the items of manufacture are transferred between modules by transport mechanisms such as robots. In order to achieve desirable throughput, reliability, and fabrication quality, several conditions must be met:
- 1) The delivery and removal of the substrate to and from the process modules, as well as the transportation of the wafer between modules, must be accomplished in a timely manner. This timely delivery and removal of substrate is achieved when the flow of substrate is maintained in a periodic and synchronized manner. If periodicity and synchronization are not maintained, the process results will be inconsistent from substrate to substrate, and the expected throughput may be reduced.
- 2) It is desirable to transport the substrate in similar process flow paths to avoid inconsistency in process results due to variations in the process history of the substrates.
- 3) It is imperative to ensure that the articles of manufacture do not spend any pre-process or post-process time idling in modules where critical processes are performed. The addition of pre-process or post-process time in these modules degrades not only the throughput but also the process results. For example, in an IC fabrication system, if a substrate is not immediately transferred from the spin coat module to a bake module to thermally cure a photo-resist film layer, the resulting film thickness will be unpredictable. If it is impossible to totally eliminate pre-process and/or post-process times, they should be rendered as brief as possible, and any variations in these times cannot be allowed.
- The inability to meet any or all of the above conditions come from the failure to resolve transport conflicts. Conflicts are situations wherein separate modules demand a robot within a time span insufficient for the robot to service these modules
- One conventional solution to the concerns listed above is the addition of extra process modules and transportation resources. However, the size limitations and geometrical constraints of a track system limit the possibility of resolving the above difficulties by adding additional process modules or transportation resources.
- The addition of dedicated transfer arms to transfer substrates between adjacent modules (hereinafter called Inter Bay Transfer Arms, or IBTAs) is another method used to improve throughput and eliminate some of the pre-process and/or post-process times. However, the addition of IBTAs also has serious drawbacks. Dedicated transfer arms complicate the tool and increase its cost, constrain the position of the modules, and cannot be used everywhere in the tool. As a result, the tasks of managing the substrate flow in the track system while maintaining both high throughput and quality and resolving all transport conflicts become unmanageable.
- Another conventional solution is to assign a set of substrate transport priority rules. Prior to any robot move, the control system, also referred to as the software scheduler, verifies the status of substrates in different modules and makes transfer priority decisions based on these rules. However, to achieve high throughputs, the scheduler may generate undesirable, unpredictable and variable pre-process and post-process times in critical modules, and the substrates may also be forced to follow different flow paths to complete their process cycle.
- Heretofore, the requirements of conflict resolution, synchronization, quality, and path consistency referred to above have not been fully met.
- What is needed is a solution that simultaneously addresses all of these requirements.
- A primary goal of the invention is to provide a synchronized substrate-ransporting algorithm that resolves any possible flow conflicts and thereby improves the performance and the throughput of a track system.
- Another primary goal of the invention is to provide an algorithm that determines the optimal allocation of transportation resources for balancing the load amongst transport mechanisms.
- Another primary goal of the invention is to enable flexible synchronization of the fabrication system, ensuring that substrate processing and transportation occur at regular, predictable intervals without diminishing the throughput.
- In accordance with these goals, there is a particular need for an algorithm that synchronizes the fabrication system, so that each process or substrate transportation always occurs at precise point in the interval. Thus, it is rendered possible to simultaneously satisfy the above-discussed requirements of conflict resolution, synchronization, optimized throughput, and wafer quality, which, in the case of the prior art, are mutually contradicting and are not simultaneously satisfied.
- A first aspect of the invention is implemented in an embodiment that is based on an algebraic transformation. A second aspect of the invention is implemented in an embodiment that is based on a genetic algorithm.
- These, and other, goals and aspects of the invention will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following description, while indicating preferred embodiments of the invention and numerous specific details thereof, is given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the invention without departing from the spirit thereof, and the invention includes all such modifications.
- A clear conception of the advantages and features constituting the invention, and of the components and operation of model systems provided with the invention, will become more readily apparent by referring to the exemplary, and therefore non-limiting, embodiments illustrated in the drawings accompanying and forming a part of this specification, wherein like reference characters (if they occur in more than one view) designate the same parts. It should be noted that the features illustrated in the drawings are not necessarily drawn to scale.
- FIG. 1 is a time line illustrating the points at which wafers are loaded into a cluster tool, wherein the points are separated by intervals of one sending period.
- FIG. 2 illustrates the relative and absolute pick-up times of three wafers at a process i, as well as the mantissas of the pick-up times, wherein the pick-up times are normalized in terms of the sending period.
- FIG. 3 illustrates the various modules and transportation modules in the cluster tool.
- FIG. 4 is a graph and corresponding table illustrating the module paths in the cluster tool.
- FIG. 5 is a table illustrating the recipe of a cluster tool.
- FIG. 6 is a graph and corresponding table of module pick-up times which arise in a sending period, wherein the sending period is broken into 6 sub-intervals, as there are six possible robot moves within a single sending period.
- FIG. 7 is a graph and corresponding table illustrating conflicts that arise between processes for access to robots, wherein conflicts are indicated when two modules assigned to a robot have pick-up demands within a single period.
- FIG. 8 is a graph and accompanying tables and matrices, which illustrate the insertion of queues to eliminate conflicts between modules for access to robots.
- The invention and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description of preferred embodiments. Descriptions of well-known components and processing techniques are omitted so as not to unnecessarily obscure the invention in detail.
- Synchronized, Conflict Resolving Schedulers
- An aspect of the present invention comprises a method for maximizing throughput and quality in a manufacturing system by scheduling events in the system in a periodic, predictable fashion which eliminates conflicts for system resources. An example of such a manufacturing system comprises a series of
process steps 1, . . . , N, which are performed consecutively on individual units of manufacture. The individual process steps of the system are conducted in “modules”, or “process chambers”, and the series of steps is listed in a “recipe”. The manufacturing system also includes resources for transporting the units of manufacture between modules in the series; these resources may include robots. - Conflicts may result between processes in the system when separate modules demand a robot within a time span which insufficient for the robot to service these modules. Additionally, it is desirable to schedule the system in a manner which exhibits periodicity, so that events in the system are synchronized to occur at periodic, predictable intervals. An embodiment of the present invention includes a technique of selectively scheduling delays in various steps of the manufacturing process in order to eliminate all such conflicts, as well enforce periodicity, without degrading throughput or quality of the system.
- An Example of Conflict-Resolving Synchronization: Wafer Cluster Tools
- An example of the type of manufacturing system described above is a wafer cluster tool. In a wafer cluster tool, the modules comprise process chambers, which are organized around a group of wafer transporting resources, or robots, to perform a sequence of process steps on the wafer. A wafer enters and exits the tool through a buffer called a load port. Once a robot retrieves a wafer from a load port, the wafer is transported sequentially through the series of modules specified in a recipe. The time period defined by a wafer's entrance to a module and the wafer's exit from the module is referred to as a module process time. This process time includes the time actually spent processing the wafer in the module as well as the overhead time required to prepare the wafer for processing and pick up.
- (note that though the wafer cluster tool is described above as passing an individual wafer between modules, it will be apparent to one skilled in the art that the present invention is equally applicable to a wafer cluster tool in which a discrete set of wafers is passed between modules.)
- In certain modules of the cluster tool, a delay in picking up the processed wafer may adversely affect on-wafer results; such modules are identified as “critical process modules,” as they cannot tolerate delays. The module whose process time is longest amongst all modules in the cluster tool is identified as the “gating module”; the process time at this module determines the throughput of the cluster tool. Because the gating module determines the throughput of the cluster tool, it too cannot tolerate delays. The recipe for a wafer cluster tool lists the modules in sequential order, alongside their respective process times. The time required by a robot to transport a wafer between two modules is referred to as its transport time.
- Wafer Flow Management in the Cluster Tool
- Wafer flow management, i.e., the orchestration of wafer processing and wafer transporting in a cluster tool, determines both the throughput and the on-wafer results delivered by the system. Effective wafer flow management requires the simultaneous satisfaction of the following two conditions: a wafer which was just processed in the sending module and is now ready to move should do so when (1) the receiving module in which the wafer will subsequently be processed is empty; and (2) the robot assigned to transport wafers between those modules is available. In the prior art, condition (1) was satisfied by providing additional redundant modules. Such a solution, however, compromises condition (2) in two ways: (a) it results in an inadequate number of robots serving too many modules or (b) two or more modules may compete simultaneously for the service of a robot.
- When the two conditions listed above are compromised, delays in wafer pick-up result. If such delays occur at critical process modules, they adversely affect on-wafer results. And if such delays occur at the gating module, they slow down throughput. As such, it is imperative that the transport conditions listed above are guaranteed with respect to critical process modules and the gating module. In case (a) wherein more handling is required than the robots could provide, adding more robots can mitigate the situation. However, in case (b), the problem resides in the timing of the robot service request. While adding more robots can also alleviate case (b), this is an inadequate solution.
- Since the recipe prescribed for the cluster tool determines the timings of the robot service request, a fundamental solution to resolving the two conditions can arise from altering the wafer recipe to synchronize with wafer transport. A scheduling algorithm described herein performs such synchronization.
- This scheduler described herein can be encoded in software executed by a computer, wherein the computer comprises a memory for storing the software, and a CPU for executing the software. In an embodiment of the present invention, the scheduler may be used off-line from the manufacturing system to generate a pre-determined schedule for the system. Alternatively, the computer may be coupled to the manufacturing system so that the scheduler can update the operation of the system in real-time.
- Synchronizing Wafer Flow in the Cluster Tool
- In an embodiment of the present invention, wafer flow is synchronized by sending individual wafers through the cluster tool at a constant rate. This rate, referred to as the tool's “sending rate”, is expressed in number of wafers per hour, and paces the wafer flow with a periodicity equal to (3600/sending rate) seconds. This period, referred to as the sending period of the cluster tool, is the heartbeat of the system.
- Individual wafer units are introduced to the system at intervals of one sending period. And in order to synchronize the cluster tool, all process and transport times are measured in units of sending period. Furthermore, to ensure that the same tasks can be repeated in succeeding periods, the robots in the cluster tool are scheduled to accomplish all service requests, hereafter referred to as “tasks”, within a single sending period. As such, the synchronization of the cluster tool requires a determination of 1) the total number of tasks that are performed within a sending period and 2) the exact moment within a sending period that these tasks arise. These moments shall hereafter be referred to as the “timings” of the respective tasks.
- The concepts of sending periods and synchronization are illustrated in FIG. 1. The
timeline 100 has anorigin 102, which denotes the moment when the first wafer is loaded into the cluster tool. Thetimeline 100 is demarcated in units of one sendingperiod 110. Eachdemarcation 104 106 108 indicates, respectively, the times at which the second, third, and fourth wafers are loaded into the cluster tool. - A principal characteristic of synchronization is periodicity: the present invention ensures that for each task i, i=1, . . . , n, the pick-up times for any wafer undergoing that task are identical. Thus each task i in the cluster tool can be associated with a relative pick-up time denoted Ti, where Ti is normalized in units of the sending period. FIG. 2 depicts this feature of periodicity. Three wafers,
wafer 1 208,wafer 2 210, andwafer 3 212 are depicted on thevertical axis 202. The horizontal line depicts theTIME axis 200. The origin of thisaxis 201 indicates the time at whichwafer 1 is loaded into the cluster tool. The relative pick-up times Ti at task i 200 are identical for each wafer. Because the wafers themselves are introduced at intervals of one sending period, the actual pick-up times are separated by units of one sending period. - FIG. 2 also illustrates a distinction between relative and “actual” or “absolute” pick-up times. The relative pick-up time of a process i is denoted by
T i 204. Since the relative pick-up time is measured from the time a wafer is introduced into the wafer cluster tool, the relative pick-up time is identical for each wafer,wafer 1 208,wafer 2 210, andwafer 3 212. The absolute pick-uptime 214 is measured from the moment the first wafer was loaded into thecluster tool 201. Since the wafers are introduced at intervals of one sending period, it follows that for any wafer no. w, the absolute pick-up time of wafer w at module i is - (w−1)+T i
- This period (w−1) is illustrated in the FIG. 216.
- Another parameter which is critical in synchronization is designated by the symbol τi. The fraction τi=Ti−INT (Ti), where INT (Ti) is a function that rounds Ti down to the nearest integer, is the fraction of Ti that has elapsed since the beginning of the current sending period. These
parameters 206 are also illustrated in FIG. 2. Since the Ti values are identical for each wafer, and since the wafers are inserted at intervals of one sending period, the values ofT i 206 are identical for each wafer. These fractions, τ, i=1, 2, 3 . . . N comprise the timings of the tasks the robots must accomplish within a sending period. -
- It also follows that the timing of the tasks, τi=1, 2, 3 . . . N; is
- τi =T i −INT(T i)
-
- Since transport times tj, are fixed for a given cluster tool, it is apparent from Equation (1) that the timing of robot task τiis dependent solely on the process times pi, as prescribed by the recipe.
- Periodicity and Wafer Identification
- The property of periodicity also enables the identification of wafers in the cluster tool. As elaborated infra, the synchronized scheduler ensures that 1) the wafers are loaded into the cluster tool in sequential order at intervals of one sending period, and 2) each wafer loaded into the cluster tool undergoes identical events at the same times, as measured relative to the moment they are loaded. A consequence of these two conditions is that wafers enter and depart each module in the cluster tool in the order they were originally loaded, at intervals of one sending period. As such, each wafer in a module can be identified simply by tracking the order in which they entered or exited that module. This feature of the synchronized scheduler is referred to as wafer identification, or wafer “tagging”.
- Tagging and Module Paths
- In an embodiment of the present invention, each wafer loaded into the cluster tool follows a particular “module path”, i.e., a particular set of modules which correspond to the processes in the cluster tool. This feature of the present invention is illustrated in FIG. 4. In this embodiment, each process in the cluster tool has one or more modules associated with it, wherein the wafers are processed. The modules for each process are ordered in a sequence such that when wafers arrive at that process, they are placed in the corresponding modules in the sequential order (for e.g., if a process has two corresponding modules, the first wafer in the system goes to the first module, the second wafer goes to the second module, the third wafer enters the first module, the fourth wafer enters the second module, etc.) As a consequence, the total number of module paths that a wafer may follow is constrained to the least common multiple of the number of modules corresponding to each process
- The embodiment described above is illustrated by example in FIG. 4. FIG. 4 shows a sequence of process steps,
VP 400,VPC 402,CT 404,SB 406,SBC 408,PEB 410,PEBC 412,DEV 414, HB 416,HBC 418. A symbol of a process step appears for each module corresponding to the process step. For instance, theprocess CT 404 has three modules, and corresponding, the symbol of CT appears threetimes 404. Above each process step is the number of modules for that process step 420. - In this example, the least common multiple of the number of modules is:
- LCM(2, 2, 3, 3, 3, 3, 3, 4, 2, 2)=12
- Hence, the recipe for the cluster tool prescribes twelve module paths, which are listed422. Each column in the table 422 lists the module number for that process step in the respective module path. As there are twelve possible path, every twelfth wafer follows the same module path. As such, by identifying a wafer and the order in which it was loaded into the tool, the present invention enables the determination of the module path followed by the wafer.
- Adding Queues to Eliminate Conflicts for Transportation Resources
- If a recipe gives rise to simultaneous, competing service requests for particular robots, it would be desirable to resolve the conflicts not by adding more robots, but rather by modifying the recipe itself. One convenient scheme to modify the recipe is to introduce deliberate delays, hereafter called queues q1, to the non-critical process steps in order to achieve timing which resolves conflicts without compromising the throughput or on-wafer results delivered by the tool. Such a scheme, used in conjunction with Equation (1), is the basis for the “synchronous algorithm.” To recap, a recipe as originally prescribed may introduce competing service requests which result in delays at critical process and gating steps, thereby degrading the wafer quality and throughput of the single-wafer cluster tool. The aim of “synchronous algorithm” is to insert intentional delays at non-critical process steps in order to ensure that no delays occur at critical process steps or gating steps, and thereby ensure guarantees of throughput and wafer quality.
- Solving For The Queues
-
- The objective is to find a set of queues qi, to be inserted at the non-critical process steps such that the time interval between any two modules k and m, k=1, 2, 3, . . . N; and m−k, k+1, . . . , N, where module k and module m are assigned to have their wafers picked up by the same robot, is greater than the transport time of the robot. This would allow for time intervals sufficient for the robot to service all modules and thus avoid having to serve more than one module at a given time. However, the queues so derived must also be small enough to avoid excessive idling of modules. And there should be no queues at critical process modules or the gating module.
-
-
-
- In Equation (4) above, the timings τ1 as prescribed by the original recipe are known. The target timings τ1 * are set to values which eliminate conflicts between all modules using the same robot, as described earlier.
-
- An Application of the Synchronous Algorithm
- Specific embodiments of the invention will now be further described by the following, nonlimiting example which will serve to illustrate in some detail various features of significance. The example is intended merely to facilitate an understanding of ways in which the invention may be practiced and to further enable those of skill in the art to practice the invention. Accordingly, the example should not be construed as limiting the scope of the invention.
- The synchronization of wafer transport with wafer process in a cluster tool will now be illustrated using a specific example of a cluster tool. FIG. 3 is a schematic for a conceptual plan view of a wafer processing apparatus. The resist coating and developing modules are identified as
CT 300 and DEV 302 respectively. Also shown in FIG. 3 are the different bake modules vapor prime (VP) 304, soft bake (SB) 306, post exposure bake (PEB) 308, and hard bake (HB) 310, as well as their corresponding chill modules. The arrows connecting adjacent bake and chill modules represent the inter bay transfer arms,IBTAs 312, that transfer the substrate between these modules. As a result, the locations of these bake modules constrain the location of their corresponding chill plate. The cassette end station (CES)robot 314 shown in the figure transfers substrates from and to the cassette end station. The stepper interface (SI)robot 316 transfers substrate from and to the stepper interface. The I/O module 318 is a buffer zone for the substrate transported to the stepper interface if and when becomes necessary. Themain robot 320 is the means to transport the substrate between all other modules such as vapor prime chill (VPC) to resist coat (CT.) - FIG. 4 is a schematic for the wafer process flow. As can be seen from the schematic, when the transport means is the IBTA the substrate will have only one option in the flow diagram. This is the case when the substrate is transported from a vapor
prime bake 400 to vaporprime chill 402. However, when the transport means is the main robot the substrate could have several options. For example, when a substrate is removed from a resistcoat module 404, it can be transported to any of thesoft bake modules 406 shown in FIG. 4. - The Synchronization Algorithm
- We will now demonstrate the application of the synchronization algorithm to this cluster tool as a series of four steps:
-
Step 1 Input The Recipe And Throughput Requirement. This discussion refers to FIG. 5. This step commences by inserting the recipe in a table 500. The first twocolumns 502 list the process steps in sequential order. The sending period, also referred to as the “system takt time” is also noted 504. Cycle times, also known as module takt times, are then calculated for each module in the “Module type”column 502 to ensure each module takt time is less than the system takt time. The module takt time for each process step is listed in acolumn 506. If not, redundant modules are added to reduce module takt time. As will be clear to one skilled in the art, for each process step: - No. Modules Required=INT (Module takt time/System takt time)
- In this example, most modules require one additional redundant module. The number of modules required for each process step is listed in a column508.
-
Step 2 Determine The Load of The Wafer Transport. As defined earlier, the “load” of a robot refers to the number of moves it is scheduled make as well as the times allotted for the robot to perform these moves, as measured from the beginning of the current sending period. The determination of the robot load is depicted in the table 600 in FIG. 6. This cluster apparatus of this example has twelve process steps. The timings of the twelve corresponding robot moves are determined as follows. Counting the time from the moment the wafer leaves the load port (cassette), cumulate the process times of each module and transport times up to the module of interest. For example, for the module code-named VP 602 (hereafter all modules are coded), it is (62+6)=68 sec; formodule VPC 604, it is (68+65+5)=138 sec. The actual timings in seconds for all robot moves are listed in a column marked “Actual” 606. To determine the relative pick-up times Ti, the actual times are divided by the actual sending period. For example, dividing the actual pick-up times of VP and VPC by the actual sending period of 45 sec results, respectively, in normalized pick-up times 1.511 and 3.067. The normalized pick-up times for each of the twelve process steps are listed under the column “Ti Normalized” 608. Subtracting the integer portion of the Ti values results in the τi values, i.e., the time the available time the respective modules have to be served by robots, as measured from the beginning of sending period, and expressed in units of one sending period. To illustrate, the τi values of VP and VPC are 0.511 and 0.067, which indicates that VP must be serviced within 0.511 intervals of one sending period, and VPC must be serviced within 0.067 intervals of one sending period. The list of normalized τi values are listed in acolumn 610. The diagram 612 is a pictorial representation of the load: a total of twelve moves and the time they have to be served within a sending period. FIG. 7 shows the same information from another perspective. Since the robot transport times are around 5 & 6 seconds, the number of move one robot can make within a sending period of 45 sec is (45/6)˜7; say 6 moves to be on the conservative side. Thus 6 vertical lines are drawn in the graph 700. When the times the modules have to be served by a robot fall within one interval, such asSBC 702, DEV 704,HB 706, andCassette 708, all of which fall into one interval 710, it means that they are competing for the same move of the robot at a given time. To elaborate, if there are two or more tasks which use one robot, and if the τ values of these tasks fall into one of the 6 intervals, it means that there is insufficient time for the robot to service each of the two or more robots. - These “conflicts” between the tasks for use of the robots are resolved as described in the subsequent steps.
-
Step 3 Allocate The Transport Load. The first step to resolve conflicts in the manufacturing system is to allocate the load equally among robots in order to achieve a balanced transport load. Although conflicts are recipe dependent, assigning fewer loads per robot still reduces the chance for conflict. However, the possibility of balancing the load is dependent on the layout of the modules relative to robots. Poor layout limits accessibility to modules by robots and makes balanced loads difficult to attain. In this example, the layout is such that two robots, CES and SI, can each only serve two modules, leaving the bulk of the load to the main robot C-1 and three dedicated robots known as IBTA (Inter Bay Transfer Arm). - The best allocation of transport load, under the constraints of the layout, is as shown in FIG. 7. Six modules,
VPC 712,CT 714, SBC 716,PEBC 718, DEV 720, andHB 722 are allocated to the main robot C-1 with three of them, SBC, DEV and HB competing for one move of the robot, as discussed earlier. These conflicts will be resolved by queuing as demonstrated in the next step. -
Step 4 Queuing For Synchronization. The information in the table 800 of FIG. 8 is a summary of load allocation fromStep 3. Only the six modules served by main robot C-1, i.e.,VPC 802,CT 804,SBC 806,PEBC 808, DEV 810, andHB 812, need to be considered for queuing. The remaining modules should not experience conflicts since each has dedicated robot, i.e., an IBTA, serving them. In theTarget Column 814, the target timing profile is set for the 6 modules. For each of the modules listed in the table, a corresponding value is set for τ*, where τ* is an updated value for c which eliminates conflicts between tasks for robots. Since only 3 of these 6 modules,SBC 806, DEV 810, andHB 812 are in conflict, only two, DEV and HB, need to have timing targets different from the original values for τ prescribed by the recipe. The timing targets are listed in acolumn 814, and are set such that the timing interval between any pair of the 6 modules is larger than robot transport time (=6/45˜0.1333). The differences between the target and the originally prescribed timing profiles are referred to as the gaps and are computed thecolumn 816. These are shown pictorially in thegraph 818 adjacent to the table. Another objective of the “synchronous algorithm” is to ensure that no delays are introduced at critical process steps. In this example, critical process steps arestep 3 804,step 4 806, and step 7 809. No queues should be added to modules corresponding to these steps, i.e., the target timing for these modules should be the same as the prescribed values. The gaps computed in theGap column 816 may now be substituted in to Equation (3) to solve for the queues that will close these gaps. However, to ensure zero delays at the critical process modules, thematrix 818 relating gaps and queues must be modified per Equation (4) to generate a modifiedmatrix 820. Pre-multiplying the gaps from theGap column 816 with the inverse of the modifiedmatrix 822 produces the queues needed to close thegap 824. The solution for the queues is transferred to a Que Column 826. The solution, which is in units of the sending period, is converted to actual time in an Actual Que Column 828. -
Step 5 Check The Solution. The queues determined inStep 4 are now added to the module processing time of the original recipe. This is to verify if conflicts have been resolved. This is in fact the case as shown in the figure. - Robot Assignment
- Another aspect of the scheduling problem, which merits automation, is the assignment of robots to modules. For example, in step three listed above, a recipe was chosen which assigned a single robot between each pair of consecutive models; this allocation is shown in the recipe listed in FIG. 7. The allocation was chosen amongst many possible allocations.
- In general, there is a need for an algorithm that determines an optimal robot assignment prior to the determination of queues. The need for such an algorithm will be demonstrated in the following example. Suppose we have a simplified track system, consisting of three modules, labeled Mod1, Mod2 and Mod3. Suppose we have two robots, Robot1 and Robot2, both of which can service all three modules. Let the sending period be designated by the variable SP. Suppose τ1=0.0,τ2=0.6, τ3=0.7, in units of the sending period, and suppose the robots can move in 0.3, in units of SP. There are four possible robot allocations:
Assignment Mod1 to Mod 2Mod2 to Mod3 1. Robot1 Robot1 2. Robot2 Robot2 3. Robot1 Robot2 4. Robot2 Robot1 - Upon inspection, only
assignments assignments assignment # 3 and #4; as the time intervals between the τ values have sufficient distance, this robot assignment obviates the need to insert delays. Other criteria may also enter into the determination of an optimal robot assignment, for instance, balancing loads, increasing throughput. An algorithm is necessary which would determine, in cases more complicated than the simplified example above, an optimal robot assignment. - One method of performing such an assignment is simply an exhaustive technique: generate all possible robot assignments, and determine the validity of each assignment, i.e., ensure that all modules assigned to a robot differ sufficiently in their τ values to permit the robot to service them. The assignments thus generated may also be selected on additional criteria, such as load balancing.
- Solving for Updated Timings (τ*)
- Another feature of the synchronization that merits automation is the derivation of the updated timings, given by τ*. To elaborate, in
step 4 of the algorithm outlined earlier, the algorithm was fed updated values of τ*, where for any two modules which shared a robot, the respective τ* values differed by enough time to allow the robot to move between them. There is a need for an automated method of deriving these τ* values. One such technique is as follows: - For each robot with a conflict, take the τ value for each of its modules.
- For each combination of these τ values, sort the τ values from lowest to highest. For each sorted list of τ values:
- Proceed sequentially through the τ values, from lowest to highest.
- Determine the difference between the given τ value and the one that precedes it
- If the difference is less than the time allotted for the robot to move, increment the τ value sufficiently.
- Go to next τ value.
- When this algorithm finds an updated set of τ values for a given robot that eliminates conflicts, these become τ* values. It can be proven that if a conflict-free group of τ* values exist, the algorithm outlined above will find it.
- Genetic Algorithms
- The synchronization, robot assignment, and derivation problems can also be solved by use of a genetic algorithm (GA). A GA is an iterative process that starts out with an initial population of genes, which encode possible states of the problem. This population is systematically improved with each iteration, through a process of selective breeding. To perform selective breeding, the GA needs to a) define the characteristics of a species, and b) judge a species' fitness.
- Characteristics of a Species
- A specie is characterized by n genes. For our problem, we use two types of genes, one to represent the robot assignment, and the other, a queue segment. Consider the example used in the description of the earlier algorithm. The robot assignment will range from 1 to 4, indicating which robot will work on a particular module. Queue segment is also an integer indicating how many “time zones”, i.e., robot move periods, are to be added to a module's arrival time in order to avoid conflict in robot assignment. In our earlier example, the modules arrive in six different time zones, as shown in FIG. 6612. If a time zone sees the arrival of, for instance, five modules, a conflict results. The addition of a queue segment to one of the modules will push the arrival time to the next time zone and hence resolve the conflict.
- Fitness of a Species
- We can measure fitness by the reciprocal of a species ‘badness’. In turn, badness can be measured by a weighted sum of the degree of conflict and the number of added queue segments. An ideal species is one that has no added segments, and results in no conflict in robot assignment.
-
- where the weights w1 and w2 are assigned according to the relative importance of s over t.
- The foregoing description of a preferred embodiment of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Obviously, many modifications and variations will be apparent to practitioners skilled in this art. It is intended that the scope of the invention be defined by the following claims and their equivalents.
Claims (23)
Priority Applications (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/336,353 US6418356B1 (en) | 1998-12-31 | 1999-06-18 | Method and apparatus for resolving conflicts in a substrate processing system |
AT99965098T ATE302438T1 (en) | 1998-12-31 | 1999-12-01 | METHOD FOR SYNCHRONIZING A SUBSTRATE TREATMENT SYSTEM |
DE69926798T DE69926798T2 (en) | 1998-12-31 | 1999-12-01 | METHOD FOR SYNCHRONIZING A SUBSTRATE TREATMENT SYSTEM |
EP99965098A EP1141801B1 (en) | 1998-12-31 | 1999-12-01 | Method for synchronizing a substrate processing system |
JP2000592709A JP2002534789A (en) | 1998-12-31 | 1999-12-01 | Method and apparatus for synchronizing a substrate processing system |
KR10-2001-7008381A KR100508679B1 (en) | 1998-12-31 | 1999-12-01 | Method and apparatus for synchronizing a substrate processing system |
PCT/US1999/028593 WO2000041048A1 (en) | 1998-12-31 | 1999-12-01 | Method and apparatus for synchronizing a substrate processing system |
AU31085/00A AU3108500A (en) | 1998-12-31 | 1999-12-01 | Method and apparatus for synchronizing a substrate processing system |
US10/172,400 US6694218B2 (en) | 1998-12-31 | 2002-06-14 | Method and apparatus for resolving conflicts in a substrate processing system |
US10/370,138 US6768930B2 (en) | 1998-12-31 | 2003-02-18 | Method and apparatus for resolving conflicts in a substrate processing system |
JP2007028985A JP4621698B2 (en) | 1998-12-31 | 2007-02-08 | Method and apparatus for synchronizing a substrate processing system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11442298P | 1998-12-31 | 1998-12-31 | |
US09/336,353 US6418356B1 (en) | 1998-12-31 | 1999-06-18 | Method and apparatus for resolving conflicts in a substrate processing system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/172,400 Continuation US6694218B2 (en) | 1998-12-31 | 2002-06-14 | Method and apparatus for resolving conflicts in a substrate processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
US20020059015A1 true US20020059015A1 (en) | 2002-05-16 |
US6418356B1 US6418356B1 (en) | 2002-07-09 |
Family
ID=43706133
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/336,353 Expired - Lifetime US6418356B1 (en) | 1998-12-31 | 1999-06-18 | Method and apparatus for resolving conflicts in a substrate processing system |
US10/172,400 Expired - Lifetime US6694218B2 (en) | 1998-12-31 | 2002-06-14 | Method and apparatus for resolving conflicts in a substrate processing system |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/172,400 Expired - Lifetime US6694218B2 (en) | 1998-12-31 | 2002-06-14 | Method and apparatus for resolving conflicts in a substrate processing system |
Country Status (1)
Country | Link |
---|---|
US (2) | US6418356B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080014058A1 (en) * | 2006-07-10 | 2008-01-17 | Hongkham Steve S | Scheduling method for processing equipment |
US20150139760A1 (en) * | 2013-11-21 | 2015-05-21 | SCREEN Holdings Co., Ltd. | Substrate conveyance method and substrate processing apparatus |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6865437B1 (en) * | 1998-12-31 | 2005-03-08 | Asml Holdings N.V. | Robot pre-positioning in a wafer processing system |
US6768930B2 (en) | 1998-12-31 | 2004-07-27 | Asml Holding N.V. | Method and apparatus for resolving conflicts in a substrate processing system |
US6418356B1 (en) | 1998-12-31 | 2002-07-09 | Silicon Valley Group, Inc. | Method and apparatus for resolving conflicts in a substrate processing system |
US6678572B1 (en) * | 1998-12-31 | 2004-01-13 | Asml Holdings, N.V. | Recipe cascading in a wafer processing system |
US6505475B1 (en) | 1999-08-20 | 2003-01-14 | Hudson Technologies Inc. | Method and apparatus for measuring and improving efficiency in refrigeration systems |
CN1208809C (en) * | 2001-07-31 | 2005-06-29 | 旭化成微系统株式会社 | Semiconductor manufacturing apparatus control system |
JP4076762B2 (en) * | 2001-11-29 | 2008-04-16 | 東京エレクトロン株式会社 | Semiconductor wafer processing equipment |
US8372016B2 (en) * | 2002-04-19 | 2013-02-12 | Sanofi-Aventis Deutschland Gmbh | Method and apparatus for body fluid sampling and analyte sensing |
US7599759B2 (en) | 2002-12-09 | 2009-10-06 | Hudson Technologies, Inc. | Method and apparatus for optimizing refrigeration systems |
US8463441B2 (en) * | 2002-12-09 | 2013-06-11 | Hudson Technologies, Inc. | Method and apparatus for optimizing refrigeration systems |
US6925421B2 (en) * | 2003-01-09 | 2005-08-02 | International Business Machines Corporation | Method, system, and computer program product for estimating the number of consumers that place a load on an individual resource in a pool of physically distributed resources |
US7139631B2 (en) * | 2003-03-12 | 2006-11-21 | Asml Holding N.V. | Method and system to compensate for scanner system timing variability in a semiconductor wafer fabrication system |
US8856793B2 (en) | 2004-05-11 | 2014-10-07 | International Business Machines Corporation | System, method and program for scheduling computer program jobs |
US7477956B2 (en) * | 2004-07-12 | 2009-01-13 | Applied Materials, Inc. | Methods and apparatus for enhancing electronic device manufacturing throughput |
US8108470B2 (en) * | 2004-07-22 | 2012-01-31 | Taiwan Semiconductor Manufacturing Co., Ltd. | Message management system and method |
JP4610317B2 (en) * | 2004-12-06 | 2011-01-12 | 東京エレクトロン株式会社 | Substrate processing apparatus and substrate transfer method for substrate processing apparatus |
US8078311B2 (en) * | 2004-12-06 | 2011-12-13 | Tokyo Electron Limited | Substrate processing apparatus and substrate transfer method adopted in substrate processing apparatus |
US20060182535A1 (en) * | 2004-12-22 | 2006-08-17 | Mike Rice | Cartesian robot design |
US7699021B2 (en) | 2004-12-22 | 2010-04-20 | Sokudo Co., Ltd. | Cluster tool substrate throughput optimization |
US7651306B2 (en) | 2004-12-22 | 2010-01-26 | Applied Materials, Inc. | Cartesian robot cluster tool architecture |
US7798764B2 (en) | 2005-12-22 | 2010-09-21 | Applied Materials, Inc. | Substrate processing sequence in a cartesian robot cluster tool |
US7819079B2 (en) | 2004-12-22 | 2010-10-26 | Applied Materials, Inc. | Cartesian cluster tool configuration for lithography type processes |
US7255747B2 (en) * | 2004-12-22 | 2007-08-14 | Sokudo Co., Ltd. | Coat/develop module with independent stations |
US20080051930A1 (en) * | 2006-07-10 | 2008-02-28 | Oh Hilario L | Scheduling method for processing equipment |
US7522968B2 (en) * | 2006-07-10 | 2009-04-21 | Applied Materials, Inc. | Scheduling method for processing equipment |
US7977037B2 (en) | 2006-08-24 | 2011-07-12 | Micron Technology, Inc. | Photoresist processing methods |
US9008836B2 (en) * | 2007-01-09 | 2015-04-14 | Abb Inc. | Method and system for robotic assembly parameter optimization |
US8069127B2 (en) * | 2007-04-26 | 2011-11-29 | 21 Ct, Inc. | Method and system for solving an optimization problem with dynamic constraints |
US7525646B1 (en) | 2008-03-27 | 2009-04-28 | International Business Machines Corporation | Multiple pattern generator integration with single post expose bake station |
JP5191880B2 (en) * | 2008-12-26 | 2013-05-08 | 東京エレクトロン株式会社 | Processing device, processing method, computer program, and storage medium |
US9618930B1 (en) * | 2015-09-20 | 2017-04-11 | Macau University Of Science And Technology | Scheduling start-up process for time-constrained single-arm cluster tools |
JP6517845B2 (en) * | 2017-01-17 | 2019-05-22 | 株式会社荏原製作所 | Scheduler, substrate processing apparatus, and substrate transfer method |
KR102363113B1 (en) * | 2018-03-01 | 2022-02-15 | 가부시키가이샤 에바라 세이사꾸쇼 | Scheduler, substrate processing apparatus, and substrate conveyance method |
EP3588405A1 (en) * | 2018-06-29 | 2020-01-01 | Tata Consultancy Services Limited | Systems and methods for scheduling a set of non-preemptive tasks in a multi-robot environment |
US11385628B2 (en) * | 2020-06-24 | 2022-07-12 | Applied Materials, Inc. | Scheduling substrate routing and processing |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3115297B2 (en) | 1989-10-09 | 2000-12-04 | キヤノン株式会社 | Control device for automatic equipment |
US5305221A (en) | 1990-05-04 | 1994-04-19 | Atherton Robert W | Real world modeling and control process for integrated manufacturing equipment |
JP2753142B2 (en) | 1990-11-27 | 1998-05-18 | 株式会社東芝 | Production management method, production management device, and manufacturing device in semiconductor device production system |
US5226118A (en) | 1991-01-29 | 1993-07-06 | Prometrix Corporation | Data analysis system and method for industrial process control systems |
US5428555A (en) | 1993-04-20 | 1995-06-27 | Praxair, Inc. | Facility and gas management system |
US5841660A (en) | 1993-05-04 | 1998-11-24 | Motorola, Inc. | Method and apparatus for modeling process control |
US5764520A (en) | 1993-05-04 | 1998-06-09 | Motorola, Inc. | Control of lots in a continuous environment |
TW276353B (en) | 1993-07-15 | 1996-05-21 | Hitachi Seisakusyo Kk | |
JP3334970B2 (en) * | 1993-10-29 | 2002-10-15 | 松下電器産業株式会社 | Production progress management support method and apparatus |
TW311190B (en) | 1994-01-19 | 1997-07-21 | Tokyo Electron Co Ltd | |
JPH07297258A (en) | 1994-04-26 | 1995-11-10 | Tokyo Electron Ltd | Carrying equipment of plate body |
US5444632A (en) | 1994-04-28 | 1995-08-22 | Texas Instruments Incorporated | Apparatus and method for controlling and scheduling processing machines |
US5841659A (en) | 1994-05-26 | 1998-11-24 | Matsushita Electric Industrial Co., Ltd. | Production plan generating method and apparatus |
US5696689A (en) | 1994-11-25 | 1997-12-09 | Nippondenso Co., Ltd. | Dispatch and conveyer control system for a production control system of a semiconductor substrate |
JP3315844B2 (en) | 1994-12-09 | 2002-08-19 | 株式会社東芝 | Scheduling device and scheduling method |
US5591299A (en) | 1995-04-28 | 1997-01-07 | Advanced Micro Devices, Inc. | System for providing integrated monitoring, control and diagnostics functions for semiconductor spray process tools |
US5612886A (en) | 1995-05-12 | 1997-03-18 | Taiwan Semiconductor Manufacturing Company Ltd. | Method and system for dynamic dispatching in semiconductor manufacturing plants |
TW372926B (en) | 1996-04-04 | 1999-11-01 | Applied Materials Inc | Method and system of processing semiconductor workpieces and robot for use in said system |
US5975740A (en) | 1996-05-28 | 1999-11-02 | Applied Materials, Inc. | Apparatus, method and medium for enhancing the throughput of a wafer processing facility using a multi-slot cool down chamber and a priority transfer scheme |
US5801945A (en) | 1996-06-28 | 1998-09-01 | Lam Research Corporation | Scheduling method for robotic manufacturing processes |
US5928389A (en) | 1996-10-21 | 1999-07-27 | Applied Materials, Inc. | Method and apparatus for priority based scheduling of wafer processing within a multiple chamber semiconductor wafer processing tool |
US5855681A (en) | 1996-11-18 | 1999-01-05 | Applied Materials, Inc. | Ultra high throughput wafer vacuum processing system |
US5943230A (en) | 1996-12-19 | 1999-08-24 | Applied Materials, Inc. | Computer-implemented inter-chamber synchronization in a multiple chamber substrate processing system |
US5914879A (en) * | 1997-03-04 | 1999-06-22 | Advanced Micro Devices | System and method for calculating cluster tool performance metrics using a weighted configuration matrix |
US5950170A (en) | 1997-04-11 | 1999-09-07 | Vanguard International Semiconductor Corporation | Method to maximize capacity in IC fabrication |
US5838565A (en) | 1997-05-15 | 1998-11-17 | Vanguard International Semiconductor Corporation | Manufacturing control method for IC plant batch sequential machine |
US5841677A (en) | 1997-05-21 | 1998-11-24 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method and apparatus for dispatching lots in a factory |
US6201999B1 (en) * | 1997-06-09 | 2001-03-13 | Applied Materials, Inc. | Method and apparatus for automatically generating schedules for wafer processing within a multichamber semiconductor wafer processing tool |
US6122566A (en) | 1998-03-03 | 2000-09-19 | Applied Materials Inc. | Method and apparatus for sequencing wafers in a multiple chamber, semiconductor wafer processing system |
US6336204B1 (en) | 1998-05-07 | 2002-01-01 | Applied Materials, Inc. | Method and apparatus for handling deadlocks in multiple chamber cluster tools |
US6292708B1 (en) | 1998-06-11 | 2001-09-18 | Speedfam-Ipec Corporation | Distributed control system for a semiconductor wafer processing machine |
JP3487774B2 (en) | 1998-11-19 | 2004-01-19 | 沖電気工業株式会社 | Transport method in semiconductor device manufacturing process |
WO2000041048A1 (en) | 1998-12-31 | 2000-07-13 | Silicon Valley Group, Inc. | Method and apparatus for synchronizing a substrate processing system |
US6418356B1 (en) | 1998-12-31 | 2002-07-09 | Silicon Valley Group, Inc. | Method and apparatus for resolving conflicts in a substrate processing system |
US6408220B1 (en) | 1999-06-01 | 2002-06-18 | Applied Materials, Inc. | Semiconductor processing techniques |
-
1999
- 1999-06-18 US US09/336,353 patent/US6418356B1/en not_active Expired - Lifetime
-
2002
- 2002-06-14 US US10/172,400 patent/US6694218B2/en not_active Expired - Lifetime
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080014058A1 (en) * | 2006-07-10 | 2008-01-17 | Hongkham Steve S | Scheduling method for processing equipment |
US8019467B2 (en) * | 2006-07-10 | 2011-09-13 | Applied Materials, Inc. | Scheduling method for processing equipment |
US20150139760A1 (en) * | 2013-11-21 | 2015-05-21 | SCREEN Holdings Co., Ltd. | Substrate conveyance method and substrate processing apparatus |
US9349625B2 (en) * | 2013-11-21 | 2016-05-24 | SCREEN Holdings Co., Ltd. | Substrate conveyance method and substrate processing apparatus |
TWI637456B (en) * | 2013-11-21 | 2018-10-01 | 斯克林集團公司 | Substrate conveyance method and substrate processing apparatus |
Also Published As
Publication number | Publication date |
---|---|
US6694218B2 (en) | 2004-02-17 |
US6418356B1 (en) | 2002-07-09 |
US20030028282A1 (en) | 2003-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6418356B1 (en) | Method and apparatus for resolving conflicts in a substrate processing system | |
US6678572B1 (en) | Recipe cascading in a wafer processing system | |
US6952622B2 (en) | Robot pre-positioning in a wafer processing system | |
JP4621698B2 (en) | Method and apparatus for synchronizing a substrate processing system | |
Johri | Practical issues in scheduling and dispatching in semiconductor wafer fabrication | |
US6768930B2 (en) | Method and apparatus for resolving conflicts in a substrate processing system | |
JP4800191B2 (en) | Pre-placement of robots in wafer processing systems | |
US8055533B2 (en) | Method and apparatus for assigning material transport vehicle idle locations | |
US20050113955A1 (en) | Dynamically adjusting the distribution for dispatching lot between current and downstream tool by using expertise weighting mechanism | |
US7574278B2 (en) | Scheduling system and method | |
KR100508679B1 (en) | Method and apparatus for synchronizing a substrate processing system | |
EP1046090B1 (en) | Multistage production method and system | |
Benzoni et al. | Allocating reticles in an automated stocker for semiconductor manufacturing facility |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SILICON VALLEY GROUP, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OH, HILARIO;REEL/FRAME:010213/0882 Effective date: 19990819 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: ASML US, INC., ARIZONA Free format text: CHANGE OF NAME & MERGER;ASSIGNOR:SILICON VALLEY GROUP, INC.;REEL/FRAME:014863/0715 Effective date: 20011101 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: ASML US, LLC, ARIZONA Free format text: CHANGE OF NAME;ASSIGNOR:ASML US, INC.;REEL/FRAME:021360/0088 Effective date: 20021004 Owner name: ASML US, INC., ARIZONA Free format text: MERGER;ASSIGNOR:ASML US, LLC;REEL/FRAME:021360/0092 Effective date: 20021231 Owner name: ASML US, INC., ARIZONA Free format text: MERGER;ASSIGNOR:SVG LITHOGRAPHY SYSTEMS, INC.;REEL/FRAME:021360/0189 Effective date: 20011231 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: ASML HOLDING N.V., NETHERLANDS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ASML US, INC.;REEL/FRAME:021971/0366 Effective date: 20030915 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FPAY | Fee payment |
Year of fee payment: 12 |