Method and system of diagnosing a processing system using adaptive multivariate analysis

0Associated
Cases 
0Associated
Defendants 
0Accused
Products 
24Forward
Citations 
0
Petitions 
1
Assignment
First Claim
1. A method of monitoring a processing system for processing a substrate during the course of semiconductor manufacturing, comprising:
 acquiring initial data from said processing system for a plurality of observations from a first set of substrate runs having performed a process in the processing system, said initial data comprising a plurality of data parameters;
constructing a principal components analysis (PCA) model from said data parameters of the first set, said PCA model including centering coefficients for the initial data from the first set;
acquiring additional data from said processing system after said constructing step from a second set of substrate runs performing said process in the processing system, said additional data comprising an additional observation of said plurality of data parameters;
adjusting said centering coefficients at the time of each observation of the additional data from the second set by utilizing both said initial data and current data obtained from the additional observation from the process performed in the second set to produce updated adaptive centering coefficients for each of said data parameters in said PCA model;
applying said updated adaptive centering coefficients to each of said data parameters in said PCA model created from the first set of substrate runs and unchanged;
determining at least one statistical quantity using a combination of said PCA model and the additional data that has been centered by the updated adaptive centering coefficients;
setting a control limit for said at least one statistical quantity;
comparing said at least one statistical quantity to said control limit in order to determine if the substrate processing remains within control during the course of semiconductor manufacturing for the second set; and
providing an output assessing the process being performed in the processing system.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system of monitoring a processing system and for processing a substrate during the course of semiconductor manufacturing. As such, data is acquired from the processing system for a plurality of observations, the data including a plurality of data parameters. A principal components analysis (PCA) model is constructed from the data and includes centering coefficients. Additional data is acquired from the processing system, the additional data including an additional observation of the plurality of data parameters. The centering coefficients are adjusted to produce updated adaptive centering coefficients for each of the data parameters in the PCA model. The updated adaptive centering coefficients are applied to each of the data parameters in the PCA model. At least one statistical quantity is determined from the additional data using the PCA model. A control limit is set for the statistical quantity and compared to the statistical quantity.
37 Citations
View as Search Results
Method of endpoint detection of plasma etching process using multivariate analysis  
Patent #
US 10,002,804 B2
Filed 02/25/2016

Current Assignee
Tokyo Electron Limited

Sponsoring Entity
Tokyo Electron Limited

METHOD AND APPARATUS FOR DETECTING FAULT IN THE SEMICONDUCTOR MENUFACTURING PROCESS AND RECORDING MEDIUM THEREOF  
Patent #
US 20150318221A1
Filed 11/26/2014

Current Assignee
Industry Academic Cooperation Foundation, BISTEL INC.

Sponsoring Entity
Industry Academic Cooperation Foundation, BISTEL INC.

Multivariate prediction of a batch manufacturing process  
Patent #
US 9,541,471 B2
Filed 01/20/2014

Current Assignee
MKS Instruments AB

Sponsoring Entity
SARTORIUS STEDIM DATA ANALYTICS AB

Method of endpoint detection of plasma etching process using multivariate analysis  
Patent #
US 9,330,990 B2
Filed 10/17/2013

Current Assignee
Tokyo Electron Limited

Sponsoring Entity
Tokyo Electron Limited

MANUFACTURING CONTROL APPARATUS, MANUFACTURING CONTROL SYSTEM, AND MANUFACTURING CONTROL PROGRAM OF ELECTRONIC DEVICE  
Patent #
US 20130338810A1
Filed 03/15/2013

Current Assignee
Toshiba Corporation

Sponsoring Entity
Toshiba Corporation

Manufacturing control apparatus and manufacturing control system  
Patent #
US 9,442,483 B2
Filed 03/15/2013

Current Assignee
Toshiba Corporation

Sponsoring Entity
Toshiba Corporation

Transforming metrology data from a semiconductor treatment system using multivariate analysis  
Patent #
US 8,346,506 B2
Filed 04/11/2012

Current Assignee
Tokyo Electron Limited

Sponsoring Entity
Tokyo Electron Limited

Multivariate monitoring of a batch manufacturing process  
Patent #
US 9,429,939 B2
Filed 04/06/2012

Current Assignee
MKS Instruments AB

Sponsoring Entity
MKS Instruments Incorporated

METHOD AND SYSTEM FOR SEMICONDUCTOR PROCESS CONTROL AND MONITORING BY USING A DATA QUALITY METRIC  
Patent #
US 20100198556A1
Filed 01/11/2010

Current Assignee
GlobalFoundries Inc.

Sponsoring Entity
GlobalFoundries Inc.

Method and system for semiconductor process control and monitoring by using a data quality metric  
Patent #
US 8,849,615 B2
Filed 01/11/2010

Current Assignee
GlobalFoundries Inc.

Sponsoring Entity
GlobalFoundries Inc.

ARRANGEMENT FOR IDENTIFYING UNCONTROLLED EVENTS AT THE PROCESS MODULE LEVEL AND METHODS THEREOF  
Patent #
US 20100332012A1
Filed 09/08/2009

Current Assignee
Lam Research Corporation

Sponsoring Entity
Lam Research Corporation

Arrangement for identifying uncontrolled events at the process module level and methods thereof  
Patent #
US 8,983,631 B2
Filed 09/08/2009

Current Assignee
Lam Research Corporation

Sponsoring Entity
Lam Research Corporation

ADVANCE MANUFACTURING MONITORING AND DIAGNOSTIC TOOL  
Patent #
US 20100123453A1
Filed 09/01/2009

Current Assignee
NOKOMIS INC.

Sponsoring Entity
NOKOMIS INC.

Advance manufacturing monitoring and diagnostic tool  
Patent #
US 8,643,539 B2
Filed 09/01/2009

Current Assignee
NOKOMIS INC.

Sponsoring Entity
NOKOMIS INC.

METHOD AND SYSTEM FOR SEMICONDUCTOR PROCESS CONTROL AND MONITORING BY USING PCA MODELS OF REDUCED SIZE  
Patent #
US 20090276077A1
Filed 02/18/2009

Current Assignee
GlobalFoundries Inc.

Sponsoring Entity
GlobalFoundries Inc.

Method and system for semiconductor process control and monitoring by using PCA models of reduced size  
Patent #
US 8,103,478 B2
Filed 02/18/2009

Current Assignee
GlobalFoundries Inc.

Sponsoring Entity
GlobalFoundries Inc.

Controlling a manufacturing process with a multivariate model  
Patent #
US 9,069,345 B2
Filed 01/23/2009

Current Assignee
MKS Instruments AB

Sponsoring Entity
MKS Instruments Incorporated

TRANSFORMING METROLOGY DATA FROM A SEMICONDUCTOR TREATMENT SYSTEM USING MULTIVARIATE ANALYSIS  
Patent #
US 20090094001A1
Filed 12/16/2008

Current Assignee
Tokyo Electron Limited

Sponsoring Entity
Tokyo Electron Limited

Transforming metrology data from a semiconductor treatment system using multivariate analysis  
Patent #
US 8,170,833 B2
Filed 12/16/2008

Current Assignee
Tokyo Electron Limited

Sponsoring Entity
Tokyo Electron Limited

Methods and systems for monitoring state of plasma chamber  
Patent #
US 20080278721A1
Filed 05/07/2008

Current Assignee
Samsung Electronics Co. Ltd.

Sponsoring Entity
Samsung Electronics Co. Ltd.

Methods and systems for monitoring state of plasma chamber  
Patent #
US 7,705,973 B2
Filed 05/07/2008

Current Assignee
Samsung Electronics Co. Ltd.

Sponsoring Entity
Samsung Electronics Co. Ltd.

DETECTION OF CATALYST LOSSES IN A FLUID CATALYTIC CRACKER FOR USE IN ABNORMAL SITUATION PREVENTION  
Patent #
US 20080120060A1
Filed 09/26/2007

Current Assignee
FisherRosemount Systems Incorporated

Sponsoring Entity


Fault detection through feedback  
Patent #
US 20060095232A1
Filed 11/02/2004

Current Assignee
Advanced Micro Devices Inc.

Sponsoring Entity
Advanced Micro Devices Inc.

Adjusting weighting of a parameter relating to fault detection based on a detected fault  
Patent #
US 8,676,538 B2
Filed 11/02/2004

Current Assignee
Advanced Micro Devices Inc.

Sponsoring Entity
Advanced Micro Devices Inc.

Industrial process fault detection using principal component analysis  
Patent #
US 20050055175A1
Filed 09/10/2003

Current Assignee
PEAK SENSOR SYSTEMS LLC

Sponsoring Entity
PEAK SENSOR SYSTEMS LLC

Method and apparatus for monitoring a process by employing principal component analysis  
Patent #
US 6,896,763 B2
Filed 01/14/2003

Current Assignee
Lymberopoulos Dimitris, Balasubramhanya Lalitha, Davidow Jed, Sarfaty Moshe

Sponsoring Entity
Lymberopoulos Dimitris, Balasubramhanya Lalitha, Davidow Jed, Sarfaty Moshe

User configurable multivariate time series reduction tool control method  
Patent #
US 20030055523A1
Filed 09/17/2002

Current Assignee
GlobalFoundries Inc.

Sponsoring Entity
GlobalFoundries Inc.

MULTIVARIATE STATISTICAL PROCESS ANALYSIS SYSTEMS AND METHODS FOR THE PRODUCTION OF MELT POLYCARBONATE  
Patent #
US 20030065462A1
Filed 08/13/2001

Current Assignee
Sabic Innovative Plastics BV

Sponsoring Entity
Sabic Innovative Plastics BV

Method and system for the dynamic analysis of data  
Patent #
US 20020107858A1
Filed 07/05/2001

Current Assignee
CAMO INC.

Sponsoring Entity
CAMO INC.

Multivariate statistical process monitors  
Patent #
US 20020072882A1
Filed 03/23/2001

Current Assignee
PERCEPTIVE ENGINEERING LIMITED

Sponsoring Entity
PERCEPTIVE ENGINEERING LIMITED

Control for an industrial process using one or more multidimensional variables  
Patent #
US 20030144746A1
Filed 03/09/2001

Current Assignee
ENVIRONMENTAL TECHNOLOGIES GROUP INC.

