Computer program, information processing method, and information processing device

By conducting preliminary experiments with fixed nozzle positions and using an information processing device to generate and optimize etching profiles, the complexity of predicting ideal etching profiles is addressed, achieving accurate and efficient substrate etching processes.

WO2026154999A1PCT designated stage Publication Date: 2026-07-23TOKYO ELECTRON LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
TOKYO ELECTRON LTD
Filing Date
2026-01-05
Publication Date
2026-07-23

AI Technical Summary

Technical Problem

The challenge in optimizing the etching process for substrates lies in predicting the ideal etching profile, which is complex and time-consuming due to the intricate interaction of nozzle movement and other factors, making it difficult to achieve desired film thickness and shape through numerical calculations.

Method used

Conduct preliminary experiments with fixed nozzle positions on multiple substrates, measure etching rates, and use an information processing device to generate profile data and optimize the process recipe by estimating the etching profile and adjusting nozzle drive parameters based on acquired measurement data.

Benefits of technology

Enables accurate estimation of etching profiles with reduced computational load and higher accuracy compared to machine learning models, using a small amount of measurement data, and optimizes the process recipe to achieve desired etching results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2026000006_23072026_PF_FP_ABST
    Figure JP2026000006_23072026_PF_FP_ABST
Patent Text Reader

Abstract

Provided are a computer program, an information processing method, and an information processing device. The present invention causes a computer to execute processing for: acquiring measurement data pertaining to an etching rate for each of a plurality of substrates etched by causing the fixed position of a nozzle to differ for each substrate and discharging a processing liquid from the nozzle at each fixed position for a set time; complementing, on the basis of the acquired measurement data, a value pertaining to the etching rate when the processing liquid is discharged at a position different from the fixed position; and generating, on the basis of the complemented data, profile data for estimating an etching profile when the nozzle is arbitrarily driven to perform etching on a substrate to be processed.
Need to check novelty before this filing date? Find Prior Art

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] Patent Document 1 describes a liquid processing apparatus that flattens a film by supplying a processing liquid that dissolves the film onto the film while rotating a wafer on which the film is formed. This liquid processing apparatus includes a wafer holding unit that holds the wafer horizontally and rotatably, a rotation mechanism that rotates the wafer holding unit, and a liquid supply mechanism that supplies the processing liquid to the surface of the wafer. The liquid supply mechanism has a first liquid discharge nozzle and a second liquid discharge nozzle that discharge the same processing liquid. The first liquid discharge nozzle has a smaller diameter than the second liquid discharge nozzle, has a relatively small discharge flow rate, and is inclined so that the processing liquid is discharged in the rotation direction of the wafer, and is further movable between the center and the periphery of the wafer.

[0003] Japanese Patent Application Laid-Open No. 2007-266302

[0004] The present disclosure provides a computer program, an information processing method, and an information processing apparatus that generate profile data capable of calculating an etching rate when a processing liquid is discharged at an arbitrary nozzle position.

[0005] The computer program of the present disclosure varies the fixed position of the nozzle for each substrate, and for each of a plurality of substrates etched by discharging the processing liquid from the nozzle at each fixed position for a set time, measurement data related to the etching rate is acquired, and based on the acquired measurement data, a value related to the etching rate when the processing liquid is discharged at a position different from the fixed position is complemented, and based on the data after complementation, the computer is caused to execute a process of generating profile data for estimating an etching profile when the nozzle is arbitrarily driven to perform an etching process on a substrate to be processed.

[0006] According to the present disclosure, profile data capable of calculating an etching rate when a processing liquid is discharged at an arbitrary nozzle position can be obtained.

[0007] This is a schematic diagram showing an example configuration of a substrate processing system according to Embodiment 1. This is a schematic diagram showing the general configuration of a substrate processing device. This is a block diagram showing an example configuration of an information processing device. This is an explanatory diagram explaining the outline of a preliminary experiment. This is a graph showing an example of measurement data obtained under nozzle fixed conditions. This is a graph showing the data after interpolation. This is a conceptual diagram representing an example of profile data. This is a graph showing the time progression of the nozzle position. This is a graph showing the dwell time of the nozzle at each nozzle position. This is a graph showing the estimated etching profile results. This is a flowchart explaining the procedure of processing performed by the information processing device according to Embodiment 1. This is a diagram showing an example of etching profile display. This is a diagram showing an example of a process recipe. This is a graph showing the etching profile when etching processing is performed according to the process recipe in Figure 13. This is a diagram showing an optimized process recipe. This is a graph showing the etching profile when etching processing is performed according to the optimized process recipe. This is a flowchart showing the procedure of processing performed by the information processing device according to Embodiment 2. This is a graph showing an example of nozzle operation after optimization. This is a schematic diagram showing an example of recipe screen display. This is an explanatory diagram explaining the process recipe generation method in Embodiment 4. This is a graph showing an example of the time profile calculation result. This is a diagram showing an example of a process recipe generated from the time profile. This is a diagram showing other examples of process recipes generated from time profiles. This is a graph showing other examples of time profile calculation results. This is an explanatory diagram explaining the method for calculating movement speed. This is an explanatory diagram explaining an example of scan recipe generation. This is a flowchart explaining the process recipe generation procedure.

[0008] An embodiment will be described below with reference to the drawings. In this description, the same elements or elements having the same function will be denoted by the same reference numeral, and redundant descriptions will be omitted.

[0009] (Embodiment 1) Figure 1 is a schematic diagram showing an example of the configuration of a substrate processing system according to Embodiment 1. The substrate processing system according to Embodiment 1 comprises a substrate processing apparatus 100 and an information processing apparatus 200. The substrate processing apparatus 100 is an etching apparatus that performs wet etching on a substrate to be processed. The substrate to be processed is a wafer containing a processing film such as an oxide film or a nitride film. The substrate processing apparatus 100 rotates the substrate to be processed with the center of the substrate as the axis of rotation, and while controlling the position of the nozzle 131 (see Figure 2) on the substrate, discharges the processing liquid from the nozzle 131 onto the substrate. The substrate processing apparatus 100 performs processing such as homogenizing the film thickness and processing into a desired shape by partially dissolving the processing film with the discharged processing liquid.

[0010] In single-wafer washing spin processes, a significant amount of effort is dedicated to optimizing the nozzle movement during etching. While nozzle movement and other factors during etching greatly affect the etching rate and profile, the etching process itself is extremely complex, making it difficult to predict the ideal profile through numerical calculations based on formalization.

[0011] Currently, operators are experimenting with various conditions, such as nozzle movement, to investigate the impact on individual profiles. Obtaining the desired profile requires repeatedly processing the substrate while varying parameters in the process recipe and checking the resulting profile, which is extremely time-consuming.

[0012] Therefore, in this embodiment, preliminary experiments were conducted with nozzle fixing conditions in which the fixing position of the nozzle 131 was different for each of several substrates, and the etching rate was measured for each nozzle fixing condition. The information processing device 200 acquired the etching rate measurement data obtained in the preliminary experiments and generated profile data for estimating the etching profile when the nozzle 131 is driven arbitrarily, based on the acquired measurement data.

