Detection and correction of drift of substrate process using machine learning

JP2025028872APending Publication Date: 2025-03-05APPLIED MATERIALS INC
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2024195345
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2021-07-19
Filing Date
2024-11-07
Publication Date
2025-03-05

Smart Images

  • Figure 2025028872000001_ABST
    Figure 2025028872000001_ABST
Patent Text Reader

Abstract

To provide a method and a system for detecting and correcting a drift of a substrate process by using machine learning.SOLUTION: A method includes the steps of: receiving data related to processing of each of a first set of substrates by a manufacturing system in accordance with a process recipe as an input to a trained machine learning model; acquiring one or a plurality of outputs from the trained machine learning model; determining a drift amount of a first set of counting measurement values for the first set of substrates from a counting measurement value of a target from one or a plurality of outputs; determining process recipe correction of identifying one or a plurality of corrections of the process recipe; determining display of reliability that each correction of the process recipe satisfies a drift reference for a second set of substrates; and updating the process recipe on the basis of each correction in response to the identification of each correction having the reliability that satisfies a reliability reference.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] FIELD OF THE DISCLOSURE

[0001] Embodiments of the present disclosure relate generally to manufacturing systems, and more particularly, to detecting and correcting substrate process drift using machine learning. [Background technology]

[0002]

[0002] A process recipe executed in a manufacturing system may be configured to achieve a particular substrate quality and consistency. A component of the manufacturing system may become defective, causing one or more conditions in the manufacturing system to change unexpectedly during the processing of a substrate. If no action is taken to address the defective component (such as identifying and replacing the defective component, modifying the process recipe to counteract the effect of the defective component, etc.), errors may occur during the processing of the substrate, causing defects in the finished substrate. Over time, the quality and consistency for substrates processed in the manufacturing system may drift away from a target quality and consistency associated with the process recipe. However, it may be difficult for an operator of the manufacturing system to identify the drift from the target quality and consistency, determine the defective component causing the drift, and determine the appropriate action to address the drift in quality and consistency. Summary of the Invention

[0003] Some of the described embodiments range from a system including a memory and a processing device coupled to the memory. The processing device is operable to provide data associated with processing each of a first set of substrates in a manufacturing system according to a process recipe as an input to a trained machine learning model. The processing device is further operable to obtain one or more outputs from the trained machine learning model. The processing device is further operable to determine, from the one or more outputs, an amount of drift of a first set of metrology measurements for the first set of substrates from a target metrology measurement. The processing device is further operable to determine, from the one or more outputs, process recipe modification data identifying one or more modifications to the process recipe and, for each of the modifications, an indication of a confidence that the respective modification to the process recipe satisfies a drift criterion for the second set of substrates. The processing device is further operable to identify each modification having a level of confidence that satisfies a level of confidence criterion. The processing device is further operable to update the process recipe based on the respective modification.

[0004] In some embodiments, a method is provided for training a machine learning model to predict a modification of a particular process recipe for a current substrate being processed in a manufacturing system. The method includes generating first training data for the machine learning model. The first training data includes historical data associated with a first set of previous substrates previously processed in the manufacturing system according to the first process recipe and a first set of historical metrology measurements associated with each of the previous substrates of the set. The method further includes generating second training data for the machine learning model. The second training data includes historical data associated with a second set of previous substrates previously processed in the manufacturing system according to the second process recipe and a second set of historical metrology measurements associated with each of the previous substrates of the set. The method further includes generating third training data for the machine learning model. The third training data includes an indication of a difference between the first process recipe and the second process recipe. The method further includes providing the first training data, the second training data, and the third training data to train a machine learning model to predict, for a particular process recipe for a current substrate being processed in the manufacturing system, what modifications to the process recipe will satisfy the drift criterion for a subsequent set of substrates processed after the current substrate.

[0005] In some embodiments, a non-transitory computer readable storage medium includes instructions that, when executed by a processing device, cause the processing device to provide data associated with processing each of a first set of substrates in a manufacturing system according to a process recipe as an input to a trained machine learning model. The processing device further performs obtaining one or more outputs from the trained machine learning model. The processing device further performs determining, from the one or more outputs, an amount of drift of a first set of metrology measurements for the first set of substrates from a target metrology measurement. The processing device further performs determining, from the one or more outputs, process recipe modification data identifying one or more modifications to the process recipe and, for each of the modifications, an indication of a confidence that the respective modification to the process recipe satisfies a drift criterion for the second set of substrates. The processing device further performs identifying each modification having a level of confidence that satisfies a level of confidence criterion. The processing device further performs updating the process recipe based on the respective modification.

[0006]

[0006] The present disclosure is illustrated by way of example, and not limitation, in the accompanying drawings in which like reference numerals indicate like elements. It should be noted that different references to "an" or "one" embodiment in the present disclosure are not necessarily to the same embodiment, and such references mean at least one. [Brief description of the drawings]

[0007] [Figure 1] 1 illustrates an exemplary computer system architecture according to an aspect of the present disclosure. [Diagram 2]

[0008] 1 is a flowchart of a method for training a machine learning model according to an aspect of the present disclosure. [Diagram 3]

[0009] FIG. 1 illustrates a top schematic view of an exemplary manufacturing system according to aspects of the present disclosure. [Figure 4]

[0010] 1 is a cross-sectional schematic side view of a substrate measurement subsystem according to an aspect of the present disclosure. [Diagram 5]

[0011] 1 shows spectral data collected on a substrate according to an aspect of the present disclosure. [Figure 6]

[0012] 1 is a flowchart of a method for detecting substrate drift and predicting modifications to a particular process recipe using machine learning, in accordance with an aspect of the present disclosure. [Figure 7]

[0013] FIG. 1 illustrates a block diagram of an exemplary computer system that operates in accordance with one or more aspects of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0008]

[0014] The embodiments described herein provide a method and system for detecting and correcting substrate process drift using machine learning models. Substrate process drift refers to a drift in the quality and / or consistency of a substrate processed in a manufacturing system according to a particular process recipe. Substrate process drift can be detected based on a drift in metrology measurements for a set of substrates processed in a manufacturing system according to a process recipe from a target metrology measurement. The metrology measurements can include etch rate (i.e., the rate at which a particular material deposited on a surface of a substrate is etched in a processing chamber), etch rate uniformity (i.e., the variation in etch rate in two or more portions of the surface of the substrate), critical dimension (i.e., a unit of measurement for measuring the dimensions of an element of a substrate, such as a line, column, opening, space, etc.), critical dimension uniformity (i.e., the variation in critical dimension across the surface of the substrate), edge to edge placement error (EPE) (i.e., the difference between an intended feature and a resulting feature contained on the surface of the substrate), etc.

[0009]

[0015] A processing device (e.g., a system controller for a manufacturing system) may receive data associated with processing a set of substrates in the manufacturing system according to a process recipe. The data may be received from sensors at various stations in the manufacturing system. For example, the processing device may receive data from sensors in a processing chamber, a transfer chamber, a load lock, a factory interface, etc. In some embodiments, the processing device may receive data associated with substrates from the substrate measurement subsystem before or after the substrates are processed in the manufacturing system. For example, the processing device may receive spectral data associated with a profile of each substrate after each substrate is etched in a processing chamber.

