WO2001033277A1 - Strategic method for process control - Google Patents
Strategic method for process control Download PDFInfo
- Publication number
- WO2001033277A1 WO2001033277A1 PCT/US2000/028318 US0028318W WO0133277A1 WO 2001033277 A1 WO2001033277 A1 WO 2001033277A1 US 0028318 W US0028318 W US 0028318W WO 0133277 A1 WO0133277 A1 WO 0133277A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- output
- process control
- input
- interconnection cell
- Prior art date
Links
Classifications
-
- 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
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- 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/32345—Of interconnection of cells, subsystems, distributed simulation
-
- 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]
Definitions
- the present invention generally relates to a method for controlling a manufacturing-type or like process, and to search-space organizational validation of inputs, outputs, and related factors therein.
- the present invention relates to synergistically combining disparate resolution data sets, such as by actual or simulated integrating of lower resolution expert-experience based model-like templates to higher resolution empirical data-capture dense quantitative search-spaces, and to establishing a process control strategy therewith.
- the present invention may also be understood to relate to embodiments where this synergetic combining is beneficially accomplished, such as in control systems, command control systems, command control communications systems, computational apparatus associated with the aforesaid, and to quantitative measuring tools used therewith. Equivalently, the present invention may be understood to relate to domains in which this synergetic combining is applied, such as fabrication of semiconductors or of integrated circuits, medical treatment modalities, social engineering models, corporate management enterprise systems, transactional modifications for financial business practices, or substantially any other organized modality of practice or information, technological, bio-physical, mercantile, social, etc
- Process control has historic origins in improving the yield and efficiency of manufacturing enterprises Numerous methods for process control are used in countless domains of instantiation Inclusive of their variations and combinations, process control techniques are presently finding application in improving the yield and efficiency of logical and physical processes, including technological, bio-physical, mercantile, and social enterprises These diverse types of enterprises, along with classical manufacturing type enterprises are presently evolving into hyper-complex data management and optimization tasks
- Gintic is a national research institute proactively involved in collaborative applied R & D projects with the industry and contract research Funded by the National Science and Technology Board, Gintic's mission is to enhance the competitiveness of the Singapore industries through the generation and application of advanced manufacturing technology
- the present invention provides a process control methodology that is easy to reverse engineer with existing process control systems, including existing data capture systems, process management systems, and operational alert and alarm initiation systems More specifically, the present invention provides a process control methodology wherein, on the one hand, professionals (e g process engineers, experts, consultants, managers, and even machine operators) may participate in providing a preliminary definition of factors worthy of consideration when implementing process control for a particular process juncture and, on the other hand, empirical data may be applied to objectively provide actual operational weightings between these multi-parametric factors Ultimately, the present invention provides process control, yielding improved productivity and efficiency Furthermore, the present invention provides analytical derivative result, in the form of a discrete empirical model of the process juncture, which is equivalent to or an improvement over that provided by the participating professionals
- the present invention provides at least an equal improvement in process control performance as existing systems, with an added value of being able to be further integrated into larger units of process control It is however likely that for most application the method of the present invention will also provide an improved process control performance to known general-purpose process control methods NOTICES
- the present invention in whole or in part, may be used independently of the Knowledge-Engineering Protocol-Suite or may be used as a part of the preferred integral embodiment of the Knowledge-Engineering Protocol-Suite GENERAL OVERVIEW OF THE INVENTION
- the present invention relates to a strategic method for process control wherein said method includes the steps of' for a predetermined process juncture defining an interconnection cell having associated therewith firstly at least one set of input data or at least one set of process control parameters, and secondly at least one set of output data, assigning at least one boundary value to at least one set of the sets associated with the defined interconnection cell, using the assigned at least one boundary value, forming a plurality of discrete respective set combinations, and for the interconnection cell, processing data from the plurality of respective formed set combinations into respective corresponding data record clusters.
- Various embodiment of the present invention relate to aspects of the step of defining an interconnection cell.
- defining an interconnection cell includes representing the interconnection cell as corresponding to a single stage in a process map.
- defining an interconnection cell includes representing the interconnection cell as corresponding to a group of contiguous stages in a process map. According to a further embodiment of the present invention, defining an interconnection cell includes representing the interconnection cell as corresponding to a group of discontiguous stages in a process map
- defining an interconnection cell includes representing the interconnection cell as corresponding to a group of cells in a process map, which includes therein substantially every stage in the process map
- defining an interconnection cell includes representing the interconnection cell as corresponding to at least two interrelated interconnection cells in a process map
- defining the interconnection cell includes associating therewith derived data
- defining the interconnection cell includes associating therewith values generated by a Design-Of-Expe ⁇ ments assessment of the predetermined process juncture, to be used for initialization of a like-process
- defining the interconnection cell includes associating therewith values computed using at least one predetermined formula
- defining the interconnection cell includes validating at least one set of the at least one set of input data to the interconnection cell as respectively having a substantially significant correlation with a set of the at least one set of output data Furthermore, according to the preferred embodiment of the present invention, said validating includes calculating a correlation coefficient between a selected set of the at least one set of input data, and the at least one set of output data; for the interconnection cell Likewise, according to the preferred embodiment of the present invention, assigning at least one boundary value includes analyzing data in the respective set wherein the at least one boundary value is to be assigned
- analyzing data in the respective set includes examining the data according to at least one predetermined criterion
- examining the data according to at least one predetermined criterion includes electing a criterion selected from any one or more of the following lists: input constraints, process constraints, or output goals
- Process constraints closest recipe to most recent recipe within a specification limit, within a range of values, below an upper limit, above a lower limit, closest to a mid-range value.
- Output goals within a specification limit, within a range of values, a predetermined target value, an upper specification limit, a lower specification limit, below an upper limit, above a lower limit, closest to a mid-range value
- the method of the present invention relates to a step of - for a predetermined process juncture - defining an interconnection cell having associated therewith firstly at least one set of input data or at least one set of
- said at least one input data set includes historical empiric data obtained from a previously performed like-process
- said at least one input data set includes data currently being obtained from a substantially presently ongoing like-process
- processing includes summarizing data in each respective corresponding data record cluster
- processing includes implementing a Run-to-Run process control mode
- processing includes running a feed back closed control loop
- processing includes running a feed forward closed control loop
- running a feed forward closed control loop includes substantial optimization of multiple outputs
- processing includes transforming each summarized respective corresponding data record cluster into a sub-manifold of a multi-va ⁇ ate data manifold
- processing includes transforming each summarized respective corresponding data record cluster into a search-space vector
- transforming each summarized respective corresponding data record cluster into a search-space vector includes arranging at least one search-space vector into a vector look-up table
- processing includes A for at least one process control parameter of the at least one set of process control parameters, prescribing at least one process control recipe-element for use in the predetermined process juncture, and
- processing includes using robust optimization
- said processing includes characterizing data in substantially each respective corresponding data record cluster by using a statistical calculation
- said using a statistical calculation includes calculating a process capability ratio
- characterizing data in substantially each respective corresponding data record cluster by using a statistical calculation includes arranging the characterized data into a look-up table
- arranging the characterized data into a look-up table includes using the look-up table and therewith designating at least one process control recipe for use at the predetermined process juncture
- arranging the smoothed characterized data into a look-up table includes using the look-up table for designating at least one process control recipe for use at the predetermined process juncture
- using the look-up table includes using the look-up table for designating at least one process control recipe for use at the predetermined process juncture
- processing includes-to the predetermined process juncture associated with the interconnection cell-applying at least one of the respective corresponding data record clusters to the process occurring at that juncture
- predetermined process juncture associated with the interconnection cell-applying at least one of the respective corresponding data record clusters to the process occurring at that juncture
- N clusters is updated by using a self-correcting adaptive system
- applying at least one of the respective corresponding data record clusters includes reporting a process status, and that said reporting is initiated according to predetermined conditions
- processing data from the plurality of respective formed set combinations into respective corresponding data record clusters includes installing at least one data record cluster correspondence as a front end to a neural network wherein the neural network is used for controlling an aspect of the process at the predetermined process juncture
- the steps of the method are applied for optimizing a Chemical/Mechanical Polishing processing of silicon wafers
- the present invention also relates to a substantially equivalently defined strategic method for process control wherein said method includes the steps of using a mapped plurality of graph-directed expertise-suggested interconnection cell relationships, defining a map referenced interconnection cell therein having associated therewith firstly at least one set of input data or at least one set of process control parameters, and secondly at least one set of output data, and using the map referenced interconnection cell, designating at least one process control recipe
- defining includes, for the map referenced
- defining the map referenced interconnection cell includes validating the map referenced interconnection cell by simulating a validity-metric for an n-tuple of directed graph components of the map referenced interconnection cell
- defining the map referenced interconnection cell includes, for an n-tuple of directed graph components of the mapped interconnection cell, validating the map referenced interconnection cell by measuring if each of the at least one set of input data to the map referenced interconnection cell significantly contributes to that map referenced interconnection cell's output, wherein a predetermined convolution of these measu ⁇ ngs constitutes an acceptable validity-metric
- designating at least one process control recipe includes choosing another process control recipe whenever a particular obtained output value differs from a predetermined target value, by at least a predetermined value, thereby obtaining a new subsequent offset goal value closer to a predetermined target value
- obtaining a new offset goal value includes basing the value upon at least one output value from a previous similar process
- basing a new offset goal value includes analyzing the at least one output value from a previous similar process by running a feed back closed control loop
- defining a map referenced interconnection cell includes forming at least two search-space vectors
- the present invention also relates to an article of manufacture including a computer usable medium having computer readable program code embodied therein for performing strategic process control at a predetermined process juncture, the computer readable program code in said article of manufacture including first computer readable program code for causing a computer to define an interconnection cell having associated therewith firstly at least one set of input data or at least one set of process control parameters, and secondly at least one set of output data, tied to the first computer readable program code, second computer readable program code for causing a computer to assign at least one boundary value to at least one set of the sets associated with the defined interconnection cell, and tied to the second computer readable program code, third computer readable program code for causing a computer to form a plurality of discrete respective set combinations, using the assigned at least one boundary value
- the preferred embodiment of the article of manufacture further includes having computer readable program code embodied therein for causing a computer to arrange the respective corresponding data record clusters into a look-up table, for the interconnection cell
- the preferred embodiment of the article of manufacture is furthermore including a computer usable medium ⁇ having computer readable program code embodied therein for performing strategic process control at a predetermined process juncture, the computer readable program code in said article of manufacture including tied to the third computer readable program code, fourth computer readable program code for causing a computer to process data from the plurality of respective formed set combinations into respective corresponding data record clusters, for the interconnection cell
- the present invention also relates to a program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for performing strategic process control, said method steps including for a predetermined process juncture, defining an interconnection cell having associated therewith firstly at least one set of input data or at least one set of process control parameters, and secondly at least one set of output data, for the predetermined process juncture, assigning at least one boundary value to at least one set of the sets associated with the defined interconnection cell, for the predetermined process juncture, using the assigned at least one boundary value, forming a plurality of discrete respective set combinations, and for the predetermined process juncture, for the interconnection cell, processing data from the plurality of respective formed set combinations into respective corresponding data record clusters
- the preferred embodiment of the program storage device is further including therein a method step whereby respective corresponding data record clusters are arranged into a look-up table
- the present invention also relates to a system for performing strategic process control at a predetermined process juncture including
- a apparatus for delineating an interconnection cell said interconnection cell having associated therewith firstly at least one set of input data or at least one set of process control parameters, and secondly at least one set of output data,
- B a computer having therein software for assigning at least one boundary value to at least one set of the at least one set of input data or to at least one set of the at least one set of output data, and having attached thereto data storage apparatus for storing the assigned data sets
- C a compressor for performing multi-dimensional representing, ordering, and combining of a plurality of discrete respective set combinations from the stored assigned data sets, and
- D a processor for processing data from the plurality of discrete respective set combinations into respective corresponding data record clusters
- the processor includes attached thereto an applier for applying at least one of the respective corresponding data record clusters
- the computer includes attached therewith at least one sensor for providing an
- the computer includes attached therewith at least one actuator for providing a process control parameter setting from the respective set of process control parameters, and the provided process control parameter setting is assigned according to a predetermined discrete respective set combination
- the processor includes attached therewith at least one actuator for providing a process control parameter setting from the respective set of process control parameters, and the provided process control parameter setting is assigned according to a predetermined discrete respective set combination
- the present invention also relates to an article of manufacture including a computer usable medium having computer readable program code embodied therein for performing strategic process control at a predetermined process juncture, the computer readable program code in said article of manufacture including:
- I first computer readable program code for causing a computer to define a map referenced interconnection cell having therein a mapped plurality of graph-directed expertise-suggested interconnection cell relationships and further having associated therewith firstly at least one set of input data or at least one set of process control parameters, and secondly at least one set of output data; II. tied to the first computer readable program code, second computer readable program code for causing a computer to use
- the present invention relates to a program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for performing strategic process control, said method steps including for a predetermined process juncture, using a mapped plurality of graph-directed expertise-suggested interconnection cell relationships, defining a map referenced interconnection cell therein having associated therewith firstly at least one set of input data or at least one set of process control parameters, and secondly at least one set of output data, and for the predetermined process juncture, using the map referenced interconnection cell, designating at least one process control recipe
- Controllable Input - input at a process step whose value is determined directly by the user In the context of the present invention, controllable input is also referred to as a control parameter
- a Feed Back Closed Control Loop refers to determining values for controllable input at a given process stage that will optimize one or more characteristics of the output at that stage based on values of those output characteristics from one or more previous process runs
- the Feed Back Closed Control Loop is a form of run-to-run control
- Loop refers to determining values for controllable input at a given process stage that will optimize process output at that stage based on the values of measurable ⁇ nput(s) at that stage for the current process run.
- Forward Closed Control Loop is a form of run-to-run control
- Input -Input at a given process stage is anything that influences output at that process stage
- Input constraint - a limitation on the possible range of values for a given input
- MES Manufacturing Execution (alternatively Enterprise) System
- 5 ⁇ Module - a set of one or more tools that are configured to execute a part of a process
- Output - the object or objects produced by a process for which the process is being carried out A process divided up into stages can have output at any of its given stages
- Run - A run refers to one execution of a process with resulting output
- Process Step - a single stage in a process with measurable and/or controllable input and output
- a process step is also referred to as a tool
- Search-Space the conceptualized universe of data structures (including the broad class of data-manifolds) and their respective and collective transformations - such as is appreciated by data-base theorists and artificial-intelligence theorists
- Boundary value - a value assigned to a continuous range of possible values for a control parameter, monitored parameter, input constant, output constant, or outside influence in order to create discrete values corresponding to that continuous range
- the boundary value logically divides the range of values into constituent subsets at least one having therein a plurality of discrete values
- Boundary value range - a section of a continuous range of possible values for a control parameter, monitored parameter, input constant, output constant, or outside influence bounded by one or more boundary values
- Data array - a set of values recorded for one process run for any combination of control parameters, monitored parameters, input constants, output constants, and outside influences
- Data vector - A unique combination of boundary value ranges selected for the purposed of process control optimization with embodiments of the present invention
- the preferred embodiment of the present invention uses data vectors with boundary value ranges for input variables and constants
- a data vector is often referred to as simply a vector
- Input set combination The combination of data sets of input constants and data sets of input variables at a given interconnection cell
- Interconnection Cell - An interconnection cell is an information unit describing the non-quantitative mutual dependency between one output and one or more inputs of a process step
- Interrelationship An alleged or validated relationship between two process stages such that when a particular control parameter is set at an earlier stage in the process, a certain resulting output is received at a later stage in the process
- model predicted value is the predicted value for an output constant according to the vector look-up table
- the model predicted value for an output constant could also be understood as a vector's average value of that output constant
- Next best optimal vector - The next best optimal vector is used together with the optimal vector by the smoothing algorithm when optimizing an output constant in the Feed Forward Closed Control Loop
- the next best optimal vector must have boundary value ranges for input constants that include the values of the current run ' s input constants If the optimal vector's model predicted value is greater than the output constant target value, then the next best optimal vector will have the model predicted value is usually closest to but less than the output constant target value, and if the optimal vector's model predicted value is less than the output constant target value, then the next best optimal vector will have the model predicted value that is usually closest to but greater than the output constant target value
- the optimal vector for that output constant is usually the vector with the closest model predicted value highest Process
- a preferable vector for an output constant is usually the one vector from amongst the common vectors with the highest Process Capability Ratio (C pk ) model predicted value closest to the target value for that output constant Due to output constraints, a preferable vector is not necessarily an optimal vector, because one output constant s optimal vector may not be a common vector shared by the other one or more output constants
- a process juncture is any node or edge in a graph-theoretic representation of a flow of information, goods, or services such as the knowledge tree in the parent application or a process map in the present application
- Recipe - A recipe is a set of values for input constants and/or variables at a given process step for achieving an optimal value or values for one or more output constants at that process step
- Smoothing algorithm - in the context of optimizing an output constant, smoothing refers to the procedure for finding a process recipe based on the optimal vector and the next best optimal vector
- the smoothing algorithm uses either piece-wise linearization, or linear regression, or the like to determine recipe values
- el Vector look-up table stores data vectors
- a vector look-up table is often referred to as simply a look-up table
- Weighting algorithm when optimizing multiple output constants and more than one common vector is found, a weighting algorithm is applied to each output constant's preferable vector whereby the vectors are weighted (i e prioritized) and the weighting algorithm uses these weightings to provide a recipe for optimizing the multiple output constants
- the weighting algorithm is applied to each output constant's optimal vector whereby the vectors are weighted (i e prioritized) and the weighting algorithm uses these weightings to provide a recipe for optimizing the multiple output constants
- APC - Advanced Process Control (a variation or alternative to SPC)
- IPC - Intelligent Process Control (a form of APC)
- control parameter controllable input
- model predicted value output constant vector's average value
- step is generally interchangeable Use of two or more of these terms in the context of any example may be for the purpose of expressing parts of a larger unit
- a stage may be composed of constituent steps
- a process map may be made of graph directed stages, and each stage may correspond to an interconnection cell dealing with data related to a juncture in an actual manufacturing operation Substantially, there are a number of related representations that borrow from the generally interchangeable nomenclature.
- the present invention comes to "teach” a strategic method for process control which, for any juncture in a representation of a process (according to diverse topological definitions for the notion "juncture”), considers disparate quality "guesses” (recommendations) about what factors to consider when trying to optimize the juncture, and likewise unifies disparate quality definitions about what constitutes an optimization
- conceptually useful intermediary representations are developed Probably, the most interesting of these representations is a lookup table, organized according to discrete combinations of "cases” that can occur at the juncture, which either presents the most probable best configuration (recipe) of process control "settings" to use at this time at the juncture or presents two such cases from which a best configuration may be interpolated
- the invention presents a strategic method for process control for use at a given process juncture, and includes defining an interconnection cell This interconnection cell has on one hand associated with it one or more sets
- this interconnection cell entails delineating and designating a "block" (arbitrary unit) consisting of data associated with a given process at the given process juncture (sub-step, interconnection cell, group of cells, group of groups of cells groups of groups of cells, or any higher level MES), and stratifying this data into a number of sub-groups These subgroups may represent a particular item, batch, or combination thereof in a process This collection of subgroups allows data analysis to be performed according to respective sub-group-relevant metrics
- Data collected for a given item or batch in a process is called a data vector
- Data vectors are sorted and grouped into data vector clusters according to similar input set combinations (The sorting process includes storing the data vectors that represent combmatorials of input and output process control parameters )
- Data vector clusters may be stored in tabular form
- the table in which the data vectors are stored is called a vector look-up table
- the vector chosen, used for process control includes the recipe for the process, because the values of the control parameters in that vector are used as the values for the control parameters for a current process run Processing includes, for a given process control parameter, prescribing at least one process control recipe-element, that is, some portion of the current recipe, for use in a predetermined process juncture Processing may further include summarizing data in each respective corresponding data set cluster Selecting
- a best available vector for use with the process control recipe preferably includes running a feed forward closed control loop
- a feed forward closed control loop involves the steps of process control (described below) of analyzing data and vector selection In a feed forward closed control loop, the data evaluation
- Analyzing data in any given respective data set includes examining or evaluating the data relevant to at least one predetermined criterion selected a predetermined target value, an upper specification limit, a lower specification limit, within a specification limit, within a range of values, below an upper limit above a lower limit, closest to a predetermined target value, closest to a previously used value, closest to a mid-range value, or closest to most recent recipe
- predetermined criterion selected from the above list include
- a value may be selected because it is closest to a value of some particular interest. For example, an expert suggested value, or a value used as an "offset" or over-correction technique. This method is used to correct a previously obtained output value that was, for example higher than desired, by selecting a new value that is theoretically lower than desired, on the presumption that the result will fall in the desired middle range.
- a value may be excluded because of some restriction placed on an item, run, or other collection of data in the data set.
- values may be selected to reflect a growing refining of "discretization" levels in choosing values. For example, previous runs may have used a High/Low demarcation type sorting process, whereas present considerations may include at least three groupings. In such cases, the groups in the "middle" ranges will be referred to as intermediate values. Previous and subsequent intermediate values may be classified, that is discretized, by a predetermined fractional value interval.
- derived data are used Derived data are obtained through a number of methods, and can be values chosen for Design of Experiments, values computed by a predetermined formula, values formulated from information that is expert suggested, or values formulated by synthesizing methods
- derived data are theoretical, and substantially all steps relevant to gathering and analyzing of data are skipped Instead, a simulated function or algorithm is synthesized and used as // " derived data contributing to the formation of this simulated function had been obtained
- the system uses the simulated algorithm — or the results of functions fabricated by simulation methods — for performing the process control method
- a boundary value can be a demarcation point That is, a cut-off point for assigning data values to a particular discrete group category
- a demarcation point That is, a cut-off point for assigning data values to a particular discrete group category
- the boundary value constitutes two respective discrete categories
- the system-using the assigned at least one boundary value-forms a number of set combinations are stored in such a manner so as to be discrete separate representations of differing associated input data groups
- the sets can then be evaluated in relation to the boundary value
- Analysis may be done strictly from outputs for the purpose of assigning boundary values for a given specific input set
- the invention is also capable of doing analysis'st ⁇ ctly from inputs and/or control parameters to the outputs
- the preferred embodiment algorithm initiates validating whether there is a significant correlation between input sets of data and output sets of data at a given stage in a process
- a validated significant correlation is a precondition to properly carrying out process control with the present invention That is, validating a supposed correlation between two steps in the manufacturing process must first be done, so that the subsequently formulated algorithmic function can better perform improved yield or improved efficiency Automated Process Control
- the validity of a correlation - between at least one input data set of an interconnection cell and at least one output set of this interconnection cell - is determined by calculating a correlation coefficient between the minimum two respective input and output sets, or a larger group of respective input and
- IS output sets Calculating this correlation coefficient may include characterizing the data by calculating a process capability ratio
- the actual process control performance may include reporting a process status, and this reporting may be initiated according to a variety of predetermined conditions or means
- a mapped plurality of graph-directed expertise-suggested interconnection cell relationships is used to define the interconnection cell Using the map referenced interconnection cell, a process control recipe can then be designated, as heretofore described
- the validation portion (validity correlation performance) of the process control procedure is carried out upon n-tuples of directed graph components of the interconnection cell Subsequent refining of the definition of the interconnection cell is done by "measuring" to see whether a particular set of input data significantly contributes to that map referenced interconnection cell's output A predetermined convolution of these measunngs constitutes an acceptable validity-metric correlation
- choosing a different process control recipe sometimes becomes necessary, for example, whenever a particular obtained output value differs from a predetermined
- 3b target value by at least a certain predetermined value This, in turn facilitates the obtaining a new subsequent offset goal value closer to the predetermined target value
- the obtaining of a new subsequent offset goal value may be based upon an output value from a previous like-manufacturing process, or, in addition, by analyzing this output value by running a feed back closed control loop
- optimal correction of offset goal values, at a given stage in a process is achieved through data analysis of the values of output constants at that stage as obtained and/or compared to values obtained from at least one previous performance of the process
- An additional embodiment of the invention includes processing data by transforming a summarized respective corresponding data record cluster into a sub-manifold of a multi-vanate data manifold
- a sub-manifold is defined as an n-tuple of data points, organized into a multi-dimensional surface This surface may be described by functionally orthogonal variables, and the data manipulated by ordinary mathematical treatment
- This treatment may include, but is not limited to, algebraic, calculus, differential equations, n-dimensional polynomials, regression analysis, combinatorial techniques, and/or statistical means
- a related embodiment of the invention includes a method for representing a multi-dimensional surface by displaying the organized data elements as discrete volumes of an n-dimensional polynomial solid as this solid is intersected by orthogonals of a finite number "n", of input, output, constant, variable or some combination thereof, of process control parameters, in n-dimensional space
- a further embodiment of the invention includes processing data by transforming a summarized respective corresponding data record cluster into a search-space vector
- a search-space vector in this context indicates that the invention will transform the summarized respective corresponding data record clusters into loci in a multi-dimensional vector search-space
- the invention selects the desired vector to move along to a new cluster based upon the properties of the vector For example, when searching for a value stored in a cluster that represents the value 'closest to the most recent used recipe" the invention might focus on the vector having the smallest empirical magnitude
- the invention includes a method for sorting data which includes organizing a search-space organization, the method steps including a search-space for a first grouping or set of correlated empirical data-sets, by mapping a second grouping or set of interrelated specific locations in the search-space of graph-directed expertise-suggested data-set relationships onto the first grouping or set of correlated empirical data-sets, and wherein data-set resolution of particulars in the first grouping or set is greater than or equal to that of particulars in the second grouping or set, and validating the search-space so organized from a vantage point of a presumption of validity for the first plurality of data-sets, by i simulating a valid variable input parameter for a particular combinatorial of directed graph components in the mapped second plurality, or n measuring if each input to a locus of the particular combinatorial significantly contributes to that location's output, wherein a predetermined convolution of these measu ⁇ ngs constitutes a valid
- mapping includes defining substantially every locus-i e location-in the second plurality to have either 1 ) at least one
- the method wherein organizing includes mapping a second set of interrelated specific locations in the search-space of graph-directed expertise-suggested data-set relationships onto the first grouping or set of correlated empirical data-sets, and wherein data-set resolution of particulars in the first grouping or set is greater than or equal to that of particulars in the second grouping or set.
- validating includes, for at least one weighted directed graph component from those in the directed graph of second plurality components, improving the weighted component using an input or output, proportional, empirical parameter setting, directed graph component weighting
- validating includes generating a conditional statistical process-control distribution function and convoluting the conditional distribution function with the present weightings.
- the invention includes a method for sorting data which includes organizing a search-space organization, the method steps including: mapping a second plurality of interrelated nodes of graph-directed expertise-suggested data-set relationships onto the first plurality of transformed empirical data-sets, at least until there is a predetermined measure of inclusion by the second plurality of nodes and relationships of particulars in the first plurality data-sets, wherein the data-set resolution of particulars in the first plurality is greater than or equal to that of particulars in the second plurality; and validating the search-space from a vantage of a presumption of validity for the first plurality of data-sets, by simulating a validity-metric for an n-tuple of directed graph components in the mapped second plurality, or by measuring if each input to a node of the n-tuple significantly contributes to that node's output, wherein a predetermined convolution of these measu ⁇ ngs constitutes a validity-metric for the
- the invention includes a system for performing strategic process control at a predetermined process juncture
- This system includes apparatus for delineating an interconnection cell
- the interconnection cell so delineated has associated with it at least one set of input data or at least one set of process control parameters, and at least one set of output data
- This system further includes a computer which has therein software for assigning at least one boundary value to at least one set of the at least one set of input data or to at least one set of the at least one set of output data
- the computer further has attached thereto data storage apparatus for storing the assigned data sets
- the system further includes a compressor for performing multi-dimensional representing, ordering, and combining of a plurality of discrete respective set combinations from the stored assigned data sets, and a processor for processing data from the plurality of discrete respective set combinations into respective corresponding data record clusters
- the processor applies at least one of the respective corresponding data record clusters
- the computer includes attached therewith at least one sensor for providing an input or output datum to the respective set of input or output data
- the computer further includes attached therewith at least one actuator for providing a process control parameter setting from the respective set of process control parameters
- the provided process control parameter setting is assigned according to a predetermined discrete respective set combination
- the invention includes a system for process control including apparatus for delineating an interconnection cell, the interconnection cell having at least one input set of data or at least one set of process control parameters, and at least one output set of data, a validator for establishing that at least one input set of data respectively as having a substantially significant correlation with an output set of the at least one output sets, software for assigning at least one boundary value to at least one validated set of the at least one input sets or to at least one set of the at least one output sets, data storage apparatus for storing the assigned data sets, and a sorter for performing multi-dimensional ordenngs of stored data sets, and wherein the ordenngs are performed either concurrently, sequentially, heunstically, recursively, in parallel, asynchronously, synchronously, and/or synchronously with an accompanying time delay
- processing data from the respective formed set combinations into respective corresponding data record clusters may include installing at least one data
- V record cluster correspondence as a front end to a neural network
- the neural network is used for controlling an aspect of the process at the predetermined process juncture
- Figure 1 illustrates a schematic diagram of a portion of a simple process map showing substantially sequential stages
- Figure 2 illustrates a schematic diagram of a process stage, i e any single stage in a process
- Figure 2a illustrates a data set table for a given stage in a process
- Figure 3 illustrates a schematic diagram of the process map from Figure 1 with control parameters and monitored parameters added to each stage in the process
- Figure 4 illustrates a schematic diagram of interrelationships and outside influences for stages in a process
- Figure 4a presents two data set tables and for two types of outside influences
- Figure 5 illustrates a schematic diagram of the process map from Figure 3 with the interrelationship and outside influences map of Figure 4
- Figure 6 illustrates a schematic diagram of a process stage "Stage X" with all the various process control relationships that "Stage X" participates in,
- Figure 7 illustrates a schematic diagram of "Stage X" with process control relationships that are relevant to applying process control only at “Stage X”
- Figure 8 illustrates a schematic diagram of a process control algorithm standard frame of reference for Stage "X" in a process
- Figure 9 illustrates the relative importance according to classical thinking, per se, of relationships relevant to applying process control at Stage X
- Figure 10 illustrates a simple schematic diagram of the various process control input and output relationships of Figures 8 and 9 in terms of constants and variables
- Figure 10a illustrates the assignment of boundary values to three inputs represented by diagrams 10a 1 , 10a 2, and 10a 3,
- Figure 10b illustrates a table of data arrays for a given stage in a process
- Figure 10c illustrates a sample vector in a vector look-up table
- Figure 11 illustrates a vector look-up table for an output constant d at a given process stage
- Figure 12 illustrates a vector look-Up table for output constants Oi and O 2 at a given process stage
- Figure 13 illustrates a schematic diagram in the Chemical/Mechanical Polishing process of silicon wafers at "Tool 1 "
- Figure 14 illustrates a vector look-up table for output constant O ⁇ at a given process stage, an Actual Values column which is not part of the vector look-up table, and a Residual Values column which is not part of the vector look-up table
- Figure 15 illustrates a schematic diagram of a process module of two tools, "Tool 1 " and "Tool 2", and
- Figure 16 illustrates a schematic diagram of a module of four tools in a non-sequential configuration
- Figurel illustrates a schematic diagram of a portion 100 of a simple process map showing substantially sequential stages, "Stage 1 " 102, “Stage 2” 104, “Stage 3a” 107, “Stage 3b” 108 and “Stage 4" 111 of a process, and the inputs and outputs that connect them - starting with the initial measured input to the process 101 and sequentially measured output 103 from "Stage 1 " which is measured input to "Stage 2", measured output 105 from “Stage 2” which is measured input to “Stage 3a”, measured output 106 from “Stage 2" which is measured input to “Stage 3b”, measured output from "Stage 3a” 109 which is measured input to "Stage 4", measured output from “Stage 3b” 110 which is measured input to “Stage 4", and measured output 112 from “Stage 4"
- FIG 1 depicted is an example simple process map
- the boxes in the diagram represent sequential stages in a portion of a typical process, and the arrows indicate the direction in which
- Stages 3a and 3b represent parallel stages, which can run simultaneously or in an alternating manner
- a process would utilize such stages when an operation carried out at Stage 3 is slower in relation to actions carried out at other stages in the process
- Stage 3 When a stage in a process is slower in relation to the rest of the process, it is advantageous to break down the slower stage into parallel stages as seen in Figure 1 , to speed up process time at the that stage
- Another example of when parallel stages are used would be for one process that produces two types of output Such a process will elect which of the different operations will be carried out at the 'parallel stage"
- FIG 2 illustrates a schematic diagram of a process stage 200, i e any single stage in a process (such as those shown in Figure 1 ) represented here as “Stage X" 203
- Stage X-1 a process stage
- Stage X+1 a process stage in a process
- control parameters measured by actuators at "Stage X" 202 and monitored parameters from sensors at "Stage X” 204
- FIG. 2 depicted is a typical stage of the process represented in Figure 1 , referred to in Figure 2 as Stage X
- Stage X To the left of Stage X are shown control parameters for actuators in the process conducted in Stage X; to the right of Stage X are shown sensors for monitoring parameters of the input to or output from Stage X, or the process conducted during Stage X Actuators perform actions in the context of a specific process step Sensors perform measurements relevant to the process
- the data coming from sensors and control parameter data sent to actuators constitute fundamental dynamic aspects that are required for the purposes of process control as Figure 2a illustrates a data set table 300 for a given stage in a process
- "Arrow A" 306 represents a data set for a process output O 2 at the given stage
- Arrow B" 307 represents a data set for a control parameter CP C at the
- control parameters, monitored parameters, input, and output at any given stage in a process are data sets, as illustrated in Figure 2a
- the control parameters, monitored parameters, input, and output at any given stage represent four families of data sets
- the input family has a data sets (where a is any integer greater than 0)
- the output family has b data sets (where b is any integer greater than 1 )
- the control parameters family has c data sets (where c is any integer greater than 1 )
- the monitored parameters family has data sets (where d is any whole number greater than 1)
- a data set for the input or output families consists of quantities or measurements of that given input or output, for a given number of items or batches produced in a process
- arrow A in Figure 2a represents a data set for O 2 , where O 2 is the length of an item that is output from the given process stage, and this data is recorded for 50 times that the item is produced on a given day, where e is 50
- a typical data set for the control parameters family consists of data for a given parameter setting for an operation occurring at the given process stage, for a given number of items or batches produced in a process
- arrow B in Figure 2a represents a data set for CP C where CP C is the pressure setting of an item produced at the given process stage, and this data is recorded for 50 times that the item is produced on a given day, where e is 50
- a data set for the monitored parameters family consists of data for a given parameter monitored at the given process stage, for a given number of items or batches produced in a process
- FIG. 3 (generally referenced as) 400 illustrates a schematic diagram of the process map from Figure 1 and now added to each stage in the process are the controh parameters and monitored parameters that were depicted in Stage X of Figure 2 "Stage 1 " 402 has control parameters measured by actuators 401 , monitored parameters from sensors 403, initial measured input to the process 416, and measured output 417 which is measured input to "Stage 2" 405, "Stage 2" 405 has control parameters measured by actuators 404, monitored parameters from sensors 406, and measured output 418 which is measured input to "Stage 3a” 408, “Stage 3a” 408 has control parameters measured by actuators 407, monitored parameters from sensors 409, and measured output 420 which is measured input to "Stage 4" 414, “Stage 3b” 411 has control parameters measured by actuators 410, monitored parameters from sensors 412, measured output 421 which is measured input to "Stage 4", and “Stage 4" 414 has control parameters measured by actuators 413, and monitored parameters from sensors 415,
- FIG. 4 illustrates a schematic diagram of interrelationships and outside influences for stages in a process 500
- "Stage 1 " 501 has an interrelationship 506 with “Stage 3a” 503 and an interrelationship 507 with “Stage 3b” 504,
- “Stage 2" 502 has an interrelationship 508 with “Stage 3b” 504 and an interrelationship 509 with 509 with “Stage 4 " 505
- FIG 4 depicted is an interrelationship and outside influences map for the stages in the process map of Figure 1
- An interrelationship between two stages exists when there is alleged or validated information that when a particular control parameter or parameters are set at an earlier Stage X, a certain resulting output is received at a later Stage X+n (where .. is any integer greater than 0)
- interrelationships exist between Stage 1 and Stages 3a and 3b, between Stage 2 and Stage 3b, and between Stage 2 and Stage 4
- An outside influence exists when there is alleged or validated information that some factor outside of a process influences output at a given stage in the process.
- Figure 4a (generally referenced as) 600 presents two data set tables 601 and 604 for two types of outside influences
- the first data set represented by "arrow A" 607, consists of data for any type of metric or discrete parameter
- the second data set represented by "arrow B" 608, consists of data for any type of metric or discrete parameter 606 monitored according to another metric scale 605
- outside influences also have data sets
- Data sets for outside influences can be one of two types
- the first type is data for any type of metric or discrete parameter monitored in a time-dependent manner (arrow A), when the metric or discrete parameter is either suggested to affect or confirmed to affect output at a given stage
- the second type is data for any type of metric or discrete parameter monitored according to another metric scale (arrow B), when the first metric or discrete parameter is either suggested to affect or confirmed to affect output at a given stage
- FIG. 700 illustrates a schematic diagram of the process map from Figure 3 with the interrelationship and outside influences map of Figure 4 "Stage 1 " 702 has initial measured input to the process 721 , control parameters measured by actuators 701 , monitored parameters from sensors 703, an interrelationship 717 with “Stage 3a” 708, and an interrelationship 718 with “Stage 3b” 712, and measured output 722 which is measured input to "Stage 2" 705, “Stage 2" 705 which has control parameters measured by actuators at “Stage 2” 704, and monitored parameters from sensors at "Stage 2" 706, an interrelationship 719 with "Stage 3b” 712, an interrelationship 720 with "Stage 4" 715, measured output 723 which is measured input to "Stage 3a” 708, and measured output 724 which is measured input to "Stage 3b” 712 , "Stage 3a” 708 which has control parameters measured by actuators at "Stage 3a” 707, monitored parameters
- Figure 6 (generally referenced as) 800 illustrates a schematic diagram of a process stage "Stage X" 804 with all the various process control relationships that "Stage X" participates in These relationships include measured input from “Stage X-1" 803, measured output to "Stage X+1 " 807, an outside influence 801 , control parameters measured by actuators at "Stage X” 805, monitored parameters from sensors at "Stage X” 806, an interrelationship with a process stage before "X” 802, and an interrelationship with a process stage after "X” 808
- Stage X depicted is one stage in a given process, Stage X, with all of the various relevant process relationships that have been depicted in Figures 1-5 Stages prior to Stage X are hereinafter referred to as Stages X-1 , X-2, , X-n, etc Stages following Stage X are hereinafter referred to as Stages X+1 , X+2, , X+n etc Stages which may be substantially simultaneous to Stage X can be arbitrarily assigned the nomenclature X-1 or X+1 Figure 6 illustrates various process control relationships in which Stage X participates
- FIG. 900 illustrates a schematic diagram of "Stage X" 904 with process control relationships that are relevant to applying process control only at "Stage X” These relationships include measured input from “Stage X-1 " 903, measured output to "Stage X+1" 907, an outside influence 901 , control parameters measured by actuators at "Stage X” 905, monitored parameters from sensors at "Stage X” 906, an interrelationship with a process stage before "X” 902, and an interrelationship with a process stage after "X” 908
- Figure 8 (generally referenced as) 1000 illustrates a schematic diagram of a process control algorithm standard frame of reference for Stage "X" in a process 1000
- the relevant factors herein are control parameter(s) 1002, input from 'Stage X-1" 1003, ⁇ nterrelat ⁇ onsh ⁇ p(s) with stage(s) before “X” 1004, ⁇ nterrelat ⁇ onsh ⁇ p(s) with stage(s) after "X” 1005, outside ⁇ nfluence(s) 1006, with the resultant output to "Stage X+1 " 1007, and monitored parameters from sensors 1008
- Figure 7 depicts Stage X with relationships relevant to applying process control only at Stage X
- Figure 8 takes the relationships depicted in Figure
- the method of the present invention relates to process control for a juncture in a process wherein there are no a priori notions regarding predominant influences to the process at that juncture
- process control recipes can be found, calculated or chosen using decision criteria that could not be directly articulated using prior art methods
- present invention leads to the development of a well-defined search-space or ensemble of process control vectors whereby multiple goal optimizations may be realized
- Figure 9 (generally referenced as) 2000 illustrates the relative importance according to classical thinking, per se, of relationships relevant to applying process control at Stage X 2002
- These relationships include control parameter(s) 2011 which are "internal” 2014, input from “Stage X-1 " 2010 which is “near” 2013, ⁇ nterrelat ⁇ onsh ⁇ p(s) with stage(s) before “X” 2007, ⁇ nterrelat ⁇ onsh ⁇ p(s) with stage(s) after "X” 2005, and outside ⁇ nfluence(s) 2001 which are all “far” 2012, monitored parameters 2004 which are "internal” 2015, and output to "Stage X+1 " 2008 which is "near” 2016
- Polygons "A” 2009, "B” 2003, and “C” 2006” depict the standard types of relationships that are examined when applying standard process control at Stage X
- the polygons "A” 2009, “B” 2003, “C” 2006 show types of relationships between Input from "Stage X-1 ", Control Parameter(s
- Figure 9 illustrates the relative importance according to classical thinking, per se, of relationships relevant to applying process control at Stage
- Relative importance is classically determined by the proximity of a relationship to Stage X That is, the closer the relationship, the greater
- Polygons A, B, and C in Figure 9 depict the standard types of relationships that are examined when applying standard process control at Stage X That is, standard process control at Stage X looks for a correlation between the input from Stage X-1 and control parameters at Stage X (polygon A), a correlation between control parameters at Stage X and the monitored parameters at Stage X (polygon B), and a correlation between monitored parameters at Stage X and the output to Stage X+1 (polygon C).
- Constants relate to measurements that reflect physical aspects measured in a process; such as weight of an object coming into a process juncture, height of an object coming out of a process juncture, etc.
- constants are constraints that are outside of the scope of control of the process control engineer. Therefore, even though these aspects are called constants, on an item-to-item basis they may contribute to describing a broad distribution of values. For example, each egg that arrives at an egg-sorting machine has a specific size and weight that is constant for that egg. Nevertheless, one can describe a distribution of weights and sizes for eggs arriving at the sorter.
- Variables relate to aspects of the process at the process
- S3 juncture that may be elected by command of a process control engineer, or by his proxy in the form of process control software (such as that of the present invention) setting process control parameters at the process juncture
- Figure 10 (generally referenced as) 3000 illustrates a simple schematic diagram of the various process control input and output relationships of Figures 8 and 9 in terms of constants and variables, which is the way an embodiment of the present invention addresses process control at "Stage X" 3001 An Interconnection Cell (according to an embodiment of the present invention) 3000 at process "Stage X" 3001 , and its constant/variable relationships.
- These relationships include input constant(s) 3002, input variables 3004, output constants 3005, and monitored parameters 3003, and by calculating a correlation coefficient between it and an Ouput Constant(s) 3005 As well, ideally, there should be no discrepancy between Input Var ⁇ able(s) i.e. Control Parameters 3004 and their output values i e. Monitored Parameter(s) 3003
- Figure 10 displays the various process control input and output relationships of Figures 8 and 9 in terms of constants and variables, which is the way an embodiment of the present invention addresses process control at Stage X
- the input constants in Figure 10 consist of interrelationships that Stage X has with other stages (before or after Stage X), outside influences, and input from Stage X-1 .
- Input variables consist of control parameters at Stage X Constants and variables can further be understood in terms of data sets. That is, each constant or variable is one of the types of data sets described in Figures 2a and 4a.
- the process stage and constant/variable relationships depicted in Figure 10 are referred to as an interconnection cell
- the interconnection cell represents a single process stage, l() hereinafter a tool.
- An interconnection cell can also represent two (or more) contiguous stages in a process, hereinafter a module.
- an interconnection cell can represent a plurality of discontiguous stages, hereinafter a virtual module, or a plurality of contiguous or discontiguous modules.
- an algorithm is used to determine validity of input constants by calculating a correlation coefficient between an input constant with an output constant.
- This algorithm may be any well-known and accepted algorithm for calculating a correlation coefficient between two data sets, or any algorithm that produces a
- an algorithm is used to determine correlation coefficients for input variables (i e control parameters at Stage X) with monitored parameters at Stage X
- the correlation coefficient should have a value of 1 0, meaning that there is no discrepancy between control parameters and their monitored output values
- a deteriorating correlation coefficient for an input variable with its corresponding monitored parameter means that intended values for control parameters are not properly received or implemented at Stage X and that serious correction is needed
- the many embodiments of the present invention can be used for improving the yield of Stage X according to relationships between input variables and monitored parameters, the immediately following discussion will deal with the issue of process control for Stage X without addressing the issues of discrepancies between input variables and monitored parameters
- the more convoluted embodiment first considers assigning at least one boundary value to at least one dividing data for data set of output constant data set and thereby forming at least two discrete sub-sets into at least two discrete sub-sets, and then discovering how to assign boundary values to the input set combination at least one input data set by analyzing portions of the input set(s) one or more data sets in the input set combination that contributed to each of the discrete sub-sets or to more than one of the discrete subsets. Once the contributing portions of the input data sets have been discovered, then the more simple straightforward methods, for assignment of boundary values to input constants and variables, may be applied A simple example should suffice to disclose this convolution
- a data set of an output constant shows a clear bimodal distribution of measured articles being manufactured at that juncture Accordingly, a boundary value is assigned to the minima between the two apparent modes of the distribution
- a data set for an input constant associated with this same juncture shows a relatively uniform "flat" distribution of variation When the two modes of the output
- boundary values are assigned to 1 ) input constants only, 2) input constants and monitored parameters together, 3) input constants, input variables, and monitored parameters together 4) input variables only, 5) monitored parameters only, and 6) input variables and monitored parameters together
- boundary values are assigned to 1 ) output constants and input variables, 2) output constants and monitored parameters, and 3) output constants input variables, and monitored parameters
- monitored values for some purposes are considered a preliminary output value, for other purposes it is a supplement to input values. However, most often monitored values are used as a corrective feedback to maintain desired input variable values
- Boundary values can be determined and assigned according to various criteria More specifically, the selection of boundary values may significantly affect the quality of results achieved by using the method of the present invention In some circumstances, selection of a boundary value is done subjectively by a process control engineer according to his judgment and
- boundary values are selected according to specifications inherent to the actual goals of the process More often, boundary values are set according to measurable characteristics of the population of values in a given data set
- Fig 10a (generally referenced as) 4000 illustrates the assignment of boundary values to three inputs represented by diagrams 10a 1 (generally referenced as) 4001 , 10a 2 (generally referenced as) 4009, and 10a 3 (generally referenced as) 4014
- Diagram 10a 2 (generally referenced as) 4009 in Figure 10a (generally referenced as) 4000 illustrates the assignment of one boundary value x 2 4011 to a population of data measurements for an input, where the population of data measurements divides according to a bimodal distribution curve 4010
- a 2 4012 represents the lower boundary value range for this input and B 2 4013 represents the upper boundary value range for this input
- a simple example of an input constant with one assigned boundary value is an egg-sorting machine that sort eggs according to egg diameter
- a boundary value of 2 50 cm is set as the minimum diameter for eggs to be cleaned and boxed for the consumer market
- An egg with a diameter of less than 2.50 cm will be sent to the frozen egg line to be frozen and used for powdered eggs
- diagram 10a.2 of Figure 10a The population of data measurements from some process is shown in the figure This population substantially divides according to an obvious bimodal distribution
- Line x 2 indicates the minimum value between two modes
- This minimum value is a boundary value for the input constant
- a 2 represents the range of input values less than the boundary value represented by line x 2
- a 2 The range of input values represented by A 2 is referred to as a boundary value range
- B 2 represents the boundary value range of input values greater than or equal to the boundary value represented by line x 2
- Diagram 10a 1 (generally referenced as) 4001 in Figure 10a (generally referenced as) 4000 illustrates the assignment of two boundary values Xi 4003 and yi 4004 to a population of data measurements for an input, where the population of data measurements divides according to normal distribution curve 4002 The average of this normal distribution is represented by ⁇ 4005 A T 4006 represents the lower boundary value range for this input B ⁇ 4007 represents the in-specification boundary value range for this input, and Ci 4008 represents the upper boundary value range for this input
- An example of an input variable with two boundary values could be the percentage of salinity in sardines Consumer engineers determine that a range of 7%-9% salinity in sardines is an acceptable range for consumer tastes Thus, 7% and 9% are the assigned boundary values Sardines produced with a salinity percentage that falls within that range are considered acceptable, and percentages below or above that range are respectively unacceptable
- diagram 10a 1 of Figure 10a The population of data measurements from some process is shown in the figure This population substantially divides according to an obvious normal distribution
- Line Xi represents a lower boundary value of x - 2 ⁇ and line y ⁇ represents an upper boundary value of x + 2 ⁇
- Ai represents the boundary value range of input values less than x - 2 ⁇
- Bi represents the boundary value range of input values between v - 2a and x + 2 ⁇ inclusively
- Ci represents the boundary value range of input values greater than x + 2 ⁇ Input values within
- Diagram 10a 3 (generally referenced as) 4014 in Figure 10a (generally referenced as) 4000 illustrates the assignment of three boundary values x 3 4016, y 3 4017, and z 3 4018 to a population of data measurements for an input, where the population of data measurements divides according to a decaying distribution curve 4015
- a 3 4019 represents the lowest boundary value range for this input
- B 3 4020 represents the next lowest boundary value range for this input
- C 3 4021 represents the second highest boundary value range for this input
- D 3 4022 represents the highest boundary value range for this input
- Diagram 10a 3 in Figure 10a depicts an input constant or variable with three boundary values
- the population of data measurements from some process is shown in the figure This population substantially divides according to an obvious decaying distribution
- the boundary values have been determined according to 25% of the total population in the distribution (x 3 ), 50% of the total population in the distribution (y 3 ), and 75% of the total population in the distribution (z 3 )
- a 3 represents the boundary value range of the lowest 250 measurements below a boundary value x 3
- B 3 represents the boundary value range of the next 250 measurements between boundary values x 3 and y 3
- C 3 represents the boundary value range of the next 250 measurements between boundary values y 3 and z 3
- C 3 represents the boundary value range of the 250 highest measurements above the boundary value z 3
- the boundary values in diagram 10a 3 have been determined according to 25% of the total of the possible domains of measurements with equidistant segments in the distribution (x 3 ), 50% of the total of the possible domain
- the measurement scale is divided into the following boundary value ranges A 3 representing the range from 0-25%, B 3 representing the range from 25-50%, C 3 representing the range from 50-75%, and D 3 representing
- boundary values and boundary value ranges are used in the context of the present invention as a means to create discrete values for data with values that fall within a continuous range
- certain types of input constants and variables by their inherent
- parallel tools in a given process are discrete values and can be considered as input
- process input flows into any one of the three tools and the same types of input constants and variables exist at each tool
- process control it has
- An embodiment of the present invention uses the boundary value ranges assigned to input constants and variables to form data vectors for a given stage in a process
- Each input constant or variable is a component entry of the vector
- the following 24 data vectors exist for the output produced by the inputs depicted in Figure 10a ⁇ (A- , A 2 A 3 ), (Ai A 2 B 3 ), (A 1 A 2 C 3 ), (A 1 A 2 D 3 ), (A 1 B 2 A 3 ), (A, B 2 B 3 ), (A, B 2 C 3 ), (A, B 2 D 3 ), (B, A 2 A 3 ), (B, A 2 B 3 ), (B, A 2 C 3 ), (B A 2 D 3 ), (B, B 2 A 3 ), (B 1 B 2 B 3 ), (B !
- 10a 1 represents an input constant
- 10a 2 and 10a 3 represent input variables at a given stage in a process
- x 2 10 00 mm
- a 2 is the boundary value range for values less than or equal to 10 00 mm
- B 2 is the boundary value range for
- Figure 10b illustrates a Data Arrays table of data arrays 5000 for a given stage in a process
- the table is composed of a column for the number of the process run 5001 , columns for process input 5002, and a column for a given process output constant 5006
- the inputs at this process stage are input constant 10a 1 5003, input variable 10a 2 5004, and input variable 5005 Values for these inputs corresponding to the data vector (Bi A 2 D 3 ) are received at the second process run 5007, the e' h process run 5008, the e+ 1 th process run, and the f" 1 process run
- the value for the given output constant for the second process run is O 2 5011
- the value for the given output constant for the e"' process run is O e 5012
- the value for the given output constant for the e+ 1 lh process run is O e+ ⁇ 5013
- the value for the given output constant for the f h process run is O f 5014, also ith In
- Figure 10c (generally referenced as) 6000 illustrates a sample vector in a vector look-up table
- the table is composed of columns for the data vector 6001 and columns for the given output constant data 6002
- the entries of the vector for the sample vector depicted in this table are input constant 10a 1 6003, input variable 10a 2 6004, and input variable 10a 3 6005
- the types of output constant data recorded in this vector look-up table are Average 6006, Standard Deviation 6007, and Population 6008
- the sample vector is vector
- the data arrays are sorted according to the data vectors they correspond to, and various meaningful statistical calculations are performed on the output data
- data arrays corresponding to the vector (B ⁇ A 2 D 3 ) were received for process runs 2, e e and f
- Figure 10c the output data for these four process runs is taken and the average and standard deviation of these four output values is calculated
- the average value O , the standard deviation ⁇ (O), and the population number 4 are then entered in the vector look-up table in Figure 10c by vector (Bi A 2 D 3 )
- This output data is used by embodiments of the present invention for optimization of the given output constant
- other types of meaningful statistical calculations are performed on output data by embodiments of the present invention, such as determining the output constant's Process Capability Ratio (C pk ), and the results of these calculations are used for process control optimization of that output
- C pk Process Capability Ratio
- PIQ The conventions of assigning boundary values to input data and sorting input data into data vectors enable detection of problematic input combinations and detection of input combinations that were assumed to yield output that is out of process specification standards and actually yield output that is within process specification standards
- embodiments of the present invention provide appropriate system responses
- One of these responses is a self-adjusting feature which automatically adjusts process input that is out of process specification standards to within specification standards
- Other system responses include the sending of automated reports to the process engineer, or in more serious cases the sounding of an alarm or even cessation of process execution altogether
- Data that is categorized as input constants, output constants, input variables, or monitored parameters can be either empirical or derived Empirical data is defined as data obtained from actual process runs Derived data is data obtained from conjecturing or mathematical calculations An embodiment of the present invention uses either empirical or derived data, or a combination of the two data types, for the purposes of process control optimization
- a specific type of derived data that is used by an embodiment of the present invention is data derived from Design of Experiment (DOE) DOE data is obtained by first choosing a limited sample population representing the spectrum of possible values for input constants and input variables at a given stage in a process, running the process with all possible combinations of this limited sample population, and monitoring the output at the given stage for each possible combination Based on the results of these process runs, a mathematical formula is derived that allows for interpolating or extrapolating process output for any possible combination of input constant values and input variable values, and with this formula output data is derived for the entire
- a Run-to-Run control mode relates to a process control system that determines, based on previous runs of the given process, the optimal setting of process input variable value(s) at a given process tool or module in order to obtain or proximate one or more output target values at that tool or module
- Process control optimization in the Run-to-Run control mode is implemented at the given tool or module by two methods, known as the Feed Forward and Feed Back closed control loops
- the preferred embodiment of the present invention accesses data from previous process runs and the current process run, and determines optimal settings for input variables on-line (i e while the process is occurring), allowing automated optimization of output for the current process run without significant delays and without halting operation of the given process
- Figure 11 illustrates a vector look-up table for an output constant "O 7000 at a given process stage
- the table is 5 composed of columns for data vectors 7001 and columns for the output constant data for O ⁇ 7002
- the entries for the vectors in the look-up table are input constant 10a 1 (generally referenced as) 7003, input variable 10a 2 (generally referenced as) 7004 and input variable 10a 3 (generally referenced as) 7005
- the types of output constant data recorded in this vector look-up l () table are Average 7006, Standard Deviation 7007, and Population 7008
- Output constant data is recorded in the look-up table for vectors (Ai , A 2 , C 3 ) 7009, (Bi, A 2 , D 3 ) 7010, (C 1 t A 2 , A 3 ) 7011 , (d , A 2 , B 3 ) 7012, (C 1 t A 2 , C 3 ) 7013, (Ci, A 2l D 3 ) 7014,
- the first step in implementing the Feed Forward closed control loop is to choose an optimal vector from the vector look-up table This optimal vector is chosen by
- the vector with the output constant average value closest to the output target value or to the midpoint of the output target value range is chosen as the optimal vector For
- the target value for O is 10 00 mm
- O ⁇ 10 02 mm for vector (Ci , A 2 , B 3 )
- O, 10 04 mm, for vector (Ci , A 2 , C 3 ),
- O, 9 96 mm, for vector
- vector (Ci , B , C 3 ) satisfies the second criterion for choosing the optimal vector in the first step of the Feed Forward closed control loop, because its average value for 0_ is closest to the output target value
- the output constant standard deviation and population number are also considered when choosing the an optimal vector
- a vector with an average value that is only 01 mm from the output target value but with a large standard deviation and low population number may be less preferable than a vector with an average value that is 02 mm from the output target value but with a low standard deviation and high population number
- the vector with the lower standard deviation but average value farther from the output target value might be chosen as the optimal vector, and by applying an offset factor to this vector, it is possible to obtain an average output value for this vector closer to the
- Another criterion for choosing the optimal vector is input constraints. That is, there may be certain input variable boundary value ranges that are considered unacceptable and will therefore disqualify certain vectors which otherwise meet the optimal vector criteria For example, assume that an input constraint exists on input variable 10a.3 such that boundary value range A 3 is considered unacceptable This would therefore disqualify vector (C, , A 2 , A 3 ) Reasons for input constraints can be cost or efficiency related, or can be related to the subjective considerations of the given process.
- Feed Forward closed control loop is to find the next best optimal vector that most closely fits the criteria established for finding the optimal vector. If the output constant average value of the optimal vector is greater than the target value, then the output constant average value of the next best optimal vector must be less than the output target value. Alternatively, if the output constant average value of the optimal vector is less than the output target value, then the output constant average value of the next best optimal vector must be greater than the output target value.
- a special smoothing algorithm is applied to the two vectors which interpolates the two vectors by means of piece-wise linearization, or linear regression, or the like. The result of this algorithm is a recipe with
- O ⁇ for vector (d, B 2 , C 3 ) is 10.01 mm, which is a hundredth of a millimeter greater than the output target value of 10.00
- the average output value of 9.98 mm is closer to the output target value of 10.00 mm than 9 96 mm Therefore, vector (Ci, A 2 , D 3 ) is chosen as the next best optimal vector.
- the smoothing algorithm is then applied to vectors (Ci , B 2 , C 3 ) and (Ci, A 2 , D 3 ), and returns a resulting recipe for input variables 10a.2 and 10a.3 in order to receive the output target value of 10.00 mm for output constant ⁇ .
- Part of this smoothing algorithm involves giving greater priority to the optimal vector according to the proximity of the optimal vector's output constant average value to the output target value.
- the smoothing algorithm returns interpolated recipe values for input variables that are more likely to be within the boundary value ranges of the input variables in the optimal vector than in the boundary value ranges of those input variables in the next best optimal vector For the current example, this means that the recipe value for input variable 10a.2 is more likely to be in the B 2 range than in the A 2 range, and that the recipe value for input variable 10a.3 is more likely to be in the C 3 range than in the D 3 range.
- Feed Back Closed Control Loop In the Feed Back closed control loop, optimal correction of input variable values at a given stage in a process is achieved through data analysis of the
- An embodiment of the present invention allows for optimization of multiple outputs in the Feed Forward closed control loop
- Current methods of standard process control are substantially unable to optimize multiple outputs in the integrated fashion that the embodiment of the present invention for optimizing multiple outputs does
- the present invention provides a unique and revolutionary approach to process control optimization of multiple outputs
- Figure 12 (generally referenced as) 8000 illustrates a vector look-Up tables for multiple outputs constants O ⁇ and O 2 at a given process stage 8000
- the table is composed of columns for data vectors 8001 , columns for the output constant data for O ⁇ 8002, and columns for the output constant data for
- O 2 8003 The entries for the vectors in the look-up table are input constant 10a 1 (generally referenced as) 8004, input variable 10a 2 (generally referenced as) 8005, and input variable 10a 3 (generally referenced as) 8006
- the types of output constant data recorded for output constant Oi are Average 8007 Standard Deviation 8008, and Population 8009
- the types of output constant data recorded for output constant O 2 are Average 8010, Standard Deviation 8011 , and Population 8012
- Output constant data is recorded in the look-up table for vectors (Ai , A ?
- the embodiment of the present invention for optimizing multiple outputs carries out optimization of multiple outputs in two stages
- the first stage is to try is implemented by first trying to find one or more common vectors for the multiple outputs at the given process stage
- a common vector is defined as a vector with average values for the multiple output constants such that each constant's average value in the vector is within the target value range for that constant
- Figure 12 presents a vector look-up table for multiple outputs based on the vector look-up table for output constant Oi from Figure 11
- O 2 O f and O 2 are both output constants at one given stage in a process and the inputs to this process stage are input constant 10a 1 and input variables 10a 2 and 10a 3
- the value for the input constant 10a 1 for the current process run is in the Ci boundary value range
- vector (Ci , B 2 , C 3 ) has an average value closer to the midpoint of the target value range, for the purposes of optimizing multiple outputs with the common vector embodiment of the present invention, all vectors with average values within the target value range are considered
- Output constant Oi was found to have vectors (Ci , A 2 , D 3 ) and (Ci, B 2 , C 3 ) in its output target value range
- output constant O 2 was found to have vectors (Ci, A 2 , C 3 ) and (Ci , A 2 , D 3 ) in its output target value range Therefore, it is clearly seen that these two output constants share the common vector (Ci , A 2 , D 3 ) in their respective target value ranges (d, A 2) D 3 ) is the optimal vector for output constants Oi and O 2
- the recipe for optimizing these multiple outputs is determined by taking the midpoints of the boundary value ranges of input variables 10a 2 and 10a 3, which in this case are the midpoints of boundary value ranges A 2 and D 3
- the optimal vector for multiple outputs would not necessarily be the optimal vector for each output constant if each output constant is analyzed on its own without regard to the other output constants
- output constant Oi was found to have vectors (Ci, A 2 , D 3 ) and (Ci, B 2 , C ) in its output target value range, with vector (d, B 2 , C 3 ) having the closest average value to the midpoint of the target value range
- (Ci , B 2 , C 3 ) would be its optimal vector
- vector (Ci, B 2 , C 3 ) does not fall within the target value range for output constant O 2
- vector (Ci , A 2 , D 3 ) does Likewise, in regards to output constant O 2 , vector (Ci , A 2l D 3 ) would not be its optimal vector if O 2 is analyzed on its own, since vector (d, A 2 , C 3 ) has the closest average value to the midpoint of the
- weighting algorithm is applied to this situation in the same manner as it was applied in the previous example with output constants Oi and O 2 and common vectors (Ci, A 2 , D 3 ) and (d , B 2 , C 3 )
- weightings must be assigned to the three vectors (C, , A 2 , B 3 ), (Ci , A 2 , D 3 ) and (d B 2 , C 3 )
- the optimal vector for O 3 (Ci , A 2 , B 3 ) receives the greatest weight of the three vectors
- vector (Ci , A 2 , D 3 ) receives a greater weighting than vector (CL B 2 , C 3 ) as in the previous example
- the recipe value for the input variable 10a b will now very likely be close to the midpoint of boundary value A 2 since vector (Ci , A 2 , A 3 ) (with the greatest weighting) and vector (Ci, A 2 , D 3 ) (with the second greatest weighting
- the schematic diagram in Figure 13 (generally referenced as) 9000 illustrates in a schematic diagram a stage in the Chemical/Mechanical Polishing process of a silicon wafers at Tool “1 " 9001
- the Inputs constants at "Tool-1” are Th ⁇ ckne.ss-In 9002, and Pad Life 9003, Input variables at “Tool-1” are Time 9004, Pressure 9005, and Speed 9006, output constants at "Tool-1 " are Uniformity 9007 and Imal -Thickness 9008
- Run-to-Run algorithm mode is applied to this process and calculates the Feed Back and Feed Forward corrections Closed Control Loops are implemented for process run n as follows
- Model ' pr e (n-j) is the model predicted value of output constant Final-Thickness at run (n-j), which is the average value for output constant Final-Thickness taken from the vector look-up table for process run (n-j)
- ⁇ ⁇ . j is the standard deviation of output constant Final-Thickness at run (n-j), taken from the vector look-up table for process run (n-j).
- P is a correction coefficient used to correct discernible deviation trends.
- n More than one common vector is found - from the common vectors found, determine the preferable vector for Uniformity and the preferable vector for Final-Thickness Assign weightings to Uniformity and Final-Thickness and apply the weighting algorithm to their preferable vectors to obtain the process recipe for input variables Pressure. lime, and Speed
- the determination of optimal values for input variables is based on both output values from previous runs, and the values of input constants for the current process run That is, the calculation of the average offset for Uniformity and Final-Thickness and their new output target value ranges for run n is a case of using output values from previous runs to determine optimal values of input variables for run n, and the selection of optimal vectors from the vector look-up table is a case of using the values of input constants for the current process run to determine the optimal values of input variables.
- the Feed Back and Feed Forward closed control loops are implemented together
- the preferred embodiment of the present invention implements both control loops together.
- both control loops can be implemented independent of the other.
- input constant data for the current process run is used to determine the optimal values for input variables without known output data, thus operating only in the Feed Forward closed control loop and not the Feed Back closed control loop.
- input constant data for the current process run is used to determine the optimal values for input variables without known output data, thus operating only in the Feed Forward closed control loop and not the Feed Back closed control loop.
- 1 output value data is used to determine the optimal values for input variables without using input constant data, thus operating only in the Feed Back closed control loop and not the Feed Forward closed control loop.
- An embodiment of the present invention allows for updating the data stored in the vector look-up table. Every time a process run is executed, the data for that run is processed according to the various methods that have been described up to this point, and with that data, the vector look-up table is eventually updated The ability for the look-up table to be updated is of particular significance when data in the look-up table has been generated through Design of Experiment (DOE). Because the data from DOE is almost entirely derived data, output data derived from DOE is inherently less accurate than output data obtained from recording the results of actual process runs. Therefore, the ability to update a look-up table containing DOE data with data from actual process runs is essential.
- DOE Design of Experiment
- the embodiment of the present invention for updating the look-up table with recent empirical data is designed so that the process engineer can determine with what frequency the look-up table will automatically be updated. In many process control situations, it is neither efficient nor desirable to update the look-up table after every process run or even after every few process runs, and it is necessary to allow the process engineer to set the frequency for updating the look-up table based on the specific requirements of and constraints on the given process. This frequency can sometimes be even periods of weeks or months. Other embodiments of the present invention allow for analysis of output data in the look-up table and correction of model predicted output values.
- the actual values of output constants recorded during recent process runs are compared with the model predicted values for that output constant according to the vector look-up table
- Recent process runs are defined as process runs whose data has not been used to update the vector look-up table
- the differences, hereinafter residuals, between the actual values and the model predicted values of the output constant are calculated, and the residuals for each vector are examined If, for all the residual values calculated, a common residual value is observed, then this common residual value is used to correct the model predicted output values
- Figure 14 (generally referenced as) 10,000 illustrates a vector look-up table 10,001 for output constant Oi at a given process stage, an Actual Values column 10,002 which is not part of the vector look-up table, and a Residual Values column 10,003 which is not part of the vector look-up table
- the vector look-up table 10,001 is composed of columns for data vectors 10,004 and columns for the output constant data for d 10,005
- the entries for the vectors in the look-up table are input constant 10a 1 (generally referenced as) 10,006, input variable 10a 2 (generally referenced as) 10,007, and input variable 10a 3 (generally referenced as) 10,008
- the types of output constant data recorded in this vector look-up table are Average 10,009, Standard Deviation 10,010, and Population 10,011
- Output constant data is recorded in the look-up table for vectors (Ai, A 2 , C 3 ) 10,012, (Bi, A 2 , D 3 ) 10,013,
- the Residual Values column 10,003 contains values ⁇ o ⁇ (A ⁇ , A 2 , C 3 ) 10,026, ⁇ 0 ,(B ⁇ , A 2 , D 3 ) 10,027, ⁇ o ⁇ (C, , A 2 , A 3 ) 10,028, ⁇ 0 ⁇ (C ⁇ , A 2 , B 3 ) 10,029, ⁇ 0 ⁇ (C ⁇ , A 2 , C 3 ) 10,030, ⁇ o ⁇ (C, , A 2 , D 3 ) 10,031 , ⁇ 0 ⁇ (C,, B 2 , C 3 ) 10,032
- the Actual Values 10,002 are compared with the predicted values according to the Vector Look-Up Table for Output Constant "O1" 10,001 and the calculated difference between them is the Residual Value 10,003
- FIG. 14 depicted is the vector look-up table for output constant d at a given process stage which has been seen previously in Figures 11 and 12, with the noticeable difference that the population numbers for each vector are much greater now than they were in Figures 11 and 12
- the process is now executed another 70 times with varying input combinations that correspond to the vectors in the look-up table depicted in Figure 14
- the values for Oi for these 70 process runs are recorded but the look-up table is not updated with these values
- the column to the right of the look-up table contains the average of the actual values of Oi received during the 70 recent process runs for each vector in the look-up table, and the column on the far right contains the residual values of Oi for each vector in the look-up table That is, assume that during the 70 recent process runs, the process was executed 10 times for each vector in the look-up table
- the value Act 0 ⁇ (A ⁇ , A 2 , C 3 ) is the average of the 10 values received for Oi the when the process was executed with input combinations corresponding to the boundary value ranges Ai, A 2 , and C 3
- the value Acto.(Bi , A 2 , D 3 ) is the average of the 10 values received for d when the process was executed with input combinations corresponding to the boundary value ranges Bi, A 2 , and D 3 , and likewise preferably for all the values listed in the Actual Values column
- the column on the far right contains the residual values of Oi for each vector in the look-up table That is the value ⁇ O1 (A ⁇ ,A 2 ,C 3 ) in the first row of the residual values column is the difference between Oi of vector (Ai, A 2 , C 3 ) and Acto ⁇ (A ⁇ , A 2 , C 3 ), ⁇ o ⁇ (B ⁇ , A 2 , D 3 ) is the difference between ().
- Another embodiment of the present invention analyzes respective residuals and their corresponding model predicted values for each vector in the output constant's vector look-up table to determine whether a functional
- FIG. 15 (generally referenced as) 11 ,000 illustrates a process module of two tools
- a schematic diagram for APC on a Module Level 11 ,000 “Tool “1 " 11 ,001 and “Tool-2” 11 ,002”
- Tool-1 has input constants T cknes s-m 11 ,003 and Pad Life- 1 11 ,004, has inputs variables "Time -I” 11 ,005, “Pres sure -I” 11 ,006, and “Speed -I " 11 ,007, and input constants (whose values are used in feed forward 11 ,001 to adjust the aforementioned input variable values) "Pad Life 1 " 11 ,003, and Thickness-in 11 ,004, and output constant Thickness-out 11 ,008
- Tool-2 has input constants Thickness-out 11 ,008 (which is also an output constant from “Tool-1”) and Pad L ⁇ fe-2 11 ,009, input variables T ⁇ me-2 11 ,010, Presswe-2 11 ,
- Tool-1 and Tool-2 Tool-1 has input variables T ⁇ me-1, Pressure- 1. and Speed-1, input constants Pad Life- 1 and Th ⁇ ckness- ⁇ n, and output constant Thickness-out, which is also an input constant to Tool-2.
- Tool-2 has input variables T ⁇ me-2, Pressure-2, and Speed-2, input constants PadL ⁇ fe-2 and Thickness-out (the output constant from Tool-1 ), and two output constants Uniformity and Final-Thickness.
- Embodiments of the present invention can be applied to a process module such as the one depicted in Figure 15 for optimization of the output constants Uniformity and Final-Thickness at Tool-2 by means of the input constants and variables at Tool-1 Assume that a recipe of input values at Tool-2 has been determined for the optimization of the multiple outputs constants Uniformity and Final-Thickness This recipe contains a specific value or value range for the input constant Thickness-out at Tool-2.
- Thicknes s-out is also an output constant for Tool-1
- embodiments of the present invention are applied to Tool-1 to determine a recipe for the output target value or target value range of Thickness-out, where the output target value or target value range for Ihickness-out is the input constant value or value range of Thickness-out in the recipe for optimizing multiple outputs Uniformity and Fmal-Thicknes s That is, the recipe value of Thickness-out when optimizing multiple outputs constants I fnal-l uckness and Uniformity serves as the output target value for the recipe at Tool-1
- embodiments of the present invention can be applied on non-sequential module configurations such as the module depicted in Figure 16 Figure 16 depicts a module of four tools, where Tools 1 a, 1b, 1 c run parallel to each other in either a simultaneous or alternate manner and send output to Tool-2
- the output constants of Tools 1 a, 1 b, and 1c are input constants to Tool-2
- an output target value is known for the output constant Final Output at Tool-2
- a recipe for receiving the target value of Final Output is obtained using embodiments of the present invention
- the values of the input constants in the recipe for Final Output at Tool-2 then serve as the output constant target values for the recipes at Tools 1a, 1b, and 1c
- this embodiment of the present invention determines the output target values at each of the parallel tools and then determines the recipe for input variables and constants at each parallel tool
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP00975247A EP1234204A1 (en) | 1999-10-31 | 2000-10-13 | Strategic method for process control |
AU13326/01A AU1332601A (en) | 1999-10-31 | 2000-10-13 | Strategic method for process control |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IL132663 | 1999-10-31 | ||
IL13266399A IL132663A (en) | 1999-10-31 | 1999-10-31 | Knowledge-engineering protocol-suite |
US09/588,681 | 2000-06-07 | ||
US09/588,681 US6952688B1 (en) | 1999-10-31 | 2000-06-07 | Knowledge-engineering protocol-suite |
US09/633,824 | 2000-08-07 | ||
US09/633,824 US7461040B1 (en) | 1999-10-31 | 2000-08-07 | Strategic method for process control |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2001033277A1 true WO2001033277A1 (en) | 2001-05-10 |
Family
ID=27271918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2000/028318 WO2001033277A1 (en) | 1999-10-31 | 2000-10-13 | Strategic method for process control |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP1234204A1 (en) |
AU (1) | AU1332601A (en) |
WO (1) | WO2001033277A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003088067A1 (en) | 2002-04-10 | 2003-10-23 | Kendro Laboratory Products, Lp | Data-centric automation |
WO2007023502A2 (en) * | 2005-08-26 | 2007-03-01 | Camtek Ltd. | Method and system for automatic defect detection of articles in visual inspection machines |
US7471991B2 (en) | 2004-05-06 | 2008-12-30 | Smp Logic Systems Llc | Methods, systems, and software program for validation and monitoring of pharmaceutical manufacturing processes |
US7799273B2 (en) | 2004-05-06 | 2010-09-21 | Smp Logic Systems Llc | Manufacturing execution system for validation, quality and risk assessment and monitoring of pharmaceutical manufacturing processes |
US7966087B2 (en) | 2002-11-15 | 2011-06-21 | Applied Materials, Inc. | Method, system and medium for controlling manufacture process having multivariate input parameters |
US8694145B2 (en) | 2001-06-19 | 2014-04-08 | Applied Materials, Inc. | Feedback control of a chemical mechanical polishing device providing manipulation of removal rate profiles |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6112126A (en) * | 1997-02-21 | 2000-08-29 | Baker Hughes Incorporated | Adaptive object-oriented optimization software system |
US6122555A (en) * | 1997-05-05 | 2000-09-19 | Honeywell International Inc. | System and methods for globally optimizing a process facility |
-
2000
- 2000-10-13 WO PCT/US2000/028318 patent/WO2001033277A1/en not_active Application Discontinuation
- 2000-10-13 AU AU13326/01A patent/AU1332601A/en not_active Abandoned
- 2000-10-13 EP EP00975247A patent/EP1234204A1/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6112126A (en) * | 1997-02-21 | 2000-08-29 | Baker Hughes Incorporated | Adaptive object-oriented optimization software system |
US6122555A (en) * | 1997-05-05 | 2000-09-19 | Honeywell International Inc. | System and methods for globally optimizing a process facility |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8694145B2 (en) | 2001-06-19 | 2014-04-08 | Applied Materials, Inc. | Feedback control of a chemical mechanical polishing device providing manipulation of removal rate profiles |
WO2003088067A1 (en) | 2002-04-10 | 2003-10-23 | Kendro Laboratory Products, Lp | Data-centric automation |
EP1493096A1 (en) * | 2002-04-10 | 2005-01-05 | Kendro Laboratory Products, LP | Data-centric automation |
EP1493096A4 (en) * | 2002-04-10 | 2005-11-30 | Kendro Lab Prod Lp | Data-centric automation |
US7966087B2 (en) | 2002-11-15 | 2011-06-21 | Applied Materials, Inc. | Method, system and medium for controlling manufacture process having multivariate input parameters |
US7471991B2 (en) | 2004-05-06 | 2008-12-30 | Smp Logic Systems Llc | Methods, systems, and software program for validation and monitoring of pharmaceutical manufacturing processes |
US7799273B2 (en) | 2004-05-06 | 2010-09-21 | Smp Logic Systems Llc | Manufacturing execution system for validation, quality and risk assessment and monitoring of pharmaceutical manufacturing processes |
WO2007023502A2 (en) * | 2005-08-26 | 2007-03-01 | Camtek Ltd. | Method and system for automatic defect detection of articles in visual inspection machines |
WO2007023502A3 (en) * | 2005-08-26 | 2007-05-10 | Camtek Ltd | Method and system for automatic defect detection of articles in visual inspection machines |
Also Published As
Publication number | Publication date |
---|---|
EP1234204A1 (en) | 2002-08-28 |
AU1332601A (en) | 2001-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7461040B1 (en) | Strategic method for process control | |
US6678668B2 (en) | System and method for complex process optimization and control | |
TWI459169B (en) | Method and system foryield prediction feedback for controlling an equipment engineering system, and non-transitory computer readable medium for recording related instructions thereon | |
US20210116898A1 (en) | Matching process controllers for improved matching of process | |
Lee et al. | Cutting-parameter selection for maximizing production rate or minimizing production cost in multistage turning operations | |
US7123978B2 (en) | Method for dynamically targeting a batch process | |
Arkat et al. | Applying simulated annealing to cellular manufacturing system design | |
CN108369916B (en) | Wafer point-to-point analysis and data presentation | |
WO2001033277A1 (en) | Strategic method for process control | |
Chan et al. | Flexibility performance: Taguchi's method study of physical system and operating control parameters of FMS | |
KR20220160671A (en) | Predictive Wafer Scheduling for Multi-Chamber Semiconductor Equipment | |
Foumani et al. | A scalarization-based method for multiple part-type scheduling of two-machine robotic systems with non-destructive testing technologies | |
Mahootchi et al. | A two-stage stochastic model for designing cellular manufacturing systems with simultaneous multiple processing routes and subcontracting | |
WO2023059740A1 (en) | Time constraint management at a manufacturing system | |
JP2010267947A (en) | Process parameter selection apparatus, process parameter selection method, process parameter selection program, program recording medium, and production process management apparatus containing the process parameter selection apparatus | |
Ng et al. | Reference point based evolutionary multi-objective optimization with dynamic resampling for production systems improvement | |
US20230135102A1 (en) | Methods and mechanisms for process recipe optimization | |
US20230384777A1 (en) | Methods and mechanisms for preventing fluctuation in machine-learning model performance | |
Satori et al. | Quantum optimization for location assignment problem in ASSR | |
Pilát et al. | Surrogate model selection for evolutionary multiobjective optimization | |
US20230359179A1 (en) | Methods and mechanisms for adjusting film deposition parameters during substrate manufacturing | |
US20230195074A1 (en) | Diagnostic methods for substrate manufacturing chambers using physics-based models | |
US20240037442A1 (en) | Generating indications of learning of models for semiconductor processing | |
US20230342016A1 (en) | Methods and mechanisms for generating virtual knobs for model performance tuning | |
US20230306300A1 (en) | Methods and mechanisms for measuring patterned substrate properties during substrate manufacturing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM 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 NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA 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 ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
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: 2000975247 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2000975247 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2000975247 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: JP |