[0013] The information processing device 200 can estimate the etching profile when the nozzle 131 is arbitrarily driven on the substrate and etching is performed using the generated profile data. Furthermore, the information processing device 200 can optimize the process recipe (driving parameters for the nozzle 131) so that the estimated etching profile approaches the desired etching profile.

[0014] Figure 2 is a schematic diagram showing the general configuration of the substrate processing apparatus 100. The substrate processing apparatus 100 is an etching apparatus that performs wet etching on a substrate to be processed. The substrate processing apparatus 100 includes a chamber 110, a substrate holding mechanism 120, a processing liquid supply mechanism 130, a recovery cup 140, and the like.

[0015] The chamber 110 is a sealed reaction vessel that houses the substrate holding mechanism 120, the nozzle 131 of the processing liquid supply mechanism 130, the recovery cup 140, and the like. An FFU (Fan Filter Unit) 150 is provided on the ceiling of the chamber 110. The FFU 150 creates a downflow within the chamber 110.

[0016] The substrate holding mechanism 120 comprises a holding section 121, a support section 122, and a drive section 123. The holding section 121 comprises a disc-shaped rotating plate 121a and a plurality of gripping pins 121b provided on the periphery of the rotating plate 121a. The holding section 121 holds the substrate W to be processed on the rotating plate 121a by gripping the periphery of the substrate W with the gripping pins 121b. Figure 2 shows a gripping type substrate holding mechanism 120, but a vacuum suction type holding mechanism that uses suction to hold the substrate W to the rotating plate 121a may also be used.

[0017] The support column 122 is a cylindrical member extending vertically (up and down in Figure 2) and is connected to the central part of the lower surface of the holding portion 121. The support column 122 horizontally supports the rotating plate 121a of the holding portion 121. The lower end of the support column 122 is connected to the drive unit 123 and is rotatably supported by the drive unit 123. The drive unit 123 is equipped with a prime mover such as a motor and rotates the support column 122 around its axis. The substrate holding mechanism 120 rotates the rotating plate 121a by rotating the support column 122 with the drive unit 123, thereby rotating the substrate W which is gripped by the gripping pin 121b.

[0018] The processing liquid supply mechanism 130 comprises a nozzle 131, a processing liquid supply passage 132, a processing liquid supply source 133, and a drive device 134. The nozzle 131 is connected to the processing liquid supply source 133 via the processing liquid supply passage 132 and discharges the processing liquid supplied from the processing liquid supply source 133 onto the substrate W held by the substrate holding mechanism 120. The processing liquid used is a chemical solution such as dilute hydrofluoric acid and a cleaning solution such as pure water. The processing liquid supply mechanism 130 selectively discharges either the chemical solution or the cleaning solution from the nozzle 131 by switching between the chemical solution for dissolving the substrate W and the cleaning solution for cleaning the substrate W at the processing liquid supply source 133.

[0019] The nozzle 131 is connected to the drive unit 134 and is configured to move horizontally between the center and the periphery of the substrate W. The processing liquid supply mechanism 130 combines the rotation of the substrate W by the drive unit 123 of the substrate holding mechanism 120 with the horizontal movement of the nozzle 131 by the drive unit 134, thereby enabling the processing liquid to be discharged from the nozzle 131 to an appropriate position on the substrate W to be processed.

[0020] Figure 2 shows a processing liquid supply mechanism 130 comprising one set of nozzle 131, processing liquid supply passage 132, processing liquid supply source 133, and drive device 134. However, the processing liquid supply mechanism 130 may also comprise two or more sets of nozzle 131, processing liquid supply passage 132, processing liquid supply source 133, and drive device 134.

[0021] Furthermore, the substrate processing apparatus 100 may be provided with a supply mechanism for supplying a temperature-controlled medium in addition to the processing liquid supply mechanism 130. This supply mechanism includes a supply source for supplying the temperature-controlled medium, a discharge section for discharging the temperature-controlled medium, and discharges the temperature-controlled medium from the discharge section onto the lower surface of the substrate W held by the substrate holding mechanism 120. The temperature-controlled medium can be heated pure water, a high-temperature inert gas such as nitrogen, etc. The supply mechanism controls the temperature of the substrate W by discharging the temperature-controlled medium onto the substrate W.

[0022] The collection cup 140 is positioned to surround the holding section 121 and collects the processing liquid scattered from the substrate W by the rotation of the rotating plate 121a. A drain port 140a is provided at the bottom of the collection cup 140, and the processing liquid collected by the collection cup 140 is discharged to the outside of the chamber 110 through the drain port 140a. Additionally, an exhaust port 140b is provided at the bottom of the collection cup 140, and the gas supplied from the FFU 150 is discharged to the outside of the chamber 110 through the exhaust port 140b.

[0023] Figure 3 is a block diagram showing an example configuration of the information processing device 200. The information processing device 200 is a dedicated or general-purpose computer and includes a control unit 201, a storage unit 202, a communication unit 203, an operation unit 204, a display unit 205, and the like.

[0024] The control unit 201 includes a CPU (Central Processing Unit), ROM (Read Only Memory), RAM (Random Access Memory), and the like. The ROM in the control unit 201 stores control programs that control the operation of each hardware component of the information processing device 200. The CPU in the control unit 201 reads and executes the control programs stored in the ROM and the computer programs described later stored in the memory unit 202, and controls the operation of the hardware components, thereby making the entire device function as the information processing device 200 of this disclosure. The RAM in the control unit 201 temporarily stores data used during the execution of calculations.

[0025] In this embodiment, the control unit 201 is configured to include a CPU, ROM, and RAM, but the configuration of the control unit 201 is not limited to the above. The control unit 201 may be one or more control circuits or processing circuits that include, for example, a GPU (Graphics Processing Unit), FPGA (Field Programmable Gate Array), DSP (Digital Signal Processor), quantum processor, volatile or non-volatile memory, etc. Furthermore, the control unit 201 may include functions such as a clock that outputs date and time information, a timer that measures the elapsed time from the time a measurement start instruction is given to the time a measurement end instruction is given, and a counter that counts numbers.

[0026] The storage unit 202 is equipped with a storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive). The storage unit 202 stores various computer programs executed by the control unit 201 and various data used by the control unit 201.

[0027] The computer program (program product) stored in the memory unit 202 includes a generation program PG1 that generates etching rate profile data based on measurement data obtained by the substrate processing apparatus 100, an estimation program PG2 that estimates the etching profile given a process recipe, and an optimization program PG3 that optimizes the process recipe so that the estimation result approaches the desired etching profile.

[0028] The generation program PG1, the estimation program PG2, and the optimization program PG3 may be constructed as separate computer programs, or they may be constructed as a single computer program that integrates them.

[0029] Furthermore, each computer program, including the generation program PG1, may be a single computer program or a group of programs composed of multiple computer programs. The above computer programs may be executed on a single computer or executed collaboratively by multiple computers. The above computer programs may partially utilize existing libraries.

