Analysis of multi-run cycle treatment processes
By separating and summarizing the time trajectory sensor data of the substrate processing process, alarm and monitoring data are generated, data analysis problems in complex cycle operations are solved, real-time monitoring and optimization of manufacturing equipment and product quality is achieved, and manufacturing efficiency is improved and product quality.
Patent Information
- Application Number
- CN202280095771.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-17
- Publication Date
- 2024-12-17
AI Technical Summary
The prior art is difficult to effectively analyze and process complex cyclic operation-related sensor data, resulting in difficult detection of abnormalities and drifts in manufacturing equipment, resulting in poor product quality, ineffective manufacturing efficiency, and difficulty in performing correction actions in a timely manner, increasing unplanned downtime and resources. The risk of waste.
By receiving the time track sensor data associated with the substrate processing process, separating it into multiple cycle data, and using statistical methods, machine learning and other technologies to generate summary data, used to identify potential problems and provide alerts, to realize the manufacturing equipment and Real-time monitoring and optimization of product quality.
Improve product quality and manufacturing efficiency, reduce waste of materials and energy, timely identify and solve equipment problems, reduce the cost of unplanned downtime and replacement of components, and ensure the stability and efficiency of the manufacturing process.
Smart Images

Figure CN119156577A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to diagnostic methods for analyzing sensor data associated with a process; more specifically, the present application relates to diagnostic methods for analyzing sensor data associated with a multi-run cycle process, which includes cyclic and / or looped operations. Background Art
[0002] Products can be produced by performing one or more manufacturing processes using manufacturing equipment. For example, semiconductor manufacturing equipment can be used to produce substrates through semiconductor manufacturing processes. The products to be produced have specific properties suitable for the target application. Understanding and controlling the characteristics within the manufacturing chamber helps to produce consistent products. Summary of the invention
[0003] The following is a simplified overview of the application to provide a basic understanding of some aspects of the application. This summary is not an extensive overview of the content of the application. This summary is neither intended to identify the key or essential elements of the application, nor to define any scope of the specific embodiments of the application or any scope of the claims. The sole purpose of this summary is to present some concepts of the application in a simplified form as a prelude to the implementations presented later.
[0004] In an aspect of the present application, a method includes: receiving time trajectory sensor data associated with a substrate processing process. The substrate processing process includes two or more sets of processing conditions. The first set of processing conditions and the second set of processing conditions both include one or more operations that are repeatedly performed. The method further includes: separating a first portion of the time trajectory sensor data associated with the first set of processing conditions into a first plurality of cycle data. Each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed. The method further includes: separating a second portion of the time trajectory sensor data associated with the second set of processing conditions into a second plurality of cycle data. Each of the second plurality is associated with one or more operations that are repeatedly performed. The method further includes the following steps: processing the first plurality of cycle data and the second plurality of cycle data to generate summary data. The method further includes: providing an alert to a user. The alert is based on the summary data.
[0005] In another aspect of the present application, a system includes a memory and a processing device coupled to the memory. The processing device is configured to receive time trajectory sensor data associated with a substrate processing process. The substrate processing program includes two or more sets of processing conditions. The first set of processing conditions and the second set of processing conditions each include one or more operations that are repeatedly performed. The processing device is further configured to separate a first portion of the time trajectory data associated with the first set of processing conditions into a first plurality of cycle data. Each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed. The processing device is further configured to separate a second portion of the time trajectory sensor data associated with the second set of processing conditions into a second set of cycle data. Each of the second plurality is associated with one or more operations that are repeatedly performed. The processing device is further configured to process the first plurality of cycle data and the second plurality of cycle data to generate summary data. The processing device is further configured to provide an alert to a user based on the summary data.
[0006] In another aspect of the present application, a non-transitory machine-readable storage medium stores instructions. When the instructions are executed, the instructions cause the processing device to perform operations. These operations include: receiving time trajectory sensor data associated with a substrate processing process. The substrate processing process includes two or more sets of processing conditions. The first set of processing conditions and the second set of processing conditions both include one or more operations that are repeatedly performed. The operation further includes: separating a first portion of the time trajectory sensor data corresponding to the first set of processing conditions into a first plurality of cycle data. Each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed. The operation further includes: separating a second portion of the time trajectory sensor data corresponding to the second set of processing conditions into a second plurality of cycle data. Each of the second plurality is associated with one or more operations that are repeatedly performed. The operation further includes: processing the first plurality of cycle data and the second plurality of cycle data to generate summary data. The method further includes: providing an alert to a user. The alert is based on the summary data.
[0007] Brief description of the attached figure
[0008] The present application is illustrated by way of example and not limitation in the accompanying figures.
[0009] Figure 1 is a block diagram illustrating an exemplary system architecture according to some embodiments.
[0010] Figure 2 An exemplary data flow 200 for generating alerts based on aggregated data is depicted in accordance with some embodiments.
[0011] Figure 3 A visualization depicting an operation for separating trajectory data into transient and steady-state portions in accordance with some embodiments.
[0012] Figure 4 Depicted is an exemplary dashboard for alerting a user of the performance quality of one or more processes in accordance with some embodiments.
[0013] Figure 5 A flow chart depicting a method for generating alerts based on a cyclic process according to some embodiments.
[0014] Figure 6 is a block diagram illustrating a computer system according to some embodiments. DETAILED DESCRIPTION
[0015] A technique related to a diagnostic method for a multi-stage cyclic manufacturing operation is described herein; this technique can be used to diagnose problems in manufacturing equipment and / or to perform corrective actions. Manufacturing equipment can be used to produce products, such as substrates (e.g., wafers, semiconductors, displays, photovoltaic components, etc.). Manufacturing equipment (e.g., manufacturing tools) typically includes a processing chamber that separates the substrate being processed from the environment. The characteristics of the produced substrate should meet target characteristic values to promote performance and functionality, etc. Anomalies, drifts, or other differences in the processing environment may produce suboptimal substrates, such as semiconductors that do not work as expected, and inefficient manufacturing (e.g., additional expenditures in time, materials, energy, etc.). The processing environment can be quantified by various sensors associated with the processing chamber; various sensors are, for example, pressure gauges, temperature sensors, sensors indicating power (e.g., voltmeters, etc.), and gas flow meters, etc.
[0016] In some systems, the processing process may include a series of repeated (e.g., looped, cyclic) operations. For example, the target substrate may include a series of layers stacked on each other. Such a structure can be generated, for example, by repeating deposition operations (such as step deposition operations). In some embodiments, the target substrate configuration may include many layers, such as dozens of layers and hundreds of layers, etc. In such a system (e.g., including cyclic operations), it may be cumbersome to analyze sensor data for anomaly detection, drift detection, health assessment of equipment or products, etc. Repeated operations may be indicated by repetitive patterns in the sensor data, which may be difficult to analyze using traditional methods (e.g., statistical metrics). In addition, it may be cumbersome to identify potentially problematic layers in multiple cyclic operations reflected in the sensor data.
[0017] In some systems, a processing program may include a series of processing runs; for example, a series of runs including different processing conditions and a series of runs in which the substrate is removed from the processing chamber, etc. Separating processing runs associated with the same substrate complicates the data analysis process. In conventional systems, each processing run may be examined individually, for example, to look for evidence of errors, failures, poor performance, etc. Some systems include multiple processing runs; these processing runs themselves include looping operations, thereby exacerbating the inefficiency of the analysis.
[0018] In some systems, investigation of sensor data may be triggered by suboptimal performance (e.g., by one or more products being produced having characteristics that are outside of manufacturing specifications). In some cases, performance measurements are made only on a subset of products; for example, metrology measurements are made to determine production quality. Performance measurements (e.g., metrology) may be costly; for example, a significant amount of time may be required to generate performance measurements. Manufacturing equipment may continue to be used to produce products while metrology is performed on other products and / or while products are queued for metrology measurements. In the case of aged manufacturing equipment (e.g., equipment performance is suboptimal due to component aging, drift, failure, etc.), metrology measurements of products may not be performed until some products have been processed using the suboptimal equipment. As a result, suboptimal products may be produced. Such a system is wasteful in terms of wasted time processing suboptimal products, consumed energy, and consumed materials.
[0019] In conventional systems, the difficulty of isolating informative sensor data (e.g., identifying data indicative of corrective actions to be performed in association with manufacturing equipment from a large volume of sensor data) results in metrology-based fault detection. In some cases, sensor data may be significantly affected by drift, aging, or a faulty component before metrology is significantly affected. In such cases, the sensor data may be used to schedule corrective actions before metrology is affected to coincide with planned downtime (e.g., preventive maintenance operations), thereby reducing costly unplanned downtime for the manufacturing system. If sensor data cannot be used reliably, corrective actions may be performed in response to suboptimal metrology data and may result in unplanned downtime. In some embodiments, unplanned downtime may incur additional costs, such as express shipping of replacement parts, etc.
[0020] The methods and apparatus of the present application can solve one or more of the above-mentioned deficiencies in conventional solutions. In some embodiments, summary data is enabled and generated, which allows fast processing time, use of standard statistical methods in complex loop processes, reduction of communication bandwidth, reduction of complexity in analyzing complete trajectory data, etc. Generating summary data may include applying statistical methods, machine learning methods, digital twin methods, etc. to trajectory data (e.g., trajectory sensor data).
[0021] One or more metrics (e.g., measurement standards) may be used to indicate the system health of the manufacturing equipment. In some embodiments, the summary data may be used to generate one or more metric values. The metric values may be used as an indication of further research related to chambers, processes, products, components, etc. to be implemented. In some embodiments, metric values (e.g., indices, quality scores, and statistical values, etc.) may be calculated and compared to a second value, such as a value associated with an optimal run (e.g., a process run selected when acceptable process conditions are achieved) and an average of several process runs, etc. In some embodiments, multiple metrics (e.g., several statistical measurements, several metrics associated with one or more shapes in the trajectory data, etc.) may be generated. In some embodiments, each cycle (or in some embodiments, a collection of cycles) may be associated with a set of metric values.
[0022] The analysis results of the cyclic process can be used to generate alerts for the user. For example, the analysis results can be displayed on a dashboard (e.g., a graphical user interface). In some embodiments, the graphical user interface can include a graphical user interface element that displays data associated with the cyclic process. The analysis results can be displayed to indicate potentially defective layers of the substrate; for example, the results can display a selected metric (e.g., summary data) as a function of the number of layers, and the results can be displayed with different layers drawn in different colors on a gradient. The displayed analysis results can include data from layers generated in multiple processing runs, and can include multiple wafers (e.g., for comparison), etc.
[0023] Compared with traditional solutions, various aspects of the present application case produce technical advantages. The present application case leads to more efficient and waste-minimized substrate manufacturing processing. If there is a problem related to the processing chamber, the method of the present application case can be able to cause corrective actions to be performed before the processing of the next product begins, before the suboptimal product is submitted for quality measurement, and before the quality measurement is completed. In this way, material waste, manufacturing chamber time, and energy supplied to the manufacturing process can be minimized. In addition, the method of the present application case can reduce the solution time; for example, the time elapsed between identifying the problem in the processing chamber and solving the problem (for example, by identifying the parts to be replaced, the maintenance and recipe adjustments to be performed, etc.) to solve the problem. Product quality can be improved because the root causes of product quality changes and chamber drift can be identified and corrected. Since the processing parameters can be adjusted more accurately, the cost of materials, energy and time can be improved, so the efficiency of producing products with acceptable quality can also be improved. Aging parts can be identified and marked for replacement or maintenance, thereby reducing unplanned downtime, the cost associated with the rapid delivery of replacement parts, etc.
[0024] In some embodiments, the present application describes a method comprising: receiving time trajectory sensor data associated with a substrate processing process. The substrate processing process includes two or more sets of processing conditions. The first set of processing conditions and the second set of processing conditions both include one or more operations that are repeatedly performed. The method further comprises: separating a first portion of the time trajectory sensor data corresponding to the first set of processing conditions into a first plurality of cycle data. Each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed. The method further comprises: separating a second portion of the time trajectory sensor data corresponding to the second set of processing conditions into a second plurality of cycle data. Each of the second plurality is associated with one or more operations that are repeatedly performed. The method further comprises: processing the first plurality of cycle data and the second plurality of cycle data to generate summary data. The method further comprises: providing an alert to a user. The alert is based on the summary data.
[0025] In another aspect of the present application, a system includes a memory and a processing device coupled to the memory. The processing device is configured to receive time trajectory sensor data associated with a substrate processing process. The substrate processing process includes two or more sets of processing conditions. The first set of processing conditions and the second set of processing conditions each include one or more operations that are repeatedly performed. The processing device is further configured to separate a first portion of the time trajectory data corresponding to the first set of processing conditions into a first plurality of cycle data. Each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed. The processing device is further configured to separate a second portion of the time trajectory sensor data corresponding to the second set of processing conditions into a second set of cycle data. Each of the second plurality is associated with one or more operations that are repeatedly performed. The processing device is further configured to process the first plurality of cycle data and the second plurality of cycle data to generate summary data. The processing device is further configured to provide an alert to a user based on the summary data.
[0026] In another aspect of the present application, a non-transitory machine-readable storage medium stores instructions. When the instructions are executed, the instructions cause the processing device to perform operations. These operations include the following operations: receiving time trajectory sensor data associated with a substrate processing process. The substrate processing process includes two or more sets of processing conditions. The first set of processing conditions and the second set of processing conditions both include one or more operations that are repeatedly performed. The operation further includes the following operations: separating a first portion of the time trajectory sensor data corresponding to the first set of processing conditions into a first plurality of cycle data. Each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed. The operation further includes the following operations: separating a second portion of the time trajectory sensor data corresponding to the second set of processing conditions into a second plurality of cycle data. Each of the second plurality is associated with one or more operations that are repeatedly performed. The operation further includes the following operations: processing the first plurality of cycle data and the second plurality of cycle data to generate summary data. The method further includes: providing an alert to a user. The alert is based on the summary data.
[0027] Figure 1 1 is a block diagram illustrating an exemplary system 100 (exemplary system architecture) according to some embodiments. System 100 includes client device 120, manufacturing equipment 124, sensor 126, metrology equipment 128, analysis server 112, and data storage 140. Analysis server 112 can be part of analysis system 110.
[0028] The sensor 126 may provide sensor data 142 associated with the manufacturing equipment 124 (e.g., associated with a product such as a substrate produced by the manufacturing equipment 124). The sensor data 142 may be used to ascertain equipment health and / or product health (e.g., product quality). The manufacturing equipment 124 may produce a product according to a recipe or by performing a run over a period of time. In some embodiments, the sensor data 142 may include values of one or more temperatures (e.g., heater temperature), spacing (SP), pressure, high frequency radio frequency (HFRF), radio frequency (RF) matching voltage, RF matching current, RF matching capacitor position, voltage of an electrostatic chuck (ESC), actuator position, current, flow rate, power, voltage, and the like. The sensor data 142 may be associated with or indicate a manufacturing parameter of the manufacturing equipment 124 or a processing parameter of the manufacturing equipment 124; a manufacturing parameter such as a hardware parameter (e.g., a setting or component, such as size and type, and the like). Alternatively or additionally, data associated with some hardware parameters are stored as manufacturing parameters 150. The manufacturing parameters 150 may indicate input settings (e.g., heater power and gas flow, and the like) to the manufacturing device. Sensor data 142 and / or manufacturing parameters 150 (e.g., may be equipment readings generated during substrate processing) may be provided while manufacturing equipment 124 performs manufacturing processes. Sensor data 142 may be different for each product (e.g., each substrate). Substrates may have property values (e.g., film thickness and film strain, etc.) measured by metrology equipment 128. Metrology data 160 may be one type of data stored in data storage 140.
[0029] In some embodiments, the sensor data 142, the metrology data 160, and / or the manufacturing parameters 150 may be processed (e.g., by the client device 120 and / or by the analysis server 112). The processing of the sensor data 142, the metrology data 160, and / or the manufacturing parameters 150 may include generating features. In some embodiments, features are patterns in the sensor data 142, the metrology data 160, and / or the manufacturing parameters 150 (e.g., slope, width, height, peak, etc.) or combinations of values from the sensor data 142, the metrology data 160, and / or the manufacturing parameters 150 (e.g., power derived from voltage and current, etc.). The sensor data 142 may include features, and these features may be used by the analysis component 114 to perform signal processing and / or obtain prediction data 168 for performing corrective actions.
[0030] Each instance (e.g., set) of sensor data 142 may correspond to a product (e.g., a substrate), a set of manufacturing equipment, a type of substrate produced by a manufacturing equipment, or the like. Each instance of metrology data 160 and manufacturing parameters 150 may likewise correspond to a product, a set of manufacturing equipment, a type of substrate produced by a manufacturing equipment, etc., or the like. Data store 140 may further store information associated with sets of different data types; for example, information indicating that a set of sensor data, a set of metrology data, and a set of manufacturing parameters are all associated with the same product, manufacturing equipment, and substrate type, etc.
[0031] In some embodiments, data associated with the processing of one or more products may be used to generate summary data 162. Summary data 162 may include data that represents characteristics of other data. For example, summary data 162 may be generated from trajectory sensor data 142. Trajectory sensor data 142 may include a large amount of data (e.g., data from hundreds of sensors in a tool, each sensor making hundreds or thousands of measurements for each product, etc.). Summary data 162 may be less cumbersome to operate than trajectory sensor data 142, and summary data 162 may be designed in a manner that may preserve information (e.g., information indicating a chamber failure). In some embodiments, data (e.g., trajectory sensor data 142) may be provided to a processing device (e.g., analysis server 112 and client device 120, etc.) to generate summary data 162.
[0032] The summary data 162 may include, for example, metadata (e.g., tool ID, recipe name, product ID, and product information, etc.), contextual data (e.g., sensor ID, step number, timestamp, and subsystem, etc.), and / or basic statistics (e.g., mean, maximum, minimum, quartiles, kurtosis, and control limits, etc.). The summary data 162 may include statistical measures of the cyclic operation of the process. For example, the analysis system 110 may separate the trace sensor data into repeating parts (e.g., cycles, substrate layers, and sets of multiple cycles, etc.). The separated trace sensor data may then be used to generate summary data, which may indicate the health or quality of the product or system.
[0033] The summary data 162 may include indications of how characteristics of the measured data differ from predictions of the model system, such as optimal operation (e.g., overshoot, rise time, settling time, steady-state value error, etc.) In some embodiments, the summary data 162 may be generated based on a portion of the input data, such as only a steady-state portion and only a transient portion of the summary data 162, etc.
[0034] In some embodiments, the analysis system 110 may generate the prediction data 168 using machine learning such as supervised machine learning (e.g., the machine learning model may be configured to generate labels associated with the input data, such as metering predictions and performance predictions, etc.). In some embodiments, the analysis system 110 may generate the prediction data 168 using unsupervised machine learning (e.g., the machine learning model may be trained with unlabeled data, such as a model configured to perform clustering and dimensionality reduction, etc.). In some embodiments, the analysis system 110 may generate the prediction data 168 using semi-supervised learning (e.g., the machine learning model may be trained with labeled and unlabeled input data sets).
[0035] Client devices 120 , manufacturing equipment 124 , sensors 126 , metrology equipment 128 , analysis server 112 , and data store 140 may be coupled to one another via network 130 for generating predictive data 168 to perform corrective actions.
[0036] In some embodiments, the network 130 is a public network that provides the client device 120 with access to the analysis server 112, the data store 140, and other publicly available computing devices. In some embodiments, the network 130 is a private network that provides the client device 120 with access to the manufacturing equipment 124, the sensor 126, the metering equipment 128, the data store 140, and other privately available computing devices. In some embodiments, the functions of one or more of the client device 120 and / or the analysis server 112 may be performed by a virtual machine (e.g., using a cloud-based service). The network 130 may provide access to such a virtual machine. The network 130 may include one or more wide area networks (WANs), local area networks (LANs), wired networks (e.g., Ethernet networks), wireless networks (e.g., 802.11 networks or Wi-Fi networks), cellular networks (e.g., long term evolution (LTE) networks), routers, hubs, switches, server computers, cloud computing networks, and / or combinations thereof.
[0037] The client device 120 may include a computing device such as a personal computer (PC), a laptop computer, a mobile phone, a smartphone, a tablet computer, a small laptop, a network-connected television ("smart TV"), a network-connected media player (e.g., a Blu-ray player), a set-top box, an over-the-top (OTT) streaming device, and an operation box, etc. The client device 120 may include a corrective action component 122. The corrective action component 122 may receive user input of an indication associated with the manufacturing equipment 124 (e.g., through a graphical user interface (GUI) displayed via the client device 120). The client device 120 may include a reporting component 123. The reporting component 123 may display an alert (e.g., a performance report) to a user associated with the performance of the manufacturing equipment 124, the quality of the substrate, the quality of the process, etc. In some embodiments, the corrective action component 122 transmits the indication to the analysis system 110, receives output (e.g., prediction data 168) from the analysis system 110, determines a corrective action based on the output, and causes the corrective action to be implemented (e.g., by providing an alert to the user via the reporting component 123). In some embodiments, the corrective action component 122 obtains sensor data 142 (e.g., current sensor data 146) associated with the manufacturing equipment 124 (e.g., from a data store 140, etc.) and provides the sensor data 142 (e.g., current sensor data 146) associated with the manufacturing equipment 124 to the analysis system 110. In some embodiments, the corrective action component 122 stores the sensor data 142 in the data store 140, and the analysis server 112 retrieves the sensor data 142 from the data store 140. In some embodiments, the analysis server 112 may store the output of the model 190 (e.g., prediction data 168) in the data store 140, and the client device 120 may retrieve the output from the data store 140. In some embodiments, the corrective action component 122 receives an indication of a corrective action from the analysis system 110 and causes the corrective action to be implemented. Each client device 120 may include an operating system; the operating system allows a user to perform one or more of generating, viewing, or editing data (e.g., indications associated with the manufacturing equipment 124 and corrective actions associated with the manufacturing equipment 124, etc.).
[0038] In some embodiments, the metrology data 160 corresponds to historical attribute data of a product (e.g., the product was produced using manufacturing parameters associated with the historical sensor data 144 and historical manufacturing parameters). The predictive data 168 may include the results of the analysis; for example, the output of the analysis system 110, predicted system failures, corrective actions to be performed, maintenance to be performed, etc. In some embodiments, the predictive data 168 is an indication of an abnormality (e.g., an abnormal product, an abnormal component, an abnormal manufacturing equipment 124, and abnormal energy usage, etc.), and optionally one or more causes of the abnormality. In some embodiments, the predictive data 168 is an indication of changes or drifts over time in some components of the manufacturing equipment 124, sensors 126, metrology devices 128, etc. In some embodiments, the predictive data 168 is an indication of the end of life of a component of the manufacturing equipment 124, sensors 126, metrology devices 128, etc.
[0039] Performing a manufacturing process that results in a defective product may be expensive in terms of time, energy, products, parts, manufacturing equipment 124, costs of identifying defects and discarding defective products, etc. By inputting sensor data 142 (e.g., manufacturing parameters that are being used or will be used to manufacture a product) into the analysis system 110, receiving output of predictive data 168, and performing corrective actions based on the predictive data 168, the system 100 may have a technical advantage of avoiding the costs of producing, identifying, and discarding defective products.
[0040] Performing a manufacturing process that results in a component failure of the manufacturing equipment 124 may be costly in terms of downtime, damaged product, damaged equipment, quickly ordering replacement parts, etc. By inputting sensor data 142 (e.g., indicating manufacturing parameters that are being used or will be used to manufacture a product) to the analysis system 110, receiving output of predictive data 168, and performing corrective actions (e.g., predicted operational maintenance, such as replacement, treatment and cleaning of components, etc.) based on the predictive data 168, the system 100 may have a technical advantage of avoiding the costs of one or more of unexpected component failures, unplanned downtime, lost productivity, unexpected equipment failures, product scrapping, etc. Monitoring the performance of components (e.g., manufacturing equipment 124, sensors 126, metrology devices 128, etc.) over time may provide an indication of deteriorating components.
[0041] The manufacturing parameters may be suboptimal results in producing the product, which may result in costly consequences such as increased consumption of resources (e.g., energy, coolant, gas, etc.), increased time to produce the product, increased component failures, increased number of defective products, etc. By inputting the sensor data 142 into the analysis system 110, receiving output of the prediction data 168, and performing corrective actions to update the manufacturing parameters (e.g., set optimal manufacturing parameters) (e.g., based on the prediction data 168), the system 100 may have the technical advantage of using optimal manufacturing parameters (e.g., hardware parameters, processing parameters, and optimal design) and / or healthy devices to avoid the costly consequences of suboptimal manufacturing parameters.
[0042] Corrective actions may be associated with one or more of computational process control (CPC), statistical process control (SPC) (e.g., SPC on electronic components to determine that the process is in control, SPC to predict the useful life of components, SPC to compare 3-sigma charts, etc.), advanced process control (APC), model-based process control, preventive operational maintenance, design optimization, manufacturing parameter updates, updating manufacturing recipes, feedback control, machine learning modifications, or the like.
[0043] In some embodiments, the corrective action includes providing an alert (e.g., if the prediction data 168 indicates a predicted anomaly (e.g., an anomaly of the product, component, or manufacturing equipment 124), the alert stops the manufacturing process on the additional substrate or does not perform the manufacturing process on the additional substrate). In some embodiments, the corrective action includes providing feedback control (e.g., modifying a manufacturing parameter in response to the prediction data 168 indicating the predicted anomaly). In some embodiments, the performance of the corrective action includes causing an update to one or more manufacturing parameters.
[0044] The manufacturing parameters may include hardware parameters (e.g., information indicating components included in the manufacturing equipment, an indication of recently replaced components, an indication of a firmware version or update, etc.), and / or process parameters (e.g., temperature, pressure, flow, current and / or voltage, gas flow and lifting speed, etc.). In some embodiments, the corrective action includes: causing preventive operational maintenance (e.g., replacing, treating, cleaning components of the manufacturing equipment 124, etc.). In some embodiments, the corrective action includes: optimizing the design (e.g., updating the manufacturing parameters for the optimized product, updating the manufacturing process, updating the manufacturing equipment 124, etc.). In some embodiments, the corrective action includes: updating the recipe (e.g., changing the timing of instructions for the manufacturing equipment 124 to be in an idle mode, a sleep mode, a preheating mode, etc., adjusting the set points for temperature, gas flow, and plasma generation, etc.).
[0045] The analysis server 112 may include one or more computing devices, such as a rack server, a router computer, a server computer, a personal computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, a graphics processing unit (GPU), an accelerator application-specific integrated circuit (ASIC) (e.g., a tensor processing unit (TPU)), etc.
[0046] Analysis server 112 may include analysis component 114. In some embodiments, analysis component 114 may receive current sensor data 146 and / or current manufacturing parameters (e.g., received from client device 120, retrieved from data store 140), and generate output (e.g., prediction data 168) for performing corrective actions associated with manufacturing equipment 124 based on the current data. In some embodiments, analysis component 114 may use one or more training models 190 to determine outputs for performing corrective actions based on the current data.
[0047] In some embodiments, the model 190 may include a trained physics-based digital twin model. The physics-based model is capable of solving a set of equations that describe physical phenomena that may occur in a manufacturing chamber, such as equations that control heat flow, energy balance, gas conductivity, mass balance, fluid dynamics, current flow, and the like. In some embodiments, the physics-based model performs calculations of component performance in a manufacturing chamber. Manufacturing parameters 150 may be provided to the trained physics-based model. The trained physics-based model may provide modeled property values indicating conditions within the chamber as output, corresponding to sensors 126 disposed within the manufacturing chamber (e.g., manufacturing equipment 124). The output of the physics-based model may be stored in a data store 140.
[0048] The analysis component 114 of the analysis server 112 may receive sensor data 142 generated from data collected by the sensors 126. The analysis component 114 may utilize the sensor data 142 to generate summary data 162, prediction data 168, and the like. The summary data 162 may include metrics indicating device performance. For example, the analysis component 114 may retrieve track sensor data (e.g., current sensor data 146) from the data store 140. The analysis component 114 may separate data from a processing run into shorter parts, such as individual loops and loop operations, and the like. The analysis component 114 may then generate summary data indicating the performance quality of the processing operation (e.g., by providing the data to the model 190).
[0049] In some embodiments, the analysis component 114 can generate a series of trajectory data sets associated with a cyclic process. For example, each set of data can be associated with a cycle, an operation, etc. In some embodiments, one or more sets of trajectory data of a particular type (e.g., all oxide deposition operations, one or more nitride deposition operations, one or more nitride deposition operations, or multiple post-deposition pump and / or purge operations, etc.) can be grouped together for analysis and display, etc.
[0050] In some embodiments, a set of trajectory data (e.g., generated serially by analysis component 114) may include one or more portions of transient data (e.g., associated with periods of ramping process parameters, associated with periods in which target process conditions have not yet been reached, etc.), and one or more portions of steady-state data (e.g., associated with time periods in which target process conditions are to be maintained). Analysis system 110 (e.g., via model 190) may separate multiple sets of trajectory data into transient portions and steady-state portions. Figure 3 The separation of the transient portion and the steady-state portion is discussed in more detail. In some embodiments, the analysis system 110 may utilize the steady-state portion to generate summary data 162, for example, the analysis system 110 may generate statistical metrics such as mean, median, and standard deviation from the steady-state data. In some embodiments, the analysis system 110 may utilize the transient portion to generate summary data 162, for example, the analysis system 110 may compare transient data metrics with optimal operating data, physically based model data, and average data, etc. The analysis system 110 may utilize a machine learning model (e.g., model 190) to determine whether there is a difference between the transient portion of the data and historical transient data. The analysis system 110 may utilize features of the transient data (e.g., the shape of the transient data, such as a spike, a ramp, and a slope, etc.); and measurements of the transient data such as slope and concavity, etc. to determine the summary data 162.
[0051] In some embodiments, sensor data 142 may include data collected from sensors 126 during a manufacturing run that produced an acceptable product (e.g., as measured by metrology equipment 128). A manufacturing run that produced an acceptable product may be referred to as an optimal run. In some embodiments, an optimal run may be determined differently, for example, a run that achieved acceptable chamber conditions and a run that occurred shortly after chamber maintenance or new chamber installation, etc. Sensor data associated with such a manufacturing run may be stored in data store 140 as optimal run sensor data 148. Analysis component 114 of analysis server 112, reporting component 123 of client device 120, etc. may compare the optimal run sensor data, current sensor data 146, and expected sensor data (e.g., as output by a trained physics-based model) to determine whether component failures and drifts have occurred, etc. In some embodiments, some or all of these operations may alternatively be performed by different devices; for example, operations attributed to analysis server 112 may alternatively be performed by client device 120, etc.
[0052] In some embodiments, the analysis component 114 receives current sensor data 146 and / or current manufacturing parameters, performs signal processing to decompose the current data into current data sets, provides the current data sets as input to the training model 190, and obtains output from the training model 190 indicating prediction data 168. In some embodiments, the prediction data 168 indicates metrology data 160 (e.g., a prediction of substrate quality). In some embodiments, the prediction data 168 indicates component health. In some embodiments, the prediction data 168 indicates component performance. One of ordinary skill in the art will appreciate that changes in data flows, which components perform which processing, which data are provided to which models, etc. are all within the scope of the present application.
[0053] The data store 140 may be a memory (e.g., random access memory), a drive (e.g., a hard drive, a flash drive), a database system, or another type of component or device capable of storing data. The data store 140 may include multiple storage components (e.g., multiple drives or multiple databases) that may span multiple computing devices (e.g., multiple server computers). The data store 140 may store sensor data 142, manufacturing parameters 150, metrology data 160, summary data 162, and prediction data 168. The sensor data 142 may include historical sensor data 144, current sensor data 146, and optimal operating sensor data 148. The sensor data may include a temporal trajectory of sensor data during a manufacturing process, an association of data with a physical sensor, pre-processed data (e.g., averages and synthetic data), and data indicating the performance of a sensor over time (i.e., many manufacturing processes). The summary data 162 may include processed sensor data 142. The summary data may include information indicating corrective actions to be performed in association with the manufacturing equipment 124. The summary data may be less intensively operated (e.g., less computationally expensive) than operating the trajectory sensor data.
[0054] The analysis component 114 can provide the current sensor data 146 and / or the summary data 162 to the model 190 and can be input to operating the model 190 to obtain one or more outputs. The analysis component 114 can determine (e.g., extract) prediction data 168 from the output of the model 190 and can determine (e.g., extract) confidence data from the output; the confidence data indicates a confidence level that the prediction data 168 is an accurate predictor of the process associated with the input data of the product to be produced or to be produced using the manufacturing equipment 124 at the current sensor data 146 and / or current manufacturing parameters 154. The analysis component 114 or the corrective action component 122 can use the confidence data to decide whether to cause a corrective action associated with the manufacturing equipment 124 based on the prediction data 168.
[0055] The confidence data may include or indicate a confidence level that the prediction data 168 is an accurate prediction of a product or component associated with at least a portion of the input data. In one example, the confidence level is a real number between 0 and 1 (inclusive), where 0 indicates distrust that the prediction data 168 is an accurate prediction of a product processed based on the input data or component health of a component of the manufacturing equipment 124, and 1 indicates absolute confidence that the prediction data 168 accurately predicts the properties of the processed product based on the input data or component health of a component of the manufacturing equipment 124. In response to the confidence data indicating a confidence level below a threshold level for a predetermined number of instances (e.g., a percentage of instances, a frequency of instances, a total number of instances, etc.), the analysis component 114 may cause the model 190 to be retrained and / or reconfigured (e.g., based on the current sensor data 146 and the current manufacturing parameters 154, etc.).
[0056] In some embodiments, the functionality of client device 120 and prediction server 112 may be provided by a smaller number of machines. For example, in some embodiments, client device 120 and prediction server 112 may be integrated into a single machine.
[0057] In general, functions described in one embodiment as being performed by either the client device 120 or the prediction server 112 may also be performed by the other of the two components in other embodiments, as appropriate. Furthermore, functions attributed to a particular component may be performed by different or multiple components operating together. For example, in some embodiments, the prediction server 112 may determine a corrective action based on the prediction data 168. In another example, the client device 120 may determine the prediction data 168 based on output from the analysis system 110, etc.
[0058] Additionally, the functionality of a particular component may be performed by different or multiple components operating together.One or more of the prediction server 112 or the client device 120 may be accessed as a service provided to other systems or devices through an appropriate application programming interface (API).
[0059] In an embodiment, a "user" may be represented as a single individual. However, other embodiments of the present application encompass a "user" that is an entity controlled by multiple users and / or automation sources. For example, a group of individual users that are united as a group of administrators may be considered a "user."
[0060] Embodiments of the present application may be applied to data quality assessment, feature enhancement, model evaluation, virtual metering (VM), predictive maintenance (PdM), and extreme optimization, among others.
[0061] Figure 2An exemplary data flow 200 for generating an alert based on aggregated data according to some embodiments is depicted. Sensor data is generated by tool sensors 202. Tool sensors may include sensors disposed in a process chamber, such as Figure 1 The tool sensors 202 may generate time-track sensor data, for example, readings may be taken at intervals throughout a duration associated with a process in a tool (eg, a process chamber).
[0062] In some embodiments, a process may include one or more repeated (e.g., cyclic) operations. For example, a process may be directed to an output substrate including layers and / or layered structures. A process may include, for example, depositing a first material via a first process gas, removing the first process gas (e.g., via evacuation, inert gas flushing, etc.), depositing a second material via a second process gas, and removing the second process gas. The operations of a process may be repeated multiple times (e.g., dozens of times, hundreds of times, etc.) to produce a layered structure (e.g., layers may be formed as a first material, a second material, a first material, a second material, etc.). Repeated operations may be represented in sensor data, for example, chamber pressure may be repeatedly increased and decreased by introducing gas into and removing gas from a process chamber, and a process gas flow meter may record a repeating pattern of flow, etc.
[0063] In some embodiments, the processing process can be divided into multiple processing runs. For example, the target substrate can include multiple layers (e.g., 100 layers). A first set of layers (e.g., layers 1-50) can be targeted to different properties (e.g., layer thickness, etc.) than a second set of layers (e.g., layers 51-100). In some embodiments, the substrate can be removed from the processing chamber and / or removed from the processing conditions between runs. For example, the substrate can be rotated after depositing the first set of layers, for example, to manage substrate stress and / or compensate for spatial irregularities in the deposition process.
[0064] Data may flow from tool sensors 202 to pre-processing module 203. In some embodiments, sensor data may be stored in memory and retrieved at a later time for pre-processing. In some embodiments, pre-processing operations may be performed by different systems (e.g., analysis system 204) at different points in data flow 200 (e.g., after loop separation operation 206, during analysis and reporting operation 212, etc.).
[0065] Preprocessing 203 may include applying operations to the sensor data. For example, preprocessing 203 may include smoothing, averaging, combining (e.g., inferring quantities not directly measured using data from one or more sensors), and the like of the sensor data. In some embodiments, preprocessing 203 may include correlating sensor data. For example, data from different sensors may be correlated, data from multiple processing runs (e.g., multiple sets of operations during which a substrate is removed from a processing chamber) may be correlated, and the like. In some embodiments, the processing device may correlate multiple sets of data based on stored file names; for example, the file name may include a substrate ID, and the substrate ID may be used to correlate the files together. In some embodiments, the processing device may correlate data sets based on file generation time and / or tool ID.
[0066] The data is provided to the analysis system 204. The analysis system 204 may be connected to Figure 1 The analysis system 204 may be associated with the analysis system 110 of the embodiment of the present invention. The analysis system 204 may utilize a plurality of tools, modules, models, etc. to process the data (e.g., the pre-processed time trace sensor data). In some embodiments, the data may be provided to the cycle separation module 206. The operation of the cycle separation 206 may include the following operations: dividing the pre-processed sensor data into a series of cycles. For example, the cycle separation module 206 may divide the sensor data into data sets, each data set corresponding to a layer of the substrate being processed.
[0067] In some embodiments, processing logic (e.g., associated with the cycle separation module 206) may classify separated data sets (e.g., associated with repeated single operations; repeated single operations such as deposition of a first material). For example, each deposition of a first material from a processing run, a processing procedure, etc. may be classified as the same operation, each deposition of a second material may be classified as a second operation, and each exhaust of a first processing gas may be classified as a second operation, etc. In some embodiments, processing logic may assign classifications based on values of sensor data (e.g., values recorded by a key sensor). For example, a flow meter reading from a flow meter measuring the flow of a first processing gas may be used to determine whether a processing operation corresponds to the deposition of a first material associated with the first processing gas. Multiple sensor readings may be used together to classify an operation, for example, RF power and gas flow readings may classify an etching operation. Sensor readings and sensor history may be used to classify an operation, for example, a low pressure period following a period classified as deposition of a first material may be classified as exhaust of a first processing gas associated with a first material. In some embodiments, the output from the cycle separation module 206 may include a series of time trajectory data sets collected by multiple sensors, divided into single operations, and classified by operation type.
[0068] In some embodiments, an index may be generated and associated with the cycle data. The index may uniquely identify a cycle of a process; for example, the index value may be incremented continuously across process runs, across process conditions, and the like. In some embodiments, a target structure may include a number of layers; each layer has an assigned index. The index may be used in future operations; for example, a visualization operation may plot sensor data as a function of the cycle index, may compare data associated with selected index cycle numbers for multiple runaway limit substrates, and the like. In some embodiments, the index value may serve as a unique identifier for a cycle of sensor data, a cycle of multiple process runs, and the like.
[0069] The data may be received by the transient separation module 208. The time trace data set received from the cycle separation module 206 may include one or more transient portions and one or more steady state portions. For example, a deposition operation may be started with a low process chamber pressure, and process gas may be introduced until the process chamber pressure reaches a target value. The pressure sensor time trace data may include a transition period from the low pressure to the target pressure. The transient separation module 208 may be configured to separate the transient portion from the steady state portion for further analysis. Figure 3 The operation of the transient separation module 208 is further described.
[0070] The output of the transient separation module 208 may be provided to a summary data generation module 210. The summary data generation module 210 may be configured to receive the processed trajectory sensor data and generate one or more summary data associated with the input data as output. The summary data generation module 210 may utilize one or more models (e.g., machine learning models, physics-based models, statistical models, and exemplary model systems, including Figure 1 The model 190 of FIG. 190 is used to generate summary data from the processed trajectory data. In some embodiments, the summary data generation may include: calculating statistical metrics associated with the steady-state data, such as the mean, median, range, standard deviation, and skew, etc.
[0071] In some embodiments, the transient portion of the processed trajectory data may be used to perform summary generation operations. In some embodiments, the transient portion of the data may be provided to a trained machine learning model. The trained machine learning model may be configured to distinguish between normal and abnormal transient data. In some embodiments, the transient data may be used to generate summary data by using a physics-based model, an exemplary model system (e.g., optimal operating data), and the like. Features of the transient portion of the data may be extracted and compared with the model data. For example, features such as rise time (e.g., the time between the start of the transient portion and reaching a certain portion (e.g., 90%) of the target sensor reading value), overshoot (e.g., how far the sensor data exceeds the target value), oscillation (e.g., whether the sensor value oscillates before stabilizing to the target value, oscillation characteristics such as frequency and amplitude, etc.), stabilization time (e.g., the time from the start of the transient portion to the final time when the sensor value is greater than a defined interval (e.g., + / -10%) of the target value), and the like may be compared with the model system to generate summary data. The techniques described herein for analyzing the steady-state portion of the data may be applied to the transient portion. The techniques described for analyzing the transient portion may be applied to steady-state analysis.
[0072] The data (e.g., including the summary data) may then be provided to a reporting module 212. The reporting module may be similar to Figure 1 The reporting component 123 of the client device 120. In some embodiments, the reporting module 212 includes a dashboard (e.g., a graphical user interface) for displaying analysis (e.g., summary data). An exemplary dashboard is shown as Figure 4 In some embodiments, the reporting module 212 may receive multiple types of summary data and summary data associated with multiple sensors, etc. The reporting module 212 may include one or more interface tools, such as selecting summary data to display, selecting sensor data to display, and selecting substrate data to display, etc.
[0073] Figure 3 A visualization 300 depicts an operation for separating trajectory data into a transient portion and a steady-state portion according to some embodiments. The visualization 300 includes a time trajectory 302. The time trajectory 302 can be associated with a sensor and a processing operation (e.g., a complete runtime trajectory has been generated by Figure 2The loop separation module 206 of the time trajectory 302 is segmented to generate the time trajectory 302. In some embodiments, the value of the time trajectory 302 can be used to identify the steady-state portion, such as the portion of the time trajectory 302 that is within a determined threshold of the target value (e.g., within 10% of the target value) can be classified as the steady-state portion. In some embodiments, the slope of the data included in the time trajectory 302 can be used to separate the transient portion from the steady-state portion. For example, a best fit function can be used to approximate the time trajectory 302. The first derivative of the slope describing the best fit function can be calculated. The portion of the time trajectory 302 having a slope (e.g., slope magnitude / absolute value) above the threshold can be classified as the transient portion, and the portion of the time trajectory 302 having a slope below the threshold can be classified as the steady-state portion.
[0074] In some embodiments, window 314 can be used to determine whether a group of data points (e.g., data points within the window) belong to the transient portion or the steady-state portion of the data. Metrics of the points within the window can be used to classify the points in the window as transient or steady-state, such as range, standard deviation, variance, etc. For example, if window 314 includes points with a standard deviation of their values that exceeds a threshold, the points within window 314 can be classified as belonging to the transient portion.
[0075] In some embodiments, window 304 moves over the time trace to classify the data points of the trace as transient or steady state, as indicated by the arrow and dashed window to the right of trace 302. In some embodiments, time trace 302 can be separated into two or more parts. In some embodiments, time trace 302 can be separated into a transient head part 306, a steady state part 307, and a transient tail part 308.
[0076] Figure 4Describe an exemplary dashboard 400 for alerting a user of the performance quality of one or more processes according to some embodiments. The dashboard 400 may include a graphical user interface (GUI), integrated with a graphical user interface (GUI). The dashboard 400 may include a control panel 402 and a data display 410. The control panel 402 may be used by a user to display target data, such as target summary type, target substrate, data associated with target operation, and the like. For example, the control panel 402 may have a plurality of controls such as menus and selectable lists, etc., for customizing the data display 410 and / or selecting the data displayed in the data display 410. The exemplary control panel 402 includes three controls 404, 406, and 408. More or fewer controls may be contemplated. Possible controls may include, for example, data file selection 404, sensor selection 406, and process selection 408. In some embodiments, the control may include selecting a classification of operations (for example, the data file selected in the data file selection 404 may be divided into multiple categories, such as first material deposition, first processing gas evacuation, etc., and a separate control may be provided for classification selection, etc.), and selecting the type of summary data (for example, the data file may be divided into summary types, such as steady-state average, maximum slope of the transition portion, etc.), etc.
[0077] The data display 410 may display aggregated data so that data associated with different layers, cycles, etc. may be easily distinguished. The dashboard 400 may include buttons 412. In some embodiments, different colors may be used to display data points associated with different layers; for example, a color gradient may be used to distinguish data from different layers. Figure 4 As shown, different layers can be distinguished by different patterns. Figure 4 Early layers (eg, first third) are depicted as data points with no pattern, middle layers are depicted as data points with a striped pattern, and late layers are depicted as data points with a hashed pattern.
[0078] Data display 410 displays summary data associated with four substrates; namely, data sets 414, 415, 416, and 417. In some embodiments, one or more data sets may be associated with a model or ideal system (e.g., optimal operating data, data associated with a process that produces a product that meets a productivity threshold, etc.). Exemplary data display 410 includes optimal operating data set 417.
[0079] The data display 410 may display summary data values associated with a layer (or a group of layers, such as a boxcar average, etc.) and a substrate; for example, the y-axis of the data display 410 may represent the summary data values. Figure 44. The data display 410 may be used to compare data associated with a substrate; for example, to compare data of a processed substrate with one or more model data sets. The exemplary data displayed on the dashboard 400 may target a first target value 420 for an early layer, and may target a second target value 422 for an intermediate layer and a late layer. The data display 410 may display the data in a manner that easily distinguishes layer differences between substrates - for example, the best run data represented as data set 417 may define a target value. In some embodiments, the target value may be user-defined, defined by an average of multiple process runs, and so on. Data set 416 is similar to data set 417, which may indicate that data set 416 is associated with a process that is similar to the process associated with data set 417 (e.g., may indicate products with similar properties).
[0080] Data sets 414 and 415 include data points having values approximately corresponding to third value 424 and fourth value 426. In some embodiments, data display 410 may be configured to visually distinguish data points by layer; for example, data set 415 includes a later layer having a summary data value approximately fourth value 426, and data set 414 includes an intermediate layer having a summary data value approximately third value 424 and a later layer having a summary data value approximately fourth value 426. It may be quickly discerned which portions of the processing may be adjusted to achieve target processing conditions.
[0081] Figure 5 A flow chart depicting a method 500 for generating an alarm based on a cyclic process according to some embodiments. At block 502, processing logic receives time trajectory sensor data associated with a substrate process. The process includes two or more sets of process conditions. In some embodiments, the process can be divided into runs associated with different process conditions (e.g., the upper layers of a multi-layer device can be designed differently from the lower layers and processed differently to achieve target characteristics). In some embodiments, the process can include one or more runs, between which the substrate can be removed from the process environment and removed from the process chamber, etc. In some alternative embodiments, the process can include multiple process runs associated with the same or similar process conditions. At least two of the process runs (e.g., two data files, two sets of process conditions, etc.) each include one or more operations that are repeatedly performed.
[0082] Repeated operations may be performed to generate a target layered structure, such as a three-dimensional NAND memory structure. The repeated operations may include, for example, the following operations: introducing a first process gas (e.g., for depositing a first material on the surface of a substrate), evacuating the first process gas, introducing a second process gas (e.g., for depositing a second material on the surface of the substrate), and evacuating the second process gas, etc. In some embodiments, the target structure may include alternating layers of silicon oxide and silicon nitride (e.g., the first process gas may include an oxide precursor and the second process gas may include a nitride precursor). In some embodiments, the target structure may include alternating layers of silicon oxide and polysilicon. In some embodiments, layers of more than two materials may be formed; for example, the target structure may include layers of silicon oxide, silicon nitride, and polysilicon. In some embodiments, a cyclic deposition process may include multiple depositions of a single material; for example, repeated polysilicon deposition operations. In some embodiments, a cyclic process may include multiple operations associated with multiple depositions of a material, such as introducing a first process gas for deposition, evacuating the process gas, introducing a second process gas for further layer processing (e.g., plasma processing of the deposited material), and evacuating the second process gas. Such multi-stage operations may be used for cyclic deposition of a single material, two materials, or multiple materials. In some embodiments, the target structure may include a large number of layers; for example, 50 or more layers, 80 or more layers, 100 or more layers, 200 or more layers, etc. (e.g., the total number of repeated operations may be 50 or more, 80 or more, etc.).
[0083] At block 504, processing logic separates the time-trajectory sensor data associated with a first set of processing conditions into a first plurality of cycle data. Each of the first plurality of operations is associated with one or more operations that are repeatedly performed. In some embodiments, each of the first plurality of cycle data may be associated with a processing operation such as deposition of a first material, evacuation of a first processing gas, and the like. In some embodiments, sensor data values may be used to distinguish operations from cycles, and the like. Sensor values from a plurality of sensors may be used to distinguish operations; for example, values recorded by a processing chamber pressure sensor may be used to distinguish deposition operations from purge operations, and values recorded by a flow meter associated with a first processing gas may be used to distinguish deposition of a first material from deposition of a second material, and the like. In some embodiments, each of the first plurality of cycle data may be associated with a respective set of operations that are repeated, such as operations associated with a piece of a repeating pattern of a processing structure, such as operations associated with deposition of a first material and deposition of a second material. In some embodiments, each of the first plurality of cycle data may be associated with a plurality of processing cycles. At block 506, processing logic separates the time-trajectory sensor data associated with a second set of processing conditions into a second plurality of cycle data. The operations of block 506 may share features with the operations of block 504.
[0084] At block 508, processing logic identifies at least one steady-state portion of the temporal trace sensor data. In some embodiments, the cyclic data may be divided into a transient portion and a steady-state portion. Figure 3 The separation of the steady-state portion and the transient portion is discussed in more detail. In some embodiments, separate analyses may be performed on the steady-state portion and the transient portion. In some embodiments, only one type of portion (e.g., the steady-state portion, or the transient portion) may be analyzed.
[0085] At block 510, processing logic processes the first plurality of cycle data and the second plurality of cycle data to generate summary data. In some embodiments, processing may be performed on a portion of the cycle data (e.g., a steady-state portion). The summary data may be based on one or more steady-state portions. In some embodiments, the summary data may include one or more statistical measures, such as mean, median, range, standard deviation, skewness, and the like.
[0086] At block 512, processing logic may generate a graphic for display on a graphical user interface (GUI) based on the summary data. The graphic may be included in a GUI element, for example, the GUI may include a plurality of elements, one or more of which are graphics associated with a cyclic process. The GUI element may include an indication of the summary data associated with a first plurality of cycle data and a second plurality of cycle data. The graphic for display may include a visual distinction between displayed data associated with different cycles; for example, data may be displayed in different colors along a color gradient depending on which layer / cycle the data is associated with. In some embodiments, the graphic may include data from one or more substrates. In some embodiments, the graphic may include data associated with one or more classes of operations, for example, the graphic may include only data from operations associated with the deposition of a first material, and the like. In some embodiments, the graphic may include data associated with a model system, such as output of a physics-based model and optimal operating sensor data, and the like.
[0087] At block 514, processing logic provides an alert to the user. The alert may include the graphic of block 512. The alert may be provided via a dashboard (e.g., Figure 4 The alert may be provided via a graphical user interface, for example, to enable user interaction (e.g., customization of data selection and visualization, etc.). At block 516, further corrective actions are performed in view of the summarized data. Further corrective actions (e.g., further providing alerts to the user) may include scheduling maintenance and updating process recipes, etc.
[0088] Figure 6600 is a block diagram illustrating a computer system 600 according to certain embodiments. In some embodiments, the computer system 600 may be connected to other computer systems (e.g., via a network, such as a local area network (LAN), an intranet, an extranet, or the Internet). The computer system 600 may be operated as a server or client computer in a client-server environment, or as a peer computer in a peer-to-peer or distributed network environment. The computer system 600 may be provided by a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a cellular phone, a network device, a server, a network router, a switch or a bridge, or any device capable of (sequentially or otherwise) executing a set of instructions (the operation to be taken by the specified device). In addition, the term "computer" shall include any collection of computers that execute a set (or multiple sets) of instructions individually or jointly to perform any one or more methods described herein.
[0089] In a further aspect, the computer system 600 may include a processing device 602, a volatile memory 604 (e.g., a random access memory (RAM)), a non-volatile memory 606 (e.g., a read-only memory (ROM) or an electronically erasable programmable ROM (EEPROM)), and a data storage device 618, and the processing device 602, the volatile memory 604, and the data storage device 618 may communicate with each other via a bus 608.
[0090] The processing device 602 may be provided by one or more processors, such as a general-purpose processor (e.g., a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a microprocessor that implements other types of instruction sets, or a microprocessor that implements a combination of multiple instruction set types), or a special-purpose processor (e.g., an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), or a network processor).
[0091] The computer system 600 may further include a network interface device 622 (e.g., coupled to the network 674). The computer system 600 may further include a video display unit 610 (e.g., LCD), an alphanumeric input device 612 (e.g., keyboard), a cursor control device 614 (e.g., mouse), and a signal generating device 620.
[0092] In some embodiments, the data storage device 618 may include a non-transitory computer-readable storage medium 624 (e.g., a non-transitory machine-readable medium) on which instructions 626 encoding any one or more of the methods or functions described herein may be stored, including encoding Figure 1The instructions of the components (e.g., analysis component 114, corrective action component 122, model 190, etc.) are used to implement the methods described herein.
[0093] The instructions 626 may also reside, completely or partially, within the volatile memory 604 and / or within the processing device 602 during execution by the computer system 600; thus, the volatile memory 604 and the processing device 602 may also constitute machine-readable storage media.
[0094] Although the computer-readable storage medium 624 is shown as a single medium in the illustrative example, the term "computer-readable storage medium" shall include a single medium or multiple media (e.g., a centralized or distributed database, and / or associated caches and servers) that store one or more sets of executable instructions. The term "computer-readable storage medium" shall also include any tangible medium capable of storing or encoding a set of instructions for execution by a computer; a set of instructions causes a computer to perform any one or more of the methods described herein. The term "computer-readable storage medium" shall include, but is not limited to, solid-state memories, optical media, and magnetic media.
[0095] The methods, components and features described herein may be implemented by discrete hardware components, or may be integrated into the functionality of other hardware components such as ASICS, FPGAs, DSPs or similar devices. In addition, the methods, components and features may be implemented by firmware modules or functional circuits within a hardware device. Furthermore, the methods, components and features may be implemented by any combination of hardware devices and computer program components or by a computer program.
[0096] Unless otherwise specifically stated, terms such as "receiving," "performing," "providing," "obtaining," "causing," "accessing," "determining," "adding," "using," "training," "reducing," "generating," "correcting," and the like refer to actions and processes performed or implemented by a computer system that manipulate and transform data represented as physical (electronic) quantities within computer system buffers and memories into other data similarly represented as physical quantities within computer system memories or buffers or other such information storage, transmission, or display devices. In addition, the terms "first," "second," "third," "fourth," and the like as used herein are intended as labels to distinguish different components and may not have sequential meanings according to their numerical names.
[0097] The examples described herein also relate to an apparatus for performing the methods described herein. The apparatus may be specially constructed for performing the methods described herein, or the apparatus may comprise a general purpose computer system selectively programmed by a computer program stored in the computer system. Such a computer program may be stored in a computer readable tangible storage medium.
[0098] The methods and illustrative examples described herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used in accordance with the teachings disclosed herein, or it may prove convenient to construct more specialized apparatus to perform the methods described herein and / or each of the functions, routines, subroutines, or operations of these methods, respectively. Examples of various configurations of these systems are set forth above.
[0099] The above is intended to be illustrative rather than restrictive. Although the present application has been described with reference to specific illustrative examples and embodiments, it should be appreciated that the present application is not limited to the described examples and embodiments. The scope of the present application should be determined with reference to the claims attached hereto and the full scope of equivalents granted by the claims.
Claims
1. A method, include: receiving time trajectory sensor data associated with a substrate processing process, wherein the substrate processing process includes two or more sets of processing conditions, and wherein a first set of processing conditions and a second set of processing conditions in the two or more sets of processing conditions each include one or more operations that are repeatedly performed; separating a first portion of the temporal trace sensor data corresponding to the first set of processing conditions into a first plurality of cycle data, wherein each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed; separating a second portion of the temporal trace sensor data corresponding to the second set of processing conditions into a second plurality of cycle data, wherein each of the second plurality of cycle data is associated with one or more operations that are repeatedly performed; processing the first plurality of cycle data and the second plurality of cycle data to generate summary data; and Alerts based on the aggregated data are provided to users.
2. The method according to claim 1, further comprising: include: At least one steady-state portion of the temporal trace sensor data is identified, wherein at least a portion of the summary data is based on the steady-state portion.
3. The method according to claim 1, further comprising: include: executing a loop associated with the first plurality of loop data, wherein executing the loop associated with the first plurality of loop data comprises: supplying a first process gas to the processing chamber to deposit a first material on a surface of the substrate; exhausting the first process gas from the process chamber; supplying a second process gas to the processing chamber to deposit a second material on the surface of the substrate; and The second process gas is exhausted from the process chamber.
4. The method of claim 3, wherein the first material comprises silicon oxide, and wherein the second material comprises silicon nitride.
5. The method of claim 1, further comprising: include: assigning a first set of index values to each of the first plurality of cycle data; and A second set of index values is assigned to each of the second plurality of looping data such that the first set of index values and the second set of index values include a unique identifier for each of the first plurality of looping data and the second plurality of looping data. The method of claim 1 , wherein the summary data includes one or more statistical metrics.
7. The method of claim 1, further comprising: include: A graphical user interface (GUI) is provided that presents GUI elements, the GUI elements comprising: an indication of summary data associated with one or more cycles in the first plurality of cycle data and one or more cycles in the second plurality of cycle data; and Visual distinction between each indication.
8. The method of claim 1, wherein the substrate processing is to produce a three-dimensional NAND memory device.
9. The method of claim 1 , wherein the first portion of the time trace sensor data associated with the first set of processing conditions is separated into the first plurality of cycle data include: The two or more operations of the loop are identified based on sensor data values associated with the two or more operations.
10. A system comprising a memory and a processing device coupled to the memory, wherein the processing device is configured to perform: receiving time trajectory sensor data associated with a substrate processing process, wherein the substrate processing process includes two or more sets of processing conditions, and wherein a first set of processing conditions and a second set of processing conditions in the two or more sets of processing conditions each include one or more operations that are repeatedly performed; separating a first portion of the temporal trace sensor data corresponding to the first set of processing conditions into a first plurality of cycle data, wherein each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed; separating a second portion of the temporal trace sensor data corresponding to the second set of processing conditions into a second plurality of cycle data, wherein each of the second plurality of cycle data is associated with one or more operations that are repeatedly performed; processing the first plurality of cycle data and the second plurality of cycle data to generate summary data; and Alerts based on the aggregated data are provided to users.
11. The system of claim 10, wherein the processing device is further configured to: identify at least one steady-state portion of the temporal trace sensor data, wherein at least a portion of the summary data is based on the steady-state portion.
12. The system of claim 10, wherein the loop associated with the first plurality of loop data include: supplying a first process gas to the processing chamber to deposit a first material on a surface of the substrate; exhausting the first process gas from the process chamber; supplying a second process gas to the processing chamber to deposit a second material on the surface of the substrate; and The second process gas is exhausted from the process chamber.
13. The system of claim 10, wherein a total number of repeated operations including the plurality of loop data is at least 50.
14. The system of claim 10, wherein the summary data includes one or more statistical metrics.
15. The system of claim 10, further comprising: include: A graphical user interface (GUI) is provided that presents GUI elements, the GUI elements comprising: an indication of summary data associated with one or more cycles in the first plurality of cycle data and one or more cycles in the second plurality of cycle data; and Visual distinction between each indication.
16. The system of claim 10, wherein the substrate processing is used to produce a three-dimensional NAND memory device.
17. The system of claim 10, wherein the time trace sensor data associated with the first set of processing conditions is separated into a first plurality of cycle data include: Based on sensor data values associated with first and second operations of a loop, it is identified that first and second portions of the temporal trace sensor data are associated with the first and second operations, respectively.
18. A non-transitory machine-readable storage medium storing instructions which, when executed, cause a processing device to perform an operation include: receiving time trajectory sensor data associated with a substrate processing process, wherein the substrate processing process includes two or more sets of processing conditions, and wherein a first set of processing conditions and a second set of processing conditions in the two or more sets of processing conditions each include one or more operations that are repeatedly performed; separating a first portion of the temporal trace sensor data corresponding to the first set of processing conditions into a first plurality of cycle data, wherein each of the first plurality of cycle data is associated with one or more operations that are repeatedly performed; separating a second portion of the temporal trace sensor data corresponding to the second set of processing conditions into a second plurality of cycle data, wherein each of the second plurality of cycle data is associated with one or more operations that are repeatedly performed; processing the first plurality of cycle data and the second plurality of cycle data to generate summary data; and Alerts based on the aggregated data are provided to users.
19. The non-transitory machine-readable storage medium of claim 18, wherein the operations performed by the processing device further include: At least one steady-state portion of the temporal trace sensor data is identified, wherein at least a portion of the summary data is based on the steady-state portion.
20. The non-transitory machine-readable storage medium of claim 18, wherein the summary data includes one or more statistical metrics.