[0010]

[0016] The processing device may provide data associated with processing the set of substrates and / or data associated with the substrates before or after the substrates are processed as input to a trained machine learning model and obtain one or more outputs from the machine learning model. In some embodiments, the processing device may also provide a set of metrology measurements (e.g., etch rate, etch rate uniformity, critical dimension, critical dimension uniformity, edge-to-edge placement error, etc.) for the set of substrates as input to the machine learning model. For example, the processing device may determine each of the set of metrology measurements based on spectral or non-spectral data received from a sub-substrate measurement subsystem. In another example, the processing device may receive each of the set of metrology measurements from a metrology system coupled to the manufacturing system.

[0011]

[0017] The processing device may determine, from the output of the machine learning model, an amount of drift of the set of metrology measurements for the set of substrates from the target metrology measurements. The processing device may also determine process recipe modification data identifying one or more modifications to the process recipe. The process recipe modification may include modifying operation of a particular process recipe or generating instructions to terminate execution of the process recipe for a subsequent set of substrates processed in the manufacturing system. The process recipe modification data may also include an indication of a confidence that each modification to the process recipe satisfies the drift criterion for the second set of substrates. In response to determining that each modification is predicted to reduce an amount of substrate process drift for a set of substrates subsequently processed in the manufacturing system, the processing device may determine that the modification to the process recipe satisfies the drift criterion. The processing device may identify each modification having a confidence that it satisfies the confidence criterion and update the process recipe based on the identified modification.

[0012]

[0018] In some embodiments, the process recipe modification data may include an indication of one or more stations of the manufacturing system that contain defects that are causing the substrate process drift. In such embodiments, the processing device may send a notification to a user (e.g., an operator) of the manufacturing system that includes an indication of the one or more stations that contain defects. In some embodiments, the indication may include specific components of the one or more stations that contain defects. In some embodiments, the notification may be sent to the user of the manufacturing system along with a prediction for a respective modification to the process recipe.

[0013]

[0019] The machine learning model may be trained using historical data associated with previous substrates previously processed in the manufacturing system according to the first process recipe and the second process recipe. The machine learning model may also be trained using historical metrology measurements associated with each of the previous substrates. For example, a processing device (e.g., a system controller) may generate first training data including historical data associated with a first set of previous substrates processed according to the first process recipe and a first set of historical metrology measurements associated with each of the first set of previous substrates. The processing device may also generate second training data including historical data associated with a second set of previous substrates processed according to the second process recipe and a second set of historical metrology measurements associated with each of the second set of previous substrates. The first process recipe may be similar to the second process recipe, except that at least one operation of the first process recipe differs from the operation of the second process recipe. For example, a particular operation of the first process recipe may include setting an internal temperature of a processing chamber to 100 degrees Celsius (° C.). The corresponding operation of the second process recipe may include setting an internal temperature of the processing chamber to 110° C. The processing device may generate third training data including an indication of a difference between the first process recipe and the second process recipe. Following the previous example, the third training data may indicate that the difference between the first process recipe and the second process recipe corresponds to a 10° C. difference in temperature settings for a particular operation. The processing device may provide the first training data, the second training data, and the third training data to train the machine learning model.

[0014]

[0020] Aspects of the present disclosure address the above-mentioned deficiencies of the prior art by providing a system and method for detecting and correcting substrate process drift in a manufacturing system. Substrate process drift may be detected based on drift of metrology measurements from target metrology measurements. Using data associated with substrates processed in the manufacturing system, a machine learning model may detect when substrate process drift has occurred and predict a correction that may correct the drift for substrates subsequently processed in the manufacturing system. A system controller may update a process recipe based on the predicted correction. By updating the process recipe based on the predicted correction, the amount of substrate process drift in the manufacturing system is reduced, reducing the number of defects occurring in the manufacturing system and improving the overall efficiency of the system. Additionally, substrate drift from target metrology measurements for a substrate may be detected, and an error protocol (e.g., sending an error message to an operator of the manufacturing system, stopping operation in the manufacturing system, etc.) may be initiated based on the detected deviation. Thus, unnecessary damage to the substrate and / or the manufacturing system is prevented.

[0015]

[0021] 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 device 124, a metrology device 128, a prediction server 112 (e.g., for generating prediction data, providing model adaptation, using a knowledge base, etc.), and a data store 140. The prediction server 112 may be part of a prediction system 110. The prediction system 110 may further include server machines 170 and 180. The manufacturing device 124 may include a sensor 125 configured to capture data about the substrates being processed in the manufacturing system. In some embodiments, the manufacturing device 124 and the sensor 126 may be part of a sensor system including 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 device 128 may be part of a metrology system that includes a metrology server (eg, metrology database, metrology folder, etc.) and a metrology identifier reader (eg, a FOUP RFID reader for the metrology system).

[0016]

[0022] The manufacturing equipment 124 may produce a product according to a recipe or performing runs over a period of time. The manufacturing equipment 124 may include a substrate measurement subsystem including one or more sensors 126 configured to generate spectral and / or positional data for a substrate embedded within the substrate measurement subsystem. The sensors 126 configured to generate spectral data (referred to herein as spectral sensing components) may include reflectometry sensors, ellipsometry sensors, thermal spectral sensors, capacitive sensors, and the like. In some embodiments, the spectral sensing components may be included within the substrate measurement subsystem or another part of the manufacturing system. The one or more sensors 126 (e.g., eddy current sensors, etc.) may also be configured to generate non-spectral data about the substrate. Further details regarding the manufacturing equipment 124 and the substrate measurement subsystem are provided with respect to FIGS. 3 and 4.

[0017]

[0023] In some embodiments, the sensors 126 may provide sensor data related to the manufacturing equipment 124. 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 voltage (ESC), current, 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 a product is processed). The sensor data 142 may vary from substrate to substrate.

[0018]

[0024] The metrology equipment 128 may provide metrology data related to substrates (e.g., wafers, etc.) processed by the manufacturing equipment 124. The metrology data may include one or more 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 may further include values ​​of one or more surface profile property data (e.g., etch rate, etch rate uniformity, critical dimensions of one or more features contained on the surface of the substrate, critical dimension uniformity across the surface of the substrate, edge placement error, etc.). The metrology data may be for finished or semi-finished products. The metrology data may vary from substrate to substrate.

[0019]

[0025] 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). The GUI allows a user to provide as input metrology measurements for substrates processed in a manufacturing system.

[0020]

[0026] The data store 140 may 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 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 data related to processing of substrates at the manufacturing equipment 124. For example, the data store 140 may store data (referred to as process data) collected by the sensors 126 at the manufacturing equipment 124 before, during, or after the substrate process. Process data may refer to historical process data (e.g., process data generated for previous substrates processed at the manufacturing system) and / or current process data (e.g., process data generated for a current substrate being processed at the manufacturing system). The data store may also store spectral or non-spectral data related to a portion of a substrate being processed at the manufacturing equipment 124. The spectral data may include historical spectral data and / or current spectral data. The current process data and / or the current spectral data may be the data from which the predicted data is generated. In some embodiments, the data store may store metrology data including historical metrology data (e.g., metrology measurements on previous substrates processed in the manufacturing system).

[0021]