Sponsoring Entity


Automated process monitoring and analysis system for semiconductor processing  
Patent #
US 6,622,059 B1
Filed 04/13/2000

Current Assignee
GlobalFoundries Inc.

Sponsoring Entity
Advanced Micro Devices Inc.

Method of data compression using principal components analysis  
Patent #
US 6,675,137 B1
Filed 01/26/2000

Current Assignee
Advanced Micro Devices Inc.

Sponsoring Entity
Advanced Micro Devices Inc.

Supervisory method for determining optimal process targets based on product performance in microelectronic fabrication  
Patent #
US 6,470,230 B1
Filed 01/04/2000

Current Assignee
Advanced Micro Devices Inc.

Sponsoring Entity
Advanced Micro Devices Inc.

Characteristic variation evaluation method of semiconductor device  
Patent #
US 6,330,526 B1
Filed 03/12/1999

Current Assignee
Mitsubishi Electric Corporation

Sponsoring Entity
Mitsubishi Electric Corporation

Method for monitoring multivariate processes  
Patent #
US 5,949,678 A
Filed 10/16/1996

Current Assignee
Telefonaktiebolaget LM Ericsson

Sponsoring Entity
Telefonaktiebolaget LM Ericsson

Process information and maintenance system for distributed control systems  
Patent #
US 5,796,606 A
Filed 02/07/1996

Current Assignee
Nexfor Incorporated

Sponsoring Entity
NORANDA INC.

44 Claims
 1. A method of monitoring a processing system for processing a substrate during the course of semiconductor manufacturing, comprising:
 acquiring initial data from said processing system for a plurality of observations from a first set of substrate runs having performed a process in the processing system, said initial data comprising a plurality of data parameters;
constructing a principal components analysis (PCA) model from said data parameters of the first set, said PCA model including centering coefficients for the initial data from the first set;
acquiring additional data from said processing system after said constructing step from a second set of substrate runs performing said process in the processing system, said additional data comprising an additional observation of said plurality of data parameters;
adjusting said centering coefficients at the time of each observation of the additional data from the second set by utilizing both said initial data and current data obtained from the additional observation from the process performed in the second set to produce updated adaptive centering coefficients for each of said data parameters in said PCA model;
applying said updated adaptive centering coefficients to each of said data parameters in said PCA model created from the first set of substrate runs and unchanged;
determining at least one statistical quantity using a combination of said PCA model and the additional data that has been centered by the updated adaptive centering coefficients;
setting a control limit for said at least one statistical quantity;
comparing said at least one statistical quantity to said control limit in order to determine if the substrate processing remains within control during the course of semiconductor manufacturing for the second set; and
providing an output assessing the process being performed in the processing system.  View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
 acquiring initial data from said processing system for a plurality of observations from a first set of substrate runs having performed a process in the processing system, said initial data comprising a plurality of data parameters;
 19. In a process control system including a principal components analysis (PCA) model for monitoring a processing system for processing a substrate during the course of semiconductor manufacturing, the improvement comprising:
 an adaptive centering coefficient for a data parameter obtained during a current observation made after construction of a PCA model from a first set of substrate runs having performed a process in the processing system, said adaptive centering coefficient combining an old value of said adaptive centering coefficient and a current value of said data parameter for said current observation from a second set of substrate runs performing said process in the processing system to produce at each observation of data an updated adaptive centering coefficient, wherein said old value of said adaptive centering coefficient comprises a mean value of data parameters obtained during a plurality of observations preceding said current observation;
at least one statistical quantity determined using a combination of said PCA model created from the first set of substrate runs and unchanged and additional data acquired after construction of the PCA model that has been centered by the updated adaptive centering coefficients;
said updated adaptive centering coefficient implemented in the PCA model to provide, based on the statistical quantity, an improved process center for the substrate processing in order to update the substrate processing during the course of semiconductor manufacturing for the second set; and
said improved process center producing an output assessing the process being performed in the processing system.  View Dependent Claims (20, 21, 22, 23, 24)
 an adaptive centering coefficient for a data parameter obtained during a current observation made after construction of a PCA model from a first set of substrate runs having performed a process in the processing system, said adaptive centering coefficient combining an old value of said adaptive centering coefficient and a current value of said data parameter for said current observation from a second set of substrate runs performing said process in the processing system to produce at each observation of data an updated adaptive centering coefficient, wherein said old value of said adaptive centering coefficient comprises a mean value of data parameters obtained during a plurality of observations preceding said current observation;
 25. A processing system for processing a substrate during the course of semiconductor manufacturing, comprising:
 a process tool; and
a process performance monitoring system coupled to said process tool and comprising a plurality of sensors coupled to said process tool and a controller coupled to said plurality of sensors and said process tool, wherein said controller includes, means for acquiring initial data from said plurality of sensors for a plurality of observations from a first set of substrate runs having performed a process in the processing system, said initial data comprising a plurality of data parameters, means for constructing a principal components analysis (PCA) model from said data parameters of the first set, said PCA model including centering coefficients for the initial data, means for acquiring additional data from said plurality of sensors after construction of the PCA model from a second set of substrate runs performing said process in the processing system, means for adjusting said centering coefficients at the time of each observation of the additional data by utilizing both previous run data from said initial data and current data obtained by the means for acquiring additional data to produce updated adaptive centering coefficients for each of said data parameters, means for applying said updated adaptive centering coefficients to each of said data parameters in said PCA model created from the first set of substrate runs and unchanged, means for determining at least one statistical quantity using a combination of said PCA model and the additional data that has been centered by the updated adaptive centering coefficients, means for setting a control limit for said at least one statistical quantity, means for comparing said at least one statistical quantity to said control limit in order to determine if the substrate processing remains within control during the course of semiconductor manufacturing for the second set; and
means for providing an output assessing the process being performed in the processing system.  View Dependent Claims (26, 27, 28, 29, 30, 31, 32)
 a process tool; and
 33. A processing performance monitoring system to monitor a processing system for processing a substrate during the course of semiconductor manufacturing, comprising:
 a plurality of sensors coupled to said processing system; and
a controller coupled to said plurality of sensors and said processing system, wherein said controller includes, means for acquiring initial data from said plurality of sensors for a plurality of observations from a first set of substrate runs having performed a process in the processing system, said initial data comprising a plurality of data parameters, means for constructing a principal components analysis (PCA) model from said data parameters of the first set, said PCA model including centering coefficients for the initial data, means for acquiring additional data from said plurality of sensors acquired after construction of the PCA model from a second set of substrate runs performing said process in the processing system, means for adjusting said centering coefficients at the time of each observation of the additional data by utilizing both previous run data from said initial data and current data obtained by the means for acquiring additional data to produce updated centering coefficients for each of said data parameters, means for applying said updated adaptive centering coefficients to each of said data parameters in said PCA model created from the first set of substrate runs and unchanged, means for determining at least one statistical quantity using a combination of said PCA model and the additional data that has been centered by the updated adaptive centering coefficients, means for setting a control limit for said at least one statistical quantity, means for comparing said at least one statistical quantity to said control limit in order to determine if the substrate processing remains within control during the course of semiconductor manufacturing for the second set; and
means for providing an output assessing the process being performed in the processing system.  View Dependent Claims (34, 35, 36, 37, 38, 39, 40)
 a plurality of sensors coupled to said processing system; and
 41. A method of monitoring a first processing system for processing a substrate during the course of semiconductor manufacturing, comprising:
 acquiring initial data from a processing system for a plurality of observations from a first set of substrate runs having performed a process in the processing system, said initial data comprising a plurality of data parameters;
constructing a principal components analysis (PCA) model from said data parameters of the first set, said PCA model including centering coefficients for the initial data;
acquiring additional data from said first processing system after constructing the PCA model from a second set of substrate runs performing said process in the processing system, said additional data comprises an additional observation of said plurality of data parameters;
adjusting said centering coefficients at the time of each observation of the additional data by utilizing both previous run data from said initial data and current data obtained from the additional observations to produce updated adaptive coefficients for each of said data parameters in said PCA model;
applying said updated adaptive centering coefficients to each of said data parameters in said PCA model created from the first set of substrate runs and unchanged;
determining at least one statistical quantity using a combination of said PCA model and the additional data that has been centered by the updated adaptive centering coefficients;
setting a control limit for said at least one statistical quantity;
comparing said at least one statistical quantity to said control limit in order to determine if the substrate processing remains within control during the course of semiconductor manufacturing for the second set; and
providing an output assessing the process being performed in the processing system.  View Dependent Claims (42)
 acquiring initial data from a processing system for a plurality of observations from a first set of substrate runs having performed a process in the processing system, said initial data comprising a plurality of data parameters;
 43. A computer readable medium containing program instructions for execution on a computer system, which when executed by the computer system, cause the computer system to perform substrate processing comprising:
 acquiring initial data from a processing system for a plurality of observations from a first set of substrate runs having performed a process in a processing system, said initial data comprising a plurality of data parameters;
constructing a principal components analysis (PCA) model from said data parameters of the first set, said PCA model including centering coefficients for the initial data;
acquiring additional data from said processing system after constructing the PCA model from a second set of substrate runs performing said process in the processing system, said additional data comprising an additional observation of said plurality of data parameters;
adjusting said centering coefficients by utilizing both previous run data from said initial data and current data obtained from the additional observation to produce updated adaptive centering coefficients for each of said data parameters in said PCA model;
applying said updated adaptive centering coefficients to each of said data parameters in said PCA model created from the first set of substrate runs and unchanged;
determining at least one statistical quantity using a combination of said PCA model and the additional data that has been centered by the updated adaptive centering coefficients;
setting a control limit for said at least one statistical quantity;
comparing said at least one statistical quantity to said control limit in order to determine if the substrate processing remains within control during the course of semiconductor manufacturing for the second set; and
providing an output assessing the process being performed in the processing system.
 acquiring initial data from a processing system for a plurality of observations from a first set of substrate runs having performed a process in a processing system, said initial data comprising a plurality of data parameters;
 44. A computer readable medium containing program instructions for execution on a computer system, which when executed by the computer system, cause the computer system to perform substrate processing comprising:
 acquiring initial data from a second processing system for a plurality of observations from a first set of substrate runs having performed a process in a processing system, said initial data comprising a plurality of data parameters;