[0030] The computer program, including the generation program PG1, is provided, for example, on a non-temporary recording medium RM on which the computer program is recorded in a readable format. The recording medium RM is a portable memory such as a CD-ROM, USB memory, SD (Secure Digital) card, microSD card, or CompactFlash®. The control unit 201 reads various computer programs from the recording medium RM using a reading device (not shown in the figure) and stores the read computer programs in the storage unit 202. The computer programs stored in the storage unit 202 may also be provided via communication. In this case, the control unit 201 acquires the computer programs via communication through the communication unit 203 and stores the acquired computer programs in the storage unit 202.

[0031] The communication unit 203 is equipped with a communication interface for sending and receiving various types of data with an external device. The communication interface of the communication unit 203 can be a wired or wireless communication interface compliant with a communication standard such as LAN (Local Area Network). The external device may be a board processing unit 100 or a user terminal (not shown). When data to be transmitted is input from the control unit 201, the communication unit 203 transmits the data to the destination external device, and when data transmitted from the external device is received, the communication unit 203 outputs the received data to the control unit 201.

[0032] The operation unit 204 is equipped with operating devices such as a touch panel, keyboard, and switches, and accepts various inputs and operations from the user. The control unit 201 acquires information input through the operation unit 204 and performs appropriate control based on the various operation information provided by the operation unit 204.

[0033] The display unit 205 is equipped with a display device such as a liquid crystal monitor or an organic EL (Electro-Luminescence) monitor, and displays information that should be notified to the user or others in response to instructions from the control unit 201.

[0034] The information processing device 200 may be a single computer, or it may be a computer system composed of multiple computers and peripheral devices. Furthermore, the information processing device 200 may be a virtual machine with a virtualized physical form, or it may be a cloud. In this embodiment, the information processing device 200 is a separate and independent device from the substrate processing device 100, but it may also be a device located inside the substrate processing device 100.

[0035] The following describes the preliminary experiments performed in the substrate processing apparatus 100. Figure 4 is an explanatory diagram illustrating the outline of the preliminary experiments. In the preliminary experiments, the fixing position of the nozzle 131 is changed for each of the multiple substrates, and etching is performed under conditions (nozzle fixing conditions) in which the processing liquid is discharged from the nozzle 131 for a set time at each fixing position. The fixing position of the nozzle 131 (hereinafter also referred to as the nozzle position) is specified by the straight-line distance from the center of the substrate to the center of the nozzle. Figure 4 shows an example in which the nozzle position for the first substrate W1 is set to X1 (for example, 20 mm), the nozzle position for the second substrate W2 is set to X2 (for example, 80 mm), and the nozzle position for the third substrate W3 is set to X3 (for example, 140 mm).

[0036] The substrate processing apparatus 100 holds the first substrate W1 with the substrate holding mechanism 120 and performs etching on the first substrate W1 by rotating it at a predetermined rotational speed and discharging the processing liquid from the nozzle 131 at the nozzle position X1 for a set time. In the nozzle fixing conditions according to this embodiment, the nozzle 131 may be driven back and forth between the center of the substrate and the fixed position as long as the discharge time of the processing liquid at the fixed position is the set time. By discharging the processing liquid, a portion of the processing film constituting the first substrate W1 is dissolved.

[0037] The substrate processing apparatus 100 measures the etching rate of the first substrate W1 after etching. The etching rate is measured as the amount of etching per unit time (depth of depressions formed in the substrate W1). Since the discharge time of the processing solution is known, the etching rate can be calculated by measuring the amount of etching. Existing sensors are used to measure the amount of etching. For example, a distance measuring sensor is used, which measures the distance to an object by emitting light, ultrasound, or electromagnetic waves and detecting the reflected waves. Alternatively, an evaluation device that images the substrate surface and evaluates the amount of etching by analyzing the obtained image may be used. In this embodiment, the etching amount is measured at intervals of 2 mm, for example, by scanning linearly along a line segment passing through the center of the substrate W1. The substrate processing apparatus 100 calculates the etching rate based on the measured amount of etching and outputs the obtained etching rate data as measurement data to the information processing apparatus 200.

[0038] Alternatively, the substrate processing apparatus 100 may output data on the etching amount and the discharge time of the processing solution to the information processing apparatus 200. In this case, the substrate processing apparatus 100 can calculate the etching rate from the data on the etching amount and the discharge time of the processing solution obtained from the substrate processing apparatus 100.

[0039] Furthermore, in this embodiment, the substrate processing apparatus 100 is equipped with a sensor for measuring the amount of etching. Alternatively, a measuring device for measuring the amount of etching may be provided separately from the substrate processing apparatus 100. In this case, after the etching process is completed, the amount of etching on the processed substrate can be measured using a measuring device provided separately from the substrate processing apparatus 100.

[0040] After the etching rate of the first substrate W1 is measured, the substrate processing apparatus 100 changes the substrate to be processed from the first substrate W1 to the second substrate W2 and performs etching on the second substrate W2 under nozzle fixed conditions with the nozzle position changed from X1 to X2. The substrate processing apparatus 100 performs etching on the second substrate W2 by rotating the second substrate W2, which is held by the substrate holding mechanism 120, at a predetermined rotational speed, and discharging the processing liquid from the nozzle 131 at nozzle position X2 for a set time, as in the case of the first substrate W1. Etching conditions other than the nozzle position are the same as for the first substrate W1. The substrate processing apparatus 100 measures the etching rate of the second substrate W2 after etching and outputs the measured etching rate data to the information processing apparatus 200. The same procedure is followed when changing from the second substrate W2 to the third substrate W3.

[0041] The substrate processing apparatus 100 performs etching on multiple substrates W (approximately 5 to 10) under these nozzle-fixed conditions, measures the etching rate at each point on a line segment passing through the center of the substrate W after processing, and outputs the measured etching rate data to the information processing apparatus 200.

[0042] When etching is performed by moving the nozzle 131 from the center to the periphery of the substrate W, the etching profile is the sum of the etching profiles at each position. This result suggests that the scan profile can be calculated by integrating the data obtained with the nozzle 131 fixed in place.

[0043] FIG. 5 is a graph showing an example of measurement data obtained under nozzle fixing conditions. In the embodiment, eight substrates with a radius of 150 mm formed under the same film forming conditions were prepared for preliminary experiments. The substrate processing apparatus 100 varied the fixing positions of the nozzle 131 for each of the eight prepared substrates, performed an etching process on each substrate under nozzle fixing conditions, and measured the etching amount for each processed substrate. The discharge time of the processing liquid was set to the time set for each nozzle fixing condition. The substrate processing apparatus 100 measured the etching amount at intervals of 2 mm on a line segment passing through the center of each substrate using a sensor not shown in the figure.

[0044] The graph of FIG. 5 shows the measurement results under each nozzle fixing condition in which the fixing position of the nozzle 131 was changed at intervals of 20 mm from the center (0 mm) of the substrate to near the periphery (-140 mm). The graph of FIG. 5 shows the measured value of the etching amount determined when the position x on the substrate and the nozzle fixing condition (nozzle position) are specified. In the graph of FIG. 5, the position x on the substrate takes discrete values at intervals of, for example, 2 mm, and the nozzle position takes discrete values at intervals of 20 mm.