[0027] 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 a recipe name, a recipe step number, a preventive maintenance indicator, an operator, etc. In some embodiments, the context data may also include an indication of a difference between two or more process recipes or process steps. For example, a first process recipe may include an action including setting an internal temperature of a process chamber to 100° C. A second process recipe may include a corresponding action including setting an internal temperature of a process chamber to 110° C. The context data may include an indication of a difference in an internal temperature of a process chamber between the first process recipe and the second process recipe.

[0022]

[0028] In some embodiments, data store 140 may be configured to store data that is not accessible to a user of the manufacturing system. For example, process data, spectral data, non-spectral data, and / or positional data acquired for a substrate being processed in the manufacturing system may not be accessible to a user of the manufacturing system. In some embodiments, all data stored in data store 140 may be inaccessible by a user (e.g., an operator) of the manufacturing system. In other or similar embodiments, some of the data stored in data store 140 may be inaccessible by a user and another portion of the data stored in data store 140 may be accessible by a user. In some embodiments, one or more portions of the data stored in data store 140 may 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 may include multiple data stores, in which data inaccessible to a user is stored in one or more first data stores and data accessible to a user is stored in one or more second data stores.

[0023]

[0029] In some embodiments, prediction system 110 includes server machine 170 and server machine 180. Server machine 170 includes training set generator 172 that can generate training data sets (e.g., a set of data inputs and a set of target outputs) for training, validating, and / or testing machine learning model 190. Some operations of training set generator 172 are described in detail below with respect to FIG. 2. In some embodiments, training set generator 172 may divide training data into a training set, a validation set, and a test set. In some embodiments, prediction system 110 generates multiple sets of training data.

[0024]

[0030] 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 device, etc.), software (e.g., instructions executed on a processing device, general-purpose computer system, or dedicated machine), firmware, microcode, or a combination thereof. The training engine 182 may be capable of training a machine learning model 190. The machine learning model 190 may refer to a model artifact created by the training engine 182 using training data including 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 a machine learning model 190 that captures these patterns. The machine learning model 190 may use one or more of a support vector machine (SVM), a radial basis function (RBF), clustering, supervised machine learning, semi-supervised machine learning, unsupervised machine learning, a k-nearest neighbor algorithm (k-NN), linear regression, random forests, a neural network (e.g., an artificial neural network), and the like.

[0025]

[0031] The validation engine 184 may be capable of validating the trained machine learning models 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 each of the trained machine learning models 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 capable of selecting the trained machine learning model 190 that has an accuracy that meets the threshold accuracy. In some embodiments, the selection engine 185 may be capable of selecting the trained machine learning model 190 with the highest accuracy of the trained machine learning models 190.

[0026]

[0032] The testing engine 186 may be capable of testing the trained machine learning models 190 using a corresponding set of features of a test set from the training set 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 among all of the trained machine learning models based on the test set.

[0027]

[0033] The prediction server 112 includes a prediction component 114 that can provide data associated with processing each of the set of substrates in the manufacturing system according to the process recipe as input to a trained machine learning model 190 and execute the trained machine learning model 190 on the input to obtain one or more outputs. As described in more detail below with respect to FIG. 4, in some embodiments, the prediction component 114 also determines process recipe modification data from the output of the trained machine learning model 190 and can use the process recipe modification data to predict modifications to the process recipe for a current substrate being processed in the manufacturing system that meets a drift criterion.

[0028]

[0034] The process recipe modification data may include or indicate one or more modifications to a process recipe and, for each modification, a confidence that the respective modification meets the drift criterion. In response to determining that the respective modification is predicted to be processed to reduce the amount of drift in a predicted set of metrology measurements for a subsequent set of substrates to be processed to less than a threshold amount, the prediction system 110 may determine that the respective modification meets the drift criterion. For example, a modification that changes the internal temperature of a processing chamber by 10° C. may meet the drift criterion in response to the prediction system 110 determining that the modification is likely to reduce the amount of drift in metrology measurements for a substrate to be processed to a threshold amount. In some embodiments, the process recipe modification data may include an indication of one or more stations in the manufacturing system 100 that are causing the substrate process drift. For example, the process recipe modification data may indicate that a temperature sensor in a particular process chamber is defective. In some embodiments, the prediction system 110 may send a notification to a user (e.g., an operator) of the manufacturing system 100 indicating one or more stations (or one or more components of a particular station) that are causing the substrate process drift.

[0029]

[0035] The client devices 120, the manufacturing equipment 124, the sensors 126, the measurement equipment 128, the prediction server 112, the data store 140, the server machine 170, and the server machine 180 may be coupled to one another via a 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 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.

[0030]

[0036] 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.

[0031]

[0037] In general, functions 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. In addition, functionality attributed to a particular component may be performed by different or multiple components operating in conjunction.

[0032]

[0038] In embodiments, 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 set of individual users federated as a group of administrators may be considered a "user."

[0033]

[0039] 2 is a flow chart 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, which may include hardware (circuitry, dedicated logic, etc.), software (such as running on a general-purpose computer system or a dedicated machine), firmware, or any 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 implementations, one or more steps of the method 200 may be performed by one or more other machines not shown in the figure. In some aspects, one or more steps of the method 200 may be performed by the training set generator 172 of the server machine 170.

[0034]

[0040] For ease of explanation, the methods are illustrated and described as a series of operations. However, operations according to the present disclosure may be performed in various orders and / or simultaneously, and with other operations not presented and described herein. Moreover, not all illustrated operations may be performed to implement a method according to the disclosed subject matter. In addition, 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 will be appreciated that the methods disclosed herein may be stored on an article of manufacture to facilitate transporting and transferring such methods to a computing device. As used herein, the term article of manufacture is intended to encompass a computer program accessible from any computer-readable device or storage medium.

[0035]

[0041] At block 210, processing logic initializes a training set T to an empty set (e.g., {}). At block 212, processing logic receives data associated with processing a first set of substrates according to a first process recipe and processing a second set of substrates according to a second process recipe. In some embodiments, the data associated with processing the first set of substrates may be received from a sensor 126, as described above. For example, processing logic may receive data from a sensor at a processing chamber, a transfer chamber, a load lock, a factory interface, a substrate carrier, or the like. In other or similar embodiments, processing logic may also receive data from a substrate measurement subsystem, such as the substrate measurement subsystem 400 described with respect to FIG. 4. The substrate measurement subsystem may be configured to capture spectral or non-spectral data associated with a substrate before or after the substrate is processed in the manufacturing system. The processing logic may receive data associated with each of the first set of substrates from the substrate measurement subsystem. The substrate measurement subsystem may or may not be integrated with the manufacturing system (e.g., as part of a factory interface), and may instead be communicatively coupled to the manufacturing system. Further details regarding the substrate measurement system are described below with respect to Figures 3 and 4. It should be noted that in additional or alternative embodiments, the data associated with processing the first set of substrates may be received in some other manner and may not be received from part of the manufacturing system.

[0036]

