Prescriptive Analysis in Highly Collinear Response Spaces
By using normative analysis in a highly collinear response space, the processing device determines the update of manufacturing equipment parameters, solving the problem that administrators find it difficult to meet the multi-parameter and multi-objective optimization, and achieving more efficient manufacturing parameter adjustment and product property data optimization.
Patent Information
- Application Number
- CN201980082795.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-10-11
- Filing Date
- 2019-12-11
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2039-12-11
AI Technical Summary
During the manufacturing process, it is difficult for administrators to effectively update the parameters of manufacturing equipment to meet the problems of multi-parameter and multi-objective optimization, resulting in product-nature data being unable to meet the target data.
By using normative analysis in a highly collinear response space, the processing device receives membrane properties data related to the manufacturing equipment, determines its orthogonal data points with the target data, performs feature extraction, and determines updates of manufacturing parameters based on this.
Reduces energy consumption, bandwidth usage and processor management burden, and can more accurately adjust product-based data to meet target data, avoiding temporary trial and error of administrators relying on professional knowledge.
Smart Images

Figure CN113169044B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to prescriptive analytics, and more particularly, to prescriptive analytics in highly collinear response spaces. Background Art
[0002] The manufacturing processes and manufacturing equipment that produce products (e.g., in the semiconductor and display industries) can be complex. Determining updates to the parameters of the manufacturing processes and manufacturing equipment to meet the target properties of the product can be time consuming and may depend on the domain expertise of the managers of the manufacturing facility. Summary of the invention
[0003] Below is a simplified summary of the present disclosure to provide a basic understanding of some aspects of the present disclosure. This summary is not a broad overview of the present disclosure. This summary is neither intended to identify the key or important elements of the present disclosure, nor is it intended to describe any scope of the specific embodiments of the present disclosure or any scope of the claims. The sole purpose of this summary is to present some concepts of the present disclosure in a simplified form as a preface to a more detailed description presented later.
[0004] In one aspect of the present disclosure, a method may include: receiving film property data related to manufacturing parameters of a manufacturing device. The method further includes: determining that the film property data is related and different from target data. The method further includes: selecting, by a processing device, a set of data points of the film property data that are orthogonal to the target data. The method further includes: performing feature extraction on the set of data points by the processing device. The method further includes: determining, based on the feature extraction, an update to one or more manufacturing parameters to meet the target data.
[0005] In another aspect of the present disclosure, a system includes a memory and a processing device coupled to the memory. The processing device receives film property data associated with manufacturing parameters of a manufacturing device and determines that the film property data is related and different from target data. The processing device further selects a set of data points of the film property data that are orthogonal to the target data and performs feature extraction on the set of data points. The processing device further determines an update to one or more manufacturing parameters to meet the target data based on the feature extraction.
[0006] In another aspect of the present disclosure, a non-transitory computer readable medium stores thereon instructions that, when executed by a processing device, cause the processing device to: receive film property data associated with a manufacturing parameter of a manufacturing apparatus, and determine that the film property data is related and different from target data. The processing device further selects a set of data points of the film property data that are orthogonal to the target data, and performs feature extraction on the set of data points. The processing device further determines, based on the feature extraction, an update to one or more manufacturing parameters to satisfy the target data. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] The present disclosure is illustrated by way of example and not limitation in the figures of the accompanying drawings.
[0008] Figure 1 is a block diagram illustrating an exemplary system architecture in accordance with certain embodiments.
[0009] Figure 2 is an example data set generator for creating data sets for a machine learning model according to certain embodiments.
[0010] Figure 3 is a block diagram illustrating determining updates to manufacturing parameters to meet target data according to certain embodiments.
[0011] Figures 4 to 6 is a flow chart illustrating an example method of determining updates to manufacturing parameters to meet target data, according to certain embodiments.
[0012] FIG. 7A to FIG. 7B is a graph illustrating determining updates to manufacturing parameters to meet target data, according to certain embodiments.
[0013] Figure 8 is a block diagram illustrating a computer system according to certain embodiments. DETAILED DESCRIPTION
[0014] Described herein is a technique involving normative analysis in highly collinear response space. Manufacturing equipment (e.g., semiconductor or display processing tools) performs manufacturing processes to produce products (e.g., semiconductor wafers, semiconductor displays, etc.) with final property data (e.g., film property data). The resulting property data can be compared with target data (e.g., target property data, specifications). In response to the resulting property data not satisfying the target data, the manufacturing parameters (e.g., hardware parameters, process parameters) of the manufacturing equipment can be updated to try to satisfy the target data. Conventionally, updating the manufacturing parameters to try to satisfy the target data may depend on the domain expertise of the administrator, may be ad hoc, and may be restricted. By repeatedly updating the manufacturing parameters through trial and error, the administrator can decide how to update the manufacturing parameters to try to satisfy the target data. The administrator may not be able to update the manufacturing parameters to satisfy the target data. The target data may include two or more properties. For example, the target data may be one or more of multi-parameters, multi-objective optimization, constrained optimization problems, unconstrained optimization problems, etc. Conventionally, the administrator may be limited to selecting a property of the target data, and then updating the manufacturing parameters to try to satisfy a property of the target data. When attempting to make one property of the resulting property data satisfy the target data, other properties of the resulting property data may not satisfy the target data and may increase the deviation from the target data. Conventionally, an administrator may be limited in the number or type of manufacturing parameters that can be updated (e.g., manufacturing parameters that can be considered for updating at the same time). An administrator may not be able to update manufacturing parameters to satisfy target data, which are one or more of multi-parameter, multi-objective optimization, constrained optimization problem, unconstrained optimization problem, etc.
[0015] The property data of the product may be related (e.g., collinear film property data). For example, in a graph with a first axis being a first property and a second axis being a second property, the property data may form a line. This line may be substantially parallel to the target data (e.g., offset from the target data). Conventionally, an administrator cannot adjust manufacturing parameters so that the related property data (e.g., collinear film property data) meets the target data.
[0016] The apparatus, system and method disclosed herein use prescriptive analysis in a highly collinear response space to determine updates to one or more manufacturing parameters (e.g., process parameters, equipment parameters, hardware design changes, etc.) to meet target data. A processing device receives film property data associated with manufacturing parameters of a manufacturing device, and determines that the film property data is related and different from the target data (e.g., does not meet the target data, cannot meet the target data, deviates from the target data, etc.). The processing device selects a set of data points of the film property data that are orthogonal to the target data, and performs feature extraction on the set of data points. The processing device determines updates to one or more manufacturing parameters to meet the target data based on the feature extraction.
[0017] In some embodiments, a machine learning model can be trained using data inputs (e.g., historical or experimental manufacturing parameters) and target outputs (e.g., historical or experimental film property data) corresponding to the data inputs. An inverted solution can be obtained from the trained machine learning model based on the target data. The inverted solution may include updates to the manufacturing parameters. In some embodiments, to obtain an inverted solution, the trained machine learning model may be inverted, the target data may be input into the inverted trained machine learning model, and the inverted machine learning model may output updates to the manufacturing parameters to satisfy the target data.
[0018] In some embodiments, updates to manufacturing parameters may be displayed via a graphical user interface. In some embodiments, updates to manufacturing parameters may be implemented to meet target data.
[0019] Aspects of the present disclosure result in technical advantages that significantly reduce energy consumption (e.g., battery consumption), required bandwidth, processor management burden, etc. In some embodiments, the technical advantage comes from determining updates to manufacturing parameters to meet target data without having to perform temporary trial and error using the administrator's domain expertise. Compared to temporary trial and error relying on the user's domain expertise, less energy, less bandwidth, and less processor management burden can be used to determine updates to manufacturing parameters to meet the target data. Updates to manufacturing parameters determined via the present disclosure can produce products with property data that is closer to the target data than conventional practices. Conventionally, an administrator may not be able to determine updates to manufacturing parameters to meet the target data, which may result in the product not meeting specifications. Updates to manufacturing parameters determined by the embodiments described herein can produce products with property data that meet different properties of the target data (e.g., meet specifications, rather than just trying to approach one property of the target data).
[0020] Figure 1 1 is a block diagram illustrating an exemplary system architecture 100 according to certain embodiments. System architecture 100 includes client devices 120, manufacturing equipment 124, measurement equipment 126, prescriptive analysis server 130, and data storage 140. Prescriptive analysis server 130 may be part of prescriptive analysis system 110. Prescriptive analysis system 110 may further include server machines 170 and 180.
[0021] The measurement device 126 may include one or more of a metrology system 127 or a sensor 128. The measurement device 126 may determine (e.g., via the metrology device 127) film property data (e.g., historical or experimental film property data 144, film property data 150, tested film property data 156) of a product (e.g., a wafer) produced by the manufacturing device 124. The measurement device 126 may determine (e.g., via the sensor 128) a manufacturing parameter (e.g., historical or experimental manufacturing parameter 146, etc.) associated with the manufacturing device 124.
[0022] The client device 120, the manufacturing equipment 124, the measurement equipment 126, the prescriptive analysis server 130, the data storage 140, the server machine 170, and the server machine 180 may be coupled to each other via a network 160 to determine updates 154 to the manufacturing parameters to satisfy the target data 152. In some embodiments, the network 160 is a public network that provides the client device 120 with access to the prescriptive analysis server 130, the data storage 140, and other commercially available computing devices. In some embodiments, the network 160 is a private network that provides the client device 120 with access to the prescriptive analysis server 130, the data storage 140, and other private computing devices. The network 160 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.
[0023] The client device 120 may include a computing device such as a personal computer (PC), a laptop computer, a cell phone, a smartphone, 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 media device, an operator box, etc. The client device 120 may be capable of receiving film property data (e.g., historical or experimental data 142, film property data 150, tested film property data 156) from the measurement equipment 126 via the network 160, receiving updates 154 to manufacturing parameters from the prescriptive analysis system 110, etc. The client device 120 may be capable of sending film property data (e.g., historical or experimental data 142, film property data 150, target data 152, tested film property data 156) to the prescriptive analysis system 110 via the network 160, sending updates 154 to manufacturing parameters to the manufacturing equipment 124, etc. In some embodiments, the client device 120 may modify manufacturing parameters (e.g., process parameters, hardware parameters, etc.) of the manufacturing equipment 124 based on the update to the manufacturing parameter 154. Each client device 120 may include an operating system that allows a user to do one or more of the following: generate, view, or edit data (e.g., target data 152, update to the manufacturing parameter 154, tested film property data 156, etc.).
[0024] The client device 120 may include a manufacturing parameter modification component 122. The manufacturing parameter modification component 122 may receive user input of target data 152 (e.g., via a graphical user interface displayed via the client device 120). The target data 152 may include property data (e.g., film property data). In some embodiments, the client device 120 sends the target data 152 to the prescriptive analysis server 130, and the client device 120 receives updates 154 to the manufacturing parameters from the prescriptive analysis server 130 to satisfy the target data 152. The client device 120 may cause the manufacturing parameters of the manufacturing equipment 124 to be updated based on the updates 154 to the manufacturing parameters (e.g., send the updates 154 to the manufacturing parameters to the manufacturing equipment 124, implement the updates 154 to the manufacturing parameters). The client device 120 may receive the tested film property data 156 in response to the updates to the manufacturing parameters implemented by the manufacturing equipment 124. The client device 120 may send the tested film property data 156 to the prescriptive analytics system 110 (eg, prescriptive analytics server 130 ) to update the trained machine learning model 190 .
[0025] The prescriptive analysis server 130 may include one or more computing devices, such as a rack server, a router computer, a server computer, a personal computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, a graphics processing unit (GPU), an accelerator application specific integrated circuit (ASIC) (e.g., a tensor processing unit (TPU)), etc. The prescriptive analysis server 130 may include a prescriptive analysis component 132. In some embodiments, the prescriptive analysis component 132 may use historical or experimental data 142 to determine updates 154 to manufacturing parameters to meet target data 152. The historical or experimental data 142 may include historical data, experimental data, or a combination thereof. The experimental data may include design of experiments (DOE) data. In some embodiments, the prescriptive analysis component 132 may use a trained machine learning model 190 to determine updates 154 to manufacturing parameters to meet target data 152. The trained machine learning model 190 may learn key process and hardware parameters. Determining updates 154 to manufacturing parameters by the trained machine learning model 190 may include specifying optimal operating conditions (e.g., process parameters) and / or spaces (e.g., hardware parameters) by the trained machine learning model 190.
[0026] The prescriptive analysis component 132 may receive (e.g., retrieve from the data storage 140) film property data 150 associated with manufacturing parameters of the manufacturing equipment 124, determine that the film property data 150 is related and different from the target data 152, and determine an update 154 to the manufacturing parameters to satisfy the target data 152. In some embodiments, the prescriptive analysis component 132 determines the update 154 to the manufacturing parameters by selecting a set of data points of the film property data 150 that are orthogonal to the target data 152 and performing feature extraction on the set of data points, wherein the update 154 to the manufacturing parameters is based on the feature extraction. In some embodiments, an inverse solution (e.g., an update to the manufacturing parameters) may be obtained from a trained machine learning model based on the target data. The inverse solution may include an update to the manufacturing parameters. In some embodiments, to obtain the inverse solution, the prescriptive analysis component 132 determines the update 154 to the manufacturing parameters by providing the target data 152 to the trained machine learning model. For example, an inverse solution (e.g., an update 154 to the manufacturing parameters) may be obtained from a trained machine learning model based on the target data 152. In some embodiments, the prescriptive analysis component 132 determines updates 154 to manufacturing parameters by providing the target data 152 to an inverted trained machine learning model (e.g., the model 190 that has been trained and inverted), obtaining output from the inverted trained machine learning model, and extracting updates 154 to manufacturing parameters from the output. The inverted trained machine learning model may select a set of data points of the film property data 150 that are orthogonal to the target data 152 and perform feature extraction on the set of data points, wherein the output of the inverted trained machine learning model (e.g., updates 154 to manufacturing parameters) is based on the feature extraction.
[0027] The data storage 140 may be a memory (e.g., random access memory), a drive (e.g., a hard drive, a flash drive), a database system, or another type of component or device capable of storing data. The data storage 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 storage 140 may store one or more of the historical or experimental data 142, the film property data 150, the target data 152, the updates 154 to the manufacturing parameters, or the tested film property data 156. The historical or experimental data 142 may include the historical or experimental film property data 144 and the historical or experimental manufacturing parameters 146 over a period of time or multiple runs of the manufacturing equipment 124. Each instance of the historical or experimental film property data 144 may correspond to a corresponding instance of the historical or experimental manufacturing parameters 146 (e.g., an instance of the historical or experimental manufacturing parameters 146 used by the manufacturing equipment 124 to produce a product having the historical or experimental film property data 144). Each instance of the tested film property data 156 may correspond to a respective instance of the update 154 to the manufacturing parameters (eg, an instance of the update 154 to the manufacturing parameters that the manufacturing equipment 124 uses to produce a product having the tested film property data 156 ).
[0028] In some embodiments, the manufacturing parameters include one or more of the settings or components (e.g., size, type, etc.) of the manufacturing equipment 124. The manufacturing parameters may include one or more of temperature (e.g., heater temperature), spacing (SP), pressure, high frequency radio frequency (HFRF), voltage of an electrostatic chuck (ESC), current, a first precursor, a first diluent, a second diluent, a first reactant, a second reactant, a second precursor, etc.
[0029] In some embodiments, the film property data includes wafer space film properties based on measurement equipment data (e.g., retrieved from measurement equipment 126 coupled to fabrication equipment 124). The film property data may include one or more of dielectric constant, dopant concentration, growth rate, density, and the like.
[0030] In some embodiments, the client device 120 may store the target data 152 and the tested film property data 156 in the data storage 140, and the prescriptive analysis server 130 may retrieve the target data 152 and the tested film property data 156 from the data storage 140. In some embodiments, the prescriptive analysis server 130 may store the updates 154 to the manufacturing parameters in the data storage 140, and the client device 120 may retrieve the updates 154 to the manufacturing parameters from the data storage 140.
[0031] In some embodiments, the prescriptive analysis system 110 also includes a server machine 170 and a server machine 180. The server machines 170 and 180 may be one or more computing devices (such as rack servers, router computers, server computers, personal computers, mainframe computers, laptop computers, tablet computers, desktop computers, etc.), GPUs, ASICs (e.g., TPUs), data storage (e.g., hard disks, memory databases), networks, software components, or hardware components.
[0032] The server machine 170 includes a data set generator 172 that can generate a data set (e.g., a set of data inputs and a set of target outputs) to train, validate, or test the machine learning model 190. Some operations of the data set generator 172 are described below with reference to Figure 2 and Figure 6 Detailed description. In some embodiments, the data group generator 172 may divide the historical or experimental data 142 into a training group (e.g., sixty percent of the historical or experimental data 142), a validation group (e.g., twenty percent of the historical or experimental data 142), and a test group (e.g., twenty percent of the historical or experimental data 142). In some embodiments, the normative analysis component 132 generates multiple sets of features. For example, a first set of features may be a first set of manufacturing parameters corresponding to each data group (e.g., a training group, a validation group, and a test group), and a second set of features may be a second set of manufacturing parameters corresponding to each data group (e.g., different from the first set of manufacturing parameters).
[0033] The server machine 180 includes a training engine 182, a verification engine 184, a selection engine, and a test engine 186. Engines (e.g., training engine 182, verification engine 184, selection engine, and test engine 186) may refer to hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, processing devices, etc.), software (such as instructions running on a processing device, a general-purpose computer system, or a dedicated machine), firmware, microcode, or a combination thereof. The training engine 182 may be capable of training a machine learning model 190 using one or more sets of features associated with a training set from the data set generator 172. The training engine 182 may generate a plurality of trained machine learning models 190, wherein each trained machine learning model 190 corresponds to a different set of features of the training set. For example, a first trained machine learning model may be trained using all features (e.g., X1-X5), a second trained machine learning model may be trained using a first subset of features (e.g., X1, X2, X4), and a third trained machine learning model may be trained using a second subset of features (e.g., X1, X3, X4, and X5) that may partially overlap with the first subset of features.
[0034] The validation engine 184 may be capable of validating the trained machine learning models 190 using the corresponding feature set of the validation group from the data set generator 172. For example, a first set of features of the validation group may be used to validate a first trained machine learning model 190 trained using a first set of features of the training group. The validation engine 184 may determine the accuracy of each trained machine learning model 190 based on the corresponding feature set of the validation group. The validation engine 184 may discard trained machine learning models 190 having an accuracy that does not meet a threshold accuracy. In some embodiments, the selection engine 185 may be capable of selecting one or more trained machine learning models 190 having an accuracy that meets a threshold accuracy. In some embodiments, the selection engine 185 may be capable of selecting a trained machine learning model 190 with the highest accuracy among the trained machine learning models 190.
[0035] The testing engine 186 may be capable of testing the trained machine learning model 190 using a corresponding set of features of the test set from the data set generator 172. For example, a first set of features of the test set may be used to test a first trained machine learning model 190 trained using a first set of features of the training set. The testing engine 186 may determine the trained machine learning model 190 having the highest accuracy among all the trained machine learning models based on the test set.
[0036] The machine learning model 190 may refer to a model artifact created by the training engine 182 using a training set that includes data inputs and corresponding target outputs (correct answers for each training input). Patterns in the data set may be found that map the data inputs to target outputs (correct answers), and a mapping that captures these patterns is provided to the machine learning model 190. The machine learning model 190 may use one or more of linear regression, random forests, neural networks (e.g., artificial neural networks), and the like.
[0037] The trained machine learning model 190 can be inverted (e.g., by the prescriptive analysis component 132, etc.). The prescriptive analysis component 132 can provide the target data 152 (e.g., target film property data) as input to the inverted trained machine learning model 190, and can run the inverted trained machine learning model 190 on the input to obtain one or more outputs. As described below with respect to Figure 5As described in detail, the prescriptive analysis component 132 may be capable of extracting updates 154 to manufacturing parameters from the output of the trained machine learning model 190 to satisfy the target data 152, and may extract confidence data from the output indicating a confidence level indicating whether one or more products produced using the updates 154 to the manufacturing parameters satisfy the target data 152 (e.g., will be within specifications). The prescriptive analysis component 132 may use the confidence data to decide whether to cause the manufacturing equipment 124 to implement the updates 154 to the manufacturing parameters.
[0038] The confidence data may include or indicate a confidence level that the product produced using the update 154 to the manufacturing parameters meets the target data 152. In one example, the confidence level is a real number between 0 and 1, inclusive, where 0 indicates no confidence that the product meets the target data 152, and 1 indicates absolute confidence that the product meets the target data 152.
[0039] For purposes of illustration and not limitation, aspects of the present disclosure describe training a machine learning model using historical or experimental data 142, inverting the trained machine learning model, and inputting target data 152 into the inverted trained machine learning model to determine updates 154 to manufacturing parameters. In other embodiments, a heuristic model or a rule-based model is used to determine updates 154 to manufacturing parameters (e.g., without using a trained machine learning model). The prescriptive analysis component 132 can monitor the historical or experimental data 142. Figure 2 The data input 210 describes any information that can be monitored or otherwise used in a heuristic or rule-based model.
[0040] In some embodiments, the functionality of client device 120, prescriptive analysis server 130, server machine 170, and server machine 180 may be provided by a smaller number of machines. For example, in some embodiments, server machines 170 and 180 may be integrated into a single machine, while in other embodiments, server machine 170, server machine 180, and prescriptive analysis server 130 may be integrated into a single machine.
[0041] In general, functions described in one embodiment as being performed by client device 120, prescriptive analysis server 130, server machine 170, and server machine 180 may also be performed on prescriptive analysis server 130 in other embodiments, where appropriate. Additionally, functionality attributed to a particular component may be performed by different or multiple components operating together. For example, in some embodiments, prescriptive analysis server 130 may send updates 154 to manufacturing parameters to manufacturing equipment 124. In another example, client device 120 may determine updates 154 to manufacturing parameters based on outputs from a trained machine learning model from an inversion.
[0042] Additionally, the functionality of a particular component may be performed by different or multiple components operating together.One or more of prescriptive analytics server 130, server machine 170, or server machine 180 may be accessed as a service provided to other systems or devices through an appropriate application programming interface (API).
[0043] In an embodiment, a "user" may be represented as a single individual. However, other embodiments of the present disclosure include a "user" that is an entity controlled by multiple users and / or automated sources. For example, a group of individual users united as a group of administrators may be considered a "user."
[0044] Although embodiments of the present disclosure are discussed in terms of updating 154 manufacturing parameters of manufacturing equipment 124 in a manufacturing facility (e.g., a semiconductor manufacturing facility) to satisfy target data 152, embodiments may also be generally applied to satisfying target data. Embodiments may generally be applied to optimizing property data (e.g., co-linear property data) of a product.
[0045] Figure 2 is an example data set generator 272 (e.g. Figure 1 ) to use historical or experimental data 242 (e.g. Figure 1 Historical or experimental data 142) is used to create machine learning models (e.g. Figure 1 Model 190) data set. Figure 2 The system 200 shows a data set generator 272, a data input 210, and a target output 220.
[0046] In some embodiments, the data group generator 272 generates a data group (e.g., a training group, a validation group, a test group), the data group includes one or more data inputs 210 (e.g., a training input, a validation input, a test input) and one or more target outputs 220 corresponding to the data inputs 210. The data group may also include mapping data that maps the data inputs 210 to the target outputs 220. The data inputs 210 may also be referred to as "features," "attributes," or "information." In some embodiments, the data group generator 272 may provide the data group to the training engine 182, the validation engine 184, or the testing engine 186, where the data group is used to train, validate, or test the machine learning model 190. Figure 6 Some embodiments of generating a training set are further described.
[0047] In some embodiments, data input 210 may include data for historical or experimental manufacturing parameters 246 (e.g. Figure 1 The target output 220 may include historical or experimental film property data 244 (e.g., Figure 1 Historical or experimental membrane property data 144).
[0048] In some embodiments, the data group generator 272 may generate a first data input corresponding to the first set of features 212A to train, validate, or test a first machine learning model, and the data group generator 272 may generate a second data input corresponding to the second set of features 212B to train, validate, or test a second machine learning model.
[0049] In some embodiments, the data set generator 272 may discretize one or more of the data input 210 or the target output 220 (e.g., for use in a classification algorithm for a regression problem). The discretization of the data input 210 or the target output 220 may convert the continuous value of the variable into a discrete value. In some embodiments, the discrete value of the data input 210 indicates a discrete manufacturing parameter to obtain the target output 220.
[0050] The data input 210 and target output 220 for training, validating, or testing a machine learning model may include information specific to a particular facility (e.g., specific to a particular semiconductor manufacturing facility). For example, historical or experimental manufacturing parameters 246 and historical or experimental film property data 244 may be for the same manufacturing facility as film property data 150, target data 152, updates to manufacturing parameters 154, and tested film property data 156.
[0051] In some embodiments, information used to train a machine learning model may be from a particular type of manufacturing equipment 124 at a manufacturing facility having a particular property, and allow the trained machine learning model to determine results for a particular group of manufacturing equipment 124 based on input to some target data 152 associated with one or more components that share the particular group property. In some embodiments, information used to train a machine learning model may be for components from two or more manufacturing facilities, and may allow the trained machine learning model to determine results for components based on input from one manufacturing facility.
[0052] In some embodiments, after a data set is generated and used to train, validate, or test the machine learning model 190, the machine learning model 190 may be further trained, validated, or tested (e.g., using Figure 1 Updates 154 to manufacturing parameters based on tested film property data 156) or adjustments (e.g., adjustments to weights associated with input data to a machine learning model 190, such as connection weights in a neural network).
[0053] Figure 3 is a diagram illustrating a method for generating an update 354 to a manufacturing parameter (e.g. Figure 1 154) of a system 300. The system 300 may be a feedback system for updating manufacturing parameters based on historical or experimental data 342 (e.g., Figure 1 historical or experimental data 142) to determine the update 354 of the manufacturing parameters to meet the target data 352 (e.g. Figure 1 target data 152).
[0054] At block 310, the system 300 (eg, Figure 1 The normative analysis system 110) performs historical or experimental data 342 (e.g. Figure 1 data partitioning (e.g., via Figure 1The system 300 may generate multiple feature groups for each of the training group, validation group, and test group. For example, if the historical or experimental data 342 has 20 manufacturing parameters (e.g., process parameters, hardware parameters) and there are 100 runs for each manufacturing parameter, the first set of features may be manufacturing parameters 1-10, the second set of features may be manufacturing parameters 11-20, the training group may be runs 1-60, the validation group may be runs 61-80, and the test group may be runs 81-100. In this example, the first set of features for the training group would be manufacturing parameters 1-10 for runs 1-60.
[0055] At block 312, system 300 performs model training using training set 302 (e.g., via Figure 1 The system 300 may train multiple models using multiple sets of features from the training set 302 (e.g., a first set of features from the training set 302, a second set of features from the training set 302, etc.). For example, the system 300 may train machine learning models to generate a first trained machine learning model using a first set of features from the training set (e.g., manufacturing parameters 1-10 for runs 1-60) and to generate a second trained machine learning model using a second set of features from the training set (e.g., manufacturing parameters 11-20 for runs 1-60). In some embodiments, the first trained machine learning model and the second trained machine learning model may be combined to generate a third trained machine learning model (e.g., the third trained machine learning model may be a better predictor than the first or second trained machine learning model itself). In some embodiments, the sets of features used in the comparison models may overlap (e.g., the first set of features are manufacturing parameters 1-15, while the second set of features are manufacturing parameters 5-20). In some embodiments, hundreds of models may be generated, including models with various arrangements of features and combinations of models.
[0056] At block 314, system 300 performs model validation using validation group 304 (e.g., via Figure 1Validation engine 184 of validation group 304). System 300 may validate each trained model using a corresponding set of features of validation group 304. For example, system 300 may validate a first trained machine learning model using a first set of features in the validation group (e.g., manufacturing parameters 1-10 of runs 61-80), and validate a second trained machine learning model using a second set of features in the validation group (e.g., manufacturing parameters 11-20 of runs 61-80). In some embodiments, system 300 may validate hundreds of models generated at box 312 (e.g., models with various arrangements of features, combinations of models, etc.). At box 314, system 300 may determine the accuracy of each of one or more training models (e.g., via model validation), and may determine whether one or more training models have an accuracy that satisfies a threshold accuracy. In response to determining that none of the training models have an accuracy that satisfies the threshold accuracy, the process returns to box 312, where system 300 performs model training using a different set of features of the training group. In response to determining that one or more training models have an accuracy that satisfies the threshold accuracy, the process continues to box 316. The system 300 may discard trained machine learning models that have an accuracy below a threshold accuracy (e.g., based on a validation set).
[0057] At block 316, the system 300 performs model selection (e.g., via the selection engine 315) to determine which of the one or more training models that meet the threshold accuracy has the highest accuracy (e.g., the selected model 308, based on the validation of block 314). In response to determining that two or more trained models that meet the threshold accuracy have the same accuracy, the process can return to block 312, where the system 300 performs model training using a further improved training set corresponding to a further improved feature set to determine the trained model with the highest accuracy.
[0058] At block 318, system 300 performs model testing using test set 306 (eg, via Figure 1The system 300 may test the first trained machine learning model using the first set of features in the test set (e.g., manufacturing parameters 1-10 of runs 81-100) to determine whether the first trained machine learning model meets the threshold accuracy (e.g., based on the first set of features of the test set 306). In response to the accuracy of the selected model 308 not meeting the threshold accuracy (e.g., the selected model 308 is overfit to the training set 302 and / or the validation set 304 and is not applicable to other data sets, such as the test set 306), the process continues to block 312, in which the system 300 performs model training (e.g., retraining) using a different training set corresponding to a different set of features (e.g., different manufacturing parameters). In response to determining that the selected model 308 has an accuracy that meets the threshold accuracy based on the test set 306, the process continues to block 320. In at least block 312 , the model may learn patterns in the historical or experimental data 342 to make predictions, and in block 318 , the system 300 may apply the model to the remaining data (eg, the test set 306 ) to test the predictions.
[0059] At block 320, the system 300 inverts a trained model (e.g., the selected model 308). For the trained model, in response to the input of manufacturing parameters, predicted film property data can be extracted from the output of the trained model. For the inverted trained model, in response to the input of target data 352 (e.g., target film property data), updates 354 to the manufacturing parameters can be extracted from the output of the inverted trained model.
[0060] At block 322, the system 300 receives target data 352 (eg, target film property data, Figure 1 Target data 152 of the invention and extracting updates 354 to manufacturing parameters from the output of the inverted trained model (e.g., Figure 1 Update of manufacturing parameters 154).
[0061] In response to manufacturing equipment 124 using updates 354 to manufacturing parameters to produce a product (eg, semiconductor, wafer, etc.), the product may be tested (eg, via measurement equipment 126) to determine tested film property data 356 (eg, Figure 1 In response to receiving the tested film property data 356, the process can continue to box 312 (e.g., via a feedback loop) where the update 354 to the manufacturing parameters and the tested film property data 356 are compared to update the trained model via model training (e.g., model retraining).
[0062] In some embodiments, one or more of actions 310-322 may occur in various orders and / or with other actions not presented and described herein. In some embodiments, one or more of actions 310-322 may not be performed. For example, in some embodiments, one or more of the data partitioning of block 310, the model validation of block 314, the model selection of block 316, or the model testing of block 318 may not be performed.
[0063] Figures 4 to 6 According to some embodiments, updates to manufacturing parameters (e.g. Figure 1 Flowcharts of example methods 400-600 associated with updating manufacturing parameters 154). Methods 400-600 may be performed by processing logic, which may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, processing devices, etc.), software (such as running on a processing device, a general-purpose computer system, or a dedicated machine), firmware, microcode, or a combination thereof. In one embodiment, methods 400-600 may be performed in part by the prescriptive analysis system 110. In some embodiments, methods 400-600 may be performed by the prescriptive analysis server 130. In some embodiments, a non-transitory storage medium stores instructions that, when executed by a processing device (e.g., a processing device of the prescriptive analysis system 110), cause the processing device to perform methods 400-600.
[0064] For simplicity of description, methods 400-600 are depicted and described as a series of actions. However, actions according to the present disclosure may occur in various orders and / or simultaneously and with other actions not presented and described herein. In addition, according to the disclosed subject matter, it is not necessary to perform all the actions shown to implement methods 400-600. In addition, those with ordinary knowledge in the technical field of the present invention will understand and appreciate that methods 400-600 may alternatively be represented as a series of interrelated states via state diagrams or events.
[0065] Figure 4 is a method for determining an update to a manufacturing parameter (e.g. Figure 1 The update of manufacturing parameters 154) to meet the target data (e.g. Figure 1 Flowchart of method 400 of target data 152).
[0066] Reference Figure 4At block 402, processing logic receives film property data 150 associated with manufacturing parameters of a manufacturing apparatus 124. In some embodiments, the client device 120 receives the film property data 150 from a measurement apparatus 126 (e.g., a metrology system 127). In some embodiments, the film property data 150 is measured via the measurement apparatus 126 while the manufacturing apparatus 124 is processing or producing a product (e.g., a semiconductor wafer). In some embodiments, the film property data 150 is measured via the measurement apparatus 126 after the manufacturing apparatus 124 has processed the product (e.g., a finished semiconductor wafer, a semiconductor wafer that has passed a processing stage). The film property data 150 may correspond to multiple types of measurements via multiple types of measurement apparatuses 126. The prescriptive analysis component 132 may receive the film property data 150 from one or more of the client device 120, the measurement apparatus 126, or the data storage 140.
[0067] At block 404, processing logic determines that the film property data 150 is related and different from (e.g., does not satisfy) the target data 152. In some embodiments, processing logic determines that the film property data 150 does not intersect the target data 152 (e.g., the film property data 150 is substantially parallel to the target data 152).
[0068] At block 406, processing logic selects a set of data points of the film property data 150 that are orthogonal to the target data 152 (see Fig. 7A ).
[0069] At block 408, processing logic performs feature extraction on the set of data points. Feature extraction may be performed via one or more of: principal component analysis (PCA), clustering (e.g., k-means clustering, hierarchical clustering), factor analysis (FA), discriminant analysis, or a correlation matrix.
[0070] At block 410, processing logic determines an update to one or more manufacturing parameters (e.g., update 154 to manufacturing parameters) based on feature extraction to satisfy target data 152. Processing logic may filter solutions based on feasibility or cost of updating 154 to manufacturing parameters to satisfy target data 152. For example, a first update or a second update to manufacturing parameters may cause film property data to satisfy target data 152. The first update may include changing process parameters (e.g., feasibility, low cost), while the second update may include updating hardware parameters (e.g., ordering new manufacturing equipment, high cost). The first update may be used instead of the second update due to higher feasibility and lower cost.
[0071] At block 412, processing logic displays updates 154 to one or more manufacturing parameters via a graphical user interface (GUI). The GUI may be displayed via the client device 120. The GUI may display two or more different options for updates 154 to the manufacturing parameters so that the film property data meets the target data 152. The GUI may indicate the costs associated with the updates 154 to the manufacturing parameters (e.g., equipment upgrades, processing costs, time required, etc.) compared to current costs (e.g., cost increases, cost decreases, etc.). The GUI may display GUI elements that are selectable to select and implement the updates 154 to the manufacturing parameters.
[0072] At block 414, processing logic implements updates to one or more manufacturing parameters of the manufacturing equipment 124 to satisfy the target data 152. In some embodiments, block 414 is responsive to receiving user input selecting a GUI element to implement updates to the manufacturing parameters 154. In some embodiments, upon receiving user input selecting a GUI element, process parameters of the manufacturing equipment 124 may be updated (e.g., by the client device 120, by the prescriptive analysis component 132, etc.). In some embodiments, upon receiving user input selecting a GUI element, hardware parameters of the manufacturing equipment 124 may be updated (e.g., by changing a component of the manufacturing equipment 124, by changing a setting of the manufacturing equipment 124, etc.).
[0073] Figure 5 is a flow chart of a method 500 for determining updates to manufacturing parameters (eg, update 154 to manufacturing parameters) to meet target data 152 using an inverse machine learning model, according to certain embodiments.
[0074] Reference Figure 5 At block 502 , processing logic receives film property data 150 associated with manufacturing parameters of manufacturing equipment 124 .
[0075] At block 504, processing logic determines that the film property data 150 is correlated and different from (e.g., does not satisfy) the target data 152. The film property data 150 may be correlated between two or more variables (e.g., multi-dimensionally correlated). In some embodiments, the desired output target (e.g., target data 152, such as a film property including one or more of refractive index (RI), stress, uniformity, etc.) is highly collinear (e.g., substantially parallel to the film property data 150) and appears to be unachievable or unreasonable based on an existing experimental data set (e.g., historical or experimental data 142) used for learning / training. This may be due to one or more of the following reasons: a narrow process space to explore, hardware design limitations, correct chemistry (e.g., reactants / precursors), etc.
[0076] In some embodiments, at block 506, processing logic inverts the trained machine learning model to generate an inverted machine learning model. In some embodiments, at block 506, processing logic generates a cost function similar to the trained machine learning model, and processing logic generates an inverted solution to the cost function. Figures 1 to 3 As described, the data input 210 (e.g., training data) may include historical or experimental data 142. The historical or experimental data 142 (e.g., historical or experimental film property data 144 and historical or experimental manufacturing parameters 146) may include process parameters, hardware parameters, a curated paste excel file, a classically designed experimental protocol, hardware component information, radio frequency (RF) hours, coordinate measurement machine (CMM) data, infrared (IR) data, color array (COA) data, state data, design of experiments (DOE) data, etc. The data input 210 may be used as a training set for a statistical and / or machine learning model (e.g., a set of statistical and / or machine learning algorithms) to learn an approximation function (G) to a transfer function (F) that relates manufacturing parameters (S) (e.g., hardware and / or process parameters) to film properties (P).
[0077] At box 506, an inverse operator may be applied to function G for a regression-based approach. When a closed-form solution to G does not exist, simulation and optimization methods (e.g., neural networks, random forests, etc.) may be employed. At box 508, processing logic provides the target data 152 to the (inverted) trained machine learning model. The machine learning model may have already been inverted, or may have been pseudo-inverted (e.g., and an inverted solution to a cost function similar to the machine learning model). The (inverted) trained machine learning model may select a set of data points of the membrane property data that is orthogonal to the target data, and may perform feature extraction on this set of data points (see Figure 4 In some embodiments, the (inverted) trained machine learning model may use principal component analysis (PCA) based on orthogonal vectors to specify directions for process space exploration or hardware modifications and design improvements.
[0078] like Fig. 7A As shown, there may be high collinearity between properties Y2 and Y1. Figure 7B As shown in the diagram 700B, the orthogonal line can pass through the point (Y1 0 =D1,Y2 0 = D2), these points constitute a set (Y1) defined by a distance metric d (e.g., the distance from the target data 152) 0 , Y2 0 ).
[0079] Thereafter, it is possible to identify and include (e.g., consist of) {Y1 0 , Y2 0The simulated output parameters corresponding to the predictor / input vector {X o The identified desired predictor / input vector {X o}Perform feature extraction (e.g. PCA) to identify the vector space {X o}The principal components of the changes in (e.g., 90% of the changes, most of the changes).
[0080] At block 510, processing logic obtains an inversion solution, including one or more outputs from the (inverted) trained machine learning model. In some embodiments, the inversion solution is obtained by inverting the trained machine learning model. In some embodiments, the inversion solution is obtained by pseudo-inversion (e.g., in response to a failure to invert the trained machine learning model). Pseudo-inversion may include generating a cost function similar to the trained machine learning model (e.g., via a nonlinear optimization technique), and determining an inversion solution to the cost function to obtain the one or more outputs.
[0081] At block 512, processing logic extracts updates 154 (e.g., countermeasures, inverse predictions) to one or more manufacturing parameters from the one or more outputs to satisfy the target data 152. In some embodiments, processing logic extracts a confidence level from the one or more outputs, the confidence level indicating whether a product produced using the one or more updates 154 to the manufacturing parameters satisfies the target data 152. The processing device may determine whether the confidence level satisfies a threshold confidence level. In response to the confidence level satisfying the threshold confidence level, flow may continue to one or more of blocks 514 or 516.
[0082] At block 514, processing logic displays updates to one or more manufacturing parameters via a graphical user interface (see Figure 4 412).
[0083] At block 516, processing logic implements updates to one or more manufacturing parameters of the manufacturing equipment 124 to meet the target data 152 (see Figure 4 414).
[0084] At block 518, processing logic receives tested film property data (eg, Figure 1 The tested film property data 156 may indicate actual film property data for a product produced using the updates 154 to the manufacturing parameters.
[0085] At box 520, the processing logic updates the trained machine learning model based on the tested film property data 156 and the updates 154 to the one or more manufacturing parameters. In some embodiments, in response to the tested film property data 156 being different from the target data 152 (e.g., the product produced using the updates 154 to the manufacturing parameters does not meet the target data 152), the processing logic may update the trained machine learning data using the tested film property data 156 and the updates 154 to the one or more manufacturing parameters (e.g., by storing the tested film property data 156 in the historical or experimental film property data 144 and storing the updates 154 to the manufacturing parameters in the historical or experimental manufacturing parameters 146 to update the historical or experimental data 142). The processing logic may update the trained machine learning model (e.g., retrain, revalidate, and / or retest) based on the updated historical or experimental data.
[0086] Figure 6 6 is a flow chart of a method 600 for generating a data set for a machine learning model, the data set being used to determine updates to manufacturing parameters to meet target data, according to certain embodiments. According to embodiments of the present disclosure, the prescriptive analytics system 110 may use the method 600 to at least one of train, validate, or test the machine learning model. In some embodiments, one or more operations of the method 600 may be performed by the data set generator 172 of the server machine 170, as described with respect to Figure 1 and Figure 2 It can be noted that Figure 1 and Figure 2 The components described can be used to illustrate Figure 6 aspects.
[0087] Reference Figure 6 In some embodiments, at block 602, processing logic implementing method 600 initializes a training set T as an empty set.
[0088] At block 604, processing logic generates a data set including historical or experimental manufacturing parameters (e.g. Figure 1 Historical or experimental manufacturing parameters 146, Figure 2 In some embodiments, the first data input may include a first set of features for the historical or experimental manufacturing parameters, and the second data input may include a second set of features for the historical or experimental manufacturing parameters (e.g., such as the first training input, the first validation input). Figure 2 In some embodiments, the third data input may include an update to a manufacturing parameter (e.g. Figure 1 Update of manufacturing parameters 154, Figure 3 Update of manufacturing parameters 354).
[0089] At block 606, processing logic generates a first target output for one or more data inputs (eg, a first data input). The first target output provides an indication of film property data (eg, Figure 1 Historical or experimental membrane property data 144, Figure 2 Historical or experimental membrane property data 244, Figure 1 Tested membrane properties data 156, Figure 3 Tested membrane property data 356).
[0090] At block 608, processing logic optionally generates mapping data indicating an input / output mapping. An input / output mapping (or mapping data) may refer to data inputs (e.g., one or more of the data inputs described herein), target outputs for the data inputs (e.g., where the target output identifies film property data), and associations between the data input(s) and the target outputs.
[0091] At block 610 , processing logic adds the mapping data generated at block 610 to data set T.
[0092] At block 612, processing logic branches based on whether the data set T is sufficient for at least one of training, validating, or testing the machine learning model 190. If so, execution proceeds to block 614, otherwise execution returns to block 604. It should be noted that in some embodiments, the sufficiency of the data set T may be determined simply based on the number of input / output mappings in the data set, while in other embodiments, the sufficiency of the data set T may be determined based on one or more other criteria (e.g., a measure of diversity, precision, etc. of data examples) in addition to or in lieu of the number of input / output mappings.
[0093] At block 614, processing logic provides a data set T to train, validate, or test the machine learning model 190. In some embodiments, the data set T is a training set and is provided to the training engine 182 of the server machine 180 to perform training. In some embodiments, the data set T is a validation set and is provided to the validation engine 184 of the server machine 180 to perform validation. In some embodiments, the data set T is a test set and is provided to the testing engine 184 of the server machine 180 to perform testing. In the case of a neural network, for example, the input values of a given input / output mapping (e.g., numerical values associated with the data input 210) are input to the neural network, and the output values of the input / output mapping (e.g., numerical values associated with the target output 220) 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., back propagation, etc.), and the process is repeated for other input / output mappings in the data set T. After block 614, the machine learning model (e.g., machine learning model 190) may be at least one of: trained using the training engine 182 of the server machine 180, validated using the validation engine 184 of the server machine 180, or tested using the testing engine 186 of the server machine 180. The trained machine learning model may be inverted and implemented by the prescriptive analytics component 132 (of the prescriptive analytics server 130) to determine updates to the manufacturing parameters to meet the target data.
[0094] FIG. 7A to FIG. 7B are graphs 700A-B illustrating determining updates to manufacturing parameters to meet target data, according to certain embodiments.
[0095] Fig. 7A Graph 700A of shows high collinearity between properties Y2 and Y1. Client device 120 may receive film property data from a measurement device 126 (e.g., metrology system 127) coupled to manufacturing equipment 124. Client device 120 may receive first film property data corresponding to a first property from a first portion of measurement device 126A, and receive second film property data corresponding to a second property from a second portion of measurement device 126B. In some embodiments, the first film property data and the second film property data may be different types of properties. In some embodiments, the first film property data and the second film property data are properties of the same type measured at different locations of a semiconductor wafer (e.g., one measured on a first surface and the other measured on a second surface).
[0096] The client device 120 may plot the first property data and the second property data in a graph 700A. Each point on the graph 700A may correspond to a value of a first property (Y1) and a value of a second property (Y2) measured simultaneously on the same product (e.g., a semiconductor wafer). As shown in the graph 700A, the film property data plotted for the first property and the second property may be correlated (e.g., linear, collinear, Y1 and Y2 may at least partially explain each other). The correlated film property data may substantially form a film property data line on the graph 700A. The correlated film property data may satisfy a threshold coefficient (R 2 Or Rsq) (e.g., Rsq>0.8). The related film property data can meet a threshold Spearman's rank correlation coefficient value. The Spearman's rank correlation coefficient can be a non-parametric measure of rank correlation (e.g., the statistical dependence between the ranks of the first property (Y1) and the second property (Y2)). The related film property data can meet a threshold P value. The P value can be the probability that, given a statistical model (a line fit between Y1 and Y2), when the null hypothesis is true, the statistical summary (e.g., there is no linear dependence between Y1 and Y2) will be greater than or equal to the actual observed results. In some embodiments, the target data 152 drawn for the first property (Y1) and the second property (Y2) can be substantially parallel to the film property data 150 drawn for Y1 and Y2.
[0097] The chart 700B of Fig. 7 shows orthogonal lines, which pass through the points constituting the set defined by the distance metric. As shown in the chart 700B of Fig. 7, a line orthogonal (e.g., vertical, orthogonal) to the line formed by drawing the target data 152 can intersect with a group of points of the film property data. One or more first points in this group of points can be closer to the drawing of the target data 152 than one or more second points in this group of points. One or more first points can correspond to a first manufacturing parameter, and one or more second points can correspond to a second manufacturing parameter different from the first manufacturing parameter. Feature extraction can be performed on a group of data points to determine one or more manufacturing parameters, which make the first point of a group of points closer to the target data 152 than the second point. The update 154 to one or more manufacturing parameters can be determined based on feature extraction to make a group of points meet the target data 152.
[0098] In some embodiments, selecting a set of data points orthogonal to the target data 152 and performing feature extraction on the set of data points is performed by an inverted trained machine learning model. In some embodiments, selecting a set of data points orthogonal to the target data 152 and performing feature extraction on the set of data points is performed via a prescriptive analysis (e.g., statistical model, clustering, etc.) that does not use a machine learning model.
[0099] Figure 8 800 is a block diagram showing a computer system 800 according to certain embodiments. In some embodiments, the computer system 800 can be connected to other computer systems (e.g., via a network such as a local area network (LAN), an intranet, an extranet, or the Internet). The computer system 800 can be operated with the ability of a server or client computer in a client-server environment, or operated as a peer computer in a peer-to-peer or distributed network environment. The computer system 800 can be provided by any device of a personal computer (PC), a tablet computer, a set-top box (STB), a personal digital assistant (PDA), a cellular phone, a web application, a server, a network router, a switch or a bridge, or a group of instructions that can be executed (sequentially or otherwise) to specify the action to be taken by this device. In addition, the term "computer" should include any collection of computers that execute a group (or multiple groups) of instructions individually or collectively to execute any one or more methods described herein.
[0100] In another aspect, the computer system 800 may include a processing device 802, a volatile memory 804 (e.g., a random access memory (RAM)), a non-volatile memory 806 (e.g., a read-only memory (ROM) or an electronically erasable programmable ROM (EEPROM), and a data storage device 816, which may communicate with each other via a bus 808.
[0101] The processing device 802 may be provided by one or more processors, such as a general-purpose processor (such as, for example, a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a microprocessor that implements other types of instruction sets, or a microprocessor that implements a combination of multiple types of instruction sets) or a special-purpose processor (such as, for example, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), or a network processor)).
[0102] The computer system 800 may further include a network interface device 822. The computer system 800 may also include a video display unit 810 (eg, LCD), an alphanumeric input device 812 (eg, keyboard), a cursor control device 814 (eg, mouse), and a signal generating device 820.
[0103] In some embodiments, the data storage device 816 may include a non-transitory computer-readable storage medium 824 on which instructions 826 encoding any one or more of the methods or functions described herein may be stored, including instructions for Figure 1 The manufacturing parameter modification component 122 or the normative analysis component 132 is encoded and used to implement instructions of the methods described herein.
[0104] The instructions 826 may also reside, in whole or in part, within the volatile memory 804 and / or within the processing device 802 during execution of the instructions by the computer system 800 , and thus, the volatile memory 804 and the processing device 802 may also constitute machine-readable storage media.
[0105] Although the computer-readable medium 824 is shown as a single medium in the illustrative example, the term "computer-readable storage medium" shall include a single medium or multiple media (such as a centralized or decentralized database, and / or associated caches and servers) that store one or more executable instruction sets. The term "computer-readable storage medium" shall also include any tangible medium capable of storing or encoding an instruction set to be executed by a computer and cause the computer to perform any one or more of the methods described herein. The term "computer-readable storage medium" shall include, but is not limited to, solid-state memories, optical media, and magnetic media.
[0106] The methods, components, and features described herein may be implemented by separate hardware components, or may be integrated into the functionality of other hardware components (such as ASICs, FPGAs, DSPs, or similar devices). In addition, the methods, components, and features may be implemented by firmware modules or functional circuit systems within hardware devices. Furthermore, the methods, components, and features may be implemented in any combination of hardware devices and computer program components or in a computer program.
[0107] Unless expressly stated otherwise, terms such as "receiving", "determining", "selecting", "executing", "training", "generating", "providing", "inverting", "obtaining", "implementing", "displaying", "optimizing", "non-linear optimization", etc., refer to actions and processes performed or implemented by a computer system that manipulates and transforms data represented as physical (electronic) quantities within computer system registers and memories into other data similarly represented as physical quantities within computer system memories or temporary storage or other such information storage, transmission or display devices. In addition, the terms "first", "second", "third", "fourth", etc., as used herein, are intended to be labels used to distinguish different elements, and may not have ordinal meanings according to their numerical names.
[0108] The examples described herein also relate to an apparatus for performing the methods described herein. This apparatus may be specially constructed for performing the methods described herein, or it may include 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.
[0109] The methods and illustrative examples described herein are not inherently related to any particular computer or other device. Various general purpose systems may be used in accordance with the teachings described herein, or it may prove convenient to construct more specialized equipment to perform each of the methods described herein and / or their respective functions, routines, subroutines, or operations. Examples of the structures of various such systems are set forth in the description above.
[0110] The above description is intended to be illustrative rather than restrictive. Although the present disclosure has been described with reference to specific illustrative examples and implementations, it will be appreciated that the present disclosure is not limited to the described examples and implementations. The scope of the present disclosure should be determined with reference to the appended claims, as well as the full equivalent scope of these claims.
Claims
1. A method for manufacturing a device, comprising: receiving film property data associated with manufacturing parameters of a manufacturing device; determining that the film property data is correlated and different from target data, wherein the film property data is correlated between two or more variables; selecting, by a processing device, a set of data points of the film property data that are orthogonal to the target data; performing feature extraction on the set of data points by the processing device; as well as Based on the feature extraction, an update to one or more of the manufacturing parameters is determined to satisfy the target data. 2 . The method of claim 1 , wherein the manufacturing parameters include one or more of hardware parameters or process parameters.
3. The method of claim 1 , wherein determining that the film property data is related and different from the target data comprises: It is determined that the film property data is substantially parallel to the target data.
4. The method of claim 1, wherein said performing of said feature extraction is via one or more of: principal component analysis (PCA), clustering, factor analysis (FA), discriminant analysis, or a correlation matrix.
5. The method of claim 1, further comprising: training a machine learning model to generate a trained machine learning model for use in said determination of said update to said one or more of said manufacturing parameters, wherein said training comprises: Generating training data for the machine learning model, wherein the generating of the training data comprises: generating a first training input, the first training input comprising historical manufacturing parameters of the manufacturing equipment; and generating a first target output for the first training input, wherein the first target output comprises historical film property data; and The training data is provided to train the machine learning model on (i) a set of training inputs including the first training inputs and (ii) a set of target outputs including the first target outputs.
6. The method of claim 5, further comprising: providing the target data to the trained machine learning model, wherein the selecting of the set of data points and the performing of the feature extraction are performed via the trained machine learning model; as well as An inverse solution comprising one or more outputs is obtained from the trained machine learning model, wherein the determination of the update comprises extracting the update to the one or more of the manufacturing parameters from the one or more outputs.
7. The method of claim 1, further comprising: The updating of the one or more of the manufacturing parameters of the manufacturing equipment is performed to meet the target data.
8. The method of claim 1, further comprising: The updates to the one or more of the manufacturing parameters are displayed via a graphical user interface.
9. A system for manufacturing a device, comprising: Memory; as well as a processing device coupled to the memory to: receiving film property data associated with manufacturing parameters of a manufacturing device; determining that the film property data is correlated and different from target data, wherein the film property data is correlated between two or more variables; selecting a set of data points of the film property data that are orthogonal to the target data; performing feature extraction on the set of data points; as well as Based on the feature extraction, an update to one or more of the manufacturing parameters is determined to satisfy the target data.
10. The system of claim 9, wherein to determine that the film property data is related and different from the target data, the processing device determines that the film property data is substantially parallel to the target data.
11. The system of claim 9, wherein: The manufacturing parameters include one or more of hardware parameters or process parameters; and The processing device performs the feature extraction via one or more of the following: principal component analysis (PCA), clustering, factor analysis (FA), discriminant analysis, or correlation matrix.
12. The system of claim 9, wherein the processing device further trains a machine learning model to generate a trained machine learning model for determining the update to the one or more of the manufacturing parameters, wherein to train the machine learning model, the processing device: Generating training data for the machine learning model, wherein the generating of the training data comprises: generating a first training input, the first training input comprising historical manufacturing parameters of the manufacturing equipment; as well as generating a first target output for the first training input, wherein the first target output comprises historical film property data; as well as The training data is provided to train the machine learning model on (i) a set of training inputs including the first training inputs and (ii) a set of target outputs including the first target outputs.
13. The system of claim 12, wherein the processing device is further configured to: providing the target data to the trained machine learning model, wherein the processing device selects the set of data points and performs the feature extraction via the trained machine learning model; and An inverse solution comprising one or more outputs is obtained from the trained machine learning model, wherein to determine the update, the processing device extracts the update to the one or more of the manufacturing parameters from the one or more outputs.
14. The system of claim 9, wherein the processing device is further configured to: implementing the updating of the one or more of the manufacturing parameters of the manufacturing equipment to satisfy the target data; or The updates to the one or more of the manufacturing parameters are displayed via a graphical user interface.
15. A non-transitory computer readable medium having instructions stored thereon that, when executed by a processing device, cause the processing device to: receiving film property data associated with manufacturing parameters of a manufacturing device; determining that the film property data is correlated and different from target data, wherein the film property data is correlated between two or more variables; selecting a set of data points of the film property data that are orthogonal to the target data; performing feature extraction on the set of data points; as well as Based on the feature extraction, an update to one or more of the manufacturing parameters is determined to satisfy the target data.
16. The non-transitory computer readable medium of claim 15, wherein to determine that the film property data is related and different from the target data, the processing device determines that the film property data is substantially parallel to the target data.
17. The non-transitory computer readable medium of claim 15, wherein: The manufacturing parameters include one or more of hardware parameters or process parameters; and The processing device performs the feature extraction via one or more of the following: principal component analysis (PCA), clustering, factor analysis (FA), discriminant analysis, or correlation matrix.
18. The non-transitory computer readable medium of claim 15, wherein the processing device further trains a machine learning model to generate a trained machine learning model for determining the update to the one or more of the manufacturing parameters, wherein to train the machine learning model, the processing device: Generating training data for the machine learning model, wherein the generating of the training data comprises: generating a first training input, the first training input comprising historical manufacturing parameters of the manufacturing equipment; as well as generating a first target output for the first training input, wherein the first target output comprises historical film property data; as well as The training data is provided to train the machine learning model on (i) a set of training inputs including the first training inputs and (ii) a set of target outputs including the first target outputs.
19. The non-transitory computer readable medium of claim 18, wherein the processing device further: providing the target data to the trained machine learning model, wherein the processing device selects the set of data points and performs the feature extraction via the trained machine learning model; and An inverse solution comprising one or more outputs is obtained from the trained machine learning model, wherein to determine the update, the processing device extracts the update to the one or more of the manufacturing parameters from the one or more outputs.
20. The non-transitory computer readable medium of claim 15, wherein the processing device further performs one or more of the following: implementing said updating of said one or more manufacturing parameters of said manufacturing equipment to satisfy said target data; or The updates to the one or more of the manufacturing parameters are displayed via a graphical user interface.
Citation Information
Patent Citations
Method for predicting machining quality of machine tool
CN104657526A
Device and method used for chemical vapor deposition process
CN107574427A
Process control techniques for semiconductor manufacturing processes
US20170109646A1