Computer program, information processing method, and information processing device
By conducting preliminary experiments and using matrix calculations to estimate and optimize etching profiles, the method addresses the inefficiencies in predicting ideal etching profiles, achieving high accuracy and reducing computational complexity.
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
The challenge in optimizing the etching process on substrates is the complexity of predicting the ideal etching profile due to nozzle movement and other factors, requiring extensive experimentation with varying parameters, which is time-consuming and inefficient.
A method involving preliminary experiments with fixed nozzle positions to measure etching rates, generating profile data, and using an information processing device to estimate and optimize the etching profile by calculating drive parameters that minimize deviation from a desired profile through matrix operations.
This approach allows for accurate estimation of etching profiles with a small amount of data and reduces computational load, achieving higher accuracy compared to machine learning models, and optimizes the process recipe to match the desired etching profile efficiently.
Smart Images

Figure JP2026000034_23072026_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] 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 a 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, a relatively small discharge flow rate, and is inclined so that the processing liquid is discharged in the rotational 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 is a computer program for optimizing a process recipe including drive parameters of a nozzle that discharges a processing liquid on a substrate to be processed, and is used for calculating a predicted etching profile when the nozzle is arbitrarily driven to perform an etching process on the substrate to be processed. The computer program causes a computer to execute a process of deriving drive parameters of the nozzle so that the degree of deviation between the predicted etching profile calculated using the acquired profile data and a desired etching profile is minimized under set conditions.
[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. This is a flowchart explaining the procedure of processing executed 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 executed by the information processing device according to Embodiment 2. This is a graph showing the derivation results of time information in Embodiment 3. This is a graph showing the derivation results of drive parameters in Embodiment 3. This is a graph showing the predicted etching profile in Embodiment 3. This is a graph showing the derivation results of time information in Embodiment 4. This graph shows the derivation results of the drive parameters in Embodiment 4. This graph shows the predicted etching profile in Embodiment 4. This graph shows the drive parameters for continuous nozzle operation. This is a schematic diagram showing an example of the recipe screen display.
[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 an etching process on the second substrate W2 under the nozzle fixing condition where the nozzle position is changed from X1 to X2. Similar to the case of the first substrate W1, the substrate processing apparatus 100 rotates the second substrate W2 held by the substrate holding mechanism 120 at a predetermined rotational speed, and discharges the processing liquid from the nozzle 131 at the nozzle position X2 for a set time to perform the etching process on the second substrate W2. The etching conditions other than the nozzle position are the same as those of the first substrate W1. The substrate processing apparatus 100 measures the etching rate of the second substrate W2 after the etching process, and outputs the measurement data of the obtained etching rate to the information processing apparatus 200. The same applies when changing from the second substrate W2 to the third substrate W3.
[0041] The substrate processing apparatus 100 executes the etching process under such nozzle fixing conditions on a plurality of (about 5 to 10) substrates W, measures the etching rate at each point on the line segment passing through the center of the substrate after the processing, and outputs the measured etching rate data to the information processing apparatus 200.
[0042] The etching profile when etching while moving the nozzle 131 from the center to the periphery of the substrate W 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 by fixing the nozzle 131.
[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 as the time set under 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 the vicinity of 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 amount of the measurement data using a CNN (Convolutional Neural Network) and interpolating the values between the data using the obtained feature amount.
[0046] Figure 6 is a graph showing the interpolated data. The graph in Figure 6 shows the data obtained by interpolating the measurement data from Figure 5, which was measured under nozzle fixing conditions with nozzles spaced 20 mm apart, to 1 mm intervals. The interpolated data consists of the measurement data and the interpolated values obtained by interpolating the measurement data. The graph in Figure 6 shows the etching amount values determined when the position x on the substrate and the nozzle position are specified. In the graph in Figure 6, 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 1 mm.
[0047] The information processing device 200 generates profile data based on the interpolated data in order to estimate the etching profile when the nozzle 131 is arbitrarily driven to perform etching on the substrate to be processed.
[0048] Figure 7 is a conceptual diagram showing an example of profile data. Figure 7 shows a contour map in which the horizontal axis represents the nozzle position, the vertical axis represents the position on the substrate, and the etching rate (amount of etching per unit time) is represented by shades of grayscale. For explanatory purposes, Figure 7 shows the profile data as a contour map, but internally, the profile data is generated as matrix 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. If the interpolated data has 140 points in the nozzle position direction (points divided into 1 mm intervals from -140 mm to 0 mm) and 140 points in the substrate position direction (points divided into 2 mm intervals from -140 mm to 140 mm), then a matrix of 140 rows x 140 columns is generated as profile data. The generated profile data is stored in the storage unit 202 of the information processing device 200.
[0049] In addition, if the etching process is performed in a preliminary experiment while the nozzle 131 is driven back and forth between the center of the substrate and a fixed position, the profile data should be generated taking into account the time required for the back-and-forth movement.
[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 the 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 can estimate the etching profile by calculating the matrix t × WT.
[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. The accuracy evaluation index is R. 2 The values 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. The 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 second matrix W) 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 dwell time of the nozzle 131 at each nozzle position and generates matrix data in which the nozzle position is the row and the element value of each element is the dwell time. The control unit 201 stores the time information obtained by converting the drive parameters (data of the first matrix t) 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 method for optimizing the process recipe using 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 converted time information (first matrix t) and the profile data (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) In Embodiment 3, a first method for optimizing the process recipe by linear algebra calculation using profile data will be described. 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.
[0084] As described in Embodiment 1, since the predicted etching profile can be derived solely by matrix calculation, the theoretically optimal drive parameters for the nozzle 131 can be derived by linear algebra calculation. However, if the drive parameters for the nozzle 131 are determined solely by minimizing the discrepancy between the ideal etching profile and the predicted etching profile derived by matrix calculation, it may result in physically impossible drive parameters, such as the nozzle 131 instantaneously moving from one location to another. Therefore, in Embodiment 3, the drive parameters for the nozzle 131 are derived in such a way that the discrepancy between the ideal etching profile and the predicted etching profile is minimized, while imposing the condition that the movement of the nozzle 131 follows physical laws.
[0085] Specifically, the control unit 201 of the information processing device 200 derives the drive parameters of the nozzle 131 by theoretically solving the equation shown in Equation 1.
[0086]
[0087] Here, z is a matrix representing the ideal etching profile, t is a matrix representing the time information of nozzle 131 (first matrix), and W is a matrix representing the profile data (second matrix). z is given in advance, for example, as the etching profile desired by the user. t is a parameter to be derived by equation 1, and W is data generated using the method of Embodiment 1. ||・||2 is the L2 norm, and arg min means the parameter that minimizes the given function (first matrix t in equation 1). The part following such that (st) is a condition imposed when deriving the parameter, and m t ||・||0 represents the travel time of nozzle 131, ||・||0 represents the L0 norm, and K represents the number of times nozzle 131 stops. Equation 1 represents a function that derives the parameters of nozzle 131 (time information during nozzle operation) such that the degree of deviation from the ideal etching profile is smallest, given the conditions that the etching time in each section is greater than or equal to the travel time of nozzle 131 and that the number of non-zero elements is kept constant (i.e., the number of times nozzle 131 stops is reduced to a set number (=K)).
[0088] The control unit 201 theoretically solves equation 1 using existing methods such as the non-negative least squares method to derive the parameters of the nozzle 131 (time information during nozzle operation) that minimize the deviation from the ideal etching profile.
[0089] Figure 18 is a graph showing the results of deriving time information in Embodiment 3. Figure 18 shows the results of deriving time information during nozzle driving using Equation 1, with the ideal etching profile being a flat profile where the etching amount is 1.5 Å regardless of the position on the substrate, and the value of K being 10. The horizontal axis of the graph represents the nozzle position, and the vertical axis represents the etching time (stay time of nozzle 131). In this example, since the value of K was set to 10, parameters were obtained such that the nozzle 131 stops 10 times between the center of the substrate and the periphery of the substrate. By changing the value of K, it is possible to control the number of times the nozzle 131 stops on the substrate.
[0090] The control unit 201 derives the drive parameters for the nozzle 131 from the time information derived by equation 1.
[0091] Figure 19 is a graph showing the derivation results of the drive parameters in Embodiment 3. The horizontal axis of the graph represents the elapsed time from the start of driving the nozzle 131, and the vertical axis represents the nozzle position. Such drive parameters can be derived using a rule-based method from the time information during nozzle driving derived using Equation 1. For example, the drive parameters of the nozzle can be derived by applying rules such as (1) always move at a set speed or set acceleration and stop at a specified position to match the predicted time, and (2) subtract the movement time in the stopping section from the stopping time. Figure 19 shows the drive parameters of the nozzle 131 obtained when the above rules are applied to the time information shown in Figure 18.
[0092] Figure 20 is a graph showing the predicted etching profile in Embodiment 3. The horizontal axis of the graph represents the position on the substrate, and the vertical axis represents the etching amount. The predicted etching profile is calculated by matrix calculation (t × W) between a matrix representing time information during nozzle drive (first matrix t) and a matrix representing profile data (second matrix W), as described in Embodiment 1. T This is obtained by performing the following. For the time information during nozzle driving, the time information derived from Equation 1 can be used. When 3σ (σ is the standard deviation) was calculated as an index representing the variation in etching amount, it was found to be 0.146 Å, which was a 78% reduction in 3σ compared to the methods described in Embodiments 1 and 2.
[0093] As described above, in Embodiment 3, the theoretically optimal drive parameters for the nozzle 131 can be derived by linear algebra calculation without performing optimization calculations, thus enabling further reduction of man-hours. In addition, in Embodiment 3, a process recipe framework is unnecessary, and there is no need to assume base drive parameters, making it possible to generate more complex and optimal recipes.
[0094] (Embodiment 4) In Embodiment 4, a second method for optimizing the process recipe by linear algebra calculation using profile data will be described. 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.
[0095] In Embodiment 3, the drive parameters for the nozzle 131 were derived by theoretically solving Equation 1. Since Equation 1 includes the condition of reducing non-zero elements to a certain number, the time information during nozzle drive derived from Equation 1 shows spike-like etching times as shown in Figure 18. In Embodiment 3, the drive parameters for the nozzle 131 are derived in such a way as to reproduce these spike-like etching times, so drive parameters are obtained that repeat the movement and short-time stopping of the nozzle 131 within the range from the center to the periphery of the substrate for a set number of times (= K times). Therefore, in Embodiment 4, the drive parameters for the nozzle 131 are derived under conditions that allow the spike-like etching time to be relaxed into a continuous etching time, so as to be easier to implement in the substrate processing apparatus 100.
[0096] Specifically, the control unit 201 of the information processing device 200 derives the drive parameters of the nozzle 131 by theoretically solving the equation shown in Equation 2.
[0097]
[0098] Here, z is a matrix representing the ideal etching profile, t is a matrix representing the time information of nozzle 131 (first matrix), and W is a matrix representing the profile data (second matrix). z is given in advance, for example, as the etching profile desired by the user. t is a parameter to be derived by equation 2, and W is data generated using the method of Embodiment 1. λ||t||2 is the L2 regularization term. By introducing this L2 regularization term, it is possible to prevent the parameter t from becoming large (i.e., resulting in spike-like etching times). Also, t center and t edgeBy introducing this term, spike-like etching times are allowed at the center and periphery of the substrate. ||・||2 is the L2 norm, and arg min is the parameter that minimizes the given function (in Equation 2, the first matrix t). The terms such that (st) and below are the conditions imposed when deriving the parameters. In Equation 2, the condition that t is greater than or equal to 0 is imposed (a condition that requires that it be physically achievable). Equation 2 represents a function that derives parameters (time information during nozzle drive) that minimize the L2 norm while satisfying the conditions such that (st) and below.
[0099] Equation 2 is a modified form of ridge regression and can be solved using existing methods. The control unit 201 derives the parameters of the nozzle 131 (time information during nozzle operation) by solving Equation 2.
[0100] Figure 21 is a graph showing the results of deriving time information in Embodiment 4. Figure 21 shows the results of deriving time information during nozzle drive using Equation 2, with a flat profile where the etching amount is 1.5 Å regardless of the position on the substrate being defined as the ideal etching profile. The horizontal axis of the graph represents the nozzle position, and the vertical axis represents the etching time (stay time of nozzle 131). Since Equation 2 allowed spike-like etching times at the center and periphery of the substrate, spike-like etching times appear at the center and periphery of the substrate in the graph of Figure 21. On the other hand, no spike-like etching times appear in the section between the center and periphery of the substrate, and a smoothly changing etching time is obtained overall.
[0101] The control unit 201 derives the drive parameters for the nozzle 131 from the time information derived by equation 2.
[0102] Figure 22 is a graph showing the results of deriving the drive parameters in Embodiment 4. The horizontal axis of the graph represents the elapsed time since the start of driving the nozzle 131, and the vertical axis represents the nozzle position. Such drive parameters can be derived using a rule-based method from the time information during nozzle driving derived using Equation 1. For example, the drive parameters of the nozzle can be derived by applying rules such as (1) starting from 0 mm and accumulating time every 1 mm, (2) determining the initial speed when it has moved 3 mm and setting the accumulated time to 0, (3) calculating the travel time from the current travel speed and travel distance and comparing it with the accumulated time, and (4) updating the speed if the accumulated time exceeds a threshold. Figure 22 shows the drive parameters of the nozzle 131 obtained when the above rules are applied to the time information shown in Figure 21.
[0103] Figure 23 is a graph showing the predicted etching profile in Embodiment 4. The horizontal axis of the graph represents the position on the substrate, and the vertical axis represents the etching amount. The predicted etching profile is calculated by matrix calculation (t × W) between a matrix representing time information during nozzle drive (first matrix t) and a matrix representing profile data (second matrix W), as described in Embodiment 1. T This is obtained by executing the following. For the time information during nozzle driving, the time information derived from Equation 2 can be used. When 3σ (σ is the standard deviation) was calculated as an index representing the variation in etching amount, it was found to be 0.15 Å. In Embodiment 4, although the variation is slightly larger compared to the method described in Embodiment 3, it can be seen that a profile close to the ideal etching profile can be achieved by the continuous movement of the nozzle 131.
[0104] As described above, in Embodiment 4, the theoretically optimal drive parameters for the nozzle 131 can be derived by linear algebra calculation without performing optimization calculations, thus enabling further reduction of man-hours. In addition, in Embodiment 4, a profile close to the ideal etching profile can be achieved by the continuous movement of the nozzle 131.
[0105] (Embodiment 5) Embodiment 5 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.
[0106] 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.
[0107] By determining the nozzle position at each time point using the method described in Embodiment 4, it is possible to represent continuous nozzle movement. Figure 24 is a graph showing the drive parameters for continuous nozzle movement. The horizontal axis of the graph represents time, and the vertical axis represents the nozzle position. Such drive parameters can be obtained, for example, by using the method described in Embodiment 4. Once the nozzle position at each time point is determined, the movement speed of the nozzle 131 at each time point can be calculated.
[0108] To achieve such continuous nozzle movement, it is necessary to precisely control the starting position, stopping position, and stopping time of the nozzle 131, making it difficult to reflect this in the process recipe and complicating maintenance and operation. For this reason, 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.
[0109] 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.
[0110] Figure 25 is a schematic diagram showing an example of a recipe screen display. In the recipe screen shown as an example in Figure 25, a graph display button BT is located. 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 24, on the display unit 205.
[0111] 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.
[0112] 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).
[0113] 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 for optimizing a process recipe including drive parameters for a nozzle that discharges a processing liquid onto a substrate to be processed, wherein the program causes the computer to perform a process to obtain profile data used to calculate a predicted etching profile when the nozzle is arbitrarily driven to perform an etching process on the substrate to be processed, and to derive the drive parameters for the nozzle such that the degree of deviation between the predicted etching profile calculated using the obtained profile data and the desired etching profile is minimized under set conditions.
2. The computer program according to claim 1, wherein the conditions are set such that the movement of the nozzle conforms to the laws of physics.
3. The computer program according to claim 1, wherein the condition is that the etching time in any movement section of the nozzle is equal to or greater than the time required for the nozzle to move through the movement section.
4. The computer program according to claim 1, wherein the condition includes a condition that limits the number of times the nozzle is stopped to a set number.
5. The computer program according to claim 1, wherein the conditions are set such that the etching time at each position on the substrate changes continuously.
6. A computer program according to any one of claims 1 to 5, which causes the computer to perform a process of deriving the drive parameters of the nozzle by linear algebra calculation.
7. The computer program according to claim 1, wherein the profile data is generated by interpolating the etching rate data of multiple substrates etched by discharging the processing solution from the nozzle at a position different from the fixed position for each substrate, with respect to the etching rate when the processing solution is discharged at a position different from the fixed position.
8. The computer program according to claim 1, which causes the computer to perform a process of deriving the predicted etching profile by matrix calculation between a first matrix representing the relationship between the position of the nozzle on the substrate and the residence time of the nozzle at each position, and a second matrix representing the relationship between the position of the nozzle that discharged the processing liquid and the radial etching rate of the substrate at that position.
9. The computer program according to claim 1, which, upon receiving a request to display a derived drive parameter, causes the computer to perform a process to display a representative value of the drive parameter.
10. The computer program according to claim 1, which, upon receiving a request to display derived drive parameters, causes the computer to perform the process of generating a graph representing the operation of the nozzle based on the drive parameters and displaying the generated graph.
11. The computer program according to claim 1, 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 modified drive parameters included in the optimized process recipe, and outputting the generated control commands to the drive device.
12. An information processing method for optimizing a process recipe including drive parameters for a nozzle that discharges a processing liquid onto a substrate to be processed, comprising: acquiring profile data used to calculate a predicted etching profile when the nozzle is arbitrarily driven to perform an etching process on the substrate to be processed; and using a computer to perform a process to derive the drive parameters for the nozzle such that the degree of deviation between the predicted etching profile calculated using the acquired profile data and the desired etching profile is minimized under set conditions.
13. An information processing apparatus comprising at least one control unit for optimizing a process recipe including drive parameters for a nozzle that discharges a processing liquid onto a substrate to be processed, wherein the control unit acquires profile data used to calculate a predicted etching profile when the nozzle is arbitrarily driven to perform an etching process on the substrate to be processed, and derives the drive parameters for the nozzle such that the degree of deviation between the predicted etching profile calculated using the acquired profile data and a desired etching profile is minimized under set conditions.