[0042] At block 214, processing logic obtains metrology measurements for each of the first set of substrates and the second set of substrates. The metrology measurements may include at least one of etch rate, etch rate uniformity, critical dimension, critical dimension uniformity, edge-to-edge placement error, etc., for substrates processed in the fabrication system. In some embodiments, the metrology measurements may be received from an external metrology system coupled to the fabrication system, as described with respect to FIG. 1. In some embodiments, the external metrology measurement system may be communicatively coupled to the fabrication system (e.g., by network 130 of FIG. 1). In such embodiments, the processing logic may receive one or more metrology measurements for the substrates from the external metrology measurement system via the network. In other embodiments, the metrology measurements may be generated at the external metrology measurement system and provided to the fabrication system via a client device. For example, a client device coupled to the fabrication system may provide a graphical user interface (GUI) to a user (e.g., an operator) of the fabrication system. After the substrates are measured with the external metrology subsystem, the user may provide the metrology measurements to the client device via the GUI. In response to receiving the provided metrology measurements, the client device may store the metrology measurements in a data store, such as data store 140 of the manufacturing system.

[0037]

[0043] In other or similar embodiments, the processing logic may determine the metrology measurements using a machine learning model (referred to as a metrology machine learning model) trained to predict metrology measurements for substrates processed in the manufacturing system. For example, spectral data may be generated for a substrate (e.g., in a substrate measurement subsystem, in a processing chamber) during or after substrate processing in the manufacturing system. The spectral data may be provided as an input to the trained metrology machine learning model. In some embodiments, position data may also be generated for the substrate (e.g., in a substrate measurement subsystem). The position data is associated with the spectral data. In such embodiments, the position data may be provided to the trained metrology machine learning model using the spectral data as another input. The trained metrology machine learning model may generate one or more outputs including metrology measurements for previous substrates processed in the manufacturing system and a level of confidence that a current substrate being processed in the manufacturing system is associated with the metrology measurements of the previous substrate. In response to determining that the confidence for the current substrate meets a certain confidence criterion, the processing logic may determine that the metrology measurements correspond to the current substrate.

[0038]

[0044] In some embodiments, the processing logic may receive each metrology measurement for each of the first set of substrates and / or the second set of substrates from a metrology system coupled to the manufacturing system. In other or similar embodiments, the processing logic may determine each metrology measurement for each of the first set of substrates and / or the second set of substrates using a trained metrology machine learning model. In other or similar embodiments, the processing logic may receive metrology measurements for one or more of the first set of substrates and / or the second set of substrates from the metrology system and determine the metrology measurement using the trained metrology machine learning model.

[0039]

[0045] At block 216, processing logic generates first training data based on historical data associated with the first set of substrates processed according to the first process recipe and metrology measurements for each of the first set of substrates. At block 218, processing logic generates second training data based on historical data associated with the first set of substrates processed according to the first process recipe and metrology measurements for each of the first set of substrates. At block 220, processing logic generates third training data including an indication of a difference between the first process recipe and the second process recipe. For example, the first process recipe may include an operation including setting an internal temperature of the process chamber to 100° C. The second process recipe may include a corresponding operation including setting an internal temperature of the process chamber to 110° C. The third training data may include an indication of a difference in the internal temperature of the process chamber between the first process recipe and the second process recipe.

[0040]

[0046] At block 222, processing logic generates a mapping between the first training data, the second training data, and the third training data. The mapping refers to the first training data including or based on data for a first set of substrates processed according to a first process recipe, the second training data including or based on data for a second set of substrates processed according to a second process recipe, and the third training data including an indication of the difference between the first and second process recipes. The first training data and the second training data are associated with (or mapped to) the third training data. At block 224, processing logic adds the mapping to the training set T.

[0041]

[0047] 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 may be determined solely based on the number of mappings in the training set, while in some other implementations, the sufficiency of the training set T may be determined based on one or more other criteria (e.g., a measure of diversity of the training examples, etc.) in addition to or instead of the number of input / output mappings. In response to a determination 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 a determination 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.

[0042]

[0048] In block 228, the processing logic provides a training set T to train the machine learning model. In one embodiment, the training set T is provided to the training engine 182 of the server machine 180 to perform the training. In the case of a neural network, for example, the input values ​​of a given input / output mapping (e.g., spectral data for a previous substrate) are input to the neural network, and the output values ​​of the input / output mapping are stored in the output nodes of the neural network. The weights of the connections in the neural network are then adjusted according to a learning algorithm (e.g., backpropagation, etc.), and the procedure is repeated for other input / output mappings in the training set T. After block 228, the machine learning model 190 may be used to predict, for a particular process recipe for a current substrate being processed in the manufacturing system, what modifications to the process recipe will satisfy the drift criterion for a subsequent set of substrates processed after the current substrate.

[0043]

[0049] 3 is a top schematic view of an exemplary manufacturing system 300 according to an embodiment of the present disclosure. The manufacturing system 300 may perform one or more processes on a substrate 302. The substrate 302 may be any suitable rigid, fixed-dimension, planar article suitable for fabricating electronic devices or circuit components thereon, such as, for example, a silicon-containing disk or wafer, a patterned wafer, a glass plate, or the like.

[0044]

[0050] The manufacturing system 300 may include a process tool 304 and a factory interface 306 coupled to the process tool 304. The process tool 304 may include a housing 308 having a transfer chamber 310 therein. The transfer chamber 310 may include one or more processing chambers (also referred to as process chambers) 314, 316, 318 disposed about and coupled thereto. The processing chambers 314, 316, 318 may be coupled to the transfer chamber 310 through respective ports, such as slit valves, or the like. The transfer chamber 310 may also include a transfer chamber robot 312 configured to transfer the substrate 302 between the process chambers 314, 316, 318, the load lock 320, or the like. The transfer chamber robot 312 may include one or more arms. Each arm includes one or more end effectors at the end of each arm. The end effectors may be configured to handle a particular object, such as a wafer.

[0045]

[0051] The processing chambers 314, 316, 318 may be adapted to perform any number of processes on the substrate 302. The same or different substrate processes may be performed in each processing chamber 314, 316, 318. The substrate processes may include atomic layer deposition (ALD), physical vapor deposition (PVD), chemical vapor deposition (CVD), etching, annealing, hardening, pre-cleaning, metal or metal oxide removal, and the like. In some embodiments, the substrate processes may include a combination of two or more of atomic layer deposition (ALD), physical vapor deposition (PVD), chemical vapor deposition (CVD), etching, annealing, hardening, pre-cleaning, metal or metal oxide removal, and the like. Other processes may be performed on the substrate therein. The processing chambers 314, 316, 318 may each include one or more sensors configured to capture data about the substrate 302 before, after, or during the substrate process. For example, the one or more sensors may 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 may be configured to capture data related to the environment within the process chambers 314, 316, 318 before, after, or during substrate processing. For example, the one or more sensors may 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.

[0046]

[0052] The 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 and be coupled to the transfer chamber 310 on one side and the factory interface 306 on the other. The load lock 320 may have an environmentally controlled atmosphere that may be changed from a vacuum environment (where substrates may be transferred to and from the transfer chamber 310) to an inert gas environment at or near atmospheric pressure (where substrates may be transferred to and from the factory interface 306) in some embodiments. The load lock 320 may include one or more sensors to capture data related to the substrate 302 before, after, or during substrate processing in the processing chambers 314, 316, 318. For example, the load lock 320 may include a vibration sensor (e.g., a piezoelectric sensor) configured to detect and monitor the amount of vibration occurring within the load lock 320 during substrate processing in the processing chambers 314, 316, 318. In another example, the load lock 320 may include a temperature sensor (e.g., an infrared camera) to detect and monitor the temperature of the load lock 320 during substrate processing. It should be noted that although embodiments of the present disclosure describe sensors such as vibration or temperature sensors in the load lock 320 to monitor the condition of the load lock 320 during substrate processing, any type of sensor may be used at any station of the manufacturing system 100 to monitor the condition and / or health of the station during substrate processing.

