Computer program, information processing method, and information processing device
The information processing apparatus addresses fluctuations in substrate processing by generating monitoring and correction models, improving film thickness prediction and processing consistency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-22
- Publication Date
- 2026-04-02
AI Technical Summary
Existing substrate processing apparatuses face challenges in accurately predicting film thickness and maintaining consistent processing quality due to fluctuations over time, lacking effective models for monitoring and correcting these variations.
An information processing apparatus and method that generates a monitoring model to estimate quality values and a correction model to adjust settings, using substrate processing data to predict and correct fluctuations, enhancing the control of substrate processing devices.
Improves the accuracy of film thickness prediction and maintains consistent substrate processing quality by providing real-time monitoring and correction capabilities, reducing abnormalities and ensuring desired processing outcomes.
Smart Images

Figure JP2025033334_02042026_PF_FP_ABST
Abstract
Description
Computer Program, Information Processing Method, and Information Processing Apparatus
[0001] The present disclosure relates to a computer program, an information processing method, and an information processing apparatus.
[0002] In Patent Document 1, based on a film thickness model representing the relationship between the state of a substrate processing apparatus and the film thickness of a coating film formed on the surface of a substrate by the substrate processing apparatus, and prior data indicating the state of the substrate processing apparatus before processing the substrate by the substrate processing apparatus, an information processing apparatus that calculates a predicted film thickness when the substrate is processed by the substrate processing apparatus and outputs instruction information regarding the processing of the substrate before the substrate is processed by the substrate processing apparatus based on the predicted film thickness has been proposed.
[0003] Japanese Patent Application Laid-Open No. 2024-119935
[0004] The present disclosure provides a computer program, an information processing method, and an information processing apparatus that can be expected to assist a user's operation related to the control of a substrate processing apparatus.
[0005] A computer program according to an embodiment causes a computer to execute a process of acquiring substrate processing data including a plurality of pieces of information related to substrate processing, estimating the relationship between the plurality of pieces of information based on the acquired substrate processing data, outputting the estimated relationship, receiving a selection of one or more pieces of information from the plurality of pieces of information based on the output relationship, and generating a correction model for correcting fluctuations in the received information.
[0006] According to the present disclosure, it can be expected to assist a user's operation related to the control of a substrate processing apparatus.
[0007] This is a schematic diagram illustrating the overview of the information processing system according to this embodiment. This is a schematic diagram showing an example of an overview model. This is a schematic diagram showing an example of a monitoring model. This is a schematic diagram showing an example of a correction model. This is a block diagram showing an example of the configuration of the information processing device according to this embodiment. This is a flowchart showing an example of the procedure for model generation support processing performed by the information processing device according to this embodiment. This is a schematic diagram showing an example of the configuration of the model generation screen. This is a schematic diagram showing an example of board processing data. This is a schematic diagram showing an example of the display of an overview model. This is a schematic diagram showing an example of the display of simulation results.
[0008] Specific examples of information processing systems according to the embodiments of this disclosure will be described below with reference to the drawings. However, this disclosure is not limited to these examples and is intended to include all changes within the meaning and scope of the claims as indicated by the claims.
[0009] <System Overview> Figure 1 is a schematic diagram illustrating the overview of the information processing system according to this embodiment. The information processing system according to this embodiment is configured to include an information processing device 1 and a substrate processing device 3, etc. The substrate processing device 3 is a device that performs various substrate processing on semiconductor substrates (wafers), such as CVD (Chemical Vapor Deposition), sputtering, or etching. The information processing device 1 is a device that monitors and controls the operation of the substrate processing device 3. The information processing device 1 causes the substrate processing device 3 to perform the desired substrate processing based on setting information (so-called recipes) related to substrate processing that have been prepared in advance by the user. The information processing device 1 and the substrate processing device 3 may be an integrated device or separate devices. If they are separate devices, the information processing device 1 and the substrate processing device 3 can exchange information, for example, by wired or wireless communication.
[0010] The substrate processing apparatus 3 according to this embodiment stores one or more models generated by the information processing apparatus 1 in a storage unit in advance, and uses the stored models for substrate processing. The models stored by the substrate processing apparatus 3 can be various models, such as physical models expressed by predetermined calculation formulas or machine learning models such as neural networks. These models are pre-generated by the information processing apparatus 1 based on substrate processing data obtained by performing substrate processing in the substrate processing apparatus 3 (data such as setting values input to the substrate processing apparatus 3, sensor measurement values, and information on the quality of the processed substrate). In this embodiment, for example, a monitoring model that estimates physical quantities related to substrate processing based on information measured by the sensors of the substrate processing apparatus 3, and a correction model that corrects the setting values of the substrate processing based on the physical quantities estimated by the monitoring model are pre-generated and provided from the information processing apparatus 1 to the substrate processing apparatus 3.
[0011] The information processing device 1 is a device that performs processing such as controlling the board processing performed by the board processing device 3, generating models used by the board processing device 3 for board processing, and exchanging information with the user. The information processing device 1 can be configured by installing the computer program according to this embodiment on a general-purpose computer such as a personal computer or a server computer. In this embodiment, the information processing device 1 acquires board processing data, which includes various information obtained by performing board processing, from the board processing device 3, and provides the board processing device 3 with a monitoring model and a correction model generated using this board processing data.
[0012] In this embodiment, the generation of the monitoring model and the correction model is performed by the information processing device based on user operations such as inputting or selecting information. The information processing device 1 displays, for example, the substrate processing data acquired from the substrate processing device 3, and accepts from the user the selection of information to be used to generate the model from among the multiple pieces of information contained in the displayed substrate processing data. Based on the selected information, the information processing device 1 generates an overview model showing the correspondence between the multiple pieces of information selected, and displays a graph of the generated overview model. This allows the user to understand the correspondence between the multiple pieces of information contained in the substrate processing data obtained from the substrate processing device 3 and perform the task of generating the monitoring model and the correction model.
[0013] Figure 2 is a schematic diagram showing an example of an overview model. The overview model 101 shown in this figure represents the correspondence between four set values r1 to r4 input to the substrate processing apparatus 3, five sensor measurement values s1 to s5 from sensors provided in the substrate processing apparatus 3, two quality values q1 and q2 obtained by measuring the quality of the processed substrate using appropriate measuring instruments, and the time t that has elapsed during the substrate processing, as a directed acyclic graph. This model may also be called a structural model or structural equivalence model. In the illustrated directed acyclic graph, the values obtained regarding the substrate processing are shown as octagonal shapes, and the dependency relationships between the values are shown by arrows. According to this overview model 101, the sensor measurement value s1 is determined based on the set value r1, the sensor measurement value s2 is determined based on the set values r1, r2, and r3, the sensor measurement value s3 is determined based on the set value r3, the sensor measurement value s4 is determined based on the set values r3 and r4, and the sensor measurement value s5 is determined based on the set values r1 and r4. Furthermore, the quality value q1 is determined based on the sensor measurement values s2 and s4, and the quality value q2 is determined based on the sensor measurement values s4 and s5. Note that each sensor measurement value s1 to s5 is affected by changes over time, such as those corresponding to the time t during which the substrate processing was performed by the substrate processing apparatus 3.
[0014] In this embodiment, the user can select information to be used to generate the monitoring model and correction model based on the graph of the overview model 101 displayed by the information processing device 1, and give instructions to the information processing device 1 to generate the monitoring model and correction model. Figure 3 is a schematic diagram showing an example of a monitoring model. The monitoring model 102 shown in this figure is a model that accepts N (N is a natural number) sensor measurement values 1 to N as input and outputs an estimated value of the value of the monitored object. The estimated value output by the monitoring model 102 is affected by changes over time corresponding to the time t during which the substrate processing was performed by the substrate processing device 3. In the case of the overview model 101 shown in Figure 2, for example, a monitoring model 102 can be generated that accepts sensor measurement values s2 and s4 as input and outputs a quality value q1 corresponding to the elapsed time t. For example, by the user selecting the quality value q1 in the overview model 101 and instructing the generation of the monitoring model 102, the information processing device 1 generates a monitoring model 102 that estimates the quality value q1 according to time t based on the sensor measurement values s2 and s4.
[0015] Furthermore, the monitoring model 102 may be a model that accepts, for example, N setting values as input and outputs estimated values of sensor measurements. Moreover, although the monitoring model 102 does not include the part corresponding to the overview model 101 shown in Figure 2, it may be a model that accepts, for example, N sensor measurements as input and outputs estimated values of sensor measurements using sensors other than these. In other words, the monitoring model 102 is a model that estimates values other than the setting values included in the overview model 101 based on the values in the preceding stage.
[0016] Figure 4 is a schematic diagram showing an example of a correction model. The correction model 103 shown in this figure is a model that estimates a correction amount to correct for the effects of changes over time that occur in the characteristics of substrate processing by the substrate processing apparatus 3. The correction model 103 takes as input, for example, the set value and sensor measurement value of the substrate processing at a first time point before the changes over time occur, and the set value and sensor measurement value of the substrate processing at a second time point after the changes over time occur, and outputs a correction amount for the set value to correct for the effects of these changes over time. The correction model 103 mainly takes a correction amount corresponding to the time t that has elapsed between the first and second time points. In the case of the overview model 101 shown in Figure 2, for example, a correction model 103 can be generated that takes as input the set value r1 and sensor measurement value s5 at the first time point, and the set value r1 and sensor measurement value s5 at the second time point, and outputs a correction amount for the set value r1. In this case, the set value r4 is assumed not to affect the changes over time of the sensor measurement value s5. Alternatively, the correction model 103 may be configured to accept multiple setpoints and sensor measurement values as input and output correction amounts for multiple setpoints. For example, when a user selects a sensor measurement value s5 and a setpoint r1 and instructs the information processing device 1 to generate the correction model 103, the information processing device 1 generates a correction model 103 that outputs a correction amount for the setpoint r1 that corrects for the effect of changes over time in the sensor measurement value s5.
[0017] The information processing device 1 generates a monitoring model 102 and a correction model 103 using pre-collected substrate processing data based on user selections and other operations. The information processing device 1 can perform simulations of substrate processing using these generated monitoring models 102 and correction models 103. For example, the information processing device 1 simulates the change in quality values over time, both with and without correction of the set value for changes over time using the correction model 103, and displays the changes in quality values with and without correction as simulation results. Based on these simulation results, the user can generate monitoring models 102 and correction models 103 that can obtain the desired substrate processing results by repeating operations such as generating further monitoring models 102 and correction models 103.
[0018] The information processing device 1 provides the generated monitoring model 102 and correction model 103 to the substrate processing device 3, and the substrate processing device 3 stores the provided monitoring model 102 and correction model 103 in its memory unit and uses these models for subsequent substrate processing. For example, the substrate processing device 3 corrects a set value according to the correction amount output by the correction model 103 for the time it has performed substrate processing. Also, for example, if the difference between the sensor measurement value measured by the sensor of the substrate processing device 3 and the sensor measurement value estimated by the monitoring model 102 exceeds a predetermined threshold, the substrate processing device 3 can determine that there is an abnormality and notify the information processing device 1.
[0019] <Device Configuration> Figure 5 is a block diagram showing an example configuration of the information processing device 1 according to this embodiment. The information processing device 1 according to this embodiment can be realized by installing a predetermined application program on a general-purpose information processing device such as a personal computer or a server computer. The information processing device 1 according to this embodiment is configured to include a processing unit 11, a storage unit 12, a communication unit 13, a display unit 14, and an operation unit 15, etc.
[0020] The processing unit 11 is composed of a computing device such as a CPU (Central Processing Unit), MPU (Micro-Processing Unit), GPU (Graphics Processing Unit), or quantum processor, as well as ROM (Read Only Memory) and RAM (Random Access Memory). The processing unit 11 reads and executes the program 12a stored in the storage unit 12, thereby performing various processes such as exchanging information with the user and generating models such as the overview model 101, monitoring model 102, and correction model 103 mentioned above.
[0021] The storage unit 12 is configured using a large-capacity storage device such as a hard disk or an SSD (Solid State Drive). The storage unit 12 stores various programs executed by the processing unit 11, and various data necessary for the processing of the processing unit 11. In this embodiment, the storage unit 12 stores the program 12a executed by the processing unit 11. The storage unit 12 is also provided with a substrate processing data storage unit 12b for storing substrate processing data acquired from the substrate processing device 3, and a model information storage unit 12c for storing information related to the models such as the overview model 101, monitoring model 102, and correction model 103 mentioned above.
[0022] In this embodiment, the program (computer program, program product) 12a is provided in a form recorded on a recording medium 99 such as a memory card or optical disc, and the information processing device 1 reads the program 12a from the recording medium 99 and stores it in the storage unit 12. However, the program 12a may also be written to the storage unit 12 during the manufacturing stage of the information processing device 1, for example. Alternatively, the program 12a may be distributed by a remote server device or the like and acquired by the information processing device 1 via communication. For example, the program 12a may be read from the recording medium 99 by a writing device and written to the storage unit 12 of the information processing device 1. The program 12a may be provided by distribution via a network, or it may be provided in a form recorded on the recording medium 99.
[0023] The substrate processing data storage unit 12b stores the substrate processing data acquired by the information processing device 1 from the substrate processing device 3, along with information such as the date and time of data acquisition, identification information of the substrate processing device 3, and identification information of the substrate that underwent substrate processing. The substrate processing data acquired from the substrate processing device 3 may include information such as the set value for substrate processing, the measured value of a sensor provided on the substrate processing device 3, and quality values obtained by measuring the quality of the substrate that underwent substrate processing. The quality values related to the quality of the substrate may be measured by a measuring device other than the substrate processing device 3. In this case, the information processing device 1 acquires the quality values from the measuring device that measured the quality values, rather than from the substrate processing device 3, and stores them in the substrate processing data storage unit 12b as substrate processing data along with the set value and sensor measured value information acquired from the substrate processing device 3.
[0024] The model information storage unit 12c stores information about various models, including the overview model 101, monitoring model 102, and correction model 103 generated by the information processing device 1. The model information may include, for example, information indicating the configuration of the model and information such as the values of determined internal parameters. The overview model 101 according to this embodiment is a directed acyclic graph model that shows the correspondence between set values, sensor measurement values, and quality values. The model information storage unit 12c stores information such as the nodes and edges that constitute this graph as model information. The monitoring model 102 and correction model 103 according to this embodiment are models of physical calculation formulas or neural network configurations, etc., whose internal parameters are determined to reproduce the input / output correspondence shown in Figures 3 and 4 based on previously collected board processing data. The model information storage unit 12c stores the configuration and internal parameters of these models as model information.
[0025] The communication unit 13 is connected to the substrate processing device 3 via a wired or wireless network N and exchanges data with the substrate processing device 3. In this embodiment, the communication unit 13 transmits control commands, various data, and monitoring models 102 and correction models 103 used for substrate processing to the substrate processing device 3, which are provided by the processing unit 11. The communication unit 13 also receives substrate processing data, such as sensor measurement values, transmitted from the substrate processing device 3 and provides it to the processing unit 11.
[0026] The display unit 14 is configured using a liquid crystal display or the like, and displays various images and characters based on the processing of the processing unit 11. The display unit 14 displays various information such as the progress of substrate processing by the substrate processing device 3, whether or not there are any abnormalities, or substrate processing data acquired from the substrate processing device 3. In this embodiment, the display unit 14 also displays various screens for generating an overview model 101, a monitoring model 102, a correction model 103, etc.
[0027] The operation unit 15 receives user input and notifies the processing unit 11 of the received input. For example, the operation unit 15 receives user input via a mechanical button or an input device such as a touch panel provided on the surface of the display unit 14. Alternatively, the operation unit 15 may be an input device such as a mouse and a keyboard, and these input devices may be configured to be detachable from the information processing device 1.
[0028] The memory unit 12 may be an external storage device connected to the information processing device 1. The information processing device 1 may be a multicomputer comprising multiple computers, or it may be a virtual machine virtually constructed by software. Furthermore, the information processing device 1 is not limited to the above configuration, and may not include, for example, a display unit 14 and an operation unit 15.
[0029] Furthermore, in the information processing device 1 according to this embodiment, the processing unit 11 reads and executes the program 12a stored in the storage unit 12, thereby realizing the overview model generation unit 11a, information selection reception unit 11b, monitoring model generation unit 11c, correction model generation unit 11d, simulation processing unit 11e, and display processing unit 11f, etc., as software-based functional units in the processing unit 11. In this figure, the functional units of the processing unit 11 that perform processing related to the generation of models used by the substrate processing device 3 for substrate processing are shown, and functional units related to other processing are omitted from the illustration.
[0030] The overview model generation unit 11a generates an overview model 101 based on the substrate processing data stored in the substrate processing data storage unit 12b, which reproduces the causal relationships of the values obtained in the substrate processing performed by the substrate processing device 3 using a structural model such as a directed acyclic graph. For example, the overview model generation unit 11a accepts from the user the selection of substrate processing data to be used to generate the overview model 101 from the substrate processing data stored in the substrate processing data storage unit 12b, and accepts from the user the selection of information to be used to generate the overview model 101 from among multiple pieces of information contained in the selected substrate processing data. The overview model generation unit 11a may also perform preprocessing such as removing missing values contained in the multiple pieces of information selected. The overview model generation unit 11a generates the overview model 101 by performing processing to estimate the causal relationships of the multiple pieces of information selected. The causal relationship estimation process performed by the overview model generation unit 11a is carried out using existing causal search methods such as LiNGAM (Linear Non-Gaussian Acyclic Model), so a detailed explanation will be omitted.
[0031] The information selection receiving unit 11b accepts from the user the selection of information to be used by the monitoring model 102 and the correction model 103, based on the overview model 101 generated by the overview model generation unit 11a. For example, the information selection receiving unit 11b displays the overview model 101 generated by the overview model generation unit 11a as a directed acyclic graph on the display unit 14 and accepts the selection of target information from the displayed graph. For example, the information selection receiving unit 11b accepts the selection of one sensor measurement value to be monitored by the monitoring model 102. The information selection receiving unit 11b also accepts the selection of, for example, a sensor measurement value that may fluctuate due to changes over time and an input setting value to be corrected in order to suppress this fluctuation, as targets for the correction model 103.
[0032] The monitoring model generation unit 11c performs the process of generating a monitoring model 102 that monitors (estimates) the information selected by the information selection reception unit 11b. Based on the overview model 101, the monitoring model generation unit 11c identifies input information for the information selected as a target, accepts one or more of the identified input pieces of information as input, and generates a monitoring model 102 that outputs the selected target information. The monitoring model generation unit 11c reads information of board processing data corresponding to the input and output of the monitoring model 102 to be generated from the board processing data storage unit 12b, and generates the monitoring model 102 through a learning process using the read input and output information. The learning process for generating the monitoring model 102 by the monitoring model generation unit 11c can be performed using existing machine learning methods such as the steepest descent method or backpropagation method in the case of models such as linear regression or neural networks. Any existing method may be used for the learning process by the monitoring model generation unit 11c.
[0033] The correction model generation unit 11d performs the process of generating a correction model 103 that estimates the amount of correction for input information to correct for fluctuations in the information selected by the information selection receiving unit 11b. The correction model generation unit 11d is a model that estimates the amount of correction for the setting value to suppress fluctuations in the sensor value, by receiving the setting value and sensor measurement value at a first time point and the setting value and sensor measurement value at a second time point as input, as shown in Figure 4, for example. The correction model generation unit 11d obtains the setting value and sensor measurement value included in the board processing data at a certain time point (first time point) and the setting value and sensor measurement value included in the board processing data at a later time point (second time point) from the board processing data stored in the board processing data storage unit 12b. The correction model generation unit 11d calculates the amount of fluctuation in the setting value to suppress the fluctuations in the sensor measurement value that occurred between the first time point and the second time point, that is, the amount of fluctuation in the setting value between the first time point and the second time point. The correction model generation unit 11d generates a correction model 103 by learning a correction amount for a set value to reduce fluctuations in sensor measurements to zero, based on the acquired and calculated information. The learning process for generating the correction model 103 can employ any method, similar to the learning process for generating the monitoring model 102.
[0034] The simulation processing unit 11e performs a simulation using the overview model 101 generated by the overview model generation unit 11a, the monitoring model 102 generated by the monitoring model generation unit 11c, and the correction model 103 generated by the correction model generation unit 11d. The simulation processing unit 11e receives a selection of a value to be simulated from among multiple values included in the overview model 101 from the user, simulates how the target value changes over time using the monitoring model 102, and simulates how the change in the target value can be suppressed by correcting the set value using the correction model 103. There may be multiple values to be simulated, and there may be multiple monitoring models 102 and correction models 103 used in the simulation.
[0035] The display processing unit 11f performs the processing of displaying various characters and images on the display unit 14. In this embodiment, the display processing unit 11f displays, for example, a graph of the overview model 101 generated by the overview model 101. The display processing unit 11f also displays a screen for the user to perform tasks such as selecting information for generating the monitoring model 102 and the correction model 103. The display processing unit 11f also displays the simulation results from the simulation processing unit 11e. The display processing unit 11f may also display various other information on the display unit 14.
[0036] <Model Generation Support Processing> The information processing device 1 according to this embodiment supports the user's work when the substrate processing device 3 generates a monitoring model 102 and a correction model 103 used for substrate processing. Figure 6 is a flowchart showing an example of the procedure for the model generation support processing performed by the information processing device 1 according to this embodiment. In the information processing device 1 according to this embodiment, for example, after the program 12a is started, the display processing unit 11f of the processing unit 11 displays the model generation screen on the display unit 14 (step S1).
[0037] Figure 7 is a schematic diagram showing an example configuration of a model generation screen. The illustrated model generation screen has a title bar at the top displaying the title string "Model Generation Screen," a menu bar below this title bar displaying multiple menu items, and an information display area below this menu bar that displays various information such as tables or graphs. The menu bar has multiple menu items such as "Data Load," "Preprocessing," "Feature Selection," "Causal Relationship," "Model Generation," and "Simulation," arranged horizontally from left to right in that order. The user can generate a model by, for example, selecting menu items in order from left to right and performing the appropriate operations.
[0038] The "Data Load" option on the model generation screen is a menu item for loading board processing data stored in the board processing data storage unit 12b. "Preprocessing" is a menu item for performing various preprocessing steps on the loaded board processing data. "Feature Selection" is a menu item for selecting information to be used in generating the overview model 101 from among multiple pieces of information (features) contained in the loaded board processing data. "Causal Relationship" is a menu item for generating and displaying the overview model 101 using the selected information. "Model Generation" is a menu item for generating the monitoring model 102 and correction model 103 based on the displayed overview model 101. "Simulation" is a menu item for performing a simulation using the generated overview model 101, monitoring model 102, and correction model 103. Details of each of these menu items will be described later.
[0039] Next, the processing unit 11 retrieves the board processing data to be used for model generation from the board processing data stored in the board processing data storage unit 12b (step S2). At this time, the processing unit 11 displays a list of selectable board processing data files, etc., in response to the user's selection operation for the "Data Load" menu item on the model generation screen, and accepts the selection of one or more board processing data from the displayed list. The processing unit 11 retrieves the board processing data to be used for model generation by reading the file selected by the user from the board processing data storage unit 12b.
[0040] Figure 8 is a schematic diagram showing an example of substrate processing data. In this embodiment, the substrate processing data handled by the information processing device 1 is so-called table format data, and is stored in the substrate processing data storage unit 12b of the information processing device 1 as a file in the format of CSV (Comma Separated Values) or TSV (Tab Separated Values), for example. The illustrated substrate processing data is an example corresponding to the overview model 101 shown in Figure 2, and numerical values corresponding to data items such as "ID", "Date and Time", "Setting Values r1 to r4", "Measurement Values s1 to s5", and "Quality Values q1, q2" are defined across multiple lines. "ID" is, for example, identification information attached to the substrate that was subjected to substrate processing. "Date and Time" is information such as the date and time when the measurement values or quality values included in the substrate processing data were measured, or the date and time when the information processing device 1 acquired the substrate processing data. "Setting Values r1 to r4" are setting values determined based on a recipe created by the user for substrate processing. "Measured values s1 to s5" are values measured by the sensors in the substrate processing apparatus 3 during substrate processing. "Quality values q1 and q2" are values that measure the quality of the processed substrate using the substrate processing apparatus 3 or other measurement methods. Note that the numerical values corresponding to each data item shown in Figure 8 are examples only and are not limited to these.
[0041] Next, the processing unit 11 performs preprocessing on the substrate processing data acquired in step S2 (step S3). Note that the preprocessing in step S3 is not mandatory and can be performed as needed. Preprocessing of the substrate processing data is performed by the user selecting the "Preprocessing" menu item on the model generation screen. For example, the processing unit 11 displays the substrate processing data acquired in step S2 in a tabular format in the information display area of the model generation screen and accepts the selection of data to be preprocessed and input of conditions for the preprocessing to be performed on this data. The processing unit 11 performs preprocessing on the selected data based on the input conditions. Various preprocessing methods may be employed, such as deletion or interpolation of missing values, deletion of outliers or abnormal values, scaling such as normalization or standardization, or dimensionality reduction of features.
[0042] Next, the top - down model generation unit 11a of the processing unit 11 accepts the selection of feature quantities used for generating the top - down model 101 based on the substrate processing data after the pre - processing in step S3 (step S4). For example, when the menu item of "feature quantity selection" on the model generation screen is selected by the user, the top - down model generation unit 11a accepts the selection of one or more data items used for generating the top - down model 101 from among a plurality of data items provided at the top of the table of the substrate processing data displayed in the information display area of the model generation screen, thereby accepting the selection of feature quantities.
[0043] Also, in the present embodiment, the top - down model generation unit 11a can perform clustering processing on a plurality of feature quantities included in the substrate processing data, and divide the plurality of feature quantities into groups (clusters) with strong collinearity and display them. For clustering, various existing algorithms such as the group average method, Ward's method, single - linkage method, or k - means method can be adopted. By the information processing device 1 dividing and displaying the plurality of feature quantities included in the substrate processing data into clusters, for example, the user can select the feature quantities used for generating the top - down model 101 in consideration of which of the plurality of feature quantities are similar.
[0044] Next, the top - down model generation unit 11a generates the top - down model 101 based on the feature quantities of the substrate processing data selected in step S4 (step S5). The top - down model 101 starts the generation process of the top - down model 101 when the menu item of "causal relationship" on the model generation screen is selected by the user after the selection of feature quantities in step S4. At this time, the top - down model generation unit 11a searches for the causal relationship between the selected plurality of feature quantities using an existing causal search method, and generates the top - down model 101 representing the causal relationship of the feature quantities as a directed acyclic graph.
[0045] Next, the overview model generation unit 11a displays the overview model 101 generated in step S5 in the information display area of the model generation screen (step S6). Figure 9 is a schematic diagram showing one example of the overview model 101 display. In this example, all feature quantities included in the substrate processing data shown in Figure 8 are selected to generate the overview model 101, and the overview model 101 is displayed as a directed acyclic graph in the information display area of the model generation screen.
[0046] Next, the information selection receiving unit 11b of the processing unit 11 accepts the selection of feature quantities to be generated for the monitoring model 102 or the correction model 103 based on the overview model 101 displayed in step S6 (step S7). At this time, the information selection receiving unit 11b accepts the selection of target feature quantities in response to an operation to select, for example, an octagonal shape included in the directed acyclic graph displayed as the overview model 101. The information selection receiving unit 11b accepts the selection of one value other than the input setting value as the feature quantity to be generated for the monitoring model 102. In the case of the overview model 101 shown in Figure 9, sensor measurement values s1 to s5 or quality values q1 and q2 can be selected as the feature quantities to be monitored by the monitoring model 102.
[0047] Furthermore, the information selection receiving unit 11b accepts one feature quantity from outside the input setting values as the feature quantity to be generated for the correction model 103, to suppress fluctuations due to changes over time, and also accepts one feature quantity on the input side that has a dependency on this feature quantity as the target of correction. In the overview model 101 shown in Figure 9, for example, if the sensor measurement value s2 is selected as the target of fluctuation suppression, then one of the setting values r1 to r3 connected to the input side of the sensor measurement value s2 may be selected as the target of correction. In the case of the overview model 101 shown in Figure 9, setting values r1 to r4, whose values can be changed, may be selected as the feature quantities to be corrected, and sensor measurement values s1 to s5, which depend on the setting values r1 to r4, may be selected as the target of fluctuation suppression.
[0048] After the feature amount is selected in step S7, when the menu item of "model generation" on the model generation screen is selected by the user, the monitoring model generation unit 11c or the correction model generation unit 11d of the processing unit 11 generates the monitoring model 102 or the correction model 103 (step S8). For example, when one feature amount is selected in the bird's-eye view model 101, the monitoring model generation unit 11c generates a monitoring model 102 that monitors (estimates) this feature amount. Also, for example, when two feature amounts (the feature amount to be fluctuation-suppressed and the feature amount to be corrected) are selected in the bird's-eye view model 101, the correction model generation unit 11d generates a correction model 103 that estimates the correction amount of the feature amount to be corrected. The monitoring model generation unit 11c or the correction model generation unit 11d extracts information (feature amount) necessary for generating the model from the substrate processing data acquired in step S2, and generates the monitoring model 102 or the correction model 103 by performing existing learning processing using the extracted information.
[0049] Next, the simulation processing unit 11e of the processing unit 11 performs substrate processing simulation using the generated bird's-eye view model 101, monitoring model 102, and correction model 103 when, for example, an operation on the menu item of "simulation" on the model generation screen is performed by the user (step S9). At this time, the simulation processing unit 11e may receive an input from the user regarding conditions for the simulation and the like.
[0050] The simulation processing unit 11e, for example, combines the generated monitoring model 102 based on the configuration of the bird's-eye view model 101 to construct a simulation model for reproducing the substrate processing of the substrate processing apparatus 3. For values for which the monitoring model 102 has not been generated, for example, the values included in the substrate processing data acquired in step S2 are used. The simulation processing unit 11e inputs the set values r1 to r4 included in the substrate processing data to the constructed simulation model to obtain the estimated values output by the monitoring model 102, and advances the virtual time in the simulation to repeatedly obtain the estimated values, thereby estimating the temporal change of the value to be monitored.
[0051] Furthermore, the simulation processing unit 11e adds a process to correct the input setting values r1 to r4 according to the passage of time using the correction model 103, and by performing the simulation in the same way, it is possible to estimate the time-series change of the monitored value when the correction function is enabled. The conditions regarding when the correction of the setting values r1 to r4 using the correction model 103 is performed are determined by the user before the simulation is performed. Various conditions can be set by the user for performing the correction, such as when the target value exceeds a threshold, when the amount of change from the initial value of the target value exceeds a threshold, or when the elapsed time since the last correction exceeds a threshold.
[0052] The simulation processing unit 11e displays the simulation results in the information display area of the model generation screen. Figure 10 is a schematic diagram showing an example of the display of simulation results. The simulation results shown simulate the time-series change of the quality value q1, which is the output of the overview model 101 shown in Figure 2. In this example, the information processing device 1 displays the simulation results of the time-series change of the quality value q1 in the information display area of the model generation screen using a line graph with time on the horizontal axis and the quality value q1 on the vertical axis. In the graph shown, the simulation results without the correction function using the correction model 103 are shown with a thin solid line, and the simulation results with the correction function are shown with a thick solid line. The simulation results shown are obtained by generating a monitoring model 102 for sensor measurement value s2 and quality value q1, and a correction model 103 for a set value r1 that suppresses fluctuations in the sensor measurement value s2, based on the overview model 101 with the configuration shown in Figure 2, and performing a simulation. The simulation results shown in the figure represent the case where the user sets the correction of the set value r1 using the correction model 103 to be performed, for example, at a 50-hour cycle.
[0053] Next, the processing unit 11 receives a decision from the user regarding whether the generation of the monitoring model 102 and the correction model 103 has been completed (step S10). If the model generation is not completed (S10: NO), the processing unit 11 returns to step S7 and repeatedly performs the selection of features, model generation, and simulation. The user can check the simulation results displayed in the information display area of the model generation screen, and if the desired results are obtained, they can notify the information processing device 1 of the completion of model generation by performing an operation such as saving the model. If the model generation is completed (S10: YES), the processing unit 11 stores the information of the generated overview model 101, monitoring model 102, and correction model 103 in the model information storage unit 12c (step S11).
[0054] Next, the processing unit 11 transmits the monitoring model 102 and correction model 103 stored in the model information storage unit 12c in step S11 to the substrate processing unit 3 via the communication unit 13 (step S12), and terminates the model generation process. The substrate processing unit 3, having received the monitoring model 102 and correction model 103 from the information processing unit 1, can, when performing substrate processing, calculate the difference between the sensor measurement value predicted by the monitoring model 102 and the actual sensor measurement value, and if this difference exceeds a threshold, it can determine that an abnormality has occurred and stop the substrate processing. Furthermore, the substrate processing unit 3 can perform substrate processing that suppresses time-series changes that may occur in the substrate processing unit 3 by correcting the setting values based on the recipe created by the user based on the correction amount output by the correction model 103.
[0055] The information processing device 1 may, for example, store the conditions for correction set by the user during simulations performed when generating a model, along with the model, and transmit them to the substrate processing device 3 along with the model. The substrate processing device 3 can correct the set values using the correction model 103 according to the conditions given by the information processing device 1. However, the conditions for correction may be set separately by the user or others to the substrate processing device 3.
[0056] In the information processing system according to this embodiment, the user can use the information processing device 1 to generate an overview model 101, then repeatedly generate a monitoring model 102, a correction model 103, and perform simulations using these models. Based on the simulation results displayed by the information processing device 1, if the user determines, for example, that the quality value q1 does not meet the desired characteristics based on the simulation results shown in Figure 10, the user can add models such as generating a correction model 103 that corrects the set value r2 or r3, or generating a monitoring model 102 for the sensor measurement value s4 and a correction model 103 that corrects the set value r3 or r4 to suppress fluctuations in the sensor measurement value s4.
[0057] Furthermore, in the overview model 101 shown in Figure 2, for example, changing the setting value r1 may change the sensor measurement value s5 and the quality value q2. Therefore, the user can perform a simulation by adding a monitoring model 102 for the sensor measurement value s5 and a monitoring model 102 for the quality value q2, etc., to confirm how the correction of the setting value r1, which suppresses fluctuations in the sensor measurement value s2, affects the sensor measurement value s5 and the quality value q2. If the simulation results indicate that it has an adverse effect on the quality value q2, the user can consider alternative countermeasures, such as stopping the correction of the setting value r1 (discarding the correction model 103 for the setting value r1) and generating a new correction model 103 for correcting the setting value r2.
[0058] Furthermore, the user can read the information of the overview model 101, monitoring model 102, and correction model 103 stored in the model information storage unit 12c of the information processing device 1, and generate new models using existing models, such as replacing some models with new models, or generating a new correction model 103 using the existing monitoring model 102.
[0059] <Summary> In the information processing system according to this embodiment with the above configuration, the information processing device 1 acquires substrate processing data containing multiple pieces of information (features) related to substrate processing, estimates the relationships (causal relationships) between the multiple features based on the acquired substrate processing data, and outputs (displays) the estimated causal relationships as an overview model 101. Based on the displayed overview model 101, the information processing device 1 accepts the selection of one or more features and generates a correction model 103 that corrects the fluctuations of the accepted features (estimates a correction amount to suppress the fluctuations of the features). As a result, the information processing system according to this embodiment can present the causal relationships between multiple features related to substrate processing to the user and allow the user to perform tasks such as selecting features to generate a correction model 103 that corrects the fluctuations of the features, and is therefore expected to support the user's operation related to the control of the substrate processing device.
[0060] Furthermore, in the information processing system according to this embodiment, the information processing device 1 receives the selection of one or more feature quantities from the user based on the displayed overview model 101, and generates an estimation model (monitoring model 102) that estimates the changes in the received feature quantities. As a result, the information processing system according to this embodiment is expected to present the causal relationships of multiple feature quantities related to substrate processing to the user and support the user's operations for generating the monitoring model 102.
[0061] Furthermore, in the information processing system according to this embodiment, the information processing device 1 performs a simulation of substrate processing using the generated monitoring model 102 and correction model 103, and outputs (displays) the simulation results. As a result, the information processing system according to this embodiment can present the simulation results to the user to allow them to confirm the effects of the generated monitoring model 102 and correction model 103, and is expected to support the user's operations for generating the monitoring model 102 and correction model 103.
[0062] Furthermore, in the information processing system according to this embodiment, the substrate processing data acquired by the information processing device 1 includes information such as setting values related to substrate processing, sensor measurement values, and the results (quality values) of substrate processing. As a result, the information processing system according to this embodiment can present the user with the causal relationship between the setting values, sensor measurement values, and quality values related to substrate processing, and is expected to support the generation of models.
[0063] Furthermore, in the information processing system according to this embodiment, the correction model 103 estimates the amount of change (correction amount) of the set value that corrects fluctuations in sensor measurements due to changes over time, etc. As a result, the information processing system according to this embodiment is expected to correct the set value using the correction model 103 in response to changes over time that occur in the substrate processing apparatus 3, thereby suppressing fluctuations in the substrate processing results.
[0064] Furthermore, in the information processing system according to this embodiment, the monitoring model 102 estimates sensor measurement values in accordance with the passage of time relative to a set value, or estimates quality values in accordance with the passage of time relative to the sensor measurement values. As a result, the information processing system according to this embodiment is expected to use the generated monitoring model 102 to perform processes such as predicting the results of substrate processing or detecting anomalies.
[0065] Furthermore, in the information processing system according to this embodiment, the information processing device 1 uses the generated model to simulate the variation in the substrate processing results in response to fluctuations in set values and sensor measurement values. As a result, the information processing system according to this embodiment is expected to provide the user with information regarding the variation in the substrate processing results due to changes in the substrate processing device 3 over time, and the results of suppressing these variations by performing corrections using the correction model 103.
[0066] Furthermore, in the information processing system according to this embodiment, the information processing device 1 receives conditions from the user for performing correction using the correction model 103, and performs a simulation based on the received conditions. As a result, in the information processing system according to this embodiment, the user can set the frequency of performing correction using the correction model 103, and it is expected that the user can set appropriate conditions, perform a simulation, and compare the results.
[0067] Furthermore, in the information processing system according to this embodiment, the information processing device 1 displays the acquired substrate processing data, accepts the selection of feature quantities to be processed from a plurality of feature quantities contained in the substrate processing data, estimates the causal relationships between the selected feature quantities, and generates an overview model 101. Thus, the information processing system according to this embodiment is expected to support the user in selecting feature quantities from substrate processing data containing a plurality of feature quantities for which causal relationships need to be estimated.
[0068] Furthermore, in the information processing system according to this embodiment, the information processing device 1 classifies multiple feature quantities contained in the substrate processing data into multiple clusters through clustering processing, and displays the multiple feature quantities divided into multiple clusters. As a result, the information processing system according to this embodiment can provide the user with information such as which of the multiple feature quantities contained in the substrate processing data are similar, and is expected to support the user in selecting feature quantities.
[0069] The embodiments disclosed herein should be considered in all respects to be illustrative and not restrictive. The scope of this disclosure is indicated by the claims, not in the sense described above, and all modifications within the meaning and scope equivalent to the claims are intended.
[0070] The matters described in each embodiment can be combined with each other. Furthermore, the independent and dependent claims described in the claims can be combined with each other in any combination, regardless of the form of reference. In addition, the claims use a form in which claims referencing two or more other claims (multi-claim form), but are not limited to this. A form in which multi-claims referencing at least one multi-claim (multi-multi-claim) may also be used.
[0071] 1 Information Processing Device (Computer) 3 Board Processing Device 11 Processing Unit 11a Overview Model Generation Unit 11b Information Selection Reception Unit 11c Monitoring Model Generation Unit 11d Correction Model Generation Unit 11e Simulation Processing Unit 11f Display Processing Unit 12 Storage Unit 12a Program (Computer Program) 12b Board Processing Data Storage Unit 12c Model Information Storage Unit 13 Communication Unit 14 Display Unit 15 Operation Unit 99 Recording Medium 101 Overview Model 102 Monitoring Model (Estimated Model) 103 Correction Model N Network
Claims
1. A computer program that causes a computer to perform the following processes: acquire substrate processing data containing multiple pieces of information related to substrate processing; estimate the relationships between the multiple pieces of information based on the acquired substrate processing data; output the estimated relationships; accept the selection of one or more pieces of information from the multiple pieces of information based on the output relationships; and generate a correction model that corrects the fluctuations in the accepted information.
2. The computer program according to claim 1, which accepts the selection of one or more pieces of information from the plurality of pieces of information based on the outputted relationship, and generates an estimation model for estimating the changes in the accepted pieces of information.
3. A computer program according to claim 2, which performs a simulation of substrate processing using the generated correction model and estimation model, and outputs the simulation results.
4. The computer program according to claim 1 or claim 2, wherein the substrate processing data includes set values related to the substrate processing, measured values of sensors related to the substrate processing, and information on the results of the substrate processing.
5. The computer program according to claim 1 or 2, wherein the correction model is a model that outputs a change in a set value related to the substrate processing for correcting fluctuations in the measured value of the sensor related to the substrate processing.
6. The computer program according to claim 2 or 3, wherein the estimation model is a model for estimating the measured value of a sensor related to the substrate processing in accordance with the passage of time relative to a set value related to the substrate processing, or a model for estimating the result of the substrate processing in accordance with the passage of time relative to the measured value.
7. The computer program according to claim 3, wherein the simulation simulates the variation in the results of the substrate processing in response to variations in set values related to the substrate processing and measured values of sensors related to the substrate processing.
8. The computer program according to claim 3, which receives input of conditions for performing correction by the correction model, and performs the simulation based on the received conditions.
9. A computer program according to claim 1 or 2, which outputs the acquired substrate processing data, accepts the selection of information to be processed from a plurality of pieces of information contained in the substrate processing data, and estimates the relationships between the selected pieces of information.
10. A computer program according to claim 9, which classifies a plurality of pieces of information contained in the substrate processing data into a plurality of clusters, and outputs the plurality of pieces of information divided into the clusters.
11. A computer program that causes a computer to perform the following processes: acquire substrate processing data including multiple pieces of information such as set values related to substrate processing, measured values of sensors related to the substrate processing, and the results of the substrate processing; output a graph showing the relationships between the multiple pieces of information included in the acquired substrate processing data; accept the selection of one or more pieces of information from the multiple pieces of information based on the output graph; and output the results of a simulation of substrate processing using an estimation model that estimates the fluctuations of the accepted selections of information, or a correction model that corrects the fluctuations of the information.
12. A computer program according to claim 11, which outputs a plurality of pieces of information contained in the acquired substrate processing data, accepts the selection of a plurality of pieces of information from the output plurality of pieces of information, and outputs a graph showing the relationship between the selected plurality of pieces of information.
13. A computer program according to claim 12, which outputs a screen including a menu item for processing the acquisition of the substrate processing data, a menu item for processing the selection of multiple pieces of information from the substrate processing data, a menu item for processing the output of the graph, a menu item for processing the generation of the estimation model or the correction model, and a menu item for performing the simulation, and executes processing according to the selected menu item.
14. An information processing method comprising: an information processing device acquiring substrate processing data containing multiple pieces of information related to substrate processing; estimating the relationships between the multiple pieces of information based on the acquired substrate processing data; outputting the estimated relationships; accepting the selection of one or more pieces of information from the multiple pieces of information based on the outputted relationships; and generating a correction model to correct for the changes in the accepted information.
15. Information processing method comprising: an information processing device acquiring substrate processing data including multiple pieces of information such as set values related to substrate processing, measured values of sensors related to the substrate processing, and the results of the substrate processing; outputting a graph showing the relationships between the multiple pieces of information included in the acquired substrate processing data; accepting the selection of one or more pieces of information from the multiple pieces of information based on the output graph; and outputting the results of a simulation of substrate processing using an estimation model that estimates the fluctuations of the selected information, or a correction model that corrects the fluctuations of the information.
16. An information processing device comprising a processing unit, wherein the processing unit acquires substrate processing data including a plurality of pieces of information relating to substrate processing, estimates the relationships between the plurality of pieces of information based on the acquired substrate processing data, outputs the estimated relationships, accepts the selection of one or more pieces of information from the plurality of pieces of information based on the output relationships, and generates a correction model for correcting the changes in the accepted pieces of information.
17. An information processing device comprising a processing unit, wherein the processing unit acquires substrate processing data including multiple pieces of information such as set values related to substrate processing, measured values of sensors related to the substrate processing, and the results of the substrate processing; outputs a graph showing the relationships between the multiple pieces of information included in the acquired substrate processing data; accepts the selection of one or more pieces of information from the multiple pieces of information based on the output graph; and outputs the results of a simulation of substrate processing using an estimation model that estimates the fluctuations of the selected information, or a correction model that corrects the fluctuations of the information.
Citation Information
Patent Citations
Semiconductor manufacturing apparatus
JP2004072030A
Comprehensive integrated lithography process control system based on product design and yield feedback system
JP2006501673A
Learning method, management device and management program
JP2020181959A
Program, information processing method, information processing apparatus, and model generation method
JP2024087554A