WO2003060779A1 - Agent-based control architecture - Google Patents
Agent-based control architecture Download PDFInfo
- Publication number
- WO2003060779A1 WO2003060779A1 PCT/US2002/034850 US0234850W WO03060779A1 WO 2003060779 A1 WO2003060779 A1 WO 2003060779A1 US 0234850 W US0234850 W US 0234850W WO 03060779 A1 WO03060779 A1 WO 03060779A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- agent
- process tool
- processing
- controller
- workpiece
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 119
- 230000008569 process Effects 0.000 claims abstract description 104
- 238000012545 processing Methods 0.000 claims abstract description 78
- 230000009471 action Effects 0.000 claims abstract description 38
- 238000004519 manufacturing process Methods 0.000 claims abstract description 30
- 239000003795 chemical substances by application Substances 0.000 description 90
- 235000012431 wafers Nutrition 0.000 description 15
- 239000004065 semiconductor Substances 0.000 description 13
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000013515 script Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 6
- 238000004886 process control Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008021 deposition Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000000206 photolithography Methods 0.000 description 3
- 238000005498 polishing Methods 0.000 description 3
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 3
- 229920005591 polysilicon Polymers 0.000 description 3
- 239000003054 catalyst Substances 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005530 etching Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000002513 implantation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 239000000376 reactant Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 229920000638 styrene acrylonitrile Polymers 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/67—Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
- H01L21/67005—Apparatus not specifically provided for elsewhere
- H01L21/67242—Apparatus for monitoring, sorting or marking
- H01L21/67276—Production flow monitoring, e.g. for increasing throughput
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L22/00—Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
- H01L22/20—Sequence of activities consisting of a plurality of measurements, corrections, marking or sorting steps
- H01L22/26—Acting in response to an ongoing measurement without interruption of processing, e.g. endpoint detection, in-situ thickness measurement
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32097—Recipe programming for flexible batch
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45031—Manufacturing semiconductor wafers
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2924/00—Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
- H01L2924/0001—Technical content checked by a classifier
- H01L2924/0002—Not covered by any one of groups H01L24/00, H01L24/00 and H01L2224/00
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/80—Management or planning
Definitions
- This invention relates generally to the field of semiconductor device manufacturing and, more particularly, to an automated manufacturing environment using autonomous, active, software agents to control recipes for processing wafers.
- a set of processing steps is performed on a lot of wafers using a variety of processing tools, including photolithography steppers, etch tools, deposition tools, polishing tools, rapid thermal processing tools, implantation tools, etc.
- processing tools including photolithography steppers, etch tools, deposition tools, polishing tools, rapid thermal processing tools, implantation tools, etc.
- the technologies underlying semiconductor processing tools have attracted increased attention over the last several years, resulting in substantial refinements.
- many of the processing tools that are currently commercially available suffer certain deficiencies.
- such tools often lack advanced process data monitoring capabilities, such as the ability to provide historical parametric data in a user-friendly format, as well as event logging, real-time graphical display of both current processing parameters and the processing parameters of the entire run, and remote, i.e., local site and worldwide, monitoring.
- One technique for improving the operation of a semiconductor processing line includes using a factory wide control system to automatically control the operation of the various processing tools.
- the manufacturing tools communicate with a manufacturing framework or a network of processing modules.
- Each manufacturing tool is generally connected to an equipment interface.
- the equipment interface is connected to a machine interface which facilitates communications between the manufacturing tool and the manufacturing framework.
- the machine interface can generally be part of an advanced process control (APC) system.
- the APC system initiates a control script based upon a manufacturing model, which can be a software program that automatically retrieves the data needed to execute a manufacturing process.
- semiconductor devices are staged through multiple manufacturing tools for multiple processes, generating data relating to the quality of the processed semiconductor devices.
- various events may take place that affect the performance of the devices being fabricated. That is, variations in the fabrication process steps result in device performance variations. Factors, such as feature critical dimensions, doping levels, contact resistance, particle contamination, etc., all may potentially affect the end performance of the device.
- Various tools in the processing line are controlled in accordance with performance models to reduce processing variation. Commonly controlled tools include photolithography steppers, polishing tools, etching tools, and deposition tools.
- Pre-processing and/or post-processing metrology data is supplied to process controllers for the tools. Operating recipe parameters, such as processing time, are calculated by the process controllers based on the performance model and the metrology information to attempt to achieve post-processing results as close to a target value as possible. Reducing variation in this manner leads to increased throughput, reduced cost, higher device performance, etc., all of which equate to increased profitability.
- Configuration control and efficiency issues are prevalent in a distributed computing environment, such as a factory-wide APC system.
- a distributed computing environment such as a factory-wide APC system.
- software developers writing control code to construct the process controllers.
- One particular developer may work extensively developing controllers of a certain type. It is common for each developer to have a unique programming style, and to rely on routines that they have created themselves. For example, each developer may have a set of routines for interfacing with databases or other entities within the APC framework and for performing various math functions and basic utility functions.
- the present invention is directed to overcoming, or at least reducing the effects of, one or more of the problems set forth above.
- a manufacturing system including a process tool, a controller agent, and a first processing agent.
- the process tool is configured to process a workpiece in accordance with an operating recipe.
- the controller agent is configured to determine a control action associated with the processing of the workpiece in the process tool.
- the first processing agent is associated with at least one of the process tool and the workpiece and configured to interface with the controller agent, receive the control action, and configure the operating recipe based on the control action.
- Another aspect of the present invention is seen in a method for controlling a process tool configured to process a workpiece in accordance with an operating recipe.
- a first processing agent associated with at least one of the process tool and the workpiece is instantiated.
- a controller agent configured to determine a control action associated with the processing of the workpiece in the process tool is instantiated.
- the first processing agent is interfaced with the controller agent to receive the control action.
- the first processing agent is interfaced with the process tool to configure the operating recipe based on the control action.
- Figure 1 conceptually illustrates a portion of one particular embodiment of a first process flow constructed and operated in accordance with the present invention
- Figure 2 conceptually illustrates, in a partial block diagram, selected portions of the hardware and software architectures, respectively, of the computing devices in Figure 1 ;
- Figure 3 conceptually illustrates in a partial block diagram the specialization of agents into scheduling agents, processing agents, and controller agents in a second process flow constructed and operated in accordance with the present invention.
- FIG. 1 a conceptual illustration of a portion of a process flow 100 constructed and operated in accordance with one particular embodiment of the present invention is provided.
- the illustrated portion of the process flow 100 includes two stations 105, each station 105 including a computing device 1 10 communicating with a process tool 115.
- the stations 105 communicate with one another over communications links 120.
- the computing devices 1 10 and the communications links 120 comprise a portion of a larger computing system, e.g., a network 125.
- the process tools 1 15 are shown in Figure 1 processing lots 130 of wafers 135 in the fabrication of integrated circuit devices.
- the invention is illustrated as it may be used in fabricating semiconductor devices, its application is not so limited, as it may be applied to other types of manufacturing processes.
- the lots 130 of wafers 135 may more generically referred to as "workpieces.”
- the process tools 1 15 and any process operation performed thereon need not necessarily be related to the manufacture of semiconductor devices in all embodiments. However, for the sake of clarity and to further an understanding of the invention, the terminology pertaining to semiconductor fabrication shall be retained in disclosing the invention in the context of the illustrated embodiments.
- FIG. 2 depicts selected portions of the hardware and software architectures, respectively, of the computing devices 1 10 programmed and operated in accordance with the present invention.
- Some aspects of the hardware and software architecture e.g., the individual cards, the basic input/output system ("BIOS"), input/output drivers, etc.
- BIOS basic input/output system
- FIG. 2 depicts selected portions of the hardware and software architectures, respectively, of the computing devices 1 10 programmed and operated in accordance with the present invention.
- Some aspects of the hardware and software architecture e.g., the individual cards, the basic input/output system ("BIOS"), input/output drivers, etc.
- BIOS basic input/output system
- the software and hardware architectures of the computing devices 110 will include many such routine features.
- the computing device 110 is a workstation, employing a UNIX-based operating system, but the invention is not so limited.
- the computing device 1 10 may be implemented in virtually any type of electronic computing device such as a laptop computer, a desktop computer, a minicomputer, a mainframe computer, or a supercomputer.
- the computing device 110 may even be, in some alternative embodiments, a processor or controller embedded in the process tool 115.
- the invention also is not limited to UNIX-based operating systems.
- Alternative operating systems e.g., WindowsTM-based or disk operating system (“DOS”) -based
- DOS disk operating system
- the invention is not limited by the particular implementation of the computing device 110.
- the computing device 1 10 also includes a processor 205 communicating with some storage 210 over a bus system 215.
- the storage 210 will typically include at least a hard disk (not shown) and random access memory (“RAM”) (not shown).
- the computing device 110 may also, in some embodiments, include removable storage such as an optical disk (not shown), or a floppy electromagnetic disk (not shown), or some other form such as a magnetic tape (not shown) or a zip disk (not shown).
- the processor 205 may be any suitable processor known to the art.
- the processor may be a general purpose microprocessor or a digital signal processor ("DSP").
- DSP digital signal processor
- the processor 205 is an AthlonTM 64-bit processor commercially available from Advanced Micro Devices, Inc.
- the computing device 110 includes a monitor 240, keyboard 245, and a mouse 250, which together, along with their associated user interface software 255 comprise a user interface 260.
- the user interface 260 in the illustrated embodiment is a graphical user interface ("GUI”), although this is not necessary to the practice of the invention.
- FIG. 2 also illustrates selected portions of the software architecture of the computing devices 1 10.
- Each computing device 1 10 includes, in the illustrated embodiment, a software agent 265 residing thereon in the storage 210.
- the software agents 265 may reside in the process flow 100 in places other than the computing devices 110.
- the situs of the software agent 265 is not material to the practice of the invention.
- some computing devices 110 may have multiple software agents 265 residing thereon while other computing devices 1 10 may not have any.
- An automated manufacturing execution system (MES) 270 such as WORKSTREAMTM offered by Consilium, Inc. of Mountain View, CA, resides on at least one computing device 1 10.
- MES automated manufacturing execution system
- the computing devices 110 may also be part of a larger computing system 125 by a connection over the communications links 120.
- Exemplary computing systems in such an implementation would include local area networks ("LANs”), wide area networks ("WANs”), system area networks ("SANs”), intranets, or even the Internet.
- the computing system 125 employs a networked client/server architecture, but alternative embodiments may employ a peer-to-peer architecture.
- the computing devices 110 may communicate directly with one another.
- the communications links 120 may be wireless, coaxial cable, optical fiber, or twisted wire pair links.
- the computing system 125, in embodiments employing one, and the communications links 120 are implementation specific and may be provided in any suitable manner known to the art.
- the computing system 125 may employ any suitable communications protocol known to the art, e.g., Transmission Control Protocol/Internet Protocol ("TCP/IP").
- TCP/IP Transmission Control Protocol/Internet Protocol
- each process tool 1 15 represents some resource that may be employed for this purpose.
- the process tool 115 may be a fabrication tool used to fabricate some portion of the wafers 135, i.e., layer, pattern, dope, or heat treat the wafers 135.
- the process tool 115 may be a metrology tool used to evaluate the performance of various parts of the process flow 100.
- the software agents 265 are capable of assessing a plurality of resources for subsequent processing of the lots 130 of wafers 135, allocating the resources represented by the process tools 115, and negotiating among themselves for the allocation of those resources for subsequent processing of the lot 130 of wafers 135.
- the software agents 265 are self-configuring on start-up, intelligent, state-aware, and imbued with specific goals for which they autonomously initiate behaviors to achieve.
- the software agents 265 are also self-adjusting as their environment changes.
- the software agents 265 are implemented as objects in an object oriented programming ("OOP") environment, but the invention may be implemented using techniques that are not object oriented.
- OOP object oriented programming
- Their behavior is relatively simple and is script or rules-based. The behavior is designed to achieve selected goals such as achieving an assigned lot due date, achieving a predefined level of quality, maximizing machine utilization, and scheduling opportunistic preventive maintenance.
- the software agents 265 interface with the MES 270 and are integrated with the existing factory control systems (not shown). As will be apparent to those skilled in the art having the benefit of this disclosure, the manner in which this interface and integration occurs will be implementation specific, depending upon the identity of the MES 270 and the factory control systems.
- the software agents 265 can be specialized on several different levels.
- One level is by "type,” i.e., whether the software agents 265 represent a "consumer” or a "provider” in the process flow 100. More particularly, whether the software agents 265 represent a consumer or a provider is determined by the type of entity it represents in the overall process flow 100.
- a software agent 265 may represent a lot 130 of wafers 135 (i.e., a "lot agent"), a process tool 115 (i.e., a "machine agent”), or a process material (i.e., a "resource agent").
- the software agents 265 may also specialized by function — i.e., by what function the software agent 265 performs in the process flow.
- a software agent 265 may be configured to perform a particular function without necessarily representing a particular entity.
- the software agent 265 may be configured to determine control actions (i.e., a "controller agent") for a particular lot 130 of wafers 135 processed in a process tool 115. The actions taken by the controller agent may depend on both the characteristics of the lot 130 and the characteristics of the process tool 115.
- a controller agent may be invoked by either a lot agent or a machine agent, depending on the particular implementation. In the illustrated embodiment, the controller agent remains associated with a particular process tool 1 15 throughout its life cycle, however, other arrangements may also be used.
- Other functions that may be performed by software agents 265 include scheduling.
- scheduling agents there are scheduling agents, processing agents, and controller agents.
- the software agents 265 need not necessarily exist in a one-to-one correspondence with manufacturing domain entities, such as lots 130, process tools 115, etc. Instead, most domain entities are each represented by a group of software agents 265. For instance, a lot 130 or a process tool 1 15 may have both a scheduling agent and a processing agent.
- a controller agent may be associated with a particular process tool 115 and may be invoked by one of the processing agents (i.e., associated with the lot 130 or the process tool 1 15). This arrangement facilitates the design of specialized objects that exhibit specialized behavior to support a single aspect of domain entity functionality.
- the software agents 265 are implemented using object-oriented programming techniques.
- a software "agent” is an autonomous, active object. Given its set of operations, a software agent 265 can take independent action in response to local conditions, thereby generating adaptable system behavior.
- the present invention presents an agent-enhanced system that defines, configures, and deploys autonomous and mobile "software agents” that mimic and improve the functioning of "real world” agents in a semiconductor manufacturing plant such as factory workers, material, equipment, processes, etc.
- an agent or other software object can include one or more software objects.
- the term "object” will be understood to be a software object that may, in turn, be composed of other software objects.
- the functionality of one object may be combined with other functionalities. It is to be understood that functionalities described as being associated with separate objects may be combined into the functionality associated with a single object.
- the software agents 265 are "configurable.” In this particular embodiment, the software agents are configurable either by modifying scripts governing their behavior or modifying "control knobs.” Control knobs are externally configurable parameters or properties of the software agents that provide flexibility and/or system tuning. For instance, some properties specify curves that guide system decisions. More particularly, the processing and scheduling actions of the software agents 265 are scripted such that certain, predefined events cause execution of a script segment. In one particular implementation, the scripts are implemented in JPython, an open source Java programming language providing a bi-directional Java interface. Additional information, including a download of JPython, are available over the Internet at ⁇ http://www.jpython.org/>.
- the software implemented aspects of the invention are typically encoded on some form of program storage medium or implemented over some type of transmission medium.
- the program storage medium may be magnetic (e.g., a floppy disk or a hard drive) or optical (e.g., a compact disk read only memory, or "CD ROM"), and may be read only or random access.
- the transmission medium may be twisted wire pairs, coaxial cable, optical fiber, or some other suitable transmission medium known to the art. The invention is not limited by these aspects of any given implementation.
- the process flow 100 may be implemented under an Advanced Process Control (APC) framework.
- An APC system comprises a distributed software system of interchangeable, standardized software components permitting run-to-run control and fault detection/classification in the process flow 300.
- the present invention of software agents 265 and their operation is layered on top of the APC System to achieve a nearly autonomously operating semiconductor fabrication process flow.
- the software components of the APC System implement an architectural standard based on the Semiconductor Equipment and Materials International (“SEMI”) Computer Integrated Manufacturing (“CIM”) Framework compliant system technologies and the Advanced Process Control (“APC”) Framework.
- SEMI Semiconductor Equipment and Materials International
- CIM Computer Integrated Manufacturing
- API Advanced Process Control
- APC SEMI E93- 0999 - Provisional Specification for CIM Framework Advanced Process Control Component
- This particular architecture relies heavily on software utilizing object oriented programming and employs the Object Management Group's (“OMG”) Common Object Request Broker Architecture (“CORBA”) and CORBA_Services specifications for distributed object systems. Information and specifications for the OMG CORBA architecture are also readily, publicly available.
- OMG Object Management Group's
- CORBA Common Object Request Broker Architecture
- CORBA_Services specifications for distributed object systems.
- Information and specifications for the OMG CORBA architecture are also readily, publicly available.
- An exemplary software system capable of being adapted to perform the functions of the APC System as described herein is the Catalyst system commercially offered by KLA-Tencor, Inc.
- KLA-Tencor may be contacted at: 160 Rio Robles, San Jose, CA 95134, phone: 408-875-6000, fax: 408-875-3030, ⁇ http://www.kla- tencor.com>. Additional information regarding the Catalyst system is also available from KLA-Tencor on their website at ⁇ http://www.kla-tencor.com/controlsolutions/catalystapc.html>.
- FIG. 3 a simplified block diagram of an exemplary embodiment of a process flow 300 implemented using software agents 265 in accordance with another embodiment of the present invention is provided.
- An exemplary lot 130 is represented by a lot scheduling agent 310 and a lot processing agent 320.
- An exemplary process tool 1 15 is represented by a machine scheduling agent 330 and a machine processing agent 340.
- the lot scheduling agent 310 negotiates with various entities in the process flow 300, such as the machine scheduling agent 330 to secure the resources needed for completion of the lot.
- lot scheduling agent 310 and the machine scheduling agent 330 may use a "contract net negotiation protocol" approach to schedule an appointment for the lot 130 with the process tool 115.
- the lot processing agent 320 and/or machine processing agent 340 may be invoked when the lot 130 is received at the process tool 1 15 for processing.
- the lot processing agent 320 and machine processing agent 340 interface with a controller agent 350 to determine necessary control actions for configuring the operating recipe of the process tool 1 15 to process the lot 130.
- Either lot processing agent 320 or the machine processing agent 340 may invoke the controller agent 350.
- the lot processing agent 320 may send the controller agent 350 data regarding the characteristics of the lot 130 (e.g., dimensional metrology data, electrical metrology data, etc) that is needed to determine the necessary control action.
- the machine processing agent 350 may pass data regarding the process tool 1 15 (e.g., idle time, time since last cleaning, tool health, etc) to the controller agent 360.
- data regarding the characteristics of the lot 130 and/or process tool 115 may be stored in a centralized data store 360, where it may be accessed by the controller agent 350.
- the data store 360 may be configured to store data such as include pre-process and post-process metrology data, tool states, lot priorities, etc.
- the controller agent 350 may receive pre-polish thickness measurements (e.g., thickness of high features, thickness of low features) and predict a polishing time required to achieve a post-polish target thickness.
- the controller agent 350 may model the etching performance of the process tool 1 15 based on pre-etch and/or post-etch thickness measurements.
- the controller agent 350 may use a control model of the process tool 1 15 to generate its prediction.
- the control model may be developed empirically using commonly known linear or non-linear techniques.
- the control model may be a relatively simple equation based model (e.g., linear, exponential, weighted average, etc.) or a more complex model, such as a neural network model, principal component analysis (PCA) model, or a projection to latent structures (PLS) model.
- PCA principal component analysis
- PLS projection to latent structures
- the specific implementation of the model may vary depending on the modeling technique selected.
- the controller agent 350 may determine operating recipe parameters such as etch time, plasma power, temperature, pressure, reactant gas concentrations, etc. to reduce post-etch thickness variations. Other control scenarios are possible with other types of process tools 115.
- global configuration variables are defined for use by the controller agent 350.
- these global variables include values of variables from a recipe management system (RMS) (i.e., a global database of recipe settings that stores a default recipe for the current process being implanted by the process tool 115) and context variables.
- RMS recipe management system
- Context variable values define a control thread and typically consist of values for variables such as tool identification code, lot number, operation number, and so forth.
- any needed baseline variables are also given values. Examples include an email list for error notifications, values for timeouts, the maximum number of wafers allowed in a lot considered as a "child" lot, previous layer information that the controller agent 350 may use (feed forward information) and so forth.
- the controller agent 350 may use the values for lot number and quantity of wafers, as set in the global configuration variables and determine values for lot number, family name, parent name, facility, number of wafers, and status (i.e., whether lot is a parent or a child lot).
- the previously defined context and RMS information may be used to set the values that the controller agent 350 uses to calculate control moves.
- the controller agent 350 may use the context information (or "thread" designation) to set the value of a control model parameter according to the value defined in RMS.
- a specific example would be setting the value for etch rate used in a control model according to the context of the particular etch chamber and the value for that etch chamber's etch rate as defined in RMS.
- the controller agent 350 may retrieve feed forward metrology information from the data store 360 using a query by lot number and layer name.
- the controller agent 350 may check elements in an array of data associated with a given lot and fill in default values for missing values. For example, the target of a previous process may be used to set the value of a missing measurement needed as part of the feed forward information used by the controller agent 350. Other methods for setting the value of missing feed forward information, in lieu of using a default value, may also be performed.
- the controller agent 350 sets values of the keys and state structures needed for querying the data store 360 to retrieve control states associated with the current control thread.
- the keys may be used to retrieve the thread state data from the data store 360.
- the controller agent 350 searches for the thread state data in a stack of ordered data for recent lots processed with this thread context. If such values are found they are passed to a user-defined function containing a control model, which calculates and returns values for the thread states. If no values in the stack are found, the controller agent 350 may search up the hierarchy and retrieve the data from the first hierarchy level that has values for the thread states.
- the stack and all hierarchy levels are assumed to contain similar data, but at differing degrees of precision.
- the controller agent 350 may conduct a jeopardy check by performing a lookup in the data store 360 and retrieving the value for the number of lots in the jeopardy stack (i.e., the stack of lots which were processed on the given thread since the last metrology operation). This value may be compared to a threshold value for number of lots in this jeopardy category, a value typically specified in RMS. If this jeopardy threshold value is not exceeded, the controller agent 350 may continue. If the threshold value is exceeded, the controller agent 350 may abort and send a popup display that instructs an operator to perform a metrology event on a lot from the list of lots in the jeopardy stack prior to determining a control action for the current lot.
- the controller agent 350 computes controller inputs (process recipe updates) from the state and target information previously determined, as described above.
- the controller agent 350 then sends the results of the control action to the machine processing agent 340, which, in turn, updates the operating receipt of the process tool 115 prior to processing the lot 130.
- more than one controller agent 350 may be instantiated for the processing of the lot 130.
- the process tool 115 is a photolithography stepper
- one controller agent 350 may be invoked to control overlay, and another controller agent 350 may be invoked to control critical dimensions (CD).
- CD critical dimensions
- the multiple controller agents 350 may use feedback from processed wafers to adjust various stepper parameters, such as exposure dose, exposure time, focus, etc.
- a deposition tool such as a tool for forming polysilicon layers, may also have multiple controller agents 350 for controlling parameters such as polysilicon grain size and polysilicon layer thickness.
- the context variables are checked to determine which individual controller agents 350 need to determine control actions.
- the operation ID indicates the process will be run (e.g., poly gate mask vs. second interlevel dielectric layer mask (ILD)).
- ILD interlevel dielectric layer mask
- Each controller agent 350 is only required under certain context situations and will only run if all of those context conditions are met.
- the CD controller agent 350 may run for a poly gate mask, but may not run at the second ILD mask process.
- the overlay controller agent 350 may run at both mask events.
- agent-based control architecture improves overall factory effectiveness and provides more comprehensive automation. More particularly, the autonomous, active software agents 265 schedule and initiate execution of lot scheduling and processing. In general, improved process control reduces product variability, which, in turn, increases product performance and profitability.
Landscapes
- Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- General Factory Administration (AREA)
- Multi-Process Working Machines And Systems (AREA)
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10297636T DE10297636B4 (en) | 2002-01-10 | 2002-10-31 | Method for controlling process equipment in a semiconductor manufacturing factory #### |
JP2003560805A JP4849773B2 (en) | 2002-01-10 | 2002-10-31 | Automatic production system |
AU2002343588A AU2002343588A1 (en) | 2002-01-10 | 2002-10-31 | Agent-based control architecture |
KR1020047010792A KR100939329B1 (en) | 2002-01-10 | 2002-10-31 | Agent-based control architecture |
GB0412557A GB2400925B (en) | 2002-01-10 | 2002-10-31 | Agent-based control architecture |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US4464002A | 2002-01-10 | 2002-01-10 | |
US10/044,640 | 2002-01-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2003060779A1 true WO2003060779A1 (en) | 2003-07-24 |
Family
ID=21933483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2002/034850 WO2003060779A1 (en) | 2002-01-10 | 2002-10-31 | Agent-based control architecture |
Country Status (8)
Country | Link |
---|---|
JP (1) | JP4849773B2 (en) |
KR (1) | KR100939329B1 (en) |
CN (1) | CN100449551C (en) |
AU (1) | AU2002343588A1 (en) |
DE (1) | DE10297636B4 (en) |
GB (1) | GB2400925B (en) |
TW (1) | TWI312448B (en) |
WO (1) | WO2003060779A1 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007507886A (en) * | 2003-09-30 | 2007-03-29 | 東京エレクトロン株式会社 | A system and method using a first principle simulation for controlling a semiconductor manufacturing process. |
US8014991B2 (en) | 2003-09-30 | 2011-09-06 | Tokyo Electron Limited | System and method for using first-principles simulation to characterize a semiconductor manufacturing process |
US8032348B2 (en) | 2003-09-30 | 2011-10-04 | Tokyo Electron Limited | System and method for using first-principles simulation to facilitate a semiconductor manufacturing process |
US8036869B2 (en) | 2003-09-30 | 2011-10-11 | Tokyo Electron Limited | System and method for using first-principles simulation to control a semiconductor manufacturing process via a simulation result or a derived empirical model |
US8296687B2 (en) | 2003-09-30 | 2012-10-23 | Tokyo Electron Limited | System and method for using first-principles simulation to analyze a process performed by a semiconductor processing tool |
WO2013160774A3 (en) * | 2012-04-23 | 2014-01-16 | Abb Technology Ag | Service port explorer |
WO2021105364A3 (en) * | 2019-11-29 | 2021-07-22 | Sms Group Gmbh | Control system for an industrial plant, in particular for a plant for producing or processing metal strips or plates and method for controlling an industrial plant, in particular a plant for producing or processing metal strips or plates |
US20230367302A1 (en) * | 2022-05-11 | 2023-11-16 | Applied Materials, Inc. | Holistic analysis of multidimensional sensor data for substrate processing equipment |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7542880B2 (en) * | 2006-04-06 | 2009-06-02 | Advanced Micro Devices, Inc. | Time weighted moving average filter |
DE102007014970B3 (en) * | 2007-03-28 | 2008-07-31 | Siemens Ag | Process e.g. medical treatment, configuration method, involves configuring process step, where process includes parallel running process steps, and configuration of process steps determines sequence of process steps |
DE102008035258A1 (en) * | 2008-07-29 | 2010-03-25 | Siemens Aktiengesellschaft | Method for testing data consistency of technical system, involves testing data consistency of control parameters marked by part of tag groups based on preset validation rules for providing test results |
DE102011109388A1 (en) * | 2011-08-04 | 2013-02-07 | Heidelberger Druckmaschinen Aktiengesellschaft | Automatic press improvement |
KR101739532B1 (en) * | 2012-02-21 | 2017-06-08 | 어플라이드 머티어리얼스, 인코포레이티드 | Enhanced rehosting capability for legacy hardware and software |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5975736A (en) * | 1994-07-15 | 1999-11-02 | Ontrak Systems, Inc. | Scrubber control system |
WO2001050520A1 (en) * | 2000-01-04 | 2001-07-12 | Advanced Micro Devices, Inc. | In-situ contril of a dry etcher |
JP2001338856A (en) * | 2000-05-30 | 2001-12-07 | Tokyo Seimitsu Co Ltd | Process controller for semiconductor manufacturing system |
WO2001097280A2 (en) * | 2000-06-02 | 2001-12-20 | Timbre Technologies, Inc. | Quality control using profile library |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4276711B2 (en) * | 1998-01-05 | 2009-06-10 | 株式会社日立国際電気 | Semiconductor manufacturing equipment control system |
JP3002776B1 (en) * | 1998-07-16 | 2000-01-24 | 横河電機株式会社 | Production system and processing apparatus selection method in production system |
JP3704698B2 (en) * | 1998-08-12 | 2005-10-12 | 横河電機株式会社 | Production system |
JP2000158297A (en) * | 1998-12-01 | 2000-06-13 | Dainippon Screen Mfg Co Ltd | Job management system, job management method, and record medium |
-
2002
- 2002-10-31 AU AU2002343588A patent/AU2002343588A1/en not_active Abandoned
- 2002-10-31 CN CNB028263782A patent/CN100449551C/en not_active Expired - Lifetime
- 2002-10-31 KR KR1020047010792A patent/KR100939329B1/en active IP Right Grant
- 2002-10-31 GB GB0412557A patent/GB2400925B/en not_active Expired - Lifetime
- 2002-10-31 DE DE10297636T patent/DE10297636B4/en not_active Expired - Lifetime
- 2002-10-31 WO PCT/US2002/034850 patent/WO2003060779A1/en active Application Filing
- 2002-10-31 JP JP2003560805A patent/JP4849773B2/en not_active Expired - Lifetime
- 2002-12-09 TW TW091135512A patent/TWI312448B/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5975736A (en) * | 1994-07-15 | 1999-11-02 | Ontrak Systems, Inc. | Scrubber control system |
WO2001050520A1 (en) * | 2000-01-04 | 2001-07-12 | Advanced Micro Devices, Inc. | In-situ contril of a dry etcher |
JP2001338856A (en) * | 2000-05-30 | 2001-12-07 | Tokyo Seimitsu Co Ltd | Process controller for semiconductor manufacturing system |
WO2001097280A2 (en) * | 2000-06-02 | 2001-12-20 | Timbre Technologies, Inc. | Quality control using profile library |
Non-Patent Citations (1)
Title |
---|
PATENT ABSTRACTS OF JAPAN vol. 2002, no. 04 4 August 2002 (2002-08-04) * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007507886A (en) * | 2003-09-30 | 2007-03-29 | 東京エレクトロン株式会社 | A system and method using a first principle simulation for controlling a semiconductor manufacturing process. |
US8014991B2 (en) | 2003-09-30 | 2011-09-06 | Tokyo Electron Limited | System and method for using first-principles simulation to characterize a semiconductor manufacturing process |
US8032348B2 (en) | 2003-09-30 | 2011-10-04 | Tokyo Electron Limited | System and method for using first-principles simulation to facilitate a semiconductor manufacturing process |
US8036869B2 (en) | 2003-09-30 | 2011-10-11 | Tokyo Electron Limited | System and method for using first-principles simulation to control a semiconductor manufacturing process via a simulation result or a derived empirical model |
JP4795957B2 (en) * | 2003-09-30 | 2011-10-19 | 東京エレクトロン株式会社 | A system and method using a first principle simulation for controlling a semiconductor manufacturing process. |
US8050900B2 (en) | 2003-09-30 | 2011-11-01 | Tokyo Electron Limited | System and method for using first-principles simulation to provide virtual sensors that facilitate a semiconductor manufacturing process |
US8073667B2 (en) | 2003-09-30 | 2011-12-06 | Tokyo Electron Limited | System and method for using first-principles simulation to control a semiconductor manufacturing process |
US8296687B2 (en) | 2003-09-30 | 2012-10-23 | Tokyo Electron Limited | System and method for using first-principles simulation to analyze a process performed by a semiconductor processing tool |
WO2013160774A3 (en) * | 2012-04-23 | 2014-01-16 | Abb Technology Ag | Service port explorer |
WO2021105364A3 (en) * | 2019-11-29 | 2021-07-22 | Sms Group Gmbh | Control system for an industrial plant, in particular for a plant for producing or processing metal strips or plates and method for controlling an industrial plant, in particular a plant for producing or processing metal strips or plates |
US20230367302A1 (en) * | 2022-05-11 | 2023-11-16 | Applied Materials, Inc. | Holistic analysis of multidimensional sensor data for substrate processing equipment |
Also Published As
Publication number | Publication date |
---|---|
KR100939329B1 (en) | 2010-01-28 |
JP2005515623A (en) | 2005-05-26 |
GB2400925A (en) | 2004-10-27 |
TW200301854A (en) | 2003-07-16 |
GB0412557D0 (en) | 2004-07-07 |
DE10297636T5 (en) | 2005-01-05 |
JP4849773B2 (en) | 2012-01-11 |
GB2400925B (en) | 2005-08-03 |
TWI312448B (en) | 2009-07-21 |
DE10297636B4 (en) | 2008-05-08 |
KR20040074116A (en) | 2004-08-21 |
CN100449551C (en) | 2009-01-07 |
AU2002343588A1 (en) | 2003-07-30 |
CN1610908A (en) | 2005-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6678570B1 (en) | Method and apparatus for determining output characteristics using tool state data | |
CN100378941C (en) | Method and apparatus for predicting device electrical parameters during fabrication | |
JP4261190B2 (en) | Method and apparatus for controlling a tool using a baseline control script | |
US20030029383A1 (en) | Dynamic control of wafer processing paths in semiconductor manufacturing processes | |
US6684122B1 (en) | Control mechanism for matching process parameters in a multi-chamber process tool | |
US6790686B1 (en) | Method and apparatus for integrating dispatch and process control actions | |
KR100939329B1 (en) | Agent-based control architecture | |
US7076321B2 (en) | Method and system for dynamically adjusting metrology sampling based upon available metrology capacity | |
US6563300B1 (en) | Method and apparatus for fault detection using multiple tool error signals | |
JP2003520435A (en) | Method for requesting trace data report from FDC semiconductor manufacturing process | |
US6785586B1 (en) | Method and apparatus for adaptively scheduling tool maintenance | |
US6687561B1 (en) | Method and apparatus for determining a sampling plan based on defectivity | |
EP1415126B1 (en) | Method and apparatus for integrating multiple process controllers | |
JP2005515623A6 (en) | Automatic production system | |
US6937914B1 (en) | Method and apparatus for controlling process target values based on manufacturing metrics | |
US7020535B1 (en) | Method and apparatus for providing excitation for a process controller | |
US7069098B2 (en) | Method and system for prioritizing material to clear exception conditions | |
US7340318B1 (en) | Method and apparatus for assessing controller performance | |
KR101169038B1 (en) | Method and system for prioritizing material to clear exception conditions | |
US7263408B1 (en) | Method and system for converting tool process ability based upon work in progress characteristics | |
Toprac et al. | The status and future of APC software.(Manufacturing Software) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG UZ VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LU MC NL PT SE SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
ENP | Entry into the national phase |
Ref document number: 0412557 Country of ref document: GB Kind code of ref document: A Free format text: PCT FILING DATE = 20021031 |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 20028263782 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2003560805 Country of ref document: JP Ref document number: 1020047010792 Country of ref document: KR |
|
RET | De translation (de og part 6b) |
Ref document number: 10297636 Country of ref document: DE Date of ref document: 20050105 Kind code of ref document: P |
|
WWE | Wipo information: entry into national phase |
Ref document number: 10297636 Country of ref document: DE |
|
122 | Ep: pct application non-entry in european phase | ||
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8607 |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8607 |