[0047]

[0053] The factory interface 306 may be any suitable enclosure, such as, for example, a front-end equipment module (EFEM). The factory interface 306 may be configured to receive the substrate 302 from a substrate carrier 322 (e.g., a front-opening unified pod (FOUP)) 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 the substrate 302 between the carrier (also referred to as a container) 322 and the load lock 320. The carrier 322 may be a substrate storage carrier or a spare part storage carrier. The factory interface 306 and / or the carrier 322 may include one or more sensors (e.g., vibration sensors, temperature sensors, etc.) for capturing data related to the substrate 302 before, after, or during substrate processing in the processing chambers 314, 316, 318 according to the above-mentioned embodiments.

[0048]

[0054] The manufacturing system 300 may also be connected to a client device (not shown) configured to provide information to a user (e.g., an operator) regarding the manufacturing system 300. 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 regarding one or more modifications to be made to a process recipe for the substrate 302 via the GUI.

[0049]

[0055] The manufacturing system 300 may also include a system controller 328. The system controller 328 may be and / or 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 general-purpose processing devices 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 other instruction set or processor implementing 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 according to a process recipe. The instructions may be stored (during execution of the instructions) in a computer-readable storage medium, which may include a main memory, a static memory, a secondary storage, and / or a processing device.

[0050]

[0056] The system controller 328 may receive data from sensors contained on or within various portions of the manufacturing system 300 (e.g., the processing chambers 314, 316, 318, the transfer chamber 310, the load lock 320, etc.). In some embodiments, the data received by the system controller 328 may include spectral and / or non-spectral data of a portion of the substrate 302. In other or similar embodiments, the data received by the system controller 328 may include data related to processing substrates 302 in the processing chambers 314, 316, 318, as described above. For purposes of this description, the system controller 328 is described as receiving data from sensors contained within the processing 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 example embodiment, the system controller 328 may receive data from one or more sensors for the processing chambers 314, 316, 318 before, after, or during substrate processing in the processing 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.

[0051]

[0057] The manufacturing system 300 may further include a substrate measurement subsystem 340. The substrate measurement subsystem 340 may obtain spectral measurements for one or more portions of the substrate 302 before or after the substrate 302 is processed in the manufacturing system 300. In some embodiments, the substrate measurement subsystem 340 may obtain spectral measurements for one or more portions of the substrate 302 in response to receiving a request for the spectral measurements from the system controller 328. The substrate measurement subsystem 340 may be integrated within a portion of the manufacturing system 300. In some embodiments, the substrate measurement subsystem 340 may be integrated within the factory interface 306. In other or similar embodiments, the substrate measurement subsystem 340 may not be integrated with any portion of the manufacturing system 300 and may instead be a stand-alone component. In such embodiments, the substrate 302 measured by the substrate measurement subsystem 340 may be transferred to or from a portion of the manufacturing system 300 before or after the substrate 302 is processed in the manufacturing system 300.

[0052]

[0058] The substrate measurement subsystem 340 may obtain spectral measurements for a portion of the substrate 302 by generating spectral data and / or a spectrum of the portion of the substrate 302. In some embodiments, the substrate measurement subsystem 340 is configured to generate spectral data, non-spectral data, positional data, and other substrate characteristic data for the substrate 302 (e.g., thickness of the substrate 302, width of the substrate 302, etc.). After generating the data for the substrate 302, the substrate measurement subsystem 340 may transmit the generated data to the system controller 328. In response to receiving the data from the substrate measurement subsystem 340, the system controller 328 may store the data in a data store 350.

[0053]

[0059] 4 is a cross-sectional schematic side view of a substrate measurement subsystem 400 according to aspects of the disclosure. The substrate measurement subsystem 400 may be configured to obtain measurements of one or more portions of a substrate, such as the substrate 302 of FIG. 3, before or after processing of the substrate 302 in a processing chamber. The substrate measurement subsystem 400 may obtain measurements for the portions of the substrate 302 by generating data (e.g., spectral data, non-spectral data, etc.) associated with the portions of the substrate 302. In some embodiments, the substrate measurement subsystem 400 may be configured to generate spectral data, non-spectral data, positional data, and / or other characteristic data associated with the substrate 302. The substrate measurement subsystem 400 may include a controller 430 configured to execute one or more instructions to generate data associated with the portions of the substrate 302.

[0054]

[0060] The substrate measurement subsystem 400 may detect that the substrate 302 has been transferred to the substrate measurement subsystem 400. In response to detecting that the substrate 302 has been transferred to the substrate measurement subsystem 400, the substrate measurement subsystem 400 may determine a position and / or orientation of the substrate 302. The position and / or orientation of the substrate 302 may be determined based on an identification of a reference position of the substrate 302. The reference position may be a portion of the substrate 302 that includes an identification feature associated with the particular portion of the substrate 302. The controller 328 may determine the identification feature associated with the particular portion of the substrate 302 based on the determined identification of the substrate 302.

[0055]

[0061] The controller 430 may identify a reference position for the substrate 302 using one or more camera components 450 configured to capture image data for the substrate 302. The camera components 450 may generate image data for one or more portions of the substrate 302 and transmit the image data to the controller 430. The controller 430 may analyze the image data to identify an identifying feature associated with the reference position of the substrate 302. The controller 430 may further determine a position and / or orientation of the substrate 302 as indicated in the image data based on the identified identifying feature of the substrate 302. The controller 430 may determine a position and / or orientation of the substrate 302 based on the identified identifying feature of the substrate 302 and the determined position and / or orientation of the substrate 302 as indicated in the image data. In response to determining the position and / or orientation of the substrate 302, the controller 430 may generate position data associated with one or more portions of the substrate 302. In some embodiments, the position data may include one or more coordinates (e.g., Cartesian coordinates, polar coordinates, etc.) each associated with a portion of the substrate 302, where each coordinate is determined based on a distance from a reference position for the substrate 302.

[0056]

[0062] The substrate measurement subsystem 400 may include one or more measurement components for measuring the substrate 302. In some embodiments, the substrate measurement subsystem 400 may include one or more spectral sensing components 420 configured to generate spectral data of one or more portions of the substrate 302. As mentioned above, the spectral data may correspond to a detected wave intensity (i.e., intensity or amount of energy) per wavelength of the detected wave. Further details regarding the collected spectral data are provided with respect to FIG. 5.

[0057]