[0045] Next, the processing executed by the information processing apparatus 200 will be described. The information processing apparatus 200 acquires the measurement data measured under the nozzle fixing conditions as described above. When the measurement data is data measured under nozzle fixing conditions at an interval of N1 (N1 is, for example, 20 mm), the information processing apparatus 200 generates data at an interval of N2 (N2 < N1, and N2 is, for example, 1 mm) by complementing the missing values in the measurement data. For data complementation, known methods such as the k-nearest neighbor method, the CF (Collaborative Filtering) application method, the Miss Forest method, and the multiple imputation method can be used. Alternatively, a machine learning model may be used for data complementation. The information processing apparatus 200 can complement the measurement data, for example, by extracting the feature amounts of the measurement data using a CNN (Convolutional Neural Network) and interpolating the values between the data using the obtained feature amounts.

[0046] FIG. 6 is a graph showing the data after completion. The graph in FIG. 6 shows data obtained by complementing the measurement data in FIG. 5 measured under the nozzle fixing condition at an interval of 20 mm to an interval of 1 mm. The data after completion is composed of the measurement data and the data of the complementation values obtained by complementing the measurement data. The graph in FIG. 6 shows the value of the etching amount determined when the position x on the substrate and the nozzle position are specified. In the graph of FIG. 6, the position x on the substrate takes discrete values at an interval of, for example, 2 mm, and the nozzle position takes discrete values at an interval of 1 mm.

[0047] The information processing apparatus 200 generates profile data for estimating an etching profile when the nozzle 131 is arbitrarily driven based on the data after completion to perform an etching process on the substrate to be processed.

[0048] FIG. 7 is a conceptual diagram showing an example of the profile data. FIG. 7 shows a contour map with the nozzle position on the horizontal axis, the position on the substrate on the vertical axis, and the etching rate (etching amount per unit time) represented by the shade of gray scale. For the sake of explanation, FIG. 7 shows the profile data as a contour map, but the profile data is generated as matrix data in the information processing apparatus 200 with the nozzle position as rows, the position on the substrate as columns, and the element value of each element as the magnitude of the etching rate. When the data after completion has values at 140 points in the nozzle position direction (points obtained by dividing from -140 mm to 0 mm at an interval of 1 mm) and 140 points in the substrate position direction (points obtained by dividing from -140 mm to 140 mm at an interval of 2 mm), matrix data of 140 rows × 140 columns is generated as the profile data. The generated profile data is stored in the storage unit 202 of the information processing apparatus 200.

[0049] In addition, in the preliminary experiment, when the etching process is performed while reciprocally driving the nozzle 131 between the center of the substrate and the fixed position, the profile data may be generated in consideration of the time required for the reciprocation.

[0050] If the information processing device 200 knows the drive parameters of the nozzle 131 when performing the etching process in the substrate processing device 100, it can use those drive parameters and the above-mentioned profile data to estimate the etching profile after the etching process.

[0051] The drive parameters for nozzle 131 are described in the process recipe. Figure 8 is a graph showing the time progression of the nozzle position. The drive parameters described in the process recipe include, for example, the movement speed of nozzle 131, the speed change position, and the nozzle stop time. When the time progression of the nozzle position is plotted according to the drive parameters of nozzle 131, a graph like Figure 8 is obtained. The horizontal axis of the graph represents the elapsed time from the start of nozzle 131 driving, and the vertical axis represents the nozzle position. This graph shows that nozzle 131 is moved at a constant speed from the center of the substrate (0 mm position) to the position of -140 mm over 5 seconds, stopped at the position of -140 mm for 4.4 seconds, and then moved from the position of -140 mm to the center of the substrate over 5 seconds, and this process is repeated three times.

[0052] The information processing device 200 converts the drive parameters of the nozzle 131 into time information. Figure 9 is a graph showing the dwell time of the nozzle at each nozzle position. The horizontal axis of the graph represents the nozzle position, and the vertical axis represents the total dwell time of the nozzle 131 at each nozzle position. The example in Figure 9 is a graph obtained by converting the drive parameters of the nozzle 131 shown in Figure 8 into time information. This graph shows that the nozzle 131 stayed at the -140 mm position for a total of about 13 seconds and at the center of the substrate for a total of about 9 seconds. At the other nozzle positions, it can be seen that the nozzle simply passed through at a predetermined speed, and the dwell time was close to 0 seconds.

[0053] Figure 9 shows the time information for the duration of stay as a graph. However, the time information converted from the drive parameters is stored internally in the information processing device 200 as matrix data where the nozzle position is the row and the element value of each element is the duration of stay. If the nozzle position is divided into 140 points from -140 mm to 0 mm at 1 mm intervals, the information processing device 200 generates a 140x1 matrix data from the drive parameters and stores it in the storage unit 202.

[0054] The information processing device 200 estimates the etching profile after processing using profile data generated from measurement data of nozzle fixing conditions and time information converted from the drive parameters of the nozzle 131. Here, if the matrix representing the time information (first matrix) is t and the matrix representing the profile data (second matrix) is W, the information processing device 200 calculates t × W T The etching profile can be estimated by matrix calculation.

[0055] Figure 10 is a graph showing the estimated etching profile. The horizontal axis of the graph represents the position on the substrate, and the vertical axis represents the etching amount. In Figure 10, the estimated etching profile (predicted data) is shown by a solid line. In addition, the measured data obtained by driving the nozzle 131 according to the drive parameters used for estimation, performing an etching process on the substrate, and then measuring the etching amount is shown by a dashed line. As accuracy evaluation indices, the R2 value and RMSE (Root Mean Squared Error) were calculated to be 0.87 and 0.08 Å, respectively.

[0056] The following section describes a comparison with conventional methods using machine learning models (see, for example, M. Tokuyama et al., “Etch Profile Prediction Model Using Convolutional Neural Network”, Solid State Phenomena, 346, p.236-243 (2023)). A machine learning model consists of a CNN that, for example, outputs the etching amount at each position on the substrate when experimental conditions are input. To generate such a machine learning model, it is necessary to conduct experiments by changing various experimental conditions, including nozzle drive parameters, and obtain experimental results (etching amount) for each experimental condition. A machine learning model is generated by training it using an existing learning algorithm with a dataset consisting of pairs of experimental conditions and experimental results as training data. In one example, the R2 value and RMSE when the etching amount was estimated using a machine learning model were 0.73 and 5.18 Å, respectively.

[0057] While machine learning model-based methods require a large amount of training data to generate a model, the present method can generate profile data using a small amount of data (eight sets of measurement data in the example above). Furthermore, while machine learning model-based methods have low estimation accuracy, the present method achieves relatively high estimation accuracy.

[0058] Figure 11 is a flowchart illustrating the procedure of processing performed by the information processing device 200 according to Embodiment 1. After preliminary experiments are performed in the substrate processing device 100, the control unit 201 of the information processing device 200 reads the generation program PG1 from the storage unit 202 and executes it, thereby performing the following processing.