constructing a principal components analysis (PCA) model from said data parameters of the first set, said PCA model including centering coefficients for the initial data;
acquiring additional data from a first processing system after constructing the PCA model from a second set of substrate runs performing said process in the processing system, said additional data comprises an additional observation of said plurality of data parameters;
adjusting said centering coefficients by utilizing both previous run data from said initial data and current data obtained from the additional observation to produce updated adaptive centering coefficients for each of said data parameters in said PCA model;
applying said updated adaptive centering coefficients to each of said data parameters in said PCA model created from the first set of substrate runs and unchanged;
determining at least one statistical quantity using a combination of said PCA model and the additional data that has been centered by the updated adaptive centering coefficients;
setting a control limit for said at least one statistical quantity;
comparing said at least one statistical quantity to said control limit in order to determine if the substrate processing remains within control during the course of manufacturing for the second set; and
providing an output assessing the process being performed in the processing system.
 acquiring initial data from a second processing system for a plurality of observations from a first set of substrate runs having performed a process in a processing system, said initial data comprising a plurality of data parameters;
1 Specification
1. Field of the Invention
The present invention relates to a method of diagnosing a processing system using principal components analysis (PCA), and more particularly to the utilization of an updated PCA.
2. Description of Related Art
Modeling and control of material processing systems, such as in semiconductor manufacturing, historically has been a very challenging task. Material processing systems typically run a variety of process recipes and products, each with unique chemical, mechanical, and electrical characteristics. Material processing systems also undergo frequent maintenance cycles wherein key parts are cleaned or replaced, and when periodic problems occur they are addressed with new hardware designs. In addition, there are particular process steps which have few substrate quality metrics directly related to their performance. Without integrated metrology, these measurements are delayed and often not measured for every substrate. These issues contribute to a complicated processing system that is already difficult to model with simple tools.
One approach to capture the behavior of a processing system in a model is to apply multivariate analysis, such as principal component analysis (PCA), to processing system data. However, due to process system drifts as well as changes in the trace data, a static PCA model is not sufficient to enable monitoring for a single processing system over a long horizon. Additionally, models developed for one processing system cannot carry over to another processing system, e.g., from one etch process chamber to another etch process chamber of the same design.
SUMMARY OF THE INVENTIONOne object of the present invention is to solve or mitigate any or all of the above described problems, or other problems in the prior art.
Another object of the present invention is to provide a robust PCA model that enables monitoring for a single processing system over a long horizon.
Yet another object of the present invention is to provide a robust PCA model that is capable of useful application to more than one processing system.
These and other objects of the present invention may be met by a method of diagnosing a processing system using adaptive multivariate analysis in accordance with the present invention.
According to one aspect, a method of monitoring a processing system for processing a substrate during the course of semiconductor manufacturing is described. The method includes: acquiring data from the processing system for a plurality of observations, the data comprising a plurality of data parameters; constructing a principal components analysis (PCA) model from the data, including centering coefficients; acquiring additional data from the processing system, the additional data having an additional observation of the plurality of data parameters; adjusting the centering coefficients to produce updated adaptive centering coefficients for each of the data parameters in the PCA model; applying the updated adaptive centering coefficients to each of data parameters in the PCA model; determining at least one statistical quantity from the additional data using the PCA model; setting a control limit for the at least one statistical quantity; and comparing the at least one statistical quantity to the control limit. Additionally, the method can further include: determining scaling coefficients from the PCA model; adjusting the scaling coefficients to produce updated adaptive scaling coefficients for each of the data parameters in the PCA model; and applying the updated adaptive scaling coefficients to each of the data parameters in the PCA model.
According to another aspect, in a principal components analysis (PCA) model for monitoring a processing system for processing a substrate during the course of semiconductor manufacturing, an improvement is described including: an adaptive centering coefficient for each data parameter during a current observation of the given data parameter, the adaptive centering coefficient combining an old value of the adaptive centering coefficient and the current value of the data parameter for the current observation, wherein the old value includes the mean value of the data parameter during a plurality of observations preceding the current observation. Additionally, the improvement can further include: an adaptive scaling coefficient for each data parameter during a current observation of the given data parameter, the adaptive scaling coefficient comprising application of a recursive standard deviation filter, the formula combining an old value of the adaptive scaling coefficient, the current value of each data parameter for the current observation, and an old value of the adaptive centering coefficient, wherein the old value of the adaptive scaling coefficient comprises the standard deviation of the data parameter during a plurality of observations preceding the current observation and the old value of the adaptive centering coefficient comprises the mean value of the data parameter during a plurality of observations preceding the current observation.
Additionally, according to another aspect, a processing system for processing a substrate during the course of semiconductor manufacturing including: a process tool; and a process performance monitoring system coupled to the process tool having a plurality of sensors coupled to the process tool, and a controller coupled to the plurality of sensors and the process tool, wherein the controller includes means for acquiring data from the plurality of sensors for a plurality of observations, the data including a plurality of data parameters; means for constructing a principal components analysis (PCA) model from the data, including centering coefficients; means for acquiring additional data from the plurality of sensors; means for adjusting the centering coefficients to produce updated adaptive centering coefficients for each of the data parameters; means for applying the updated adaptive centering coefficients to each of the data parameters in the PCA model; means for determining at least one statistical quantity from the additional data using the PCA model; means for setting a control limit for the at least one statistical quantity; and means for comparing the at least one statistical quantity to the control limit. Additionally, the processing system can further include: means for determining scaling coefficients from the PCA model; means for adjusting the scaling coefficients to produce updated adaptive scaling coefficients for each of the data parameters in the PCA model; and means for applying the updated adaptive scaling coefficients to each of the data parameters in the PCA model.
According to another aspect, a process performance monitoring system to monitor a processing system for processing a substrate during the course of semiconductor manufacturing is described including: a plurality of sensors coupled to the processing system; and a controller coupled to the plurality of sensors and the processing system, wherein the controller includes means for acquiring data from the plurality of sensors for a plurality of observations, the data having a plurality of data variables; means for acquiring data from the plurality of sensors for a plurality of observations, the data comprising a plurality of data parameters; means for constructing a principal components analysis (PCA) model from the data, including centering coefficients; means for acquiring additional data from the plurality of sensors; means for adjusting the centering coefficients to produce updated adaptive centering coefficients for each of the data parameters; means for applying the updated adaptive centering coefficients to each of the data parameters in the PCA model; means for determining at least one statistical quantity from the additional data using the PCA model; means for setting a control limit for the at least one statistical quantity; and means for comparing the at least one statistical quantity to the control limit. Additionally, the processing system can further include: means for determining scaling coefficients from the PCA model; means for adjusting the scaling coefficients to produce updated adaptive scaling coefficients for each of the data parameters in the PCA model; and means for applying the updated adaptive scaling coefficients to each of the data parameters in the PCA model.
According to another aspect, a method of monitoring a first processing system for processing a substrate during the course of semiconductor manufacturing is described. The method includes: acquiring data from a second processing system for a plurality of observations, the data having a plurality of data parameters; constructing a principal components analysis (PCA) model from the data for the second processing system, including centering coefficients; acquiring additional data from the first processing system, the additional data includes an additional observation of the plurality of data parameters; adjusting the centering coefficients to produce updated adaptive centering coefficients for each of the data parameters in the PCA model; applying the updated adaptive centering coefficients to each of the data parameters in the PCA model; determining at least one statistical quantity from the additional data using the PCA model; setting a control limit for the at least one statistical quantity; and comparing the at least one statistical quantity to the control limit. Additionally, the method can further include: determining scaling coefficients from the PCA model; adjusting the scaling coefficients to produce updated adaptive scaling coefficients for each of the data parameters in the PCA model; and applying the updated adaptive scaling coefficients to each of the data parameters in the PCA model.
According to another aspect, a method for classifying a process fault occurring during a plurality of substrate runs in a processing system is described. The method includes: monitoring a plurality of data parameters from the processing system for each substrate run within the plurality of substrate runs; identifying a fault substrate run, within the plurality of substrate runs using multivariate analysis, in which the process fault occurred; selecting a first substrate run preceding the fault substrate run; calculating a first plurality of mean values for each of the plurality of data parameters during the first substrate run; selecting a second substrate run following the fault substrate run; calculating a second plurality of mean values for each of the plurality of data parameters during the second substrate run; determining the absolute value of a plurality of differences between the second plurality of mean values and the first plurality of mean values for each of the plurality of data parameters; calculating a plurality of standard deviations for each of the plurality of data parameters during at least one of the first substrate run and the second substrate run; normalizing the plurality of differences by the plurality of standard deviations for each of the plurality of data parameters; determining the largest value of the normalized differences; and identifying the data parameter amongst the plurality of data parameters corresponding to the largest value of the differences.
According to another aspect, a method for classifying a process fault occurring during a plurality of substrate runs in a processing system is described. The method includes: monitoring a plurality of data parameters from the processing system for each substrate run within the plurality of substrate runs; identifying a fault substrate run, within the plurality of substrate runs using multivariate analysis, in which the process fault occurred; selecting a first substrate run preceding the fault substrate run; calculating a first plurality of standard deviations for each of the plurality of data parameters during the first substrate run; selecting a second substrate run following the fault substrate run; calculating a second plurality of standard deviations for each of the plurality of data parameters during the second substrate run; determining the absolute value of a plurality of differences between the second plurality of standard deviations and the first plurality of standard deviations for each of the plurality of data parameters; calculating a plurality of mean values for each of the plurality of data parameters during one of the first substrate run and the second substrate run; normalizing the plurality of differences by the plurality of mean values for each of the plurality of data parameters; determining the largest value of the normalized differences; and identifying the data parameter amongst the plurality of data parameters corresponding to the largest value of the differences.
BRIEF DESCRIPTION OF THE DRAWINGSIn the accompanying drawings,
FIG. 1 shows a material processing system according to a preferred embodiment of the present invention;
FIG. 2 shows a material processing system according to one embodiment of the present invention;
FIG. 3 shows a material processing system according to another embodiment of the present invention;
FIG. 4 shows a material processing system according to a further embodiment of the present invention;
FIG. 5 shows a material processing system according to an additional embodiment of the present invention;
FIG. 6A presents an exemplary calculated Qstatistic using static centering and scaling coefficients;
FIG. 6B presents an exemplary calculated Qstatistic using adaptive centering and scaling coefficients following the first 500 substrates;
FIG. 7 presents an exemplary Q contribution plot;
FIG. 8 presents an exemplary summary statistic for two data parameters;
FIG. 9A presents an exemplary model mean movement metric plot for two substrate ranges;
FIG. 9B presents an exemplary summary statistic for the highest values in the movement metric plot of FIG. 9A;
FIG. 10 presents an exemplary calculated Qstatistic using static centering and scaling coefficients applied to a second processing system;
FIG. 11 presents an exemplary calculated Qstatistic using adaptive centering and scaling coefficients applied to a second processing system;
FIG. 12 illustrates a method of monitoing a processing system according to an embodiment of the present invention; and
FIG. 13 presents a computer system for implementing various embodiments of the present invention.
DETAILED DESCRIPTION OF AN EMBODIMENTAccording to an embodiment of the present invention, a material processing system 1 is depicted in FIG. 1 that includes a process tool 10 and a process performance monitoring system 100. The process performance monitoring system 100 includes a plurality of sensors 50 and a controller 55. Alternately, the material processing system 1 can include a plurality of process tools 10. The sensors 50 are coupled to the process tool 10 to measure tool data and the controller 55 is coupled to the sensors 50 in order to receive tool data. Alternately, the controller 55 is further coupled to process tool 10. Moreover, the controller 55 is configured to monitor the performance of processing system 1 using the (tool) data parameters. The process performance can, for example, include the detection of process faults.
In the illustrated embodiment depicted in FIG. 1, the material processing system 1 utilizes a plasma for material processing. Desirably, the material processing system 1 includes an etch chamber. Alternately, the material processing system 1 includes a photoresist coating chamber such as, for example, a photoresist spin coating system; a photoresist patterning chamber such as, for example, an ultraviolet (UV) lithography system; a dielectric coating chamber such as, for example, a spinonglass (SOG) or spinondielectric (SOD) system; a deposition chamber such as, for example, a chemical vapor deposition (CVD) system or a physical vapor deposition (PVD) system; a rapid thermal processing (RTP) chamber such as, for example, a RTP system for thermal annealing; or a batchprocessing vertical furnace.
According to the illustrated embodiment of the present invention depicted in FIG. 2, the material processing system 1 includes process tool 10, substrate holder 20, upon which a substrate 25 to be processed is affixed, gas injection system 40, and vacuum pumping system 58. Substrate 25 can be, for example, a semiconductor substrate, a wafer, or a liquid crystal display (LCD). Process tool 10 can be, for example, configured to facilitate the generation of plasma in processing region 45 adjacent a surface of substrate 25, where plasma is formed via collisions between heated electrons and an ionizable gas. An ionizable gas or mixture of gases is introduced via gas injection system 40, and the process pressure is adjusted. Desirably, plasma is utilized to create materials specific to a predetermined materials process, and to aid either the deposition of material to substrate 25 or the removal of material from the exposed surfaces of substrate 25. For example, controller 55 can be used to control vacuum pumping system 58 and gas injection system 40.
Substrate 25 can be, for example, transferred into and out of process tool 10 through a slot valve (not shown) and chamber feedthrough (not shown) via robotic substrate transfer system where it is received by substrate lift pins (not shown) housed within substrate holder 20 and mechanically translated by devices housed therein. Once substrate 25 is received from substrate transfer system, it is lowered to an upper surface of substrate holder 20.
For example, substrate 25 can be affixed to the substrate holder 20 via an electrostatic clamping system 28. Furthermore, substrate holder 20 can further include a cooling system including a recirculating coolant flow that receives heat from substrate holder 20 and transfers heat to a heat exchanger system (not shown), or when heating, transfers heat from the heat exchanger system. Moreover, gas can be delivered to the backside of the substrate via a backside gas system 26 to improve the gasgap thermal conductance between substrate 25 and substrate holder 20. Such a system can be utilized when temperature control of the substrate is required at elevated or reduced temperatures. For example, temperature control of the substrate can be useful at temperatures in excess of the steadystate temperature achieved due to a balance of the heat flux delivered to the substrate 25 from the plasma and the heat flux removed from substrate 25 by conduction to the substrate holder 20. In other embodiments, heating elements, such as resistive heating elements, or thermoelectric heaters/coolers can be included.
As shown in FIG. 2, substrate holder 20 includes an electrode through which RF power is coupled to plasma in processing region 45. For example, substrate holder 20 can be electrically biased at an RF voltage via the transmission of RF power from RF generator 30 through impedance match network 32 to substrate holder 20. The RF bias can serve to heat electrons to form and maintain plasma. In this configuration, the system can operate as a reactive ion etch (RIE) reactor, where the chamber and upper gas injection electrode serve as ground surfaces. A typical frequency for the RF bias can range from 1 MHz to 100 MHz and is preferably 13.56 MHz.
Alternately, RF power can be applied to the substrate holder electrode at multiple frequencies. Furthermore, impedance match network 32 serves to maximize the transfer of RF power to plasma in processing chamber 10 by minimizing the reflected power. Various match network topologies (e.g., Ltype, πtype, Ttype, etc.) and automatic control methods can be utilized.
With continuing reference to FIG. 2, process gas can be, for example, introduced to processing region 45 through gas injection system 40. Process gas can, for example, include a mixture of gases such as argon, CF<sub>4 </sub>and O<sub>2</sub>, or argon, C<sub>4</sub>F<sub>8 </sub>and O<sub>2 </sub>for oxide etch applications, or other chemistries such as, for example, O<sub>2</sub>/CO/Ar/C<sub>4</sub>F<sub>8</sub>, O<sub>2</sub>/CO/Ar/C<sub>5</sub>F<sub>8</sub>, O<sub>2</sub>/CO/Ar/C<sub>4</sub>F<sub>6</sub>, O<sub>2</sub>/Ar/C<sub>4</sub>F<sub>6</sub>, N<sub>2</sub>/H<sub>2</sub>.Gas injection system 40 includes a showerhead, where process gas is supplied from a gas delivery system (not shown) to the processing region 45 through a gas injection plenum (not shown), a series of baffle plates (not shown) and a multiorifice showerhead gas injection plate (not shown).
Vacuum pump system 58 can, for example, include a turbomolecular vacuum pump (TMP) capable of a pumping speed up to 5000 liters per second (and greater) and a gate valve for throttling the chamber pressure. In conventional plasma processing devices utilized for dry plasma etch, a 1000 to 3000 liter per second TMP is generally employed. TMPs are useful for low pressure processing, typically less than 50 mTorr. At higher pressures, the TMP pumping speed falls off dramatically. For high pressure processing (i.e., greater than 100 mTorr), a mechanical booster pump and dry roughing pump can be used. Furthermore, a device for monitoring chamber pressure (not shown) is coupled to the process chamber 10. The pressure measuring device can be, for example, a Type 628B Baratron absolute capacitance manometer commercially available from MKS Instruments, Inc. (Andover, MA).
As depicted in FIG. 1, process performance monitoring system 100 includes plurality of sensors 50 coupled to process tool 10 to measure tool data and controller 55 coupled to the sensors 50 to receive tool data. The sensors 50 can include both sensors that are intrinsic to the process tool 10 and sensors extrinsic to the process tool 10. Sensors intrinsic to process tool 10 can include those sensors pertaining to the functionality of process tool 10 such as the measurement of the Helium backside gas pressure, Helium backside flow, electrostatic chuck (ESC) voltage, ESC current, substrate holder 20 temperature (or lower electrode (LEL) temperature), coolant temperature, upper electrode (UEL) temperature, forward RF power, reflected RF power, RF selfinduced DC bias, RF peaktopeak voltage, chamber wall temperature, process gas flow rates, process gas partial pressures, chamber pressure, capacitor settings (i.e., C<sub>1 </sub>and C<sub>2 </sub>positions), a focus ring thickness, RF hours, focus ring RF hours, and any statistic thereof. Alternatively, sensors extrinsic to process tool 10 can include those not directly related to the functionality of process tool 10 such as a light detection device 34 for monitoring the light emitted from the plasma in processing region 45 as shown in FIG. 2, or an electrical measurement device 36 for monitoring the electrical system of process tool 10 as shown in FIG. 2.
The light detection device 34 can include a detector such as a (silicon) photodiode or a photomultiplier tube (PMT) for measuring the total light intensity emitted from the plasma. The light detection device 34 can further include an optical filter such as a narrowband interference filter. In an alternate embodiment, the light detection device 34 includes a line CCD (charge coupled device) or CID (charge injection device) array and a light dispersing device such as a grating or a prism. Additionally, light detection device 34 can include a monochromator (e.g., grating/detector system) for measuring light at a given wavelength, or a spectrometer (e.g., with a rotating grating) for measuring the light spectrum such as, for example, the device described in U.S. Pat. No. 5,888,337.
The light detection device 34 can include a high resolution OES sensor from Peak Sensor Systems. Such an OES sensor has a broad spectrum that spans the ultraviolet (UV), visible (VIS) and near infrared (NIR) light spectrums. In the Peak Sensor System, the resolution is approximately 1.4 Angstroms, that is, the sensor is capable of collecting 5550 wavelengths from 240 to 1000 nm. In the Peak System Sensor, the sensor is equipped with high sensitivity miniature fiber optic UVVISNIR spectrometers which are, in turn, integrated with 2048 pixel linear CCD arrays.
The spectrometers in one embodiment of the present invention receive light transmitted through single and bundled optical fibers, where the light output from the optical fibers is dispersed across the line CCD array using a fixed grating. Similar to the configuration described above, light emitting through an optical vacuum window is focused onto the input end of the optical fibers via a convex spherical lens. Three spectrometers, each specifically tuned for a given spectral range (UV, VIS and NIR), form a sensor for a process chamber. Each spectrometer includes an independent A/D converter. And lastly, depending upon the sensor utilization, a full emission spectrum can be recorded every 0.1 to 1.0 seconds.
The electrical measurement device 36 can include, for example, a current and/or voltage probe, a power meter, or spectrum analyzer. For example, plasma processing systems often employ RF power to form plasma, in which case, an RF transmission line, such as a coaxial cable or structure, is employed to couple RF energy to the plasma through an electrical coupling element (i.e., inductive coil, electrode, etc.). Electrical measurements using, for example, a currentvoltage probe, can be exercised anywhere within the electrical (RF) circuit, such as within an RF transmission line. Furthermore, the measurement of an electrical signal, such as a time trace of voltage or current, permits the transformation of the signal into frequency space using discrete Fourier series representation (assuming a periodic signal). Thereafter, the Fourier spectrum (or for a time varying signal, the frequency spectrum) can be monitored and analyzed to characterize the state of material processing system 1. A voltagecurrent probe can be, for example, a device as described in detail in pending U.S. Application Ser. No. 60/259,862 filed on Jan. 8, 2001, and U.S. Pat. No. 5,467,013, each of which is incorporated herein by reference in its entirety.
In alternate embodiments, electrical measurement device 36 can include a broadband RF antenna useful for measuring a radiated RF field external to material processing system 1. A commercially available broadband RF antenna is a broadband antenna such as Antenna Research Model RAM220 (0.1 MHz to 300 MHz).
In general, the plurality of sensors 50 can include any number of sensors, intrinsic and extrinsic, which can be coupled to process tool 10 to provide tool data to the controller 55.
Controller 55 includes a microprocessor, memory, and a digital I/O port (potentially including D/A and/or A/D converters) capable of generating control voltages sufficient to communicate and activate inputs to material processing system 1 as well as monitor outputs from material processing system 1. As shown in FIG. 2, controller 55 can be coupled to and exchange information with RF generator 30, impedance match network 32, gas injection system 40, vacuum pump system 58, backside gas delivery system 26, electrostatic clamping system 28, light detection device 34, and electrical measurement device 36. A program stored in the memory is utilized to interact with the aforementioned components of a material processing system 1 according to a stored process recipe. One example of controller 55 is a DELL PRECISION WORKSTATION 530™, available from Dell Corporation, Austin, Tex. Controller 55 can be locally located relative to the material processing system 1, or it can be remotely located relative to the material processing system 1. For example, controller 55 can exchange data with material processing system 1 using at least one of a direct connection, an intranet, and the internet. Controller 55 can be coupled to an intranet at, for example, a customer site (i.e., a device maker, etc.), or it can be coupled to an intranet at, for example, a vendor site (i.e., an equipment manufacturer). Additionally, for example, controller 55 can be coupled to the internet. Furthermore, another computer (i.e., controller, server, etc.) can, for example, access controller 55 to exchange data via at least one of a direct connection, an intranet, and the internet.
As shown in FIG. 3, material processing system 1 can include a magnetic field system 60. For example, the magnetic field system 60 can include a stationary, or either a mechanically or electrically rotating DC magnetic field in order to potentially increase plasma density and/or improve material processing uniformity. Moreover, controller 55 can be coupled to magnetic field system 60 in order to regulate the field strength or speed of rotation.
As shown in FIG. 4, the material processing system can include an upper electrode 70. For example, RF power can be coupled from RF generator 72 through impedance match network 74 to upper electrode 70. A frequency for the application of RF power to the upper electrode preferably ranges from 10 MHz to 200 MHz and is preferably 60 MHz. Additionally, a frequency for the application of power to the lower electrode can range from 0.1 MHz to 30 MHz and is preferably 2 MHz. Moreover, controller 55 can be coupled to RF generator 72 and impedance match network 74 in order to control the application of RF power to upper electrode 70.
As shown in FIG. 5, the material processing system of FIG. 1 can include an inductive coil 80. For example, RF power can be coupled from RF generator 82 through impedance match network 84 to inductive coil 80, and RF power can be inductively coupled from inductive coil 80 through dielectric window (not shown) to plasma processing region 45. A frequency for the application of RF power to the inductive coil 80 preferably ranges from 10 MHz to 100 MHz and is preferably 13.56 MHz. Similarly, a frequency for the application of power to the chuck electrode preferably ranges from 0.1 MHz to 30 MHz and is preferably 13.56 MHz. In addition, a slotted Faraday shield (not shown) can be employed to reduce capacitive coupling between the inductive coil 80 and plasma. Moreover, controller 55 can be coupled to RF generator 82 and impedance match network 84 in order to control the application of power to inductive coil 80. In an alternate embodiment, inductive coil 80 can be a “spiral” coil or “pancake” coil in communication with the plasma processing region 45 from above as in a transformer coupled plasma (TCP) reactor.
Alternately, the plasma can be formed using electron cyclotron resonance (ECR). In yet another embodiment, the plasma is formed from the launching of a Helicon wave. In yet another embodiment, the plasma is formed from a propagating surface wave.
As discussed above, the process performance monitoring system 100 includes plurality of sensors 50 and controller 55, where the sensors 50 are coupled to process tool 10 and the controller 55 is coupled to the sensors 50 to receive tool data. The controller 55 is further capable of executing at least one algorithm to optimize the tool data received from the sensors 50, determine a relationship (model) between the tool data, and use the relationship (model) for fault detection.
When encountering large sets of data involving a substantive number of variables, multivariate analysis (MVA) is often applied. For example, one such MVA technique includes Principal Components Analysis (PCA). In PCA, a model can be assembled to extract from a large set of data a signal exhibiting the greatest variance in the multidimensional parameter space.
For example, each set of data parameters for a given substrate run, or instant in time, can be stored as a row in a matrix <o ostyle="single">X</o> and, hence, once the matrix <o ostyle="single">X</o> is assembled, each row represents a different substrate run, or instant in time (or observation), and each column represents a different data parameter (or data variable) corresponding to the plurality of sensors 50. Therefore, matrix <o ostyle="single">X</o> is a rectangular matrix of dimensions q by r, where q represents the row dimension and r represents the column dimension. Once the data is stored in the matrix, the data is generally meancentered and/or normalized. The process of meancentering the data stored in a matrix column involves computing a mean value of the column elements and subtracting the mean value from each element. Moreover, the data residing in a column of the matrix can be normalized by determining the standard deviation of the data in the column. For example, a PCA model can be constructed in a manner similar to that described in U.S. Provisional Application Ser. No. 60/470,901, entitled “A process system health index and method of using the same”, filed on May 16, 2002. The entire content of this application is hereby incorporated herein by reference.
Using the PCA technique, the correlation structure within matrix <o ostyle="single">X</o> is determined by approximating matrix <o ostyle="single">X</o> with a matrix product ( <o ostyle="single">TP</o><sup>T</sup>) of lower dimensions plus an error matrix Ē, viz.<FORM><o ostyle="single">X</o>= <o ostyle="single">TP</o><sup>T</sup>+Ē, (1a)</FORM>
 where