[0063] The spectral sensing component 420 may be configured to detect energy waves reflected from the portion of the substrate 302 and generate spectral data associated with the detected waves. The spectral sensing component 420 may include a wave generator 422 and a reflected wave receiver 424. In some embodiments, the wave generator 422 may be a light wave generator configured to generate a beam of light toward the portion of the substrate 302. In such embodiments, the reflected wave receiver 424 may be configured to receive a reflected light beam from the portion of the substrate 302. The wave generator 422 may be configured to generate an energy stream 426 (e.g., a light beam) and transmit the energy stream 426 to the portion of the substrate 302. The reflected energy wave 428 may be reflected from the portion of the substrate 302 and received by the reflected wave receiver 424. Although FIG. 3A shows a single energy wave reflected from the surface of the substrate 302, multiple energy waves may be reflected from the surface of the substrate 302 and received by the reflected wave receiver 424.

[0058]

[0064] In response to the reflected wave receiver 424 receiving the reflected energy waves 428 from the portion of the substrate 302, the spectral sensing component 420 may measure the wavelength of each wave included in the reflected energy waves 428. The spectral sensing component 420 may further measure the intensity of each measured wavelength. In response to measuring each wavelength and each wavelength intensity, the spectral sensing component 420 may generate spectral data for the portion of the substrate 302. The spectral sensing component 420 may transmit the generated spectral data to a controller 430. In response to receiving the generated spectral data, the controller 430 may generate a mapping between the received spectral data and position data for the measured portion of the substrate 302.

[0059]

[0065] The substrate measurement subsystem 400 may be configured to generate a particular type of spectral data based on the type of measurements taken by the substrate measurement subsystem 400. In some embodiments, the spectral sensing component 420 may be a first spectral sensing component configured to generate one type of spectral data. For example, the spectral sensing component 420 may be configured to generate reflectometry spectral data, ellipsometry spectral data, hyperspectral imaging data, chemical imaging data, thermal spectral data, or conductivity spectral data. In such an embodiment, the first spectral sensing component may be removed from the substrate measurement subsystem 400 and replaced with a second spectral sensing component configured to generate a different type of spectral data (e.g., reflectometry spectral data, ellipsometry spectral data, hyperspectral imaging data, chemical imaging data, eddy current spectral data, thermal spectral data, or conductivity spectral data).

[0060]

[0066] In some embodiments, one or more measurement components, such as the spectral sensing component 420, may be stationary components within the substrate measurement subsystem 400. In such embodiments, the substrate measurement subsystem 400 may include one or more position components 440 configured to modify the position and / or orientation of the substrate 302 relative to the spectral sensing component 420. In some embodiments, the position component 440 may be configured to translate the substrate 302 along a first axis and / or a second axis relative to the spectral sensing component 420. In other or similar embodiments, the position component 440 may be configured to rotate the substrate 302 about a third axis relative to the spectral sensing component 420.

[0061]

[0067] Once the spectral sensing component 420 generates spectral data for one or more portions of the substrate 302, the position component 440 may modify the position and / or orientation of the substrate 302 according to the one or more determined portions measured for the substrate 302. For example, before the spectral sensing component 420 generates spectral data for the substrate 302, the position component 440 may position the substrate 302 at Cartesian coordinate (0,0), and the spectral sensing component 420 may generate first spectral data for the substrate 302 at Cartesian coordinate (0,0). In response to the spectral sensing component 420 generating the first spectral data for the substrate 302 at Cartesian coordinate (0,0), the position component 440 may translate the substrate 302 along a first axis such that the spectral sensing component 420 is configured to generate second spectral data for the substrate 302 at Cartesian coordinate (0,1). In response to the spectral sensing component 420 generating second spectral data for the substrate 302 at Cartesian coordinate (0,1), the controller 430 may rotate the substrate 302 along the second axis such that the spectral sensing component 420 is configured to generate third spectral data for the substrate 302 at Cartesian coordinate (1,1). This process may be performed multiple times until spectral data is generated for each determined portion of the substrate 302.

[0062]

[0068] In some embodiments, one or more layers 412 of material may be included on the surface of the substrate 302. The one or more layers 412 may include an etching material, a photoresist material, a mask material, a deposition material, etc. In some embodiments, the one or more layers 412 may include an etching material that is etched according to an etching process performed in a processing chamber. In such embodiments, spectral data may be collected for one or more portions of the unetched material of the layer 412 deposited on the substrate 302 according to previously disclosed embodiments. In other or similar embodiments, the one or more layers 412 may include an etching material that has already been etched according to an etching process in a processing chamber. In such embodiments, one or more structural features (e.g., lines, columns, openings, etc.) may be etched into the one or more layers 412 of the substrate 302. In such embodiments, spectral data may be collected for one or more structural features etched into the one or more layers 412 of the substrate 302.

[0063]

[0069] In response to receiving at least one of the spectral data, positional data, or characteristic data for the substrate 302, the controller 430 may transmit the received data to the system controller 328 for processing and analysis in accordance with embodiments described herein.

[0064]

[0070] FIG. 5 illustrates spectral data 500 collected for a substrate according to aspects of the disclosure. The spectral data may be generated from reflected energy received by a sensor in a processing chamber, such as the substrate measurement subsystem 400 of FIG. 4 or the processing chambers 314, 316, 318 of FIG. 3, according to aspects of the disclosure. As illustrated, the reflected energy waves received by the substrate measurement subsystem 400 may include multiple wavelengths. Each reflected energy wave may be associated with a different portion of the substrate 302. In some embodiments, an intensity may be measured for each reflected energy wave received by the substrate measurement subsystem 400. As seen in FIG. 5, an intensity may be measured for each wavelength of the reflected energy waves received by the substrate measurement subsystem 400. The association between the intensity and the wavelength may be the basis for the formation of the spectral data 500. In some embodiments, one or more wavelengths may be associated with intensity values ​​that are outside of an expected range of intensity values. For example, line 510 may be associated with intensity values ​​that are outside of an expected range of intensity values, as shown by line 520. In such an embodiment, an intensity value that is outside of an expected range of intensity values ​​may be an indication that a defect exists in a portion of the substrate 302 .

[0065]

[0071] 6 is a flow chart of a method 600 for detecting substrate drift and predicting corrections for a particular process recipe using machine learning, according to an aspect of the disclosure. The method 600 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 any combination thereof. In some embodiments, the method 600 may be performed using the prediction server 112 and trained machine learning model 190 of FIG. 1. In other or similar embodiments, one or more blocks of FIG. 6 may be performed by one or more other machines not shown in FIG. 1.

[0066]

[0072] At block 610, processing logic receives data associated with processing the set of substrates in the manufacturing system according to the first process recipe. In some embodiments, the processing logic may receive data associated with processing the set of substrates from sensors 126, as described above. For example, the processing logic may receive data from sensors in a processing chamber, a transfer chamber, a load lock, a factory interface, a substrate carrier, etc. In other or similar embodiments, the processing logic may also receive data from a substrate measurement subsystem.

[0067]

[0073] At block 612, processing logic provides the received data for processing the set of substrates as input to the trained machine learning model. In some embodiments, the processing logic may obtain a set of metrology measurements for each of the set of substrates according to the previously described embodiments. For example, the processing logic may receive the set of metrology measurements from an external metrology system or a client device connected to the manufacturing system. In another example, the processing logic may determine each of the set of metrology measurements using the trained metrology machine learning model.

[0068]