[0059] The control unit 201 acquires measurement data measured under nozzle fixing conditions (step S101). That is, the control unit 201 sets a different fixing position for the nozzle 131 for each substrate and acquires measurement data related to the etching rate for each of the multiple substrates etched by discharging the processing liquid from the nozzle 131 for a set time at each fixing position. The acquired measurement data related to the etching rate may be etching rate data, or it may be data on the etching amount and the discharge time of the processing liquid. In one example, the control unit 201 communicates with the substrate processing apparatus 100 via the communication unit 203 and acquires measurement data through communication. Alternatively, if measurement data is stored in external storage, the control unit 201 may access the external storage and acquire measurement data from the external storage.

[0060] The control unit 201 complements the acquired measurement data (step S102). If the acquired measurement data is, for example, data measured under nozzle fixed conditions with a 20 mm interval, the control unit 201 complements the 20 mm interval data into, for example, 1 mm interval data. For data complementation, known methods such as the k-nearest neighbor method may be used, or a machine learning model may be used.

[0061] The control unit 201 generates profile data to estimate the etching profile when the nozzle 131 is arbitrarily driven to perform etching on the substrate to be processed, based on the interpolated data (step S103). Based on the interpolated data, the control unit 201 generates matrix data as profile data, in which the nozzle position is the row, the position on the substrate is the column, and the element value of each element is the magnitude of the etching rate. The control unit 201 stores the generated profile data (data of the first matrix t) in the storage unit 202.

[0062] When the control unit 201 estimates the etching profile using the generated profile data, it reads the estimation program PG2 from the storage unit 202 and executes it, thereby performing the following processing.

[0063] The control unit 201 obtains the drive parameters for the nozzle 131 specified by the user (step S104). Since the drive parameters for the nozzle 131 are generally described in the process recipe, the control unit 201 can obtain the process recipe from the user terminal or the like and extract the drive parameters for the nozzle 131 from the obtained process recipe. The drive parameters for the nozzle 131 include, for example, the movement speed of the nozzle 131, the speed change position, and the nozzle stop time.

[0064] The control unit 201 converts the acquired nozzle 131 drive parameters into time information (step S105). Based on the information of the nozzle 131 included in the drive parameters, such as the movement speed, speed change position, and nozzle stop time, the control unit 201 calculates the stay time of the nozzle 131 at each nozzle position and generates matrix data with the nozzle position as the row and the element value of each element as the stay time. The control unit 201 stores the time information obtained by converting the drive parameters (data of the second matrix W) in the storage unit 202.