<maths id="MATHUS00001" num="00001"><math overflow="scroll"><mtable><mtr><mtd><mrow><mrow><msub><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><mfrac><mrow><msubsup><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>*</mo></msubsup><mo></mo><msub><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>M</mi><mo>,</mo><mi>j</mi></mrow></msub></mrow><msub><mi>σ</mi><mrow><mi>x</mi><mo>,</mo><mi>j</mi></mrow></msub></mfrac><mo>)</mo></mrow></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mo>(</mo><mrow><mn>1</mn><mo></mo><mi>b</mi></mrow><mo>)</mo></mrow></mtd></mtr></mtable></math></maths>
“i” represents the i<sup>th </sup>row, “j” represents the j<sup>th </sup>column, subscript “M” represents mean value, σ represents standard deviation, <o ostyle="single">X</o>* is a the raw data, <o ostyle="single">T</o> is a (q by p) matrix of scores that summarizes the <o ostyle="single">X</o>variables, and <o ostyle="single">P</o> is a (r by p, where p≦r) matrix of loadings showing the influence of the variables.
In general, the loadings matrix <o ostyle="single">P</o> can be shown to comprise the eigenvectors of the covariance matrix of <o ostyle="single">X</o>, where the covariance matrix <o ostyle="single">S</o> can be shown to be<FORM><o ostyle="single">S</o>= <o ostyle="single">X</o><sup>T</sup><o ostyle="single">X</o>. (2)</FORM>
The covariance matrix <o ostyle="single">S</o> is a real, symmetric matrix; and, therefore, the covariance matrix can be described as<FORM><o ostyle="single">S</o>= <o ostyle="single">UΛU</o><sup>T</sup>, (3)</FORM>
 where the real, symmetric eigenvector matrix Ū comprises the normalized eigenvectors as columns and <o ostyle="single">Λ</o> is a diagonal matrix comprising the eigenvalues corresponding to each eigenvector along the diagonal. Using equations (1a) and (3) (for a full matrix of p=r; i.e. no error matrix), one can show that<FORM><o ostyle="single">P</o>=Ū (4)</FORM><FORM>and</FORM><FORM><o ostyle="single">T</o><sup>T</sup><o ostyle="single">T</o>= <o ostyle="single">Λ</o>. (5)</FORM>
