Systems and methods for adaptive troubleshooting of semiconductor manufacturing equipment - Patents.com
The system addresses the challenge of monitoring semiconductor manufacturing equipment by generating manufacturing graphs and applying machine learning to sensor data, enabling efficient detection of failures and reducing downtime.
Patent Information
- Application Number
- JP2024513186
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-08-27
- Filing Date
- 2022-08-26
- Publication Date
- 2025-05-14
- Estimated Expiration
- 2042-08-26
AI Technical Summary
Existing semiconductor manufacturing equipment lacks a comprehensive system to monitor the overall health of its subsystems, leading to undetected condition degradation and resulting in significant downtime and repair times.
A system that includes a processing device and memory to obtain sensor values from deposition processes, generate manufacturing graphs, and receive failure data via a user interface, allowing for the storage and accessibility of failure data for diagnostic purposes. Additionally, a machine learning model is applied to sensor data to identify failure types and generate corrective actions.
This solution significantly reduces the time required to detect and diagnose subsystem failures in semiconductor manufacturing equipment, improves energy efficiency, and minimizes production downtime by providing accurate diagnostic data and corrective actions.
Smart Images

Figure 0007676658000001 
Figure 0007676658000002 
Figure 0007676658000003
Abstract
Description
[Technical field]
[0001] FIELD OF THE DISCLOSURE Embodiments of the present disclosure relate to electrical components, and more particularly, to performing adaptive troubleshooting of semiconductor manufacturing equipment. [Background technology]
[0002] A product may be produced by performing one or more manufacturing processes using a manufacturing equipment. For example, a semiconductor manufacturing equipment may be used to manufacture semiconductor devices (e.g., substrates, wafers, etc.) through a semiconductor manufacturing process. The manufacturing equipment may deposit multiple layers of a film on a surface of a substrate and may perform an etching process to form an intricate pattern in the deposited film. For example, the manufacturing equipment may perform a chemical vapor deposition (CVD) process to deposit another layer on the substrate. Sensors may be used to determine manufacturing parameters of the manufacturing equipment during the manufacturing process, and metrology equipment may be used to determine characteristic data of a product produced by the manufacturing equipment, such as the overall thickness of a layer on the substrate. Typically, the manufacturing equipment may monitor individual sensors to detect problems during the deposition process. However, monitoring individual sensors does not indicate the overall health of the various subsystems of the manufacturing equipment, and degradation of condition may go undetected, leading to significant downtime and repair times. Therefore, a system that can generate metrics that indicate the overall system health of each subsystem during the manufacturing process is desirable. Summary of the Invention [Problem to be solved by the invention]
[0003] The following is a simplified summary of the disclosure to provide a basic understanding of some aspects of the disclosure. This summary is not an extensive overview of the disclosure. It is not intended to identify key or critical elements of the disclosure, nor to delineate the scope or claims of particular implementations of the disclosure. Its sole purpose is to present some concepts of the disclosure in a simplified form as a prelude to the more detailed description that is presented later. [Means for solving the problem]
[0004] In one aspect of the disclosure, a system includes a memory and a processing device operably coupled to the memory device, and performs operations including obtaining a plurality of sensor values associated with a deposition process performed according to a recipe in a process chamber to deposit a film on a surface of a substrate. The processing device further performs operations including generating a manufacturing graph based on the plurality of sensor values. The processing device further performs operations including receiving, via a user interface, a selection of a data point on the manufacturing data graph. The processing device further performs operations including receiving failure data associated with the data point and storing the failure data in a data structure such that it is accessible via a user interface that presents the manufacturing data graph.
[0005] In another aspect of the disclosure, a method includes obtaining a plurality of sensor values associated with a deposition process performed according to a recipe in a process chamber for depositing a film on a surface of a substrate. The method further includes generating a manufacturing graph based on the plurality of sensor values. The method further includes receiving, via a user interface, a selection of a data point on the manufacturing data graph. The method further includes receiving failure data associated with the data point and storing the failure data in a data structure such that the failure data is accessible via a user interface that presents the manufacturing data graph.
[0006] In another aspect of the disclosure, a method includes obtaining, by a processor, a plurality of sensor values associated with a deposition process performed according to a recipe in a process chamber for depositing a film on a surface of a substrate. The method further includes applying a machine learning model to the plurality of sensor values, the machine learning model being trained based on historical sensor data of a subsystem of the process chamber and task data associated with the recipe for depositing the film. The method further includes generating an output of the machine learning model, the output being indicative of a type of fault of the subsystem. The method further includes determining a type of fault of the subsystem and generating a corrective action based on the type of fault.
[0007] The present disclosure is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram illustrating an exemplary system architecture, in accordance with certain embodiments. [Diagram 2] FIG. 1 is a flow diagram of a method for training a machine learning model, according to certain embodiments. [Diagram 3] 1 is a top schematic diagram of an exemplary manufacturing system, in accordance with certain embodiments. [Figure 4] 1 is a cross-sectional schematic side view of an exemplary process chamber of an exemplary manufacturing system, in accordance with certain embodiments. [Figure 5A] FIG. 13 is an exemplary diagram of a manufacturing data graph, according to an aspect of the present disclosure. [Figure 5B] FIG. 13 is an exemplary diagram of a manufacturing data graph, according to an aspect of the present disclosure. [Figure 6A] 2 is a schematic diagram illustrating exemplary metadata maintained by a representation server according to an aspect of the present disclosure. [Figure 6B] 2 is a schematic diagram illustrating exemplary fault data maintained by a representation server according to an aspect of the present disclosure; [Figure 7]FIG. 1 illustrates a flow diagram of a method for determining a type of fault in a process chamber subsystem using a machine learning model, in accordance with certain embodiments. [Figure 8] FIG. 1 is a block diagram illustrating a computer system in accordance with certain embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Described herein is technology directed to systems and methods for performing adaptive troubleshooting of semiconductor manufacturing equipment. A film can be deposited on a surface of a substrate during a deposition process (e.g., a deposition (CVD) process, an atomic layer deposition (ALD) process, etc.) performed in a process chamber of the manufacturing system. For example, in a CVD process, the substrate is exposed to one or more precursors that react on the substrate surface to produce a desired deposit. The film can include one or more layers of material formed during the deposition process, with each layer including a particular thickness gradient (e.g., a change in thickness along a layer of the deposited film). For example, a first layer can be formed directly on the surface of the substrate (referred to as the proximal layer or proximal end of the film) and have a first thickness. After the first layer is formed on the surface of the substrate, a second layer having a second thickness can be formed on the first layer. This process continues until the deposition process is completed and a final layer of the film (referred to as the distal layer or distal end of the film) is formed. The film can include alternating layers of different materials. For example, the film may include alternating layers of oxide and nitride layers (oxide-nitride-oxide-nitride stack or ONON stack), alternating layers of oxide and polysilicon layers (oxide-polysilicon-oxide-polysilicon stack or OPOP stack), etc. The film may be subjected to, for example, an etching process to form a pattern on the surface of the substrate, a chemical mechanical polishing (CMP) process to smooth the surface of the film, or any other process necessary to produce a completed substrate.
[0010] A process chamber may have multiple subsystems that operate during each substrate manufacturing process (e.g., deposition process, etch process, polishing process, etc.). A subsystem may be characterized as a set of sensors related to an operational parameter of the process chamber. The operational parameter may be temperature, flow rate, pressure, etc. In one example, a pressure subsystem may be characterized by one or more sensors that measure gas flow, chamber pressure, control valve angle, foreline (vacuum line between pumps) pressure, pump speed, etc. Thus, a process chamber may include a pressure subsystem, a flow rate subsystem, a temperature subsystem, etc. Each subsystem may degrade, deviate from optimal performance conditions, and / or experience failure of one or more components. For example, a pressure subsystem may experience a drop in pressure due to one or more of a pump failure or failure, a control valve failure or failure, etc.
[0011] Existing systems detect faults or failures in a process chamber using limit checks of a single sensor value. For example, existing systems may monitor if a sensor value is below or above a predefined threshold (e.g., a temperature sensor exceeds a pre-set temperature threshold), and an operator may manually check and investigate accordingly. However, a sensor value below or above a predefined threshold may not indicate an underlying problem with the subsystem. Furthermore, a subsystem with multiple failed sensors may indicate an unrelated problem (e.g., reduced pump output due to a poor cable connection). This may lead to an operator unnecessarily replacing operational parts while attempting to identify the cause of the failure.
[0012] Aspects and embodiments of the present disclosure address these and other shortcomings of existing techniques by generating and updating manufacturing data graphs for training machine learning models capable of providing diagnostics. In particular, the system of the present disclosure acquires manufacturing data associated with a previous deposition process (and / or associated with other processes, such as etching processes, polishing processes, etc.) performed in a process chamber to deposit a film on a surface of a substrate. The manufacturing data can include sensor data (e.g., sensor values associated with subsystems of the process chamber), metrology data, task data (such as data associated with process recipes for depositing a film and etching a film), test data, etc. The system can then generate and display a manufacturing data graph on a user interface.
[0013] The manufacturing data graph can be a bar graph, a line graph, a scatter plot, or any other type of graph that can visually display manufacturing related data. The manufacturing data graph can display data related to a process chamber, a process recipe, steps of a process recipe, sensors, etc. For example, the manufacturing data graph can display sensor data from one or more sensors associated with different steps of a manufacturing process over time (e.g., a trace view). More specifically, as an example, the manufacturing data graph can display pressure values over time for each step of a deposition process (e.g., each layer of a film deposited on a substrate).
[0014] For each step, the system can associate or correlate relevant data (metadata, process recipe data, limit data, etc.). For example, for a step of a process recipe, the system can associate metadata such as a process chamber identifier, a process recipe identifier, a subsystem type (e.g., pressure, flow rate, etc.), an operator name, date and / or time. Through a user interface, an operator can select a particular data point from the manufacturing data graph and view the associated data.
[0015] The user interface may further provide the operator with a ticketing tool. The ticketing tool allows the operator to open a ticket (case file) for a suspected fault or failure associated with a step. For example, an operator may notice a pressure spike during a particular step, select said step (or a data point for said step) from a manufacturing data graph, and open a ticket for that step. The user interface may display a ticket page (e.g., an application page, a browser page, etc.) that allows the operator to view metadata associated with the step or data point and enter (log) fault data for the step. In one example, the system may prompt the operator to enter a fault or failure description, a possible root cause of the fault or failure, a recommended corrective action to fix the fault or failure, etc. For example, an operator may select a data point on a manufacturing data graph that shows a pressure spike, and enter on the ticket page that the fault is an abnormal pressure spike, the possible root cause is a gas burst issue, and the recommended corrective action is calibration. Each ticket may be stored by the system for future access or reference. For example, an operator may notice a pressure spike in another step and, via a user interface, filter or sort tickets based on the pressure spike. The operator may then open similar tickets and use the logged failure data to determine possible root causes and recommended corrective actions.
[0016] In some embodiments, the system can further provide a machine learning model trained to generate predictive data indicative of a suspected fault or failure and recommend corrective actions based on the suspected fault or failure. In an illustrative example, the system can map sensor data to task data to generate a training set. The system can then use the training set to train a machine learning model to provide data indicative of expected sensor values of the subsystem. The system can then refine the machine learning model with data from the manufacturing data graph to enable the machine learning model to identify sensor data (or other manufacturing data) indicative of a suspected fault or failure. The machine learning model can then indicate a recommended corrective action. For example, the system can apply the machine learning model to current sensor values to determine a suggested corrective action in response to detecting a fault or failure. In some embodiments, the output from the machine learning model can include a value indicative of a failure pattern associated with the process chamber subsystem. The system can then compare the failure pattern to a library of known failure patterns to determine a type of failure that occurred in the subsystem, a root cause of the failure, a recommended corrective action to fix the failure, etc. In some embodiments, the system can maintain the library by extracting failure data from the manufacturing data graph and associating the failure data with the failure patterns. The system may extract the fault data using, for example, natural language processing. In some embodiments, the system performs and / or recommends corrective actions based on the failure pattern, such as adjusting one or more parameters of the deposition process recipe (e.g., a temperature setting of the process chamber, a pressure setting of the process chamber, a flow rate setting of a precursor of a material included in the film deposited on the substrate surface, etc.), replacing one or more components of the process chamber subsystem (e.g., a sensor, a pump, an apparatus, a tool, etc.), cleaning, etc.
[0017] Aspects of the present disclosure provide technical advantages such as significantly reducing the time required to detect and diagnose faults and failures in process chamber subsystems during substrate manufacturing, improving energy consumption, etc. Aspects of the present disclosure also enable diagnostic data to be generated and corrective actions to be taken to avoid inconsistent, abnormal product and unscheduled downtime.
[0018] FIG. 1 illustrates an exemplary computer system architecture 100 according to aspects of the disclosure. In some embodiments, the computer system architecture 100 may be included as part of a manufacturing system for processing substrates, such as the manufacturing system 300 of FIG. 3. The computer system architecture 100 includes a client device 120, a manufacturing tool 124, a metrology tool 128, a prediction server 112 (e.g., for generating prediction data, providing model adaptation, using a knowledge base, etc.), a representation server 116 (e.g., for generating and providing manufacturing data graphs, providing ticketing tools, etc.), and a data store 140. The prediction server 112 and the representation server 116 may be part of a prediction system 110. The prediction system 110 may further include server machines 170 and 180. The manufacturing tool 124 may include a sensor 126 configured to capture data of the substrates being processed in the manufacturing system. In some embodiments, the manufacturing equipment 124 and the sensor 126 may be part of a sensor system that includes a sensor server (e.g., a field service server (FSS) at a manufacturing facility) and a sensor identifier reader (e.g., a front opening unified pod (FOUP) radio frequency identification (RFID) reader for the sensor system). In some embodiments, the metrology equipment 128 may be part of a metrology system that includes a metrology server (e.g., a metrology database, metrology folders, etc.) and a metrology identifier reader (e.g., a FOUP RFID reader for the metrology system).
[0019] The manufacturing tool 124 may operate according to a recipe or over a period of time to produce products such as electronic devices. The manufacturing tool 124 may include a process chamber, such as the process chamber 400 described with respect to FIG. 4. The manufacturing tool 124 may perform a process on a substrate (e.g., a wafer, etc.) in the process chamber. Examples of substrate processes include a deposition process to deposit one or more layers on a surface of the substrate, an etch process to form a pattern on the surface of the substrate, etc. The manufacturing tool 124 may perform each process according to a process recipe. A process recipe defines a particular sequence of operations to be performed on the substrate during the process and may include one or more settings associated with each operation. For example, a deposition process recipe may include a temperature setting for the process chamber, a pressure setting for the process chamber, flow settings for precursors of materials included in the film to be deposited on the substrate surface, etc.
[0020] In some embodiments, the manufacturing tools 124 include sensors 126 configured to generate data associated with a substrate processed in the manufacturing system 100. For example, a process chamber may include one or more sensors configured to generate spectral or non-spectral data associated with a substrate before, during, and / or after a process (e.g., a deposition process) is performed on the substrate. In some embodiments, the spectral data generated by the sensors 126 may indicate a concentration of one or more materials deposited on a surface of the substrate. The sensors 126 configured to generate spectral data associated with the substrate may include reflectance sensors, ellipsometric sensors, thermal spectral sensors, capacitive sensors, etc. The sensors 126 configured to generate non-spectral data associated with the substrate may include temperature sensors, pressure sensors, flow sensors, voltage sensors, etc. Further details regarding the manufacturing tools 124 are provided with respect to FIGS. 3 and 4.
[0021] In some embodiments, the sensors 126 provide sensor data (e.g., sensor values, characteristics, trace data) associated with the manufacturing equipment 124 (e.g., associated with the manufacturing equipment 124 producing a corresponding product, such as a wafer). The manufacturing equipment 124 may perform an operation according to a recipe or over a period of time to produce a product. The sensor data received over a period of time (e.g., corresponding to at least a portion of a recipe or operation) may be referred to as trace data (e.g., historical trace data, current trace data, etc.) received from different sensors 126 over time. The sensor data may include one or more values of temperature (e.g., heater temperature), spacing (SP), pressure, high frequency radio frequency (HFRF), electrostatic chuck (ESC) voltage, current, material flow, power, voltage, etc. The sensor data may be associated with or indicative of hardware parameters, such as settings or components (e.g., size, type, etc.) of the manufacturing equipment 124, or manufacturing parameters, such as process parameters of the manufacturing equipment 124. The sensor data may be provided while the manufacturing equipment 124 is performing a manufacturing process (e.g., equipment readings as the product is processed). The sensor data may vary from board to board.
[0022] The metrology tool 128 can provide metrology data associated with substrates processed by the fabrication tool 124. The metrology data can include values of film property data (e.g., wafer spatial film properties), dimensions (e.g., thickness, height, etc.), dielectric constant, dopant concentration, density, defects, etc. In some embodiments, the metrology data can further include values of one or more surface profile property data (e.g., etch rate, etch rate uniformity, critical dimension of one or more features included in the surface of the substrate, critical dimension uniformity across the surface of the substrate, edge placement error, etc.). The metrology data can be of finished or semi-finished products. The metrology data can vary from substrate to substrate. The metrology data can be generated using, for example, reflectometry techniques, ellipsometry techniques, TEM techniques, etc.
[0023] In some embodiments, the metrology tool 128 may be included as part of the fabrication tool 124. For example, the metrology tool 128 may be included within or coupled to a process chamber and configured to generate metrology data of the substrate before, during, and / or after a process (e.g., a deposition process, an etch process, etc.) while the substrate remains in the process chamber. In such an example, the metrology tool 128 may be referred to as an in-situ metrology tool. In another example, the metrology tool 128 may be coupled to another station of the fabrication tool 124. For example, the metrology tool may be coupled to a transfer chamber, such as the transfer chamber 310 of FIG. 3, a load lock, such as the load lock 320, or a factory interface, such as the factory interface 306. In such a case, the metrology tool 128 may be referred to as an integrated metrology tool. In other or similar embodiments, the metrology tool 128 is not coupled to a station of the fabrication tool 124. In such a case, the metrology tool 128 may be referred to as an in-line metrology tool or an external metrology tool. In some embodiments, the integrated metrology tool and / or the in-line metrology tool are configured to generate metrology data of the substrate before and / or after a process.
[0024] The client device 120 may include computing devices such as a personal computer (PC), a laptop, a mobile phone, a smart phone, a tablet computer, a netbook computer, 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, an operator box, etc. In some embodiments, metrology data may be received from the client device 120. The client device 120 may display a graphical user interface (GUI) through which a user may provide as input metrology measurements of substrates processed in the manufacturing system. The client device 120 may include a corrective action component 122. The corrective action component 122 may receive user input of instructions (e.g., via a graphical user interface (GUI) 123 displayed on the client device 120) associated with a manufacturing tool 124. In some embodiments, the corrective action component 122 sends instructions to the prediction system 110, receives output (e.g., prediction data) from the prediction system 110, determines a corrective action based on the output, and causes the corrective action to be implemented. In some embodiments, the corrective action component 122 receives corrective action instructions from the predictive system 110 and causes the corrective action to be implemented. Each client device 120 may include an operating system that enables a user to one or more of create, view, or edit data (e.g., instructions associated with a manufacturing equipment 124, corrective actions associated with a manufacturing equipment 124, etc.).
[0025] The data store 140 can be a memory (e.g., random access memory), a drive (e.g., hard drive, flash drive), a database system, or another type of component or device capable of storing data. The data store 140 can include multiple storage components (e.g., multiple drives or multiple databases) that can span multiple computing devices (e.g., multiple server computers). The data store 140 can store data associated with processing of substrates on the manufacturing tool 124. For example, the data store 140 can store data (referred to as process data) collected by the sensors 126 of the manufacturing tool 124 before, during, or after the substrate process. Process data can refer to historical process data (e.g., process data generated for a previous substrate processed on the manufacturing system) and / or current process data (e.g., process data generated for a current substrate processed on the manufacturing system). The data store can also store spectral or non-spectral data associated with a portion of the substrate processed on the manufacturing tool 124. The spectral data can include historical spectral data and / or current spectral data.
[0026] The data store 140 may also store context data associated with one or more substrates processed in the manufacturing system. The context data may include recipe name, recipe step number, preventive maintenance indicator, operator, etc. The context data may refer to historical context data (e.g., context data associated with a previous process performed on a previous substrate) and / or current process data (e.g., context data associated with a current or future process performed on a previous substrate). The context data may further identify a sensor associated with a particular subsystem of a process chamber.
[0027] The data store 140 may also store task data. The task data may include one or more sets of operations to be performed on a substrate during a deposition process and may include one or more settings associated with each operation. For example, task data for a deposition process may include a temperature setting for a process chamber, a pressure setting for the process chamber, a flow rate setting for a precursor of a material of a film to be deposited on a substrate, and the like. In another example, the task data may include controlling a pressure at a pressure point defined relative to a flow rate value. The task data may refer to past task data (e.g., task data associated with a previous process performed on a previous substrate) and / or current task data (e.g., task data associated with a current or future process to be performed on a substrate).
[0028] The data store 140 may also store alarm data. The alarm data may include one or more threshold settings, criteria, or triggers that indicate a fault, failure, and / or operation beyond the limits of the settings. For example, the alarm data may indicate a setting (e.g., a temperature setting, a pressure setting, a flow rate setting, etc.) above or below a predetermined threshold, a cable connection failure, a component malfunction, etc.
[0029] In some embodiments, the data store 140 can store functional data. The functional data can include installation data, connection data, operational data, hardware data, software data, or any other data related to the mechanical and / or electrical performance of the manufacturing equipment.
[0030] In some embodiments, the data store 140 can store troubleshooting data. The troubleshooting data can include any type of correction data indicative of possible actions to correct the faults and / or failures. The correction data can further include maintenance data indicative of suggesting maintenance actions to be performed on the manufacturing equipment 124. The troubleshooting data can be generated during manufacturing or calibration of the manufacturing system 124. In some embodiments, the troubleshooting data can include one or more manufacturing data graphs. The manufacturing data graphs can be used to provide diagnostic data and / or can be used to train machine learning models capable of providing diagnostics.
[0031] The manufacturing data graph can be a bar graph, a line graph, a scatter plot, or any other type of graph that can visually display manufacturing related data. The manufacturing data graph can display data associated with one or more process chambers, one or more process recipes, one or more steps of a process recipe, one or more sensors, etc. For example, the manufacturing data graph can display sensor data from one or more sensors associated with different steps of a manufacturing process over time (e.g., a trace view). Each data point or unit of measure on the manufacturing data graph can be associated with metadata. The metadata can be viewable in the GUI 123 and can include a process chamber identifier, a process recipe identifier, a subsystem type (e.g., a pressurized subsystem), an operator name, a date and / or time, a description of the problem or failure, a possible root cause of the failure, a recommended corrective action to fix the failure, a resolution status (e.g., open, in progress, not started, closed, etc.), comments, etc. The metadata can be generated automatically, manually, or a combination thereof. The manufacturing data graph can be updated using current manufacturing data (e.g., data from manufactured substrates), operator input, library data, data generated by the models 190 and / or prediction server 112, etc. Manufacturing graph data is described in more detail below in FIG.
[0032] In some embodiments, the data store 140 can include manufacturing test data and quality data. The manufacturing test data can indicate how the manufacturing equipment 124 performed during the manufacturing process, efficiency data, etc. The quality data can include data related to the quality of the substrates. The quality data can be based on or include metrology data, for example.
[0033] In some embodiments, the data store 140 may include a fault library that associates fault data with fault patterns. The fault library may be generated by the prediction system 110 (e.g., the representation server 116) by extracting fault data from a manufacturing data graph and associating the fault data with fault patterns. The system may use, for example, natural language processing to extract the fault data. The fault library may be used by the model 190 to suggest corrective actions such as adjusting one or more parameters of the deposition process recipe (e.g., temperature settings of the process chamber, pressure settings of the process chamber, flow settings of precursors of materials included in the film deposited on the substrate surface, etc.), replacing one or more components of the process chamber subsystem (e.g., sensors, pumps, devices, tools, etc.), and cleaning.
[0034] In some embodiments, data store 140 can be configured to store data that is not accessible to users of the manufacturing system. For example, process data, spectral data, context data, manufacturing test data, quality data, etc. acquired for substrates being processed in the manufacturing system are not accessible to users (e.g., operators) of the manufacturing system. In some embodiments, all data stored in data store 140 can be inaccessible to users of the manufacturing system. In other or similar embodiments, some of the data stored in data store 140 can be inaccessible to users, while other portions of the data stored in data store 140 can be accessible to users. In some embodiments, one or more portions of the data stored in data store 140 can be encrypted using an encryption mechanism not known to the user (e.g., the data is encrypted using a private encryption key). In other or similar embodiments, data store 140 can include multiple data stores, where data that is not accessible to users is stored in one or more first data stores and data that is accessible to users is stored in one or more second data stores. For example, manufacturing test data and quality data may be stored in a first data store that is not accessible to users, and process data, spectral data, and contextual data may be stored in a second database that is accessible to users.
[0035] In some embodiments, the prediction system 110 includes a representation server 116. The representation server 116 can generate (and display in the GUI 123) manufacturing data graphs. The manufacturing data graphs can be bar graphs, line graphs, scatter plots, or any other type of graph that can visually display manufacturing related data, such as data from the data store 140. The manufacturing data graphs can display data related to manufacturing equipment 124, process recipes, steps of the process recipes, sensors 126, etc. In some embodiments, the manufacturing data graphs can display sensor data, trace data, metrology data, historical data, spectral data, corrective data, limit data, etc. The representation server can associate or correlate related data (metadata, process recipe data, limit data (e.g., acceptable thresholds for pressure, flow rate, etc.), etc.) with data points of the manufacturing data graphs, steps of the manufacturing data graphs, etc. For example, for each step of the process recipe, the representation server 116 can associate metadata such as a process chamber identifier, a process recipe identifier, a subsystem type (e.g., pressure, flow rate, etc.), an operator name, a date and / or a time. Through the user interface, an operator can select a particular data point from the manufacturing data graph and view the associated data. The GUI 123 can further provide the operator with a ticketing tool. The ticketing tool allows the operator to open a ticket (case file) in the event of a suspected fault or failure. Further details regarding the manufacturing data graph are provided with respect to Figures 5A and 5B.
[0036] In some embodiments, prediction system 110 includes prediction server 112, server machine 170, and server machine 180. Prediction server 112, server machine 170, and server machine 180 may each include one or more computing devices, such as a rack mount server, a router computer, a server computer, a personal computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, a graphic processing unit (GPU), an accelerator application specific integrated circuit (ASIC) (e.g., a tensor processing unit (TPU)), etc.
[0037] The server machine 170 includes a training set generator 172 that can generate training datasets (e.g., a set of data inputs and a set of target outputs) for training, validating, and / or testing the machine learning model 190. The machine learning model 190 can be any algorithmic model capable of learning from data. Some operations of the dataset generator 172 are described in more detail below with respect to FIG. 2. In some embodiments, the dataset generator 172 can divide the training data into a training set, a validation set, and a test set. In some embodiments, the prediction system 110 generates multiple training datasets.
[0038] The server machine 180 may include a training engine 182, a validation engine 184, a selection engine 185, and / or a test engine 186. An engine may refer to hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, processing unit, etc.), software (e.g., instructions executed on a processing unit, general-purpose computer system, or dedicated machine), firmware, microcode, or a combination thereof. The training engine 182 may train one or more machine learning models 190. The machine learning models 190 may refer to model artifacts created by the training engine 182 using training data (also referred to herein as a training set) that includes training inputs and corresponding target outputs (correct answers for each training input). The training engine 182 may find patterns in the training data that map the training inputs to the target outputs (predicted answers) and provide the machine learning models 190 that capture these patterns. The machine learning model 190 may use one or more of statistical modeling, support vector machines (SVM), radial basis functions (RBF), clustering, supervised machine learning, semi-supervised machine learning, unsupervised machine learning, k-nearest neighbor algorithms (k-NN), linear regression, random forests, neural networks (e.g., artificial neural networks), and the like.
[0039] The validation engine 184 may be able to validate the machine learning model 190 using a corresponding set of features of the validation set from the training set generator 172. The validation engine 184 may determine the accuracy of the machine learning model 190 based on the corresponding set of features of the validation set. The validation engine 184 may discard the trained machine learning models 190 that have an accuracy that does not meet the threshold accuracy. In some embodiments, the selection engine 185 may be able to select the trained machine learning model 190 that has an accuracy that meets the threshold accuracy. In some embodiments, the selection engine 185 may be able to select the trained machine learning model 190 with the highest accuracy among the trained machine learning models 190.
[0040] The testing engine 186 may be able to test the trained machine learning models 190 using a corresponding set of features of a test set from the dataset generator 172. For example, a first trained machine learning model 190 trained using a first set of features of the training set may be tested using a first set of features of the test set. The testing engine 186 may determine the trained machine learning model 190 that has the highest accuracy of all the trained machine learning models based on the test set.
[0041] As described in more detail below, the prediction server 112 includes a prediction component 114 that can provide data indicative of predicted sensor values for each subsystem of the process chamber and execute the trained machine learning model 190 against current sensor data inputs to obtain one or more outputs. The prediction server 112 can further provide data indicative of suspected failures or faults and provide diagnostics, such as recommending corrective actions based on the suspected failures or faults, as described in more detail below.
[0042] The client devices 120, the manufacturing equipment 124, the sensors 126, the measurement equipment 128, the prediction server 112, the representation server 116, the data store 140, the server machine 170, and the server machine 180 can be coupled to each other via the network 130. In some embodiments, the network 130 is a public network that provides the client devices 120 with access to the prediction 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 devices 120 with access to the manufacturing equipment 124, the measurement equipment 128, the data store 140, and other privately available computing devices. The network 130 can 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.
[0043] It should be noted that in some other implementations, the functionality of server machines 170 and 180 and prediction server 112 may be provided by a fewer number of machines. For example, in some embodiments, server machines 170 and 180 may be combined into a single machine, while in some other or similar embodiments, server machines 170 and 180 and prediction server 112 may be combined into a single machine.
[0044] In general, functionality described in one embodiment as being performed by server machine 170, server machine 180, and / or prediction server 112 may also be performed on client device 120. Additionally, functionality attributed to a particular component may be performed by different components or multiple components working together.
[0045] In an embodiment, a "user" may be represented as a single individual. However, other embodiments of the present disclosure encompass a "user" being an entity controlled by multiple users and / or automated sources. For example, a collection of individual users federated as a group of administrators may be considered a "user."
[0046] 2 is a flow diagram of a method 200 for training a machine learning model according to an aspect of the present disclosure. The method 200 is performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one embodiment, the method 200 may be performed by a computer system such as the computer system architecture 100 of FIG. 1. In other or similar embodiments, one or more operations of the method 200 may be performed by one or more other machines not shown in the figure. In some aspects, one or more operations of the method 200 may be performed by the server machine 170, the server machine 180, and / or the prediction server 112.
[0047] For ease of explanation, the method is shown and described as a series of acts. However, acts according to the present disclosure may be performed in various orders and / or simultaneously, as well as with other acts not shown and described herein. Moreover, not all acts shown may be performed to implement a method in accordance with the disclosed subject matter. Furthermore, those skilled in the art will understand and appreciate that a method may alternatively be represented as a series of interrelated states, via a state diagram or events. Furthermore, it should be appreciated that the methods disclosed herein may be stored in an article of manufacture to facilitate transport and transfer of such methods to a computing device. The term article of manufacture as used herein is intended to encompass a computer program accessible from any computer-readable device or storage medium.
[0048] At block 210, processing logic initializes a training set T to an empty set (e.g., {}).
[0049] At block 212, the processing logic obtains sensor data (e.g., sensor values, characteristics, trace data) associated with a previous deposition process performed to deposit one or more layers of a film on a surface of a previous substrate. The sensor data may be further associated with subsystems of the process chamber. A subsystem may be characterized as a set of sensors related to an operational parameter of the process chamber. The operational parameter may be temperature, flow rate, pressure, etc. For example, a pressure subsystem may be characterized by one or more sensors measuring gas flow, chamber pressure, control valve angle, foreline (vacuum line between pumps) pressure, pump speed, etc. Each process chamber may include multiple different subsystems, such as a pressure subsystem, a flow rate subsystem, a temperature subsystem, etc.
[0050] In some embodiments, the sensor data associated with the deposition process is historical data associated with one or more previous deposition settings for a previous deposition process previously performed on a previous substrate in the manufacturing system. For example, the historical data can be historical context data associated with a previous deposition process stored in the data store 140. In some embodiments, the one or more previous deposition settings can include at least one of a previous temperature setting for the previous deposition process, a previous pressure setting for the previous deposition setting, a previous flow rate setting for a precursor for one or more materials of a previous film deposited on the surface of the previous substrate, or any other setting associated with the deposition process. The flow rate setting can refer to a flow rate setting of a precursor in an initial stage of a previous deposition process (referred to as an initial flow rate setting), a flow rate setting of a precursor in a final stage of a previous deposition process (referred to as a final flow rate setting), or a ramp rate of a flow rate of a precursor during a deposition process. In one example, the precursor of the previous film can include a boron-containing precursor or a silicon-containing precursor. In some embodiments, the sensor data can also be associated with a previous etching process performed on a previous substrate, or any other process performed in the process chamber.
[0051] At block 214, processing logic retrieves task data associated with a recipe for a film deposited on the surface of a previous substrate. For example, the task data may be temperature settings, pressure settings, flow rate settings, etc. required for a precursor of the material of the film to be deposited on the substrate. In some embodiments, the task data may include constraints required by the recipe. The task data may include past task data for a previous film deposited on the surface of the previous substrate. In some embodiments, the past task data for the previous film may correspond to past task values associated with the recipe for the previous film. Processing logic may retrieve the task data from data store 140 according to embodiments described above.
[0052] At block 216, processing logic generates first training data based on acquired sensor data associated with a previous deposition process performed on a previous substrate, and at block 218, processing logic generates second training data based on task data associated with a recipe for a film deposited on the surface of the previous substrate.
[0053] At block 220, processing logic generates a mapping between the first training data and the second training data, where the first training data includes or is based on data of a previous deposition process performed on a previous substrate, and the second training data includes or is based on task data associated with a recipe for a film deposited on a surface of the previous substrate, and the first training data is associated with (or mapped to) the second training data. At block 224, processing logic adds the mapping to the training set T.
[0054] At block 226, the processing logic determines whether the training set T includes a sufficient amount of training data to train the machine learning model. Note that in some implementations, the sufficiency of the training set T can be determined simply based on the number of mappings in the training set, while in some other implementations, the sufficiency of the training set T can be determined based on one or more other criteria (e.g., a measure of diversity of training examples, etc.) in addition to or instead of the number of input / output mappings. In response to determining that the training set does not include a sufficient amount of training data to train the machine learning model, the method 200 returns to block 212. In response to determining that the training set T includes a sufficient amount of training data to train the machine learning model, the method 200 continues to block 228.
[0055] At block 228, the processing logic provides a training set T for training the machine learning model. In one embodiment, the training set T is provided to the training engine 182 of the server machine 180 for training. In the case of a neural network, for example, input values of a given input / output mapping are input to the neural network, and output values of the input / output mapping are stored in the output nodes of the neural network. The connection weights in the neural network are then adjusted according to a learning algorithm (e.g., backpropagation, etc.), and this procedure is repeated for other input / output mappings in the training set T. It should be noted that training the machine learning model using sensor data and task data is described as an illustrative example, and the machine learning model may be trained using any type of manufacturing data or data associated with a manufacturing data graph.
[0056] In some embodiments, the processing logic may perform outlier detection methods to remove anomalies from the training set T prior to training the machine learning model. Outlier detection methods may include techniques to identify values that are significantly different from the majority of the training data. These values may be generated from errors, noise, etc.
[0057] At block 230, the processing logic performs a calibration process on the trained machine learning model such that the machine learning model can detect anomalous behavior of the process chamber subsystem. In some embodiments, the processing logic can compare the expected behavior of the process chamber subsystem to the current behavior of the process chamber subsystem based on a value difference between the expected behavior and the current behavior. For example, the processing logic can compare one or more values associated with expected data of the pressure subsystem, the flow subsystem, or the temperature subsystem to one or more values associated with the current measured behavior of the pressure subsystem, the flow subsystem, or the temperature subsystem, respectively. The calibration process can further associate the value difference with fault data from the manufacturing data graph. For example, the processing logic can compare the current data to historical data from the manufacturing data graph, where the historical data can include fault data associated with one or more issues, faults, failures, root causes, corrective actions, and the like. The processing logic can calibrate the trained machine learning model by mapping the fault data to the behavior data.
[0058] After block 230, the machine learning model can be used to detect failure patterns (e.g., anomalous behavior) in the process chamber subsystems and generate predictive data indicative of the type of failure (e.g., problem, failure, likely root cause of the problem and / or failure) and corrective actions to fix the suspected problem or failure, as described in more detail below in FIG.
[0059] In some embodiments, the manufacturing system may include more than one process chamber. For example, the exemplary manufacturing system 300 of FIG. 3 shows multiple process chambers 314, 316, 318. It should be noted that in some embodiments, the data acquired to train the machine learning model and the data collected to be provided as input to the machine learning model may be associated with the same process chamber of the manufacturing system. In other or similar embodiments, the data acquired to train the machine learning model and the data collected to be provided as input to the machine learning model may be associated with different process chambers of the manufacturing system. In other or similar embodiments, the data acquired to train the machine learning model may be associated with a process chamber of a first manufacturing system, and the data collected to be provided as input to the machine learning model may be associated with a process chamber of a second manufacturing system.
[0060] 3 is a top schematic view of an exemplary manufacturing system 300 according to an embodiment of the present disclosure. The manufacturing system 300 can perform one or more processes on a substrate 302. The substrate 302 can be any suitable rigid, planar article of fixed dimensions, such as, for example, a silicon-containing disk or wafer, a patterned wafer, a glass plate, etc., suitable for manufacturing electronic devices or circuit components.
[0061] The manufacturing system 300 can include a process tool 304 and a factory interface 306 coupled to the process tool 304. The process tool 304 can include a housing 308 having a transfer chamber 310 therein. The transfer chamber 310 can include one or more process chambers (also referred to as processing chambers) 314, 316, 318 disposed about and coupled to it. The process chambers 314, 316, 318 can be coupled to the transfer chamber 310 via respective ports, such as slit valves. The transfer chamber 310 can also include a transfer chamber robot 312 configured to transfer the substrate 302 between the process chambers 314, 316, 318, the load lock 320, etc. The transfer chamber robot 312 can include one or more arms, each arm including one or more end effectors at the end of each arm. The end effectors can be configured to handle a particular object, such as a wafer.
[0062] The process chambers 314, 316, 318 can be adapted to perform any number of processes on the substrate 302. The same or different substrate processes can be performed in each process chamber 314, 316, 318. The substrate processes can include atomic layer deposition (ALD), physical vapor deposition (PVD), chemical vapor deposition (CVD), etching, annealing, curing, pre-cleaning, metal or metal oxide removal, and the like. Other processes can be performed on the substrate in the process chamber. Each process chamber 314, 316, 318 can include one or more sensors configured to capture data of the substrate 302 before, after, or during the substrate process. For example, the one or more sensors can be configured to capture spectral and / or non-spectral data of a portion of the substrate 302 during the substrate process. In other or similar embodiments, the one or more sensors can be configured to capture data associated with the environment in the process chamber 314, 316, 318 before, after, or during the substrate process. For example, one or more sensors can be configured to capture data related to the temperature, pressure, gas concentrations, etc. of the environment within the process chambers 314, 316, 318 during substrate processing.
[0063] A load lock 320 may also be coupled to the housing 308 and the transfer chamber 310. The load lock 320 may be configured to interface with and couple to the transfer chamber 310 on one side, and the factory interface 306. The load lock 320 may have an environmentally controlled atmosphere that may be varied in some embodiments from a vacuum environment (substrates may be transferred to and from the transfer chamber 310) to an inert gas environment at or near atmospheric pressure (substrates may be transferred to and from the factory interface 306). The factory interface 306 may be any suitable enclosure, such as, for example, an Equipment Front End Module (EFEM). The factory interface 306 may be configured to receive substrates 302 from substrate carriers 322 (e.g., Front Opening Unified Pods (FOUPs)) docked to various load ports 324 of the factory interface 306. A factory interface robot 326 (shown in dotted lines) may be configured to transfer substrates 302 between the carriers (also called containers) 322 and the load lock 320. The carrier 322 may be a substrate storage carrier or a replacement part storage carrier.
[0064] The manufacturing system 300 may also be connected to a client device (not shown) configured to provide information regarding the manufacturing system 300 to a user (e.g., an operator). In some embodiments, the client device may provide information to a user of the manufacturing system 300 via one or more graphical user interfaces (GUIs). For example, the client device may provide information via the GUI regarding a target thickness profile of a film to be deposited on the surface of the substrate 302 during a deposition process performed in the process chambers 314, 316, 318. The client device may also provide information regarding modifications of the process recipe given a respective set of deposition settings that are predicted to correspond to the target profile in accordance with embodiments described herein.
[0065] The manufacturing system 300 may also include a system controller 328. The system controller 328 may be and / or may include a computing device such as a personal computer, a server computer, a programmable logic controller (PLC), a microcontroller, etc. The system controller 328 may include one or more processing devices, which may be a general-purpose processing device, such as a microprocessor, a central processing unit, etc. More specifically, the processing device may be a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or a combination of instruction sets. The processing device may also be one or more special-purpose processing devices, such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), a network processor, etc. The system controller 328 may include a data storage device (e.g., one or more disk drives and / or solid state drives), a main memory, a static memory, a network interface, and / or other components. The system controller 328 may execute instructions to perform any one or more of the methods and / or embodiments described herein. In some embodiments, the system controller 328 may execute instructions to perform one or more operations in the manufacturing system 300 in accordance with the process recipe. The instructions may be stored in a computer-readable storage medium, which may include a main memory, a static memory, a secondary storage device, and / or a processor (during execution of the instructions).
[0066] The system controller 328 may receive data from sensors contained on or within various portions of the manufacturing system 300 (e.g., processing chambers 314, 316, 318, transfer chamber 310, load lock 320, etc.). In some embodiments, the data received by the system controller 328 may include spectral and / or non-spectral data for a portion of the substrate 302. In other or similar embodiments, the data received by the system controller 328 may include data associated with processing the substrate 302 in the processing chambers 314, 316, 318, as previously described. For purposes of this description, the system controller 328 is described as receiving data from sensors contained within the process chambers 314, 316, 318. However, the system controller 328 may receive data from any portion of the manufacturing system 300 and use the data received from that portion in accordance with the embodiments described herein. In an illustrative example, the system controller 328 may receive data from one or more sensors in the process chambers 314, 316, 318 before, after, or during substrate processing in the process chambers 314, 316, 318. The data received from the sensors in various portions of the manufacturing system 300 may be stored in a data store 350. The data store 350 may be included as a component within the system controller 328 or may be a separate component from the system controller 328. In some embodiments, the data store 350 may be the data store 140 described with respect to FIG. 1.
[0067] FIG. 4 is a cross-sectional schematic side view of a process chamber 400 according to an embodiment of the present disclosure. In some embodiments, the process chamber 400 can correspond to the process chambers 314, 316, 318 described with respect to FIG. 3. The process chamber 400 can be used for a process in which a corrosive plasma environment is provided. For example, the process chamber 400 can be a chamber for a plasma etcher or a plasma etch reactor, or the like. In another example, the process chamber can be a chamber for a deposition process, as previously described. In one embodiment, the process chamber 400 includes a chamber body 402 and a showerhead 430 that surrounds an interior volume 406. The showerhead 430 can include a showerhead base and a showerhead gas distribution plate. Alternatively, the showerhead 430 can be replaced by a lid and a nozzle in some embodiments, or by multiple pie-shaped showerhead sections and plasma generation units in other embodiments. The chamber body 402 can be manufactured from aluminum, stainless steel, or other suitable materials, such as titanium (Ti). The chamber body 402 generally includes a sidewall 408 and a bottom 410. An exhaust port 426 may be defined in the chamber body 402 and may couple the interior volume 406 to a pumping system 428. The pumping system 428 may include one or more pumps and a throttle valve utilized to evacuate and regulate the pressure of the interior volume 406 of the process chamber 400.
[0068] The showerhead 430 can be supported on a sidewall 408 of the chamber body 402. The showerhead 420 (or lid) can be opened to allow access to the interior volume 406 of the process chamber 400 and can provide a seal to the process chamber 400 while closed. A gas panel 458 can be coupled to the process chamber 400 to supply process gases and / or cleaning gases to the interior volume 406 through the showerhead 430 or the lid and nozzles (e.g., through apertures in the showerhead or the lid and nozzles). For example, the gas panel 458 can provide precursors of a material of the film 451 to be deposited on the surface of the substrate 302. In some embodiments, the precursors can include silicon-based precursors or boron-based precursors. The showerhead 430 can include a gas distribution plate (GDP) and can have multiple gas supply holes 432 (also referred to as channels) throughout the GDP. A substrate support assembly 448 is disposed within the interior volume 406 of the process chamber 400 below the showerhead 430. The substrate support assembly 448 holds the substrate 302 during processing (eg, during a deposition process).
[0069] In some embodiments, the processing chamber 400 may include a metrology device (not shown) configured to generate in situ metrology measurements during a process performed in the processing chamber 400. The metrology device may be operably coupled to a system controller (e.g., system controller 328 as described above). In some embodiments, the metrology device may be configured to generate metrology measurements (e.g., thickness) of the film 451 during a particular instance of the deposition process. The system controller may generate a thickness profile of the film 451 based on the metrology measurements received from the metrology device. In other or similar embodiments, the processing chamber 400 does not include a metrology device. In such embodiments, the system controller may receive one or more metrology measurements of the film 451 after completion of a deposition process in the process chamber 400. The system controller may determine a deposition rate based on the one or more metrology measurements and may associate and generate a thickness profile of the film 451 based on the determined concentration gradient and the determined deposition rate of the deposition process.
[0070] 5A-5B are exemplary illustrations of manufacturing data graph 510 and manufacturing data graph 515, respectively, according to aspects of the disclosure. In some embodiments, the manufacturing data graphs are generated by the representation server 116 and displayed on the user interface 123. The manufacturing data graph 510 illustrates vacuum pressure over time for multiple steps of a process recipe and press control pressure over time for multiple steps of a process recipe. In some embodiments, the representation server 116 retrieves data (e.g., sensor data, trace data, etc.) from the data store 140 and generates one or more manufacturing data graphs (e.g., manufacturing data graph 510 and manufacturing data graph 515) based on the retrieved data. In some embodiments, an operator can select a recipe step or data point on the graph to view associated metadata. For example, peaks 520A and 520B visually indicate an abnormal spike in pressure (e.g., dissimilar to other process steps shown in graph 510). The abnormal spike may indicate a fault or failure that occurred during the recipe step. An operator can select, for example, peak 520A, and the user interface 123 can display metadata associated with the selected peak 520A. In one example, the associated metadata includes metadata such as a process chamber identifier, a process recipe identifier, a subsystem type (e.g., pressure subsystem), an operator name, a date and / or a time, etc. In some embodiments, the operator can open a ticket (e.g., a case file) for the selected peak (e.g., peak 520A) using a ticketing tool provided by the GUI 123.
[0071] 6 illustrates in schematic form exemplary metadata and fault data maintained by a representation server in accordance with aspects of the present disclosure. In some embodiments, the representation server 116 may maintain a fault table 610 and a fault table 620. In some embodiments, the fault tables 610 and 620 may be stored in the data store 140 and may be referenced by the prediction system 110 to update or calibrate the model 190, as described in more detail in FIG. 7.
[0072] Fault table 610 shows a row of a ticket generated for peak 520A. The representation server 116 can automatically generate (e.g., retrieve from data store 140) metadata associated with the generated ticket. In one example, as shown in table 610, the metadata can include the date the ticket was opened, a process chamber identifier, a process recipe identifier, a step number of the process recipe, a subsystem type (e.g., pressure subsystem), an operator name (e.g., Miland), data entered manually, and a hyperlink to a screenshot of a production graph. The row further includes a description of the failure (described in the fault table 610 as an abnormal pressure spike), a possible root cause of the problem (described in the fault table 610 as a gas burst problem), a recommended corrective action to fix the problem (described in the fault table 610 as a production calibration and / or manometer calibration), a resolution status (e.g., open, in progress, not started, closed, etc.), and a field for entering comments. Each ticket can be stored, for example, in the data store 140, for future access or reference. For example, an operator may notice a pressure spike in another step and, via a user interface, filter or sort the tickets based on the pressure spike. The operator may then open similar tickets to determine possible root causes and recommended corrective actions. In some embodiments, the data from each ticket may be used to calibrate or update the model 190.
[0073] 7 is a flow diagram of a method 700 for determining a fault type of a process chamber subsystem using a machine learning model, according to an embodiment of the present disclosure. The method 700 is performed by processing logic, which may include hardware (circuitry, dedicated logic, etc.), software (such as running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one implementation, the method 700 may be performed by a computer system, such as the computer system architecture 100 of FIG. 1. In other or similar implementations, one or more operations of the method 700 may be performed by one or more other machines not shown in the figure. In some embodiments, one or more operations of the method 600 may be performed by the server machine 170, the server machine 180, and / or the prediction server 112.
[0074] At block 710, the processing logic obtains sensor data associated with operations performed in the process chamber. In some embodiments, the operations may include a deposition process performed in the process chamber to deposit one or more layers of a film on a surface of a substrate, an etching process performed on one or more layers of a film on the surface of a substrate, etc. The operations may be performed according to a recipe. The sensor data may include one or more values of temperature (e.g., heater temperature), spacing, pressure, radio frequency radio frequency, electrostatic chuck voltage, current, material flow, power, voltage, etc. The sensor data may be associated with or indicative of hardware parameters such as settings or components (e.g., size, type, etc.) of the manufacturing tool 124, or manufacturing parameters such as process parameters of the manufacturing tool 124.
[0075] At block 712, processing logic applies a machine learning model (e.g., model 190) to the acquired sensor data and generates an output via the machine learning model based on the sensor data.
[0076] At block 714, the processing logic generates an output via the machine learning model based on the sensor data. In some embodiments, the output may include prediction data of whether the current data indicates a fault occurring in the process chamber. In some embodiments, the output may be at least one value indicative of a difference between an expected behavior of the process chamber subsystem and an actual behavior of the process chamber subsystem. In particular, the value may indicate a difference between an actual value of a set of sensors associated with the subsystem and an expected value of the set of sensors. The faults may include a mechanism failure, high or low pressure, high or low gas flow, high or low temperature, etc.
[0077] At block 716, processing logic determines whether the process chamber subsystem has failed. In some embodiments, processing logic may determine whether the process chamber subsystem has failed by comparing the output to a predetermined threshold. In some embodiments, processing logic may determine whether the process chamber subsystem has failed by determining that the output does not match expected behavior. In response to processing logic determining that the process chamber subsystem has not failed, processing logic may proceed to block 710. In response to processing logic determining that the process chamber subsystem has failed, processing logic may proceed to block 718.
[0078] At block 718, processing logic may identify a type of fault based on the output. In some embodiments, processing logic may compare the failure pattern to a manufacturing data graph and / or a library of known failure patterns to determine a type of fault based on a similarity of the failure pattern when compared to the known failure patterns or manufacturing data graph. In some embodiments, the type of fault may be extracted from the manufacturing data graph using natural language processing and then associated with the corresponding failure pattern. In some embodiments, the type of fault may be displayed (to an operator) on a user interface.
[0079] At block 720, the processing logic may perform (or suggest) a corrective action based on the identified fault. In some embodiments, the corrective action may be extracted from the manufacturing data graph using natural language processing and then associated with the type of fault. In some embodiments, the corrective action may include generating an alert or indication of the determined problem to the client device 120. In some embodiments, the corrective action may include the processing logic indicating the type of fault or failure, the cause of the fault or failure, and / or the recommended corrective action. In some embodiments, the corrective action may include the processing logic adjusting one or more parameters of the deposition process recipe (e.g., a temperature setting of the process chamber, a pressure setting of the process chamber, a flow rate setting of a precursor of a material included in the film to be deposited on the substrate surface, etc.) based on the desired characteristics of the film. In some embodiments, the deposition process recipe may be adjusted before, during (e.g., in real time), or after the deposition process.
[0080] FIG. 8 is a block diagram illustrating a computer system 800 according to certain embodiments. In some embodiments, computer system 800 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). Computer system 800 may operate in the capacity of a server or a client computer in a client-server environment, or as a peer computer in a peer-to-peer or distributed network environment. Computer system 800 may be provided by a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile phone, a web appliance, a server, a network router, a switch or bridge, or any device capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that device. Additionally, the term "computer" is intended to include any collection of computers that individually or jointly execute a set (or sets) of instructions to perform any one or more of the methods described herein.
[0081] In a further aspect, the computer system 800 may include a processing unit 802, a volatile memory 804 (e.g., random access memory (RAM)), a non-volatile memory 806 (e.g., read only memory (ROM) or electrically erasable programmable ROM (EEPROM)), and a data storage device 816, which may communicate with each other via a bus 808.
[0082] The processing unit 802 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 implementing other types of instruction sets, or a combination of multiple types of instruction sets, etc.) 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, etc.).
[0083] Computer system 800 may further include a network interface device 822 (e.g., coupled to a network 874). Computer system 800 may also include a video display unit 810 (e.g., LCD), an alphanumeric input device 812 (e.g., a keyboard), a cursor control device 814 (e.g., a mouse), and a signal generating device 820.
[0084] In some implementations, the data storage device 816 may include a non-transitory computer-readable storage medium 824 capable of storing instructions 826 encoding any one or more of the methods or functions described herein, including instructions for encoding the components of FIG. 1 (e.g., the corrective action component 122, the prediction component 114, etc.) and implementing the methods described herein.
[0085] The instructions 826 may also reside, completely or partially, within the volatile memory 804 and / or within the processing unit 802 during execution thereof by the computer system 800; and thus, the volatile memory 804 and the processing unit 802 may also constitute machine-readable storage media.
[0086] Although the computer-readable storage medium 824 is shown as a single medium in the illustrative example, the term "computer-readable storage medium" is intended to include a single medium or multiple media (e.g., centralized or distributed databases and / or associated caches and servers) that store one or more sets of executable instructions. The term "computer-readable storage medium" is also intended to include any tangible medium capable of storing or encoding a set of instructions for execution by a computer that causes the computer to perform any one or more of the methods described herein. The term "computer-readable storage medium" is intended to include, but is not limited to, solid-state memory, optical media, and magnetic media.
[0087] The methods, components, and features described herein may be implemented by discrete hardware components or integrated into the functionality of other hardware components, such as ASICs, FPGAs, DSPs, or similar devices. Additionally, the methods, components, and features may be implemented by firmware modules or functional circuits within a hardware device. Additionally, the methods, components, and features may be implemented in any combination of hardware devices and computer program components, or in a computer program.
[0088] Unless otherwise indicated, terms such as "receive," "perform," "provide," "obtain," "cause," "access," "determine," "add," "use," "train," and the like refer to computer system-performed or implemented actions and processes that manipulate and transform data represented as physical (electronic) quantities in the computer system's registers and memory into other data similarly represented as physical quantities in the computer system's memory or registers, or other such information storage, transmission, or display devices. Also, as used herein, terms such as "first," "second," "third," "fourth," and the like are intended as labels to distinguish between different elements and may not have an ordinal meaning due to their numerical designations.
[0089] The examples described herein also relate to an apparatus for carrying out the methods described herein. The apparatus may be specially constructed to carry out the methods described herein, or 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.
[0090] The methods and illustrative embodiments 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 described herein, or it may prove convenient to construct more specialized apparatus to perform the methods described herein and / or each of their individual functions, routines, subroutines or operations. Examples of structures for a variety of these systems are set forth in the description above.
[0091] The above description is intended to be illustrative and not limiting. Although the present disclosure has been described with reference to certain exemplary examples and embodiments, it will be recognized that the present disclosure is not limited to the described examples and embodiments. The scope of the present disclosure should be determined with reference to the following claims, along with the full scope of equivalents to which such claims are entitled.
Claims
1. Memory, a processing unit operatively coupled to the memory, acquiring a plurality of sensor values associated with a deposition process performed according to a recipe in a process chamber to deposit a film on a surface of a substrate; generating a manufacturing data graph based on the plurality of sensor values; receiving, via a user interface, a selection of a data point on the manufacturing data graph; generating a ticket for said data points; receiving, via the user interface, fault data associated with the data points in the ticket; and storing the ticket in a data structure for access through the user interface presenting the manufacturing data graph. a processor for performing operations including: A system comprising:
2. The processing device comprises: Extracting fault data from a table associated with the manufacturing data graph to train a machine learning model. and performing further operations including: The system of claim 1 .
3. The system of claim 2 , wherein the fault data is extracted using natural language processing.
4. The processing device comprises: Automatically generating metadata associated with the data points. and performing further operations including: The system of claim 1 .
5. The system of claim 1 , wherein the ticket includes a hyperlink to a screenshot of the manufacturing data graph.
6. The processing device comprises: Providing a field for user input associated with the failure data. and performing further operations including: The system of claim 1 .
7. The processing device comprises: Training a machine learning model based on data associated with the manufacturing data graph. and performing further operations including: The system of claim 1 .
8. 8. The system of claim 7, wherein the machine learning model is trained to generate an output indicative of a fault in a subsystem.
9. The system of claim 8 , wherein the machine learning model is trained to indicate a corrective action based on the fault in the subsystem.
10. obtaining, by a processor, a plurality of sensor values associated with a deposition process performed according to a recipe in a process chamber to deposit a film on a surface of a substrate; generating a manufacturing data graph based on the plurality of sensor values; receiving, via a user interface, a selection of a data point on the manufacturing data graph; generating a ticket for the data points; receiving, via the user interface, fault data associated with the data points in the ticket; storing the ticket in a data structure for access via the user interface presenting the manufacturing data graph; The method includes:
11. Extracting fault data from a table associated with the manufacturing data graph to train a machine learning model. The method of claim 10 further comprising:
12. The method of claim 11 , wherein the fault data is extracted using natural language processing.
13. automatically generating metadata associated with the data points; providing a field for user input associated with the fault data; The method of claim 11 further comprising:
14. Training a machine learning model based on data associated with the manufacturing data graph. The method of claim 10 further comprising:
15. The method of claim 14 , wherein the machine learning model is trained to generate an output indicative of a fault in a subsystem.
16. The method of claim 15 , wherein the machine learning model is trained to indicate a corrective action based on the failure of the subsystem.
17. When executed by a processing unit operatively coupled to the memory, acquiring a plurality of sensor values associated with a deposition process performed according to a recipe in a process chamber to deposit a film on a surface of a substrate; generating a manufacturing data graph based on the plurality of sensor values; receiving, via a user interface, a selection of a data point on the manufacturing data graph; generating a ticket for said data points; receiving, via the user interface, fault data associated with the data points in the ticket; and storing the ticket in a data structure for access through the user interface presenting the manufacturing data graph.
16. A non-transitory computer-readable storage medium comprising instructions for performing operations including:
18. The operation, Extracting fault data from a table associated with the manufacturing data graph to train a machine learning model.
20. The non-transitory computer-readable storage medium of claim 17, further comprising:
19. The operation, Automatically generating metadata associated with the data points.
20. The non-transitory computer-readable storage medium of claim 17, further comprising:
20. The operation, Training a machine learning model based on data associated with the manufacturing data graph.
20. The non-transitory computer-readable storage medium of claim 17, further comprising:
Citation Information
Patent Citations
Apparatus for electroless deposition of metal onto semiconductor substrate
JP2007046156A
Method and system for detection in an industrial internet of things data collection environment using large data sets
JP2020530159A
Methods and apparatuses for utilizing adaptive predictive algorithms and determining when to use the adaptive predictive algorithms for virtual metrology
US20180217566A1
Real-time adaptive control of manufacturing processes using machine learning
US20200166909A1