[0074] At block 614, processing logic obtains an output from the machine learning model. At block 616, processing logic determines, from the one or more outputs, an amount of drift of the first set of metrology measurements for the first set of substrates from the target metrology measurements. Processing logic also determines, from the one or more outputs, process recipe modification data identifying one or more modifications to the process recipe and, for each of the modifications, an indication of the confidence that the respective modification satisfies the drift criterion for the second set of substrates. Modifying the process recipe may include modifying the operation of a particular process recipe or generating instructions to terminate execution of the process recipe for a subsequent set of substrates processed in the manufacturing system. In some embodiments, processing logic may also determine, from the one or more outputs, an identity of one or more components in the manufacturing system that are causing the drift. In such embodiments, modifying the process recipe may include generating instructions for the system controller to monitor the state of the component during subsequent processing to determine whether the component is replaced.

[0069]

[0075] At block 618, processing logic determines whether the confidence criterion for each of the one or more modifications is met. In response to determining that the confidence criterion is not met for any of the one or more modifications, method 600 ends. In response to determining that each modification is predicted to reduce an amount of drift in a substrate process for a set of substrates subsequently processed in the manufacturing system, processing logic may determine that the modification to the process recipe meets the drift criterion. In response to determining that the confidence criterion is met for at least one of the one or more modifications, processing logic identifies a modification that meets the confidence criterion.

[0070]

[0076] At block 620, processing logic updates the process recipe based on the identified modification. For example, processing logic may execute one or more operations of the process recipe for a subsequent substrate processed at the manufacturing system. In another example, processing logic may generate instructions to terminate execution of the process recipe for a subsequent set of substrates. In some embodiments, processing logic may generate a notification to an operator of the manufacturing system indicating the identified modification. For example, the notification may be provided via a GUI display via a client device. The notification may include the identified modification along with one or more GUI elements that enable the operator to accept or reject the modification. In other or similar embodiments, the notification may provide multiple alternative modifications to the process recipe along with one or more GUI elements that enable the operator to select the prediction over the other alternative modifications. In other or similar embodiments, processing logic may not provide a notification to an operator of the manufacturing system and may instead modify the process recipe based on the identified modification.

[0071]

[0077] In some embodiments, a modification of operation may be predicted as a result of a defect occurring at one or more stations of the manufacturing system. In such embodiments, the processing logic may provide a notification to an operator of the manufacturing system indicating the station containing the defect and, in some cases, the particular component at the station causing the defect. This notification may be provided in conjunction with or separate from the notification of the modification to the process recipe.

[0072]

[0078] FIG. 7 illustrates a block diagram of an exemplary computer system 700 that operates according to one or more aspects of the present disclosure. In alternative embodiments, the machine may be connected (e.g., networked) to other machines in a local area network (LAN), an intranet, an extranet, or the Internet. The machine may operate in the role of a server or a client machine in a client-server network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a personal computer (PC), a tablet computer, a set-top box (STB), a personal digital assistant (PDA), a mobile phone, a web appliance, a server, a network router, a switch, or a bridge, or any machine capable of executing a set of instructions (sequential or non-sequential) that specify operations to be performed by the machine. Furthermore, although only a single machine is illustrated, the term "machine" should be construed to include any collection of machines (e.g., computers) that individually or cooperatively execute a set (or sets) of instructions to perform any one or more of the methodologies discussed herein. In an embodiment, the computing device 1100 may correspond to the system controller 328 of FIG. 3 or another processing device of the manufacturing system 100.

[0073]

[0079] The exemplary computing device 700 includes a processing device 702, a main memory 704 (e.g., read only memory (ROM), flash memory, dynamic random access memory (DRAM) (e.g., synchronous DRAM (SDRAM) etc.), a static memory 706 (e.g., flash memory, static random access memory (SRAM) etc.), and a secondary memory (e.g., a data storage device 728), which communicate with each other via a bus 708.

[0074]

[0080] The processing device 702 may represent one or more general-purpose processors, such as a microprocessor, a central processing unit, etc. More specifically, the processing device 702 may be a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a processor implementing other instruction sets, or a processor implementing a combination of instruction sets. The processing device 802 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 processing device 702 may also be or include a system on a chip (SoC), a programmable logic controller (PLC), or other types of processing devices. The processing device 702 is configured to execute processing logic for performing the operations and steps discussed herein.

[0075]

[0081] The computing device 700 may further include a network interface device 722 for communicating with a network 764. The computing device 700 may also include a video display unit 710 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device 712 (e.g., a keyboard), a cursor control device 714 (e.g., a mouse), and a signal generation device 720 (e.g., a speaker).

[0076]

[0082] The data store 728 may include a machine-readable storage medium (or, more specifically, a non-transitory computer-readable storage medium) 724 on which is stored one or more sets of instructions 726 that embody any one or more of the methods or functions described herein. Here, non-transitory storage medium refers to a storage medium other than a carrier wave. The instructions 726 may also reside, completely or at least partially, within the main memory 704 and / or within the processing device 702 during execution by the computing device 700. The main memory 704 and the processing device 702 also constitute computer-readable storage media.

[0077]

[0083] The computer-readable storage medium 724 may also be used to store the model 190 and data used to train the model 190. The computer-readable storage medium 724 may also store a software library that includes a method for invoking the model 190. Although the computer-readable storage medium 724 is shown as a single medium in the exemplary embodiment, the term "computer-readable storage medium" should be understood to 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 instructions. The term "computer-readable storage medium" should also be interpreted to include any medium capable of storing or encoding a set of instructions to be executed by a machine and causing the machine to perform any one or more of the methods of the present disclosure. Thus, the term "computer-readable storage medium" should be interpreted to include, but is not limited to, solid-state memory, and optical and magnetic media.

[0078]

[0084] The foregoing description sets forth numerous specific details, such as examples of specific systems, components, methods, and the like, to provide a good understanding of some embodiments of the present disclosure. However, it will be apparent to one of ordinary skill in the art that at least some embodiments of the present disclosure may be practiced without these specific details. In other instances, well-known components or methods are not described in detail or are presented in simple block diagram form to avoid unnecessarily obscuring the present disclosure. Thus, the specific details described are merely illustrative. It is contemplated that certain implementations may differ from these illustrative details and still be within the scope of the present disclosure.

[0079]

[0085] References throughout this specification to "one embodiment" or "an embodiment" mean that a particular feature, structure, or characteristic described in connection with an embodiment is included in at least one embodiment. Thus, the phrases "in one embodiment" or "in an embodiment" in various places throughout this specification do not necessarily refer to the same embodiment. In addition, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or". When the term "about" or "approximately" is used herein, it is intended to mean that the nominal value presented is accurate to within ±10%.

[0080]

[0086] Although the steps of the methods herein are illustrated and described in a particular order, the order of the steps of each method may be changed such that certain steps are performed in reverse order, and certain steps are performed at least partially simultaneously with other steps. In alternative embodiments, the orders of separate steps or sub-steps may be intermittent and / or alternating.

[0081]

[0087] It should be understood that the above description is intended to be illustrative, and not limiting. Many other embodiments will become apparent to those skilled in the art upon reading and understanding the above description. The scope of the disclosure should therefore be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.

Claims

1. a memory for storing the trained machine learning model; a processing device coupled to the memory; wherein the processing device comprises: providing data associated with processing each of a first set of substrates in a manufacturing system according to a process recipe as input to a trained machine learning model; obtaining one or more outputs from the trained machine learning model; From the one or more outputs: an amount of drift of a first set of metrology measurements for the first set of substrates from a target metrology measurement; and process recipe modification data identifying one or more modifications to the process recipe, and, for each of the modifications, an indication of a confidence level that the respective modification to the process recipe satisfies a drift criterion for a second set of substrates. and determining updating the process recipe based on the respective modifications in response to identifying the respective modifications having a reliability that meets a reliability criterion; Run the system.

2. The processing device comprises: receiving a first set of measurements for each of the first set of substrates from a substrate measurement subsystem; 2. The system of claim 1, further comprising: a first set of measurements comprising at least one of spectral data or non-spectral data associated with a substrate profile of each of the first set of substrates; and wherein the data associated with processing each of the first set of substrates comprises the at least one of the spectral data or the non-spectral data of the first set of measurements.

3. The processing device comprises: receiving a second set of measurements for each of the first set of substrates; Further execute The second set of measurements may include: The system of claim 2 , wherein the signal is received from one or more sensors in at least one of a processing chamber, a transfer chamber, a load lock, a factory interface, or a substrate storage container of the manufacturing system.

4. The processing device comprises: providing the set of first metrology measurements for the first set of substrates as additional inputs to the trained machine learning model. The system of claim 1 further comprising:

5. 2. The system of claim 1, wherein in response to determining that each modification to the process recipe is predicted to reduce an amount of drift in a predicted set of metrology measurements for the second set of substrates to less than a threshold amount, the each modification to the process recipe satisfies the drift criterion for the second set of substrates.

6. 2. The system of claim 1, wherein updating the process recipe based on the respective modifications comprises at least one of modifying operation of the process recipe or generating instructions to terminate execution of the process recipe for the second set of substrates.

7. to update the process recipe based on the respective modifications, the processing device sending a request to a client device coupled to a manufacturing system to modify the process recipe for the second set of substrates; receiving instructions from the client device to modify the process recipe for the second set of substrates; 7. The system of claim 6, further comprising: a) updating the process recipe in accordance with the received instructions.