A consequence of the above eigenanalysis is that each eigenvalue represents the variance of the data in the direction of the corresponding eigenvector within ndimensional space. Hence, the largest eigenvalue corresponds to the greatest variance in the data within the multidimensional space whereas the smallest eigenvalue represents the smallest variance in the data. By definition, all eigenvectors are orthogonal, and therefore, the second largest eigenvalue corresponds to the second greatest variance in the data in the direction of the corresponding eigenvector, which is, of course, normal to the direction of the first eigenvector. In general, for such analysis, the first several (three to four, or more) largest eigenvalues are chosen to approximate the data and, as a result of the approximation, an error Ē is introduced to the representation in equation (1a). In summary, once the set of eigenvalues and their corresponding eigenvectors are determined, a set of the largest eigenvalues can be chosen and the error matrix Ē of equation (1a) can be determined.
An example of commercially available software which supports PCA modeling is MATLAB™ (commercially available from The Mathworks, Inc., Natick, Mass.), and PLS Toolbox (commercially available from Eigenvector Research, Inc., Manson, Wash.).
Additionally, once a PCA model is established, commercially available software, such as MATLAB™, is further capable of producing as output other statistical quantities such as the Hotelling T<sup>2 </sup>parameter for an observation, or the Qstatistic. The Qstatistic for an observation can be calculated as follows<FORM>Q=Ē<sup>T</sup>Ē, (6a)</FORM>
 where<FORM>Ē= <o ostyle="single">X</o>(Ī− <o ostyle="single">PP</o><sup>T</sup>), (6b)</FORM>
 and Ī is the identity matrix of appropriate size. For example, a PCA model (loadings matrix <o ostyle="single">P</o>, etc.) can be constructed using a “training” set of data (i.e. assemble <o ostyle="single">X</o> for a number of observations and determine a PCA model using MATLAB™). Once the PCA model is constructed, projections of a new observation onto the PCA model can be utilized to determine a residual matrix Ē, as in equation (1a).
