Abstract:
A technique for analyzing two or more data streams respectively generated from two or more components of a controllable process includes the following steps. In a first step, a statistical analysis is performed on each of the two or more data streams to generate first analysis results in the form of respective statistical results for the two or more data streams. In a second step, at least a portion of the statistical results from at least one of the two or more data streams is combined with at least a portion of the statistical results from at least another one of the two or more data streams to yield second analysis results. The controllable process is adjustable based on at least one of the first analysis results and the second analysis results.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates to process control and, more particularly, to hierarchical and incremental multivariate analysis for use in such process control. 
       BACKGROUND OF THE INVENTION 
       [0002]    In the semiconductor manufacturing process environment, there are several different distributed data monitors used to gather information (typically in the form of data streams) about different steps in the manufacturing process, tool operation, wafer defects, test results, etc. Significant improvements in the performance of this manufacturing process are achieved by appropriately analyzing the available streams using statistical techniques, and using this to drive process control. 
         [0003]    There has been a large amount of work on developing the appropriate statistical analytic solutions for different kinds of gathered data. An important statistical process control (SPC) method uses multivariate analysis on the time series and thresholds the resulting summary statistics to detect out-of-specification tool parameters, and uses this to control the tool operation. However, most of these schemes perform analysis on data gathered from one tool, i.e., analysis is performed on a data stream from one tool at a time. This leads to limitations in the SPC performance, as it deters cross-tool, cross-step, and cross-data-source analysis. 
       SUMMARY OF THE INVENTION 
       [0004]    Principles of the invention provide hierarchical and incremental statistical analysis for use in such process control. 
         [0005]    By way of example, in a first aspect of the invention, a method for analyzing two or more data streams respectively generated from two or more components of a controllable process comprises the following steps. In a first step, a statistical analysis is performed on each of the two or more data streams to generate first analysis results in the form of respective statistical results for the two or more data streams. In a second step, at least a portion of the statistical results from at least one of the two or more data streams is combined with at least a portion of the statistical results from at least another one of the two or more data streams to yield second analysis results. The controllable process is adjustable based on at least one of the first analysis results and the second analysis results. 
         [0006]    The statistical analysis may comprise a multivariate analysis. The first analysis results may comprise incremental summary statistics for each of the two or more data streams. The second analysis results may comprise hierarchical summary statistics for the two or more data streams. The hierarchical summary statistics for the two or more data streams may be computed using a decision tree classifier. The decision tree may be usable to adjust one or more components of the controllable process. In one embodiment, the controllable process comprises a semiconductor manufacturing process, e.g., a silicon wafer manufacturing process. 
         [0007]    In a second aspect of the invention, an article of manufacture for analyzing two or more data streams respectively generated from two or more components of a controllable process comprises a computer readable storage medium including one or more programs which when executed by a computer perform the above described first (intermediate analysis) and second (hierarchical analysis) steps. 
         [0008]    In a third aspect of the invention, apparatus for analyzing two or more data streams respectively generated from two or more components of a controllable process comprises: a memory; and a processor coupled to the memory and operative to: (i) perform a statistical analysis on each of the two or more data streams to generate first analysis results in the form of respective statistical results for the two or more data streams; and (ii) combine at least a portion of the statistical results from at least one of the two or more data streams with at least a portion of the statistical results from at least another one of the two or more data streams to yield second analysis results; wherein the controllable process is adjustable based on at least one of the first analysis results and the second analysis results. 
         [0009]    In a fourth aspect of the invention, a system for analyzing two or more data streams respectively generated from two or more tools of a semiconductor processing pipeline comprises the following elements. A data storage unit stores the two or more data streams. A statistical analyzer is coupled to the data storage unit and operative to: (i) perform a multivariate analysis on each of the two or more data streams to generate first analysis results in the form of respective statistical results for the two or more data streams; and (ii) combine at least a portion of the statistical results from at least one of the two or more data streams with at least a portion of the statistical results from at least another one of the two or more data streams to yield second analysis results; wherein at least a portion of the two or more tools of the semiconductor processing pipeline is adjustable based on at least one of the first analysis results and the second analysis results. 
         [0010]    These and other objects, features and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0011]      FIG. 1  illustrates a hierarchical and incremental multivariate analysis system according to an embodiment of the invention. 
           [0012]      FIG. 2  illustrates a methodology for hierarchical and incremental multivariate analysis according to an embodiment of the invention. 
           [0013]      FIG. 3  illustrates a hierarchical and incremental multivariate analysis system for a chemical mechanical polishing (CMP) tool according to an embodiment of the invention. 
           [0014]      FIG. 4  illustrates a decision tree formed by a hierarchical analysis process according to an embodiment of the invention. 
           [0015]      FIG. 5  illustrates a confusion matrix for a two class classification according to an embodiment of the invention. 
           [0016]      FIG. 6  illustrates a computer system wherein techniques for performing hierarchical and incremental multivariate analysis may be implemented according to an embodiment of the invention. 
       
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
       [0017]    Illustrative embodiments of the invention will be described below in the context of statistical process control (SPC) in a semiconductor manufacturing process. However, it is to be understood that the principles of the invention are not limited thereto and may be used in applications other than a semiconductor manufacturing process. It should also be understood that the invention is not limited to the particular materials, features, processing steps, and applications shown and described herein. 
         [0018]    In order to improve performance of the SPC and, in the context of the illustrative semiconductor processing embodiment, the resulting wafer yield, we propose to perform multivariate analysis across several of the available data streams to identify cross-tool, cross-step and cross-process dependencies that cannot be captured by the limited analysis of current SPC techniques. In order to deal with the potential large data volume, we propose to use an incremental and hierarchical statistical analysis approach. 
         [0019]    In our proposed approach, small groups of data streams are first statistically analyzed to create intermediate summary statistics (each of which may be independently used for analysis and process control). These intermediate summary statistics are aggregated across several data streams and analyzed using other (potentially similar) statistical techniques to obtain more comprehensive results. Computation savings arise from this hierarchical evaluation, where results are reused across different time-scales, and groups of data streams, allowing large-scale analysis across many different tools, steps and processes. 
         [0020]    At the same time, in order to drive real-time operation, the intermediate results included in these summary statistics may also individually be used to drive process control incrementally. Refinements to any control decision (made by this independent analysis) may be provided after the hierarchical analysis. Note that the granularity of this hierarchical analysis can be at multiple levels. 
         [0021]      FIG. 1  illustrates hierarchical and incremental multivariate analysis system according to an embodiment of the invention. As may be seen in  FIG. 1 , in accordance with system  100 , there are two tools  102 - 1  (tool  1 ) and  102 - 2  (tool  2 ) which produce N and M data streams, respectively. Of course, there could be more or less tools. Each data stream may be analyzed using multivariate analysis (intermediate analyzers  104 ) to create summary statistics S 1   1  through S N   1  and S 1   2  through S M   2 , respectively. 
         [0022]    These summary statistics may be used to drive process control  106  as soon as they are computed (this leads to incremental process control, i.e., we do not have to wait for all the analysis to complete). Additionally, these summary statistics may also be analyzed in a hierarchical structure with multiple levels (hierarchical analyzers  108 ) to generate new results which may then be also used to drive the process control  106 . Finally, there may also be other data streams such as measurement data that may be used in this hierarchical analysis. 
         [0023]    Based on results from the analyzers, individual and multiple aspects (components) of the processing pipeline (tools) can be controlled (e.g., adjusted) to improve performance (e.g., in a semiconductor manufacturing pipeline, increased wafer yield). 
         [0024]    Thus, advantageously, multiple data streams are collected in the environment (e.g., a semiconductor manufacturing pipeline). Each data stream is analyzed to generate summary statistics. These summary statistics are then aggregated across the different streams in a hierarchical manner to generate new analysis results. The process control is incremental. This means that we use not just the results of the hierarchical analysis for the process control, instead we also may use the intermediate summary statistics (generated per stream) for process control. Hence, as and when any analysis results are available, they may be used for the control. 
         [0025]      FIG. 2  illustrates a hierarchical and incremental analysis methodology according to an embodiment of the invention. It is to be understood that methodology  200  shown in  FIG. 2  is performed by system  100  of  FIG. 1 . 
         [0026]    Methodology  200  performs two stages analysis stages. 
         [0027]    In step  202  (first stage), methodology  200  performs multivariate analysis on each data stream associated with a tool to generate intermediate multivariate results. By way of example, respective raw tool parameter traces (i.e., a trace for SiCOH processing tool, a trace for annealing tool, a trace for chemical mechanical polishing or CMP tool, an example of which will be described below in the context of  FIG. 3 ) are each analyzed using a multivariate statistical technique. 
         [0028]    By way of one example, the multivariate statistical technique computes multiple Hoteling-T2 summary statistics per data stream. In one embodiment, this may include 12 statistical components for a CMP tool, that are partitioned into six fixed components and six variable components. These 12 components are partitioned into six fixed components and six variable components. The fixed components capture summary statistics for slowly varying parameters, while the variable components capture the summary statistics of rapidly varying parameters. The six sets correspond to the six recipe steps within the tool. 
         [0029]    Threshold values are set to indicate parameter out-of-specification conditions. If the generated Hoteling-T2 scores lie outside these threshold values, alarms are generated (incremental results utilization). The results of this stage can lead to approximately 10% accurate prediction of wafer yield class (especially to predict wafers with bad yield). 
         [0030]    It is to be understood that the multivariate statistical technique that is used on each data stream (tool) in order to generate a set of summary statistics can be any conventional multivariate analysis technique. By way of further example, one or more multivariate analysis techniques described in U.S. Pat. Nos. 6,442,445; 6,584,368; and 6,678,569, the disclosures of which are incorporated by reference, may be employed in step  202 . 
         [0031]    In step  204  (second stage), methodology  200  generates hierarchical multivariate results. That is, by way of example, methodology  200  can combine the time series of summary statistics (12 values per time unit, i.e., per wafer) for the CMP tool with process parameters such as pad hours and dresser hours, and builds a decision tree to analyze this data jointly. 
         [0032]    Lastly, as shown, step  206  indicates that intermediate results (from step  202 ) and/or the hierarchical results (step  204 ) can be used to adjust the processing pipeline. Then, steps  202  through  206  can be iterated until some optimum pipeline status is achieved. 
         [0033]      FIG. 3  illustrates an embodiment of the invention in the context of hierarchical and incremental analysis for a CMP tool in the context of semiconductor processing pipeline  302 . The first multivariate analysis  310  operates on the CMP tool trace data stream to create fault detection and classification (FDC) summary statistics. These FDC summary statistics are used for process control  312  in existing implementations by comparing each computed statistic against a fixed threshold. If any of the summary statistics exceed the threshold, the tool is assumed to be operating out-of-specification and an alarm is generated. This classification method has accuracy 10%. However, in accordance with principles of the invention, hierarchical analysis  314  advantageously combines these summary statistics with the process data and uses a decision tree based classifier to build a model to predict bad wafers. 
         [0034]    The resulting decision tree is shown in  FIG. 4 . The construction of the decision tree follows well-known classification techniques, e.g., as described in P. Domingos and G. Hulten, “Mining High-Speed Data Streams,” ACM SIGKDD 2000, the disclosure of which is incorporated by reference herein. Numerical results corresponding to the classification accuracy are shown in  FIG. 5 . 
         [0035]    As shown in exemplary decision tree  400  of  FIG. 4 , it is assumed that the same number of wafers (29) is selected from each class. Then, through 10-fold training and validation, classification performance is evaluated with this decision tree. Each node in the tree corresponds to a decision rule (e.g., is fixed component 4&lt;1.38 at the root) with Fi corresponding to fixed component i and Vj corresponding to variable component j. The results of this second stage in terms of predicting wafer yield class are shown in table of  FIG. 5 . Confusion matrix  500  shows that this classifier achieves nearly 90% accuracy in terms of classifying the wafers into these two classes. 
         [0036]    Using this hierarchical analysis, we can boost wafer yield prediction results from about 10% to around 90% achieving significant gains in performance. Note that we can perform this second stage analysis in a computationally feasible way because of the preliminary analysis already performed in the first stage (to generate the Hoteling-T2 summary statistics). Also note that the results are generated incrementally, i.e., the results of the first stage may already be used to predict wafers with bad yield (although with a low accuracy), while those generated after the second stage of the analysis may be used to refine those results. It is to be appreciated that the individual techniques used in this illustrative embodiment, i.e., Hoteling-T2 and decision trees, are generic statistical processing techniques, and may be replaced with other techniques depending on the process being controlled. 
         [0037]    Referring lastly to  FIG. 6 , a computer system is illustrated wherein techniques for performing hierarchical and incremental multivariate analysis may be implemented according to an embodiment of the invention. That is,  FIG. 6  illustrates a computer system in accordance with which one or more components/steps of the hierarchical and incremental multivariate analysis techniques (e.g., components and methodologies described above in the context of  FIGS. 1 through 5 ) may be implemented, according to an embodiment of the invention. It is to be understood that the individual components/steps may be implemented on one such computer system or on more than one such computer system. In the case of an implementation on a distributed computing system, the individual computer systems and/or devices may be connected via a suitable network, e.g., the Internet or World Wide Web. However, the system may be realized via private or local networks. In any case, the invention is not limited to any particular network. 
         [0038]    Thus, the computer system shown in  FIG. 6  may represent intermediate analyzers  104 , incremental process control  106  and hierarchical analyzers  108 , described herein in the context of  FIG. 1 . 
         [0039]    As shown, computer system  600  includes processor  602 , memory  604 , input/output (I/O) devices  606 , and network interface  608 , coupled via a computer bus  610  or alternate connection arrangement. 
         [0040]    It is to be appreciated that the term “processor” as used herein is intended to include any processing device, such as, for example, one that includes a CPU and/or other processing circuitry. It is also to be understood that the term “processor” may refer to more than one processing device and that various elements associated with a processing device may be shared by other processing devices. 
         [0041]    The term “memory” as used herein is intended to include memory associated with a processor or CPU, such as, for example, RAM, ROM, a fixed memory device (e.g., hard drive), a removable memory device (e.g., diskette), flash memory, etc. The memory may be considered a computer readable storage medium. 
         [0042]    In addition, the phrase “input/output devices” or “I/O devices” as used herein is intended to include, for example, one or more input devices (e.g., keyboard, mouse, etc.) for entering data to the processing unit, and/or one or more output devices (e.g., display, etc.) for presenting results associated with the processing unit. 
         [0043]    Still further, the phrase “network interface” as used herein is intended to include, for example, one or more transceivers to permit the computer system to communicate with another computer system via an appropriate communications protocol. 
         [0044]    Accordingly, software components including instructions or code for performing the methodologies described herein may be stored in one or more of the associated memory devices (e.g., ROM, fixed or removable memory) and, when ready to be utilized, loaded in part or in whole (e.g., into RAM) and executed by a CPU. 
         [0045]    In any case, it is to be appreciated that the techniques of the invention, described herein and shown in the appended figures, may be implemented in various forms of hardware, software, or combinations thereof, e.g., one or more operatively programmed general purpose digital computers with associated memory, implementation-specific integrated circuit(s), functional circuitry, etc. Given the techniques of the invention provided herein, one of ordinary skill in the art will be able to contemplate other implementations of the techniques of the invention. 
         [0046]    Although illustrative embodiments of the present invention have been described herein with reference to the accompanying drawings, it is to be understood that the invention is not limited to those precise embodiments, and that various other changes and modifications may be made by one skilled in the art without departing from the scope or spirit of the invention.