[0065] The control unit 201 estimates the etching profile based on the profile data generated in step S103 and the time information generated in step S105 (step S106). Specifically, the control unit 201 uses a first matrix t representing the time information and a second matrix W representing the profile data to perform a matrix calculation (t × WT The etching profile is estimated by performing the following operation. The etching profile is obtained as data on the amount of etching at position x on the substrate.

[0066] The control unit 201 outputs the estimated etching profile (step S107). The control unit 201 displays the estimated etching profile on the display unit 205, for example. Figure 12 shows an example of the etching profile display. Figure 12 shows an example of the etching profile displayed as a graph. The horizontal axis of the graph represents the position on the substrate, and the vertical axis represents the amount of etching. Alternatively, the control unit 201 may display numerical data of the estimated etching profile on the display unit 205. The control unit 201 may also notify the user terminal of the estimated etching profile (graph or numerical data).

[0067] As described above, in Embodiment 1, profile data used for etching profile estimation can be generated using a small number of measurement data, approximately 5 to 10. Furthermore, in Embodiment 1, etching profiles can be estimated using relatively simple calculations such as matrix calculations, thereby reducing the computational load. Moreover, Embodiment 1 can achieve higher estimation accuracy compared to conventional methods using machine learning models.

[0068] (Embodiment 2) Embodiment 2 describes a configuration in which the process recipe is optimized using the estimation results from profile data. The configuration of the substrate processing apparatus 100 and the information processing apparatus 200 is the same as in Embodiment 1, so their description will be omitted.

[0069] Figure 13 is a diagram showing an example of a process recipe. Figure 13 shows a partial excerpt of the drive parameters for the nozzle 131 from among the various parameters described in the process recipe. The drive parameters include, for example, the number of repetitions, the center fixing time, the end position and movement speed in swings 1 to 3, and the edge fixing time. The number of repetitions represents the number of repetitions of the swing 1 to 3 operations. The initial center fixing time represents the time for fixing the nozzle 131 at the center of the substrate before starting the swing 1 to 3 operations. The swing 1 operation represents a reciprocating motion in which the nozzle 131 is moved from the center of the substrate to the position specified by the end position at the speed specified by the movement speed, fixed for the time specified by the edge fixing time, and then moved back to the center of the substrate at the same speed. The same applies to swings 2 and 3. The edge fixing time is common to swings 1 to 3. The final center fixing time represents the time for fixing the nozzle 131 at the center of the substrate after the swing 1 to 3 operations are completed.

[0070] Figure 14 is a graph showing the etching profile when etching is performed according to the process recipe in Figure 13. The horizontal axis of the graph represents the position on the substrate, and the vertical axis represents the etching amount. As an indicator of the variation in etching amount, 3σ (σ is the standard deviation) was calculated and found to be 0.66 Å.

[0071] The information processing device 200 according to Embodiment 2 optimizes the process recipe so that the estimation result from the profile data approaches the ideal etching profile. Specifically, the information processing device 200 changes the drive parameters included in the process recipe and converts the changed drive parameters into time information. The information processing device 200 estimates the etching profile by performing matrix operations between the profile data (first matrix t) and the converted time information (second matrix W). The information processing device 200 compares the estimated etching profile with the ideal etching profile and updates the drive parameters according to the comparison result. The information processing device 200 optimizes the process recipe by repeatedly performing the following: updating the drive parameters, estimating the etching profile when etching is performed according to the updated drive parameters, and comparing it with the ideal etching profile.

[0072] The information processing device 200 can, for example, set a loss function (an appropriate function that outputs a smaller value the smaller the deviation) that shows the degree of deviation between the etching profile estimated using profile data and the ideal etching profile, and determine that an optimized process recipe has been obtained when the value of the set loss function falls below a threshold. The information processing device 200 can optimize the process recipe by repeatedly updating the drive parameters and evaluating them using the loss function with an existing optimization algorithm.

[0073] As an example, we present the results of optimizing the process recipe, using a flat profile where the etching amount is 1.5 Å regardless of the position on the substrate as the ideal etching profile. In this embodiment, conditions other than the nozzle 131 drive parameters, such as the chemical flow rate, chemical concentration, and wafer rotation speed, were fixed, while the center fixing time, the end position and movement speed in each swing operation, the number of swing operations, and the edge fixing time were the parameters to be updated.

[0074] Figure 15 is a chart showing the optimized process recipe, and Figure 16 is a graph showing the etching profile when the etching process is performed according to the optimized process recipe. As a result of the optimization, the number of swing operations increased from 3 to 5, and each parameter was updated as shown in Figure 15. The etching profile after optimization approached the ideal etching profile, as shown in Figure 16, and when 3σ (σ is the standard deviation) was calculated as an indicator of the variation in etching amount, it was found to be 0.30 Å. In other words, it was possible to reduce the variation by half compared to before optimization.

[0075] Figure 17 is a flowchart showing the processing procedure executed by the information processing device 200 according to Embodiment 2. The control unit 201 of the information processing device 200 reads the optimization program PG3 from the storage unit 202 and executes it at the timing after generating the profile data, thereby performing the following processing.

[0076] The control unit 201 acquires the process recipe to be optimized (step S201). If the process recipe to be optimized exists on the user terminal, the control unit 201 can acquire the process recipe to be optimized by communicating with the user terminal via the communication unit 203.

[0077] The control unit 201 estimates the etching profile when the etching process is performed according to the acquired process recipe (step S202). The etching profile estimation method is the same as in Embodiment 1. That is, the control unit 201 converts the drive parameters of the nozzle 131 included in the process recipe into time information, and estimates the etching profile by performing matrix calculations between a first matrix t representing the converted time information and a second matrix W representing the profile data.

[0078] The control unit 201 evaluates the degree of deviation between the estimated etching profile and the ideal etching profile (step S203). The ideal etching profile is set in advance by the user. For example, if the user desires uniform film thickness, a profile that results in a constant etching amount is set as the ideal etching profile. The control unit 201 can evaluate the degree of deviation between the etching profile estimated using the profile data and the ideal etching profile by setting a loss function that shows the degree of deviation between the two and calculating the value of the loss function.

[0079] The control unit 201 determines whether the optimization is complete based on the evaluation result of step S203 (step S204). The control unit 201 compares the output of the loss function with a pre-set threshold, and determines that the optimization of the process recipe is complete if the output of the loss function is less than the threshold.

[0080] If the output of the loss function is above a threshold, the control unit 201 determines that the optimization of the process recipe is not complete (S204: NO). In this case, the control unit 201 updates the drive parameters of the nozzle 131 (step S205) and returns the process to step S202. Existing algorithms such as Adam (Adaptive moment estimation) and SGD (Stochastic Gradient Descent) can be used as optimization algorithms to optimize the drive parameters.

[0081] When the output of the loss function falls below the threshold, the control unit 201 determines that the optimization of the process recipe is complete (S204: YES) and terminates the processing according to this flowchart. Through the above procedure, the control unit 201 can optimize the process recipe.

[0082] The information processing device 200 may generate control commands to execute the etching process according to the optimized process recipe. In this case, the control unit 201 generates control commands for the nozzle drive device 134 to drive the nozzle 131 according to the updated drive parameters included in the optimized process recipe, and performs processes such as outputting the generated control commands to the drive device 134.

[0083] (Embodiment 3) Embodiment 3 describes a configuration for displaying the operation of the nozzle 131. The configurations of the substrate processing device 100 and the information processing device 200 are the same as in Embodiment 1, so their description will be omitted.

[0084] Currently, the drive parameters of the nozzle 131 are described by the process recipe, and are often expressed as a combination of linear movements. However, ideally, the nozzle 131 should accelerate continuously or perform movements that cannot be described in steps, which would also improve the flexibility of the process recipe.

[0085] By determining the nozzle position at each time point using the optimization method described in Embodiment 2, it is possible to represent continuous nozzle movement. Figure 18 is a graph showing an example of optimized nozzle movement. The horizontal axis of the graph represents time, and the vertical axis represents the nozzle position. Such nozzle movement can be obtained by applying the optimization method described in Embodiment 2, using the nozzle position at each time point as a driving parameter. Once the nozzle position at each time point is determined, the movement speed of the nozzle 131 at each time point can be calculated.

[0086] When embedding the operation of the nozzle 131 in a process recipe, the control unit 201 may record data on the nozzle position and movement speed at each time point in a file and embed a link to the file in the process recipe.

[0087] Furthermore, on the recipe screen displaying the process recipe, only representative values ​​may be displayed instead of showing the detailed operation of the nozzle 131. These representative values ​​may include the minimum position (closest to the center of the substrate), maximum position (farthest from the center of the substrate), minimum speed, or maximum speed of the nozzle 131. In addition, when a display request for the drive parameters of the nozzle 131 is received, the control unit 201 may generate a graph and display the generated graph on the display unit 205.

[0088] Figure 19 is a schematic diagram showing an example of a recipe screen display. The recipe screen shown as an example in Figure 19 has a graph display button BT. When the control unit 201 receives an operation on the graph display button BT, it displays a graph showing the nozzle operation, as shown in Figure 18, on the display unit 205.

[0089] (Embodiment 4) In Embodiment 4, a configuration is described in which a process recipe including the drive parameters of the nozzle 131 is generated using a desired etching profile and profile data generated by the method described in Embodiment 1. The configuration of the substrate processing apparatus 100 and the information processing apparatus 200 is the same as in Embodiment 1, so their description will be omitted.

[0090] Figure 20 is an explanatory diagram illustrating the process recipe generation method in Embodiment 4. In Embodiment 1, profile data was generated from etching rate measurement data obtained in a preliminary experiment, and the etching profile when the nozzle 131 is arbitrarily driven on the substrate was estimated from this profile data. Specifically, a matrix calculation (= t × W) was performed using a first matrix t that represents time information related to the residence time of the nozzle 131 as a matrix, and a second matrix W that represents the profile data. T This explains how the etching profile is estimated.

[0091] Conversely, if a desired etching profile is provided, the information processing device 200 can obtain the first matrix t by performing matrix calculations between a matrix representing the given etching profile (let's call it the third matrix z) and a second matrix W representing the profile data, thereby determining the time profile of the nozzle 131. Here, the time profile of the nozzle 131 is data representing the relationship between the nozzle position and the dwell time of the nozzle 131. The information processing device 200 can derive the drive parameters of the nozzle 131 from the determined time profile and generate a process recipe that includes the drive parameters of the nozzle 131.

[0092] Figure 21 is a graph showing an example of the time profile calculation results. The graph in Figure 21 shows the calculation results when the Orthogonal Matching Pursuit (OMP) is applied as the calculation method for calculating the first matrix t from the third matrix z and the second matrix W described above. The horizontal axis of the graph is the nozzle position, and the vertical axis is the residence time of the nozzle 131. When using orthogonal matching pursuit, which is known as a method for recovering sparse signals, multiple nozzle positions and residence times (discrete solutions) can be obtained, such as a residence time of 18 seconds at the nozzle position of -140 mm, a residence time of 7 seconds at the nozzle position of -130 mm, a residence time of 11 seconds at the nozzle position of -115 mm, and so on. For the nozzle positions, predetermined positions such as -140 mm, -130 mm, ..., -20 mm may be used, or some or all of the nozzle positions may be made variable and calculated using OMP.

[0093] Figure 22 is a diagram showing an example of a process recipe generated from a time profile. Figure 22 shows a portion of a shuttle run recipe in which the nozzle 131 is driven back and forth over a set interval while discharging the processing liquid. The shuttle run recipe specifies that the nozzle 131 should be moved periodically towards the center of the substrate to prevent drying and distortion of the substrate center.

[0094] If the OMP calculation results in a solution of 18 seconds for the time spent at the nozzle position at -140 mm, the information processing device 200 outputs a recipe that, for example, involves three round trips from -140 mm to -20 mm at a movement speed of 240 mm / sec, with a 5-second stop before each round trip, so that the total time spent at the nozzle position at -140 mm is 18 seconds. Similarly, if the OMP calculation results in a solution of 7 seconds for the time spent at the nozzle position at -130 mm, the information processing device 200 outputs a recipe that, for example, involves two round trips from -130 mm to -20 mm at a movement speed of 220 mm / sec, with a 5-second stop in between, so that the total time spent at the nozzle position at -130 mm is 7 seconds. The same applies to round trip drives at other nozzle positions. The information processing device 200 can output a recipe for a given section by defining the time spent at the nozzle 131, the start position of movement, the end position of movement, the movement speed, and the number of round trips.

[0095] In this way, the information processing device 200 can generate a shuttle run recipe that discharges the processing liquid while driving the nozzle 131 back and forth over a set section, based on the calculation results of OMP (the position of the nozzle 131 and the time spent at each position, which are obtained as discrete solutions). The driving parameters for the nozzle 131 described in the recipe may include the position where the nozzle 131 should stop and the time spent at each position, or it may include information such as the moving speed of the nozzle 131.

[0096] Figure 23 is a diagram showing another example of a process recipe generated from a time profile. Figure 23 shows a portion of a ladder run recipe in which the processing liquid is discharged while driving the nozzle 131 in steps over a set section. A ladder run recipe is a recipe that, for example, divides the section from the periphery of the substrate to the center of the substrate into multiple sections and processes each section in order.

[0097] If the OMP calculation results in a solution indicating a dwell time of 18 seconds at the -140 mm nozzle position, the information processing device 200 outputs a recipe to move the nozzle 131 from the center of the substrate to the -140 mm nozzle position and then stop at the -140 mm nozzle position for 18 seconds. If the next solution indicates a dwell time of 7 seconds at the -130 mm nozzle position, the information processing device 200 outputs a recipe to move the nozzle from the -140 mm nozzle position to the -130 mm nozzle position and then stop at the -130 mm nozzle position for 7 seconds. The same applies to driving to other nozzle positions. The information processing device 200 can output recipes for each section by sequentially determining the starting position, speed, ending position, and dwell time at the ending position of the nozzle 131.

[0098] In this way, the information processing device 200 can generate a ladder run recipe that discharges the processing liquid while driving the nozzle 131 in steps over a set interval, based on the calculation results of OMP (the position of the nozzle 131 and the time spent at each position, which are obtained as discrete solutions). The driving parameters for the nozzle 131 described in the recipe may include the position where the nozzle 131 should stop and the time spent at each position, or it may include information such as the moving speed of the nozzle 131.

[0099] Figure 24 is a graph showing another example of the time profile calculation results. The graph in Figure 24 shows the calculation results when ridge regression is applied as the calculation method for calculating the first matrix t from the third matrix z and the second matrix W described above. The horizontal axis of the graph is the nozzle position, and the vertical axis is the dwell time of nozzle 131 per half scan.

[0100] Ridge regression is a method that determines coefficients by incorporating an L2 regularization term into the least squares method, and is suitable when the goal is to improve the generalization performance of the model rather than feature selection. Unlike orthogonal matching tracking, ridge regression provides the dwell time at each nozzle position as a solution for continuously changing nozzle positions.

[0101] The information processing device 200 approximates the solution obtained from ridge regression and calculates the movement speed of the nozzle 131 in each of the set intervals. Figure 25 is an explanatory diagram illustrating the method for calculating the movement speed. In the graph shown in Figure 25, the horizontal axis represents the nozzle position, and the vertical axis represents the dwell time of the nozzle 131 per half scan. In the example in Figure 25, multiple solutions with similar dwell times are grouped together and shown as rectangular regions. For each rectangular region, the information processing device 200 calculates the sum of the movement distance and dwell time within the region, and calculates the movement speed for each interval by dividing the movement distance by the dwell time. For example, in the interval from -30 mm to -45 mm where the nozzle position is, a movement speed called "speed 1" is calculated; in the interval from -45 mm to -95 mm, a movement speed called "speed 2" is calculated; and in the interval from -95 mm to -115 mm, a movement speed called "speed 3" is calculated. The same applies to other intervals.

[0102] The information processing device 200 generates a scan recipe based on the calculated movement speed for each section. Figure 26 is an explanatory diagram illustrating an example of scan recipe generation. The graph shown in Figure 26 shows the transition of the movement speed of the nozzle 131 per scan. The horizontal axis of the graph is time, and the vertical axis is the nozzle position. When movement speeds such as "speed 1", "speed 2", "speed 3", etc. are calculated for consecutive sections, the information processing device 200 can generate a scan recipe for each scan by connecting straight lines with slopes corresponding to these movement speeds. The information processing device 200 can calculate the etching amount from the generated scan recipe and calculates the number of repetitions of the scan recipe to match the desired etching profile. In Figure 26, the scan recipe is represented graphically for explanatory purposes, but in reality, the scan recipe is described by the starting position, movement speed, end position, etc., of the nozzle 131.

[0103] Figure 27 is a flowchart illustrating the process recipe generation procedure. The storage unit 202 of the information processing device 200 stores the profile data (second matrix W) generated by the method described in Embodiment 1.

[0104] The control unit 201 acquires the etching profile desired by the user (step S401). The etching profile is data that defines the amount of etching at each position on the substrate. The control unit 201 acquires the etching profile by communicating with the user terminal through the communication unit 203. Alternatively, the control unit 201 may acquire the etching profile by accepting numerical input or graph drawing through the operation unit 204.

[0105] The control unit 201 represents the acquired etching profile using a matrix (third matrix z) (step S402). For example, the etching profile is represented by a matrix in which the positions on the substrate are represented by columns and the values ​​in each column are the magnitude of the etching rate.

[0106] The control unit 201 calculates the time profile of the nozzle 131 by performing matrix calculations between a matrix representing the etching profile (third matrix z) and a matrix representing the profile data (second matrix W) (step S403). When orthogonal matching tracking is used as the calculation method for the matrix calculation, multiple positions of the nozzle 131 and the residence time at each position are obtained as discrete solutions. Alternatively, when ridge regression is used, multiple positions of the nozzle 131 and the residence time at each position are obtained as continuous solutions. Whether to use orthogonal matching tracking or ridge regression may be set in advance, or the user may be allowed to select it afterward. Furthermore, the control unit 201 may select the calculation method for the matrix calculation according to the type of recipe, such as using orthogonal matching tracking for shuttle run recipes or ladder run recipes, and ridge regression for normal scan recipes.

[0107] The control unit 201 generates a process recipe including the drive parameters for the nozzle 131 based on the calculated time profile (step S404). When orthogonal matching tracking is used as the calculation method for matrix calculation, multiple positions of the nozzle 131 and the time spent at each position are obtained as discrete solutions. Based on these calculation results, the control unit 201 can generate a process recipe that includes multiple positions where the nozzle 131 should stop and the time spent at each position as drive parameters. On the other hand, when ridge regression is used as the calculation method for matrix calculation, multiple positions of the nozzle 131 and the time spent at each position are obtained as continuous solutions. Based on these calculation results, the control unit 201 calculates the movement speed of the nozzle 131 in each section using approximate values ​​for each section, thereby generating a scan recipe that defines the transition of the movement speed of the nozzle 131 in one scan and the number of scan repetitions.

[0108] The control unit 201 outputs the generated process recipe (step S405). The control unit 201 displays the generated process recipe on the display unit 205, for example. Alternatively, the control unit 201 may notify the user terminal of the generated process recipe.

[0109] The control unit 201 may generate control commands to execute the etching process according to the generated process recipe. In this case, the control unit 201 generates control commands for the nozzle drive device 134 to drive the nozzle 131 according to the drive parameters included in the generated process recipe, and performs processes such as outputting the generated control commands to the drive device 134.

[0110] As described above, in Embodiment 4, a process recipe that realizes a desired etching profile can be generated by using profile data. In Embodiment 4, a process recipe can be generated by relatively simple calculations such as matrix calculations, thereby reducing the computational load.

[0111] In Embodiment 4, orthogonal matching tracking and ridge regression were exemplified as examples of matrix calculation applications. However, the information processing device 200 may calculate a time profile including the nozzle position and the dwell time at each nozzle position by using any regression method that inversely calculates the matrix, not limited to orthogonal matching tracking and ridge regression.

[0112] The embodiments disclosed herein should be considered in all respects to be illustrative and not restrictive. The scope of the invention is indicated by the claims, not in the sense described above, and all modifications within the sense and scope equivalent to the claims are intended.

[0113] Furthermore, the matters described in each embodiment can be combined with one another. The independent and dependent claims described in the claims can be combined with one another in any combination, regardless of the form of reference. Moreover, the claims may be described in a multi-claim format that references two or more other claims, or in a multi-claim format that references at least one multi-claim (multi-multi-claim format).

[0114] 100 Substrate processing device 110 Chamber 120 Substrate holding mechanism 130 Processing liquid supply mechanism 131 Nozzle 132 Processing liquid supply path 133 Processing liquid supply source 134 Drive device 200 Information processing device 201 Control unit 202 Storage unit 203 Communication unit 204 Operation unit 205 Display unit PG1 Generation program PG2 Estimation program PG3 Optimization program RM Recording medium

Claims

1. A computer program that causes a computer to perform the following processes:

1. Different nozzle fixing positions for each substrate, and for each of the multiple substrates etched by discharging processing liquid from the nozzle at each fixed position for a set time, measurement data related to the etching rate is acquired; 2. Based on the acquired measurement data, the computer interpolates the value related to the etching rate when the processing liquid is discharged at a position different from the fixed position; and 3. Based on the interpolated data, the computer generates profile data for estimating the etching profile when the nozzle is arbitrarily driven to perform etching on the substrate to be processed.

2. The computer program according to claim 1, which causes the computer to perform a process of obtaining the drive parameters of the nozzle and estimating the etching profile based on the obtained drive parameters and the profile data.

3. A computer program according to claim 2, which causes the computer to perform a process of estimating the etching profile by performing matrix calculations between the generated first matrix and the second matrix, which represents the relationship between the position of the nozzle on the substrate and the residence time of the nozzle at each position from the drive parameters, a second matrix represents the relationship between the position of the nozzle that discharged the processing liquid and the radial etching rate of the substrate at that position, as profile data.

4. The computer program according to claim 2, which causes the computer to perform a process to optimize the process recipe by obtaining a process recipe including the drive parameters, estimating an etching profile when the drive parameters included in the obtained process recipe are changed, based on the changed drive parameters and the profile data, and repeating the process of changing the drive parameters and estimating the changed etching profile so that the estimated etching profile approaches a desired etching profile.

5. The computer program according to claim 4, which causes the computer to perform a process to display a representative value of the drive parameter when it receives a request to display the drive parameter after it has been changed.

6. The computer program according to claim 4, which, upon receiving a request to display modified drive parameters, causes the computer to generate a graph representing the operation of the nozzle based on the drive parameters and to display the generated graph.

7. The computer program according to claim 4, which causes the computer to generate control commands for a nozzle drive device in order to drive the nozzle according to the modified drive parameters included in the optimized process recipe, and to output the generated control commands to the drive device.

8. The computer program according to claim 1, which causes the computer to perform a process of obtaining a desired etching profile and generating a process recipe that includes nozzle drive parameters for realizing the etching profile, based on the obtained etching profile and the generated profile data.

9. The computer program according to claim 8, which causes the computer to perform a process of generating a third matrix from the etching profile that represents the relationship between the position on the substrate and the etching rate at that position, generating a second matrix as profile data that represents the relationship between the position of the nozzle from which the processing liquid was discharged and the radial etching rate of the substrate at that position, and deriving the drive parameters by matrix calculation between the generated third matrix and the second matrix.

10. The computer program according to claim 9, wherein the drive parameters include a plurality of positions in which the nozzle should stop and the duration of stay of the nozzle at each position.

11. The computer program according to claim 10, which causes the computer to perform a process of generating a shuttle run recipe for discharging a processing liquid while driving the nozzle back and forth over a set section based on the drive parameters.

12. The computer program according to claim 10, which causes the computer to perform a process to generate a ladder run recipe that discharges a processing liquid while driving the nozzle in steps over a set interval based on the drive parameters.

13. The computer program according to claim 10, which causes the computer to perform a process to generate a scan recipe that defines the transition of the nozzle's movement speed in a single scan and the number of scan repetitions based on the drive parameters.

14. The computer program according to claim 8, which causes the computer to perform the process of generating control commands for a nozzle drive device in order to drive the nozzle according to the drive parameters included in the generated process recipe, and outputting the generated control commands to the drive device.

15. The computer program according to claim 1, which causes the computer to perform a process to supplement the measurement data using a machine learning model.

16. An information processing method that involves etching multiple substrates by varying the fixing position of the nozzle for each substrate and discharging a processing solution from the nozzle for a set time at each fixing position, acquiring measurement data related to the etching rate for each of the etched substrates, supplementing the etching rate value for when the processing solution is discharged at a position different from the fixed position based on the acquired measurement data, and generating profile data for estimating the etching profile when the nozzle is arbitrarily driven to perform etching on the substrate to be processed, based on the supplemented data, using a computer.

17. An information processing device comprising at least one control unit, wherein the control unit acquires measurement data relating to the etching rate for each of a plurality of substrates etched by discharging a processing solution from the nozzle at each fixed position for a set time, with the fixed position of the nozzle being different for each substrate, and based on the acquired measurement data, it interpolates the value relating to the etching rate when the processing solution is discharged at a position different from the fixed position, and based on the interpolated data, it generates profile data for estimating the etching profile when the nozzle is arbitrarily driven to perform etching on the substrate to be processed.