Similarly, the Hotelling T<sup>2 </sup>can be calculated as follows
<maths id="MATHUS00002" num="00002"><math overflow="scroll"><mtable><mtr><mtd><mrow><mrow><msubsup><mi>T</mi><mi>i</mi><mn>2</mn></msubsup><mo>=</mo><mrow><munderover><mo>∑</mo><mrow><mi>a</mi><mo>=</mo><mn>1</mn></mrow><mi>p</mi></munderover><mo></mo><mfrac><msubsup><mover><mi>T</mi><mi>_</mi></mover><mi>ia</mi><mn>2</mn></msubsup><msubsup><mi>s</mi><mi>ta</mi><mn>2</mn></msubsup></mfrac></mrow></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mo>(</mo><mrow><mn>7</mn><mo></mo><mi>a</mi></mrow><mo>)</mo></mrow></mtd></mtr></mtable></math></maths>
 where<FORM><o ostyle="single">T</o>= <o ostyle="single">XP</o>, (7b)</FORM>
 and T<sub>ia </sub>is the score (from equation (7b)) for the i<sup>th </sup>observation (substrate run, instant in time, etc.; i.e., i=1 to q) and the a<sup>th </sup>model dimension (i.e., a=1 to p), and S<sup>2</sup><sub>ta </sub>is the variance of <o ostyle="single">T</o><sub>a</sub>. For example, a PCA model (loadings matrix <o ostyle="single">P</o>, etc.) can be constructed using a “training” set of data (i.e. assemble <o ostyle="single">X</o> for a number of observations and determine a PCA model using MATLAB™). Once the PCA model is constructed, projections of a new observation onto the PCA model can be utilized to determine a new scores matrix <o ostyle="single">T</o>.
Typically, a statistical quantity, such as the Qstatistic, or the Hotelling T<sup>2</sup>, is monitored for a process, and, when this quantity exceeds a predetermined control limit, a fault for the process is detected.
FIG. 6A shows an example of conventional use of a PCA model to monitor the Qstatistic (Qfactor) of a process in order to determine faults in the process. In the example of FIG. 6A, the model is applied to process data acquired from Unity II DRM (Dipole Ring Magnet) CCP (Capacitively Coupled Plasma) processing systems (commercially available from Tokyo Electron Limited; see FIG. 3) that perform a patterned oxide etch with a C<sub>4</sub>F<sub>8</sub>/CO/Ar+O<sub>2 </sub>based chemistry. This processing system operates in a batch mode with a fixed process recipe for each lot. Typically, a single recipe is utilized from lot to lot for a particular process step in the manufacture of a device. The same processing system is frequently utilized for many different device layers and steps, but for each process step, the recipe remains the same.
The data parameters collected include the chamber pressure, applied power, various temperatures, and many other variables relating to the pressure, power, and temperature control as shown in Table 1.
The process recipe used in this example has three main steps: a photoresist cleaning step, a main etch step, and a photoresist stripping step. The scope of this example applied to the main etch step, but it is not limited to this particular step or any particular step and is, therefore, applicable to other steps as well.
For each process step, an observation mean and observation standard deviation of a time trace for each data parameter (or tool variable) was calculated from roughly 160 samples for each substrate. The beginning portion of the time trace for each data parameter, where the RF power increases, was trimmed in these statistical calculations in an attempt to remove the variation due to the power when it is turned on.
In the example of FIG. 6A, a PCA model was performed for the first 500 substrates using the same recipe in a single processing system. The standard PCA methods implemented in MATLAB™ were used, with mean centering and unit variance scaling. Also, the standard Q residuals (SPE) and Q contributions were calculated using the Eigenvector Research PLS Toolbox offered by Eigenvector Research as an addon to MATLAB™.
In the example of FIG. 6A, the PCA model was constructed from the first 500 substrates in a first processing system and was applied to all 3200 substrates from this processing system. As seen in this figure, the resulting Q statistic exceeds the 95% confidence limit in the model within less than 250 substrates after the PCA model was built (i.e. by substrate number 750), and never returns to below that level. In addition, distinct outliers and distinct steplike changes are apparent. Thus, FIG. 6A demonstrates that while a conventional PCA model constructed as described above can be used to monitor the Qstatistic, there exist periods of time where the statistical parameter deviates above the control limit never to return below. Indeed, any of the above described statistics (e.g., the Qstatistic, or the Hotelling T<sup>2 </sup>parameter) can be monitored using a given model for a specific process in a specific processing system, but will eventually deviate above the control limit never to return below. Thereafter, the model is no longer applicable to the given process and given processing system.
While methods are known for preserving the usefulness of the PCA model over long process runs, the present inventors have recognized that these methods are not practical for commercial application to semiconductor manufacturing process control. For example, using an adaptive model technique, the PCA model can be actually rebuilt with each process run in order to update the model on the fly during the process. While this adaptive modeling technique may generally stabilize the statistical monitoring within a given control limit, it requires computational resources not practical for commercial processes.
Another technique for maintaining the usefulness of the statistical monitoring of FIG. 6A is to employ a more complicated control limit scheme. Specifically, the control limit can be reset for each process run based on a predicted degradation of the PCA model. While this method will avoid the indication of an outofprocess condition due to degradation of the PCA model, changing the control limit with each process run requires a complex scheme that is also impractical for commercial processes.
Thus, the present inventors have recognized that conventional methods for adapting a PCA model to enable statistical monitoring over long process runs is impractical for commercial processes. More specifically, the present inventors have discovered that the standard approach to centering and scaling the data in a PCA matrix has not enabled the development of a robust model capable of use for long periods of time (i.e., substantive number of substrate runs).
In an embodiment of the present invention, an adaptive multivariate analysis is described for preparing a robust PCA model. Therein, the centering and scaling coefficients are updated using an adaptation scheme. The mean values (utilized for centering) for each summary statistic are updated from one observation to the next using a filter, such as an exponentially weighted moving average (EWMA) filter shown as follows:<FORM><o ostyle="single">X</o><sub>M,j,n</sub>=λ <o ostyle="single">X</o><sub>M,j,n−1</sub>+(1−λ)<o ostyle="single">X</o><sub>j,n</sub>, (8)</FORM>
 where <o ostyle="single">X</o><sub>M,j,n </sub>represents the calculated model mean value (“M”) of the j<sup>th </sup>data parameter at the current run (or observation “n”), <o ostyle="single">X</o><sub>M,j,n−1 </sub>represents the calculated model mean value (“M”) of the j<sup>th </sup>data parameter at the previous run (or observation “n−1”), <o ostyle="single">X</o><sub>j,n </sub>represents the current value of the j<sup>th </sup>data parameter for the current run, and λ is a weighting factor ranging from a value of 0 to 1. For example, when λ=1, the model mean value utilized for centering each data parameter is the previously used value, and, when λ=0, the model mean value utilized for centering each data parameter is the current measured value.
The model standard deviations (utilized for scaling) for each summary statistic are updated using the following recursive standard deviation filter
<maths id="MATHUS00003" num="00003"><math overflow="scroll"><mtable><mtr><mtd><mrow><mrow><msub><mi>σ</mi><mrow><mi>X</mi><mo>,</mo><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><msqrt><mrow><mrow><msup><mrow><mo>(</mo><msub><mi>σ</mi><mrow><mi>X</mi><mo>,</mo><mi>j</mi><mo>,</mo><mrow><mi>n</mi><mo></mo><mn>1</mn></mrow></mrow></msub><mo>)</mo></mrow><mn>2</mn></msup><mo></mo><mrow><mo>(</mo><mfrac><mrow><mi>k</mi><mo></mo><mn>2</mn></mrow><mrow><mi>k</mi><mo></mo><mn>1</mn></mrow></mfrac><mo>)</mo></mrow></mrow><mo>+</mo><mrow><mfrac><mn>1</mn><mi>k</mi></mfrac><mo></mo><msup><mrow><mo>(</mo><mrow><msub><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mo></mo><msub><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>M</mi><mo>,</mo><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub></mrow><mo>)</mo></mrow><mn>2</mn></msup></mrow></mrow></msqrt></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mtd></mtr></mtable></math></maths>
 where σ<sub>X,j,n </sub>represents the calculated model standard deviation of the j<sup>th </sup>data parameter for the current run (or observation “n”), σ<sub>X,j,n−1 </sub>represents the calculated model standard deviation of the j<sup>th </sup>data parameter for the previous run (or observation “n−1”), n represents the run (or observation) number, and k represents a filter constant. The filter constant k can, for example, be selected as a constant less than or equal to N, where N represents the number of substrate runs, or observations, utilized to construct the PCA model.