8. The system of claim 1 , wherein the confidence of the respective modification satisfies the confidence criterion in response to a determination that the confidence exceeds a confidence threshold.

9. 1. A method for training a machine learning model to predict modifications for a particular process recipe for a current substrate being processed in a manufacturing system, the method comprising: generating first training data for the machine learning model, the first training data including historical data associated with a first set of previous substrates previously processed in the manufacturing system according to a first process recipe and a first set of historical metrology measurements associated with each of the previous substrates in the set; generating second training data for the machine learning model, the second training data including historical data associated with a second set of previous substrates previously processed in the manufacturing system according to a second process recipe and a second set of historical metrology measurements associated with each of the previous substrates in the set; generating third training data for the machine learning model, the third training data including an indication of a difference between the first process recipe and the second process recipe; providing the first training data, the second training data, and the third training data to train the machine learning model to predict, for the particular process recipe for the current substrate being processed in the manufacturing system, what modification to the process recipe will satisfy a drift criterion for a subsequent set of substrates processed after the current substrate; A method comprising:

10. Generating the first training data includes: determining, for each prior substrate of the first set of prior substrates, a respective historical measurement value based on at least one of historical spectral data or historical non-spectral data generated for one or more portions of the prior substrate; 10. The method of claim 9, comprising:

11. receiving a first set of measurements for a portion of a first previous substrate of the first set of previous substrates from a substrate measurement subsystem of the manufacturing system; 11. The method of claim 10, further comprising: wherein the first set of measurements comprises at least one of respective historical spectral data or respective historical non-spectral data generated for the portion of the first prior substrate.

12. Generating the first training data includes: receiving, from a metrology system communicatively coupled to the manufacturing system, a first set of historical measurements associated with each of the first set of previous substrates; 10. The method of claim 9, comprising:

13. 10. The method of claim 9, wherein generating the first training data comprises determining, for each of the prior substrates of the first set of prior substrates, a respective historical measurement value based on at least one of historical spectral data or historical non-spectral data for one or more portions of each of the prior substrates, and generating the second training data comprises receiving the second set of historical metrology measurements associated with each of the prior substrates of the second set from at least one of a client device connected to the manufacturing system or a metrology measurement tool connected to the manufacturing system.

14. Generating the first training data includes: receiving a set of measurements from one or more sensors in at least one of a processing chamber, a transfer chamber, a load lock, a factory interface, or a substrate storage container of the manufacturing system; 10. The method of claim 9, wherein the set of measurements is generated during execution of the first process recipe for each of the first set of previous substrates, and the historical data associated with the first set of previous substrates comprises the set of received measurements.

15. When executed by a processing device, the processing device: providing data associated with processing each of a first set of substrates in a manufacturing system according to a process recipe as input to a trained machine learning model; obtaining one or more outputs from the trained machine learning model; From the one or more outputs: an amount of drift of a first set of metrology measurements for the first set of substrates from a target metrology measurement; and process recipe modification data identifying one or more modifications to the process recipe, and, for each of the modifications, an indication of a confidence level that the respective modification to the process recipe satisfies a drift criterion for a second set of substrates. and determining updating the process recipe based on the respective modifications in response to identifying the respective modifications having a reliability that meets a reliability criterion; A non-transitory computer-readable storage medium comprising instructions for executing

16. The processing device comprises: receiving a first set of measurements for a first substrate of the first set of substrates from a substrate measurement subsystem; 16. The non-transitory computer-readable storage medium of claim 15, further comprising: a first set of measurements comprising at least one of spectral data or non-spectral data associated with a profile of each of the first substrates; and wherein the data associated with processing each of the first set of substrates comprises the at least one of the spectral data or the non-spectral data of the set of measurements.

17. The processing device comprises: receiving a second set of measurements for the first substrate from one or more sensors in at least one of a processing chamber, a transfer chamber, a load lock, a factory interface, or a substrate storage container of the manufacturing system; 20. The non-transitory computer-readable storage medium of claim 16, further comprising:

18. The processing device comprises: providing the set of first metrology measurements for the first set of substrates as additional inputs to the trained machine learning model.

20. The non-transitory computer-readable storage medium of claim 15, further comprising:

19. 16. The non-transitory computer readable storage medium of claim 15, wherein in response to determining that each modification to the process recipe is predicted to cause an amount of drift in a predicted estimated set of metrology measurements for the second set of substrates to be less than a threshold amount, the each modification to the process recipe satisfies the drift criterion for the second set of substrates.

20. 16. The non-transitory computer-readable storage medium of claim 15, wherein updating the process recipe based on the respective modifications comprises at least one of modifying operation of the process recipe or generating instructions to terminate execution of the process recipe for the second set of substrates.

Citation Information

Patent Citations

  • Plasma treatment apparatus and method

    JP2006074067A

  • Comprehensive integrated lithography process control system based on product design and yield feedback system

    JP2006501673A

  • Semiconductor process monitoring method, and its system

    JP2007227618A

  • Wafer processing apparatus having capacitive microsensors

    JP2019522900A

  • Polishing device, polishing method, and machine learning device

    JP2020053550A