<tables id="TABLEUS00001" num="00001"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="42pt" align="left"/><colspec colname="2" colwidth="70pt" align="left"/><colspec colname="3" colwidth="105pt" align="left"/><thead><row><entry namest="1" nameend="3" rowsep="1">TABLE 1</entry></row><row><entry namest="1" nameend="3" align="center" rowsep="1"/></row><row><entry>Area</entry><entry>Variable</entry><entry>Description</entry></row><row><entry namest="1" nameend="3" align="center" rowsep="1"/></row></thead><tbody valign="top"><row><entry>Gas Flow</entry><entry>PRESSURE</entry><entry>Chamber Pressure</entry></row><row><entry>and</entry><entry>APC</entry><entry>Throttle Valve Angle</entry></row><row><entry>Pressure</entry><entry>Ar</entry><entry>Ar Flow Rate</entry></row><row><entry/><entry>C4F8</entry><entry>C4F8 Flow Rate</entry></row><row><entry/><entry>CO</entry><entry>CO Flow Rate</entry></row><row><entry>Power and</entry><entry>RFFORWARDLO</entry><entry>Lower Electrode Power</entry></row><row><entry>Matching</entry><entry>C1POSITIONLO</entry><entry>Matching Network Capacitor 1</entry></row><row><entry/><entry>C2POSITIONLO</entry><entry>Matching Network Capacitor 2</entry></row><row><entry/><entry>MAGNITUDE</entry><entry>Matcher Magnitude</entry></row><row><entry/><entry>PHASE</entry><entry>Matcher Phase</entry></row><row><entry/><entry>RFVDCLO</entry><entry>Lower Electrode DC Voltage</entry></row><row><entry/><entry>RFVPPLO</entry><entry>Lower Electrode Peak</entry></row><row><entry/><entry/><entry>to Peak Voltage</entry></row><row><entry>ES Chuck</entry><entry>ESCCURRENT</entry><entry>Electrostatic Chuck Current</entry></row><row><entry/><entry>ESCVOLTAGE</entry><entry>Electrostatic Chuck Voltage</entry></row><row><entry>Temperature</entry><entry>LOWERTEMP</entry><entry>Lower Electrode Temperature</entry></row><row><entry>and Cooling</entry><entry>UPPERTEMP</entry><entry>Upper Electrode Temperature</entry></row><row><entry/><entry>WALLTEMP</entry><entry>Wall Temperature</entry></row><row><entry/><entry>COOLGASFLOW1</entry><entry>He Edge Cooling Flow Rate</entry></row><row><entry/><entry>COOLGASFLOW2</entry><entry>He Center Flow Rate</entry></row><row><entry/><entry>COOLGASP1</entry><entry>He Edge Cooling Gas Pressure</entry></row><row><entry/><entry>COOLGASP2</entry><entry>He Center Cooling Gas Pressure</entry></row><row><entry namest="1" nameend="3" align="center" rowsep="1"/></row></tbody></tgroup></table></tables>
FIG. 6B shows the same example of using a PCA model to monitor the Qstatistic that was presented in FIG. 6A, except that the centering and scaling coefficients are updated using an adaptation scheme in accordance with the present invention. As seen in this figure, after the first 500 wafers, when the centering and scaling constants are adapted using adaptive centering and scaling coefficients described above (λ=0.92; k=500), the Qstatistic chart is substantially more stable across all of the remaining substrates, and the data predominantly resides within the same limit. The inventive adaptation scheme provides similar improvement to other statistical monitoring schemes (e.g., the Hotelling T<sup>2 </sup>parameter). Thus, adaptation of the PCA model in accordance with the present invention allows for a more robust PCA model that can be used for long process runs.
Referring now to FIGS. 6A and 6B together, the first excursion of substantive magnitude is the run with the largest Q value in the adaptive case, which occurs for substrate 1492. In the residual contribution plots for both the static and adaptive cases (see FIG. 7), C1POSITIONLO mean, RFVPPLO mean, and ESCCURRENT are the extreme values. The arbitrarily scaled summary statistics for the latter two data parameters are plotted in FIG. 8. These three data parameters account for the large spikes in the data at four points, which could indicate an issue with the impedance match network system. This type of outlier is clear in both Q charts, but only the adaptive case allows for a fixed limit (e.g., 95% confidence limit) for all time.
In another embodiment, the relative change in the centering and scaling coefficients can be calculated to alert the operator or engineer that step summary statistics have shifted between two runs, or observations. For each centering coefficient, this is done by subtracting the estimate at an initial run from the estimate at a final run, then scaling each difference by the standard deviation used for scaling that step statistic for the initial run, viz.
<maths id="MATHUS00004" num="00004"><math overflow="scroll"><mtable><mtr><mtd><mrow><mrow><msub><mi>M</mi><mover><mi>X</mi><mi>_</mi></mover></msub><mo>=</mo><mrow><mo></mo><mfrac><mrow><msub><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>M</mi><mo>,</mo><mi>j</mi><mo>,</mo><mi>b</mi></mrow></msub><mo></mo><msub><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>M</mi><mo>,</mo><mi>j</mi><mo>,</mo><mi>a</mi></mrow></msub></mrow><msub><mi>σ</mi><mrow><mi>j</mi><mo>,</mo><mi>a</mi></mrow></msub></mfrac><mo></mo></mrow></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mtd></mtr></mtable></math></maths>
 where M<sub><o ostyle="single">X</o></sub>is the model mean movement metric, <o ostyle="single">X</o><sub>M,j,a </sub>represents the model mean value for the j<sup>th </sup>data parameter for the a<sup>th </sup>substrate, <o ostyle="single">X</o><sub>M,j,b </sub>represents the model mean value for the j<sup>th </sup>data parameter for the b<sup>th </sup>substrate, and σ<sub>j,n </sub>represents the model standard deviation for the j<sup>th </sup>data parameter for the a<sup>th </sup>substrate.
For the scaling coefficient, the calculation is the difference in standard deviations scaled with the mean used for centering that step statistic, viz.
<maths id="MATHUS00005" num="00005"><math overflow="scroll"><mtable><mtr><mtd><mrow><mrow><msub><mi>M</mi><mi>σ</mi></msub><mo>=</mo><mrow><mo></mo><mfrac><mrow><msub><mi>σ</mi><mrow><mi>j</mi><mo>,</mo><mi>b</mi></mrow></msub><mo></mo><msub><mi>σ</mi><mrow><mi>j</mi><mo>,</mo><mi>a</mi></mrow></msub></mrow><msub><mover><mi>X</mi><mi>_</mi></mover><mrow><mi>M</mi><mo>,</mo><mi>j</mi><mo>,</mo><mi>a</mi></mrow></msub></mfrac><mo></mo></mrow></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mtd></mtr></mtable></math></maths>
 where σ<sub>j,b </sub>represents the model standard deviation for the j<sup>th </sup>data parameter for the b<sup>th </sup>substrate.
These results are then displayed in a Pareto chart to identify the variables that exhibited the largest relative change during the period. For example, this supplement to the typical contribution plot can give the operator insight on the global changes in the set of data parameters. In contrast, the contribution plot indicates the local deviation in a particular run.
Referring again to FIGS. 6A and 6B, the next type of excursion is observed at steps in the input summary data. In the static case, these excursions are clearly evident in the Q chart, although automating detection of these changes proves to be quite difficult. In the adaptive case, there are only 4 periods where the Q statistic violates the confidence limit for more than 5 consecutive substrates (starting at substrates 1880, 2535, 2683, and 2948). When the model mean movement metric is calculated about each of these four periods (from the substrate before the period to the substrate after the period), the most extreme values occur for 1880 and 2946 on C1POSITIONLO mean and WALLTEMP mean, respectively. FIG. 9A presents the model mean movement metric and the model standard deviation metric for all of the data parameters. The arbitrarily scaled summary data for the two data parameters is displayed in FIG. 9B. The two major changes in the Q statistic seem to be dominated by these two data parameters. For example, the shift in these data parameters may have been caused by a tool cleaning, e.g., replacing key parts and changing the electrical or heat transfer characteristics of the processing system. Although the temperature is regulated in the processing system, this is done only at the upper electrode and walls. The lower temperature is not controlled and could be affected by different materials or part configurations in the processing system. The contribution plots for the static case and the adaptive case for substrate 1880 both are dominated by the C1POSITIONLO. For substrate 2948, WALLTEMP is the dominant contribution in the adaptive case, but in the static case it is only slightly larger than the C1POSITIONLO value (which does not change at this run).
In addition to providing a more robust PCA model that can be used for statistical monitoring over long process runs, the adaptive technique also provides use of the same PCA model among different processing systems. FIGS. 10 and 11 illustrate a second example of the present invention wherein, after looking at the major changes over time for one processing system, the same model from the first 500 substrates was then applied to a set of 800 substrates from a second processing system. As seen in FIG. 10, the plot of the Q statistic for the static model is many orders of magnitude greater than the confidence limit for the model. Thus, statistical parameters derived from one conventional model for a given process in a given processing system are not transferable for the same process to another processing system. Moreover, as with the example of FIG. 6A described above, rebuilding the PCA model for each processing system or employing a complex control limit scheme to adapt the PCA model of one system to another system is impractical. FIG. 11 shows the same model with the adaptive centering and scaling coefficients of the present invention applied. The data returns below the confidence limit after only 25 substrates (the typical load for a single cassette). Increasing λ may provide an even faster recovery, but may result in overshoot problems. Once below the confidence limit, the same gross outliers are still evident, but other variations such as the region between substrate 445 and 455 are highlighted as well.
With this same model applied to a second processing system, again a contribution plot can be used to identify the cause of the single point excursions as described above. The contribution plot based on the static model provides a number of data parameters with no clear single cause, and few of those data parameters identified exhibit the large outlier characteristics. The contribution based on the adaptive scheme clearly indicates two parameters: RFVPPLO mean and APC standard deviation. These outliers are consistent with a plasma leak where the voltage has a high value throughout the step and the pressure control is very choppy as it tries to control an unstable plasma.
In order to investigate the sudden shifts of the system, periods of consecutive violations were noted from the data in FIG. 11. Three different regions occurring at substrates 1, 91, and 446 had more than five consecutive points exceeding the confidence limit. The movement metric for the first 22 substrates, where the model was adapting to the new processing system values, highlighted significant changes in RFVPPLO mean, ESC_VOLTAGE mean, C2POSITIONLO mean, ESCCURRENT mean, and RFFORWARDLO standard deviation, indicating that many of the electrical characteristics have offset between the two processing systems. The period beginning with substrate 91 has two of the large spikes within 5 runs, causing the movement metric to identify adaptation to the outliers. In the final region starting at substrate 446, the metric points to the APC mean and the COOLGASFLOW1 standard deviation. The substrate summary data for these variables exhibit a crisp jump at this time. Further analysis would be necessary to speculate on a type of problem that would be characterized by a shift in the throttle valve angle used to control pressure and the variability in the helium flow used to control temperature on the lower electrode.
Thus, the present inventors have recognized that a static PCA model is inadequate for monitoring and detecting local faults on an industrial material processing system. The confidence limit on the model is quickly exceeded after the model is constructed; furthermore, the confidence limit is inappropriate when the model is applied to another processing system. The mean and standard deviation values, used for univariate scaling, can be slowly adapted with new data. The adaptive centering and scaling method is sufficient to keep the distance to the model in the residual space (Q) stable, and the original model confidence limit is appropriate for detecting excursions. In addition, the Q contributions calculated from the adaptive method help discriminate the root cause data parameters of the local deviation instead of being coupled to the contributions of those data parameters that have global changes. Supplemental to the contribution plot, the movement metric identified input data parameters that had sharp step changes during periods of consecutive confidence limit violations.
FIG. 12 presents a flow chart describing a method of monitoring a processing system for processing a substrate during the course of semiconductor manufacturing. The method 500 begins at 510 with acquiring data from the processing system for a plurality of observations. The processing system can, for example, be an etch system, or it may be another processing system as described in FIG. 1. The data from the processing system can be acquired using a plurality of sensors coupled to the processing system and a controller. The data can, for example, comprise any measurable data parameter, and any statistic thereof (e.g., mean, standard deviation, skewness, kurtosis, etc.). Additional data can, for example, include optical emission spectra, RF harmonics of voltage and/or current measurements or radiated RF emission, etc. Each observation can pertain to a substrate run, instant in time, time average, etc.
At 520, a PCA model is constructed from the acquired data parameters by determining one or more principal components to represent the data at 530 and applying static centering and scaling coefficients, as described above, to the data parameters of the acquired data at 540. For example, a commercially available software such as MATLAB™ and PLS Toolbox can be utilized to construct the PCA model.
At 550, additional data is acquired from a processing system, and, at 555, adaptive centering and scaling coefficients are utilized when applying the PCA model to the acquired data parameters. At 560, at least one statistical quantity is determined from the additional data and the PCA model. For example, the additional data can be forward projected onto the one or more principal components to determine a set of scores, and the set of scores can be backward projected onto the principal components to determine one or more residual errors. Utilizing either the set of scores in conjunction with the model set of scores, or the one or more residual errors, at least one statistical quantity can be determined, such as the Qstatistic, or the Hotelling T<sup>2 </sup>parameter, for each additional observation.
At 570, a control limit can be set, and, at 580, at least one statistical quantity can be compared with the control limit. The control limit can be set using either subjective methods or empirical methods. For example, when using the Qstatistic, the control limit can be set at the 95% confidence limit (see, for instance, FIGS. 6A, 6B, and 11). Additionally, for example, when using the Hotelling T<sup>2 </sup>parameter, the control limit can be set at the 95% confidence limit. Alternatively, for example, the control limit can be established by assuming a theoretical distribution for the statistical quantity, such as a χ<sup>2</sup>distribution; however, the observed distribution should be verified with the theory. If the at least one statistical quantity exceeds the control limit, then a fault for the processing system is detected at 590, and an operator can be notified at 600.
FIG. 13 illustrates a computer system 1201 for implementing various embodiments of the present invention. The computer system 1201 may be used as the controller 55 to perform any or all of the functions of the controller described above. The computer system 1201 includes a bus 1202 or other communication mechanism for communicating information, and a processor 1203 coupled with the bus 1202 for processing the information. The computer system 1201 also includes a main memory 1204, such as a random access memory (RAM) or other dynamic storage device (e.g., dynamic RAM (DRAM), static RAM (SRAM), and synchronous DRAM (SDRAM)), coupled to the bus 1202 for storing information and instructions to be executed by processor 1203. In addition, the main memory 1204 may be used for storing temporary variables or other intermediate information during the execution of instructions by the processor 1203. The computer system 1201 further includes a read only memory (ROM) 1205 or other static storage device (e.g., programmable ROM (PROM), erasable PROM (EPROM), and electrically erasable PROM (EEPROM)) coupled to the bus 1202 for storing static information and instructions for the processor 1203.
The computer system 1201 also includes a disk controller 1206 coupled to the bus 1202 to control one or more storage devices for storing information and instructions, such as a magnetic hard disk 1207, and a removable media drive 1208 (e.g., floppy disk drive, readonly compact disc drive, read/write compact disc drive, compact disc jukebox, tape drive, and removable magnetooptical drive). The storage devices may be added to the computer system 1201 using an appropriate device interface (e.g., small computer system interface (SCSD, integrated device electronics (IDE), enhancedIDE (EIDE), direct memory access (DMA), or ultraDMA).
The computer system 1201 may also include special purpose logic devices (e.g., application specific integrated circuits (ASICs)) or configurable logic devices (e.g., simple programmable logic devices (SPLDs), complex programmable logic devices (CPLDs), and field programmable gate arrays (FPGAs)).
The computer system 1201 may also include a display controller 1209 coupled to the bus 1202 to control a display 1210, such as a cathode ray tube (CRT), for displaying information to a computer user. The computer system includes input devices, such as a keyboard 1211 and a pointing device 1212, for interacting with a computer user and providing information to the processor 1203. The pointing device 1212, for example, may be a mouse, a trackball, or a pointing stick for communicating direction information and command selections to the processor 1203 and for controlling cursor movement on the display 1210. In addition, a printer may provide printed listings of data stored and/or generated by the computer system 1201.
The computer system 1201 performs a portion or all of the processing steps of the invention (such as for example those described in relation to FIG. 13). in response to the processor 1203 executing one or more sequences of one or more instructions contained in a memory, such as the main memory 1204. Such instructions may be read into the main memory 1204 from another computer readable medium, such as a hard disk 1207 or a removable media drive 1208. One or more processors in a multiprocessing arrangement may also be employed to execute the sequences of instructions contained in main memory 1204. In alternative embodiments, hardwired circuitry may be used in place of or in combination with software instructions. Thus, embodiments are not limited to any specific combination of hardware circuitry and software.
As stated above, the computer system 1201 includes at least one computer readable medium or memory for holding instructions programmed according to the teachings of the invention and for containing data structures, tables, records, or other data described herein. Examples of computer readable media are compact discs, hard disks, floppy disks, tape, magnetooptical disks, PROMs (EPROM, EEPROM, flash EPROM), DRAM, SRAM, SDRAM, or any other magnetic medium, compact discs (e.g., CDROM), or any other optical medium, punch cards, paper tape, or other physical medium with patterns of holes, a carrier wave (described below), or any other medium from which a computer can read.
Stored on any one or on a combination of computer readable media, the present invention includes software for controlling the computer system 1201, for driving a device or devices for implementing the invention, and for enabling the computer system 1201 to interact with a human user (e.g., print production personnel). Such software may include, but is not limited to, device drivers, operating systems, development tools, and applications software. Such computer readable media further includes the computer program product of the present invention for performing all or a portion (if processing is distributed) of the processing performed in implementing the invention.
The computer code devices of the present invention may be any interpretable or executable code mechanism, including but not limited to scripts, interpretable programs, dynamic link libraries (DLLs), Java classes, and complete executable programs. Moreover, parts of the processing of the present invention may be distributed for better performance, reliability, and/or cost.
The term “computer readable medium” as used herein refers to any medium that participates in providing instructions to the processor 1203 for execution. A computer readable medium may take many forms, including but not limited to, nonvolatile media, volatile media, and transmission media. Nonvolatile media includes, for example, optical, magnetic disks, and magnetooptical disks, such as the hard disk 1207 or the removable media drive 1208. Volatile media includes dynamic memory, such as the main memory 1204. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that make up the bus 1202. Transmission media also may also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
Various forms of computer readable media may be involved in carrying out one or more sequences of one or more instructions to processor 1203 for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions for implementing all or a portion of the present invention remotely into a dynamic memory and send the instructions over a telephone line using a modem. A modem local to the computer system 1201 may receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal. An infrared detector coupled to the bus 1202 can receive the data carried in the infrared signal and place the data on the bus 1202. The bus 1202 carries the data to the main memory 1204, from which the processor 1203 retrieves and executes the instructions. The instructions received by the main memory 1204 may optionally be stored on storage device 1207 or 1208 either before or after execution by processor 1203.
The computer system 1201 also includes a communication interface 1213 coupled to the bus 1202. The communication interface 1213 provides a twoway data communication coupling to a network link 1214 that is connected to, for example, a local area network (LAN) 1215, or to another communications network 1216 such as the Internet. For example, the communication interface 1213 may be a network interface card to attach to any packet switched LAN. As another example, the communication interface 1213 may be an asymmetrical digital subscriber line (ADSL) card, an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of communications line. Wireless links may also be implemented. In any such implementation, the communication interface 1213 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
The network link 1214 typically provides data communication through one or more networks to other data devices. For example, the network link 1214 may provide a connection to another computer through a local network 1215 (e.g., a LAN) or through equipment operated by a service provider, which provides communication services through a communications network 1216. The local network 1214 and the communications network 1216 use, for example, electrical, electromagnetic, or optical signals that carry digital data streams, and the associated physical layer (e.g., CAT 5 cable, coaxial cable, optical fiber, etc). The signals through the various networks and the signals on the network link 1214 and through the communication interface 1213, which carry the digital data to and from the computer system 1201 maybe implemented in baseband signals, or carrier wave based signals. The baseband signals convey the digital data as unmodulated electrical pulses that are descriptive of a stream of digital data bits, where the term “bits” is to be construed broadly to mean symbol, where each symbol conveys at least one or more information bits. The digital data may also be used to modulate a carrier wave, such as with amplitude, phase and/or frequency shift keyed signals that are propagated over a conductive media, or transmitted as electromagnetic waves through a propagation medium. Thus, the digital data may be sent as unmodulated baseband data through a “wired” communication channel and/or sent within a predetermined frequency band, different than baseband, by modulating a carrier wave. The computer system 1201 can transmit and receive data, including program code, through the network(s) 1215 and 1216, the network link 1214, and the communication interface 1213. Moreover, the network link 1214 may provide a connection through a LAN 1215 to a mobile device 1217 such as a personal digital assistant (PDA) laptop computer, or cellular telephone.
Although only certain exemplary embodiments of this invention have been described in detail above, those skilled in the art will readily appreciate that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of this invention. Accordingly, all such modifications are intended to be included within the scope of this invention.