Method, system and equipment for automatically adjusting formula of semiconductor equipment

By training the automatic adjustment model to generate a formula adjustment solution, the problem of semiconductor equipment reliance on manual adjustment is solved, efficient and stable automatic adjustment is achieved, and production efficiency and product quality are improved.

CN120295230APending Publication Date: 2025-07-11上海朋熙半导体股份有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510306481.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-14
Publication Date
2025-07-11

AI Technical Summary

Technical Problem

In the prior art, the recipe adjustment of semiconductor equipment requires the support of machine software and specific control systems. Relying on professional engineers to adjust, real-time adjustment cannot be achieved, resulting in high cost, low efficiency and unreliable quality.

Method used

By obtaining combined data, training automatic adjustment models, generating formula adjustment solutions, and downloading them to the machine terminal for execution, reducing dependence on engineers and realizing automatic adjustment.

Benefits of technology

Improve production efficiency, reduce error rate and quality risks, reduce human operation errors, and improve product yield.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120295230A_ABST
    Figure CN120295230A_ABST
Patent Text Reader

Abstract

The embodiment of the invention relates to the technical field of semiconductors, and discloses an automatic formula adjustment method, system and equipment for semiconductor equipment, and the method comprises the steps: obtaining combined data which comprises product data and technological process data; the combined data is substituted into a trained automatic adjustment model, a formula adjustment scheme is obtained, and the formula adjustment scheme at least comprises a pre-estimated and adjusted formula strategy, an adjustment execution time point and an adjustment type of the formula strategy; and downloading the formula adjustment scheme to a machine end, and controlling the machine end to execute the formula adjustment scheme. According to the scheme, the technical problems that in the prior art, a professional engineer needs to adjust the formula according to the actual machine condition of the machine table, real-time adjustment cannot be achieved, and the adjustment efficiency is too low can be at least solved. According to the method, the formula adjustment parameters can be quickly determined, the production efficiency is improved, manual operation errors are reduced, and the product yield is further improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of semiconductor technology, and particularly to a method, system, and device for automatically adjusting the recipe of a semiconductor device. Background Art

[0002] Recipe refers to the general term for process recipes used in the semiconductor manufacturing process. For different process technologies and the characteristics of processing equipment, a batch of parameter combinations are set in advance and continuously optimized through experiments to achieve the best production effect. Recipe is the "method" among the five major elements (man, machine, material, method, and environment) in the semiconductor manufacturing industry, the crystallization of the wisdom of countless engineers, and an intangible intellectual asset. It is the unique weapon and expertise of each semiconductor manufacturer. Moreover, the main reasons for the differences between semiconductor manufacturing industries are the differences in Recipe and the ability to optimize Recipe.

[0003] However, the Recipe formulated through experiments generally needs to be slightly adjusted according to differences in machines, environments, etc. during actual application. Moreover, the condition of the machine changes with the change in the usage time of parts, and the condition of the chamber is constantly changing, resulting in different process effects for the same Recipe.

[0004] The existing Recipe adjustment methods generally require the support of machine software and a specific control system, and professional engineers need to adjust the Recipe according to the actual condition of the machine, which cannot be adjusted in real time, resulting in a high adjustment loss cost, a low adjustment efficiency, and an inability to guarantee the adjustment quality.

[0005] Therefore, there is an urgent need for a technical solution that can automatically adjust the recipe of semiconductor equipment to ensure the stability of adjustment quality and adjustment efficiency and reduce the adjustment error rate. Summary of the Invention

[0006] An object of this application is to provide a method, system, and device for automatically adjusting the recipe of a semiconductor device, at least to solve the technical problems that the existing Recipe adjustment methods generally require the support of machine software and a specific control system, and professional engineers need to adjust the Recipe according to the actual condition of the machine, which cannot be adjusted in real time, resulting in a high adjustment loss cost, a low adjustment efficiency, and an inability to guarantee the adjustment quality.

[0007] To achieve the above object, some embodiments of this application provide the following aspects:

[0008] In a first aspect, some embodiments of the present application provide a method for automatically adjusting the recipe of a semiconductor device, including: obtaining combined data, where the combined data includes product data and process flow data; substituting the combined data into a trained automatic adjustment model to obtain a recipe adjustment plan, where the recipe adjustment plan at least includes a predicted adjustment recipe strategy, a time point for adjustment execution, and an adjustment type of the recipe strategy; downloading the recipe adjustment plan to the machine end and controlling the machine end to execute the recipe adjustment plan.

[0009] Further, before substituting the combined data into the trained automatic adjustment model, the method also trains the automatic adjustment model through the following steps: obtaining a data set, where the data set includes multiple groups of training sets, verification sets matching each group of training sets, and multiple groups of test sets; training the automatic adjustment model based on the multiple groups of training sets to obtain the training results of each group of training sets, where the training results are the recipe adjustment plans corresponding to the training sets; verifying the training results of each group of training sets based on the verification sets matching each group of training sets to obtain the verification results corresponding to each group of verification sets; determining whether the automatic adjustment model is successfully verified based on the verification results corresponding to each group of verification sets; testing the successfully verified automatic adjustment model based on the multiple groups of test sets to obtain the test results of each group of test sets, and selectively retraining the successfully verified automatic adjustment model based on the test results of each group of test sets.

[0010] Further, obtaining the data set includes: obtaining a historical data set, where the historical data set includes historical recipe data, historical process data, and historical adjustment data; preprocessing the obtained historical data set to obtain a processed historical data set; generating a data set composed of multiple groups of training sets, verification sets matching each group of training sets, and multiple groups of test sets based on the processed historical data set.

[0011] Further, the obtaining of the historical data set includes: obtaining a formula historical adjustment database, where each record of formula historical adjustment, adjustment parameters, and measurement data are stored in the formula historical adjustment database; obtaining the historical replacement time points of the target materials; based on the formula historical adjustment database and the historical replacement time points of the target materials, constituting historical adjustment data; obtaining a historical process flow database, where the environmental voltage, power, gas flow rate, and different types of fault data corresponding to each production process are stored in the historical process flow database; based on the historical process flow database, constituting historical process data; obtaining a historical formula execution database corresponding to each production process, where the historical formula execution database includes multiple groups of executed historical formula data corresponding to the production process; based on the historical formula execution database corresponding to each production process, constituting historical formula data; based on the historical adjustment data, historical process data, and historical formula data, constituting a historical data set.

[0012] Further, the training of the automatic adjustment model based on the multiple groups of training sets to obtain the training results of each group of training sets includes: based on the multiple groups of training sets, determining multiple groups of formula adjustment plans corresponding to each group of training sets; screening the multiple groups of formula adjustment plans corresponding to each group of training sets to obtain the screened formula adjustment plans corresponding to each group of training sets; based on the number of the screened formula adjustment plans corresponding to each group of training sets, selectively selecting one group of formula adjustment plans as the formula adjustment plan corresponding to the training set; and using the formula adjustment plan corresponding to the training set as the training result of the training set.

[0013] Further, the screening of the multiple groups of formula adjustment plans corresponding to each group of training sets to obtain the screened formula adjustment plans corresponding to each group of training sets includes: predicting the multiple groups of formula adjustment plans corresponding to each group of training sets to generate estimated value data corresponding to each group of formula adjustment plans; based on the estimated value data corresponding to each group of formula adjustment plans, determining the accuracy rate and deviation value of each group of estimated value data; if the accuracy rate of the estimated value data is lower than a preset accuracy rate threshold, or the deviation value exceeds a preset deviation value threshold, then eliminating the formula adjustment plan; otherwise, retaining the formula adjustment plan; so as to obtain the screened formula adjustment plans corresponding to each group of training sets.

[0014] Further, the method of selectively selecting one set of formulation adjustment schemes corresponding to the training set based on the number of the filtered formulation adjustment schemes corresponding to each set of training sets includes: if the number of the filtered formulation adjustment schemes corresponding to the training set exceeds a preset number threshold, selecting one set of formulation adjustment schemes with the highest accuracy rate and the lowest deviation value from the multiple sets of filtered formulation adjustment schemes corresponding to the training set as the formulation adjustment scheme corresponding to the training set; and using the formulation adjustment scheme corresponding to the training set as the training result of the training set; otherwise, dynamically adjusting the filtered formulation adjustment schemes corresponding to the training set to obtain multiple sets of dynamically adjusted formulation adjustment schemes; and filtering the multiple sets of dynamically adjusted formulation adjustment schemes to obtain the multiple sets of filtered and dynamically adjusted formulation adjustment schemes corresponding to the training set; and re-executing the step of "selectively selecting one set of formulation adjustment schemes corresponding to the training set based on the number of the filtered formulation adjustment schemes corresponding to each set of training sets" and subsequent steps.

[0015] Further, the method of verifying the training result of each set of training sets based on the validation set matched with each set of training sets to obtain the verification result corresponding to each validation set includes: if the accuracy rate and deviation value of the predicted value data corresponding to the formulation adjustment scheme in the training result of the training set are both higher than the accuracy rate and deviation value in the validation set matched with the training set, determining that the verification result corresponding to the training result of the training set is verification successful; otherwise, adding 1 to the number of training times corresponding to the training set; if the number of training times corresponding to the training set exceeds a preset training times threshold, determining that the verification result corresponding to the training result of the training set is verification failed; otherwise, re-training the automatic adjustment model based on the training set to obtain the secondary training result of the training set; and verifying the secondary training result of the training set based on the validation set matched with the training set to obtain the secondary verification result of the training set: if the secondary verification result of the training set is verification successful, determining that the verification result corresponding to the secondary training result of the training set is verification successful and recording the number of training times corresponding to the training set; otherwise, re-executing the step of "adding 1 to the number of training times corresponding to the training set" and subsequent steps; so as to obtain the verification result corresponding to each validation set.

[0016] In a second aspect, some embodiments of the present application further provide a recipe automatic adjustment system for a semiconductor device applying the recipe automatic adjustment method as described in the above embodiments, including: a collection unit, a communication unit, and a calculation unit; wherein, the collection unit is used to obtain combined data and a historical data set; the communication unit is used for information interaction between the system and the machine platform; the calculation unit is used to train an automatic adjustment model using the data set; substitute the fixed parameters in the recipe to be adjusted into the automatic adjustment model to obtain a recipe adjustment plan based on the combined data.

[0017] In a third aspect, some embodiments of the present application further provide an electronic device, which includes: one or more processors; and a memory storing computer program instructions, and when the computer program instructions are executed, the processors execute the steps of the method as described above.

[0018] Compared with the related art, in the solution provided by the embodiments of the present application, by substituting the obtained combined data into the trained automatic adjustment model, a corresponding recipe adjustment plan is obtained, and then by downloading the recipe adjustment plan to the machine platform and controlling the machine platform to execute the recipe adjustment plan, the rapid determination of recipe adjustment parameters is realized, the error rate and quality risk are reduced, the production efficiency is improved, thereby reducing the collaboration cost caused by errors, reducing human operation errors, and further improving the product yield. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] One or more embodiments are exemplarily illustrated by pictures in the corresponding drawings. These exemplary illustrations do not constitute limitations on the embodiments. Elements with the same reference numerals in the drawings are represented as similar elements, unless otherwise stated, and the drawings in the drawings do not constitute a proportional limitation.

[0020] Figure 1 It is a schematic flowchart of a recipe automatic adjustment method for a semiconductor device provided by an embodiment of the present application;

[0021] Figure 2 It is a schematic flowchart of a method for training an automatic adjustment model provided by an embodiment of the present application;

[0022] Figure 3 It is a schematic structural diagram of a recipe automatic adjustment system for a semiconductor device provided by an embodiment of the present application;

[0023] Figure 4 It is an exemplary structural diagram of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0024] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of this application. Apparently, the described embodiments are some, but not all, of the embodiments of this application. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in this application without creative efforts shall fall within the scope of protection of this application.

[0025] An embodiment of this application discloses a method for automatically adjusting the recipe of a semiconductor device. By predicting the relationship between key parameters and the yield based on historical measurement data and the yield, a range of key parameters with a yield higher than the threshold is found, providing intelligent recommendations to engineers, reducing the dependence on engineers' experience, and improving production efficiency.

[0026] First Embodiment

[0027] Figure 1 It is a schematic flowchart of a method for automatically adjusting the recipe of a semiconductor device provided by an embodiment of this application. As Figure 1 shown, the first embodiment of this application relates to a method for automatically adjusting the recipe of a semiconductor device, including the following steps:

[0028] Step S101, obtain combined data, where the combined data includes product data and process flow data;

[0029] It should be understood that in the semiconductor manufacturing process, process flow data refers to various variables that control the manufacturing process, such as temperature, pressure, gas flow rate, exposure time, etc. These data have a direct impact on the quality of the final product. Embodiments of this application require detailed recording of the process flow data used for each batch of wafers during the manufacturing process. These data may include, but are not limited to, photolithography process parameters: exposure energy, focal length, mask offset, etc.; etching process parameters: gas flow rate, RF power, pressure, etc.; thin film deposition parameters: temperature, pressure, gas ratio, etc.; chemical mechanical planarization (CMP) parameters: pressure, rotation speed, polishing liquid composition, etc. These data should be recorded in a structured form for subsequent data processing and analysis.

[0030] In one embodiment, record the recipe strategy in the recipe adjustment plan executed for each batch of wafers during the manufacturing process; sample and test some wafers in each batch to obtain the measurement data of the product; associate and store the measurement data with the corresponding recipe strategy to obtain a recipe historical adjustment database, where the recipe historical adjustment database includes records of each recipe historical adjustment, the PPID (Product Part Identification) of the wafer, adjustment parameters, and measurement data.

[0031] Step S102: Substitute the combined data into the trained automatic adjustment model to obtain a recipe adjustment plan, where the recipe adjustment plan at least includes the estimated adjusted recipe strategy, the time point for adjustment execution, and the adjustment type of the recipe strategy;

[0032] Specifically, the adjustment types of the recipe strategy are respectively call adjustment and download adjustment; when the estimated adjusted recipe strategy in the recipe adjustment plan does not exist at the machine end, the adjustment type of the recipe strategy is download adjustment; otherwise, the adjustment type of the recipe strategy is call adjustment.

[0033] Figure 2 This is a schematic flowchart of a process for training an automatic adjustment model provided by an embodiment of the present application. As Figure 2 shown, before substituting the combined data into the trained automatic adjustment model, the method also trains the automatic adjustment model through the following steps:

[0034] Step S201: Obtain a data set, where the data set includes multiple groups of training sets, verification sets matching each group of training sets, and multiple groups of test sets;

[0035] Specifically, obtaining the data set includes:

[0036] Obtain a historical data set, where the historical data set includes historical recipe data, historical process data, and historical adjustment data;

[0037] Preprocess the obtained historical data set to obtain a processed historical data set;

[0038] Based on the processed historical data set, generate a data set composed of multiple groups of training sets, verification sets matching each group of training sets, and multiple groups of test sets.

[0039] Specifically, obtaining the historical data set includes:

[0040] Obtain a recipe historical adjustment database, where the recipe historical adjustment database stores records of each recipe historical adjustment, adjustment parameters, and measurement data;

[0041] Obtain the target material historical replacement time point;

[0042] Based on the recipe historical adjustment database and the target material historical replacement time point, form historical adjustment data;

[0043] Obtain a historical process flow database, where the historical process flow database stores the environmental voltage, power, gas flow rate, and different types of fault data corresponding to each production process;

[0044] Based on the historical process flow database, form historical process data;

[0045] Obtain the historical formula execution database corresponding to each production process, where the historical formula execution database includes multiple sets of executed historical formula data corresponding to the production process;

[0046] Based on the historical formula execution database corresponding to each production process, form historical formula data;

[0047] Based on the historical adjustment data, historical process data, and historical formula data, form a historical data set.

[0048] Specifically, the training set includes measurement data corresponding to product data and historical process data corresponding to process flow data; the validation set includes historical formula adjustment data corresponding to the training set; the data format in the test set is the same as that in the training set.

[0049] Specifically, the different types of fault data include fault detection data, fault classification data, and fault repair data.

[0050] Specifically, the preprocessing of the obtained historical data set to obtain the processed historical data set includes:

[0051] Perform data cleaning on the obtained historical data set to obtain the cleaned historical data set, so as to remove duplicate, invalid, or abnormal data;

[0052] Perform data error correction on the cleaned historical data set to obtain the error-corrected historical data set, and perform interpolation or filling processing on the missing data;

[0053] Perform standardization processing on the error-corrected historical data set to obtain a historical data set with a consistent data format, and perform standardization or normalization processing on the data to improve the training effect of the automatic adjustment model;

[0054] To obtain the processed historical data set.

[0055] In the above embodiment, by cleaning the historical data set, duplicate, incorrect, or inconsistent data is removed to ensure the validity and representativeness of the data, and standardization processing is performed to ensure the data quality and consistency, so as to facilitate subsequent data splitting and screening of the processed historical data set, and then obtain the data set.

[0056] Step S202, train the automatic adjustment model based on the multiple sets of training sets to obtain the training results of each training set, where the training result is the formula adjustment plan corresponding to the training set;

[0057] Specifically, training the automatic adjustment model based on the multiple groups of training sets, and the training results for each group of training sets include:

[0058] Based on the multiple groups of training sets, determining multiple groups of formula adjustment schemes corresponding to each group of training sets;

[0059] Screening the multiple groups of formula adjustment schemes corresponding to each group of training sets to obtain the screened formula adjustment schemes corresponding to each group of training sets;

[0060] Based on the number of the screened formula adjustment schemes corresponding to each group of training sets, selectively selecting one group of formula adjustment schemes as the formula adjustment scheme corresponding to the training set;

[0061] And using the formula adjustment scheme corresponding to the training set as the training result of the training set.

[0062] Specifically, the determining multiple groups of formula adjustment schemes corresponding to each group of training sets based on the multiple groups of training sets includes:

[0063] Based on the multiple groups of training sets, determining the data range of the formula corresponding to each group of training sets;

[0064] Based on the historical adjustment data, determining multiple groups of formula adjustment schemes corresponding to each group of training sets.

[0065] Specifically, the screening the multiple groups of formula adjustment schemes corresponding to each group of training sets to obtain the screened formula adjustment schemes corresponding to each group of training sets includes:

[0066] Predicting the multiple groups of formula adjustment schemes corresponding to each group of training sets to generate predicted value data corresponding to each group of formula adjustment schemes;

[0067] Based on the predicted value data corresponding to each group of formula adjustment schemes, determining the accuracy rate and deviation value of each group of predicted value data;

[0068] If the accuracy rate of the predicted value data is lower than the preset accuracy rate threshold, or the deviation value exceeds the preset deviation value threshold, then eliminating the formula adjustment scheme;

[0069] Otherwise, retaining the formula adjustment scheme;

[0070] To obtain the screened formula adjustment schemes corresponding to each group of training sets.

[0071] Specifically, a preset virtual process parameter prediction model is used to predict multiple groups of formula adjustment schemes corresponding to each group of training sets, and generate predicted value data corresponding to each group of formula adjustment schemes. Among them, the virtual process parameter prediction model can adopt a VMS (Virtual Messure System) system or a VPP (Virtual Process Parameter) simulator. The selection of the virtual process parameter prediction model here is only for illustrative purposes. In actual tests, those skilled in the art can make selections according to actual needs, as long as the multiple groups of formula adjustment schemes corresponding to each group of training sets can be predicted by the preset virtual process parameter prediction model to generate the predicted value data corresponding to each group of formula adjustment schemes. Details are not elaborated here.

[0072] Specifically, the preset accuracy threshold can be 90% or 95%, and the preset deviation threshold can be 0.5 or 0.8. The settings of the preset accuracy threshold and the preset deviation threshold here are only for illustrative purposes. In actual tests, those skilled in the art can make settings according to actual needs. Details are not elaborated here.

[0073] Specifically, selectively selecting one group of formula adjustment schemes from the filtered formula adjustment schemes corresponding to each group of training sets as the formula adjustment scheme corresponding to the training set includes:

[0074] If the number of filtered formula adjustment schemes corresponding to the training set exceeds the preset quantity threshold, then select the group of formula adjustment schemes with the highest accuracy and the lowest deviation value from the multiple groups of filtered formula adjustment schemes corresponding to the training set as the formula adjustment scheme corresponding to the training set; and use the formula adjustment scheme corresponding to the training set as the training result of the training set.

[0075] Otherwise, dynamically adjust the filtered formula adjustment schemes corresponding to the training set to obtain multiple groups of dynamically adjusted formula adjustment schemes.

[0076] And filter the multiple groups of dynamically adjusted formula adjustment schemes to obtain the filtered multiple groups of dynamically adjusted formula adjustment schemes corresponding to the training set.

[0077] And re - execute the steps of "selectively selecting one group of formula adjustment schemes from the filtered formula adjustment schemes corresponding to each group of training sets as the formula adjustment scheme corresponding to the training set" and subsequent steps until the step of "selecting one group of formula adjustment schemes as the formula adjustment scheme corresponding to the training set" is executed.

[0078] Specifically, the preset quantity threshold can be 3 or 5. The setting of the preset quantity threshold here is only for illustrative purposes. In actual tests, those skilled in the art can set it according to actual needs, and details are not elaborated here.

[0079] Specifically, the dynamic adjustment method for dynamically adjusting the filtered formula adjustment solutions corresponding to the training set includes:

[0080] Based on a preset first interval threshold, perform a first dynamic adjustment on multiple formula adjustment solutions corresponding to the training set to generate multiple groups of formula adjustment solutions corresponding to each formula adjustment solution;

[0081] Execute again "selectively select one group of formula adjustment solutions as the formula adjustment solution corresponding to the training set based on the quantity of the filtered formula adjustment solutions corresponding to each group of training sets": If the quantity of the formula adjustment solutions is still greater than the preset quantity threshold, then based on a preset second interval threshold, perform a second dynamic adjustment on multiple formula adjustment solutions corresponding to the training set to generate multiple groups of formula adjustment solutions corresponding to each formula adjustment solution;

[0082] Execute again "selectively select one group of formula adjustment solutions as the formula adjustment solution corresponding to the training set based on the quantity of the filtered formula adjustment solutions corresponding to each group of training sets": If the quantity of the formula adjustment solutions is still greater than the preset quantity threshold, then based on a preset third interval threshold, perform a third dynamic adjustment on multiple formula adjustment solutions corresponding to the training set to generate multiple groups of formula adjustment solutions corresponding to each formula adjustment solution;

[0083] And execute again "selectively select one group of formula adjustment solutions as the formula adjustment solution corresponding to the training set based on the quantity of the filtered formula adjustment solutions corresponding to each group of training sets", and so on, until the filtered formula adjustment solution corresponding to the training set is obtained.

[0084] Specifically, when the difference between the accuracies corresponding to the filtered formula adjustment solutions corresponding to each group of training sets is lower than the preset accuracy difference threshold, and the difference between the deviation values is lower than the preset deviation value difference threshold, select the group of formula adjustment solutions with the highest accuracy and the lowest deviation value among the multiple groups of filtered formula adjustment solutions corresponding to the training set as the formula adjustment solution corresponding to the training set; and use the formula adjustment solution corresponding to the training set as the training result of the training set.

[0085] Specifically, the preset first interval threshold can be 2, the preset second interval threshold can be 1, and the preset third interval threshold can be 0.5. The settings of the preset first interval threshold, the preset second interval threshold, and the preset third interval threshold here are only for illustrative purposes. The setting of the number of interval thresholds being 3 here is also only for illustrative purposes. In actual tests, those skilled in the art can set them according to actual needs, as long as the preset first interval threshold is greater than the preset second interval threshold, and the preset second interval threshold is greater than the preset third interval threshold, and so on, with the interval thresholds getting smaller and smaller. This will not be elaborated here.

[0086] Specifically, the preset accuracy difference threshold can be 0.2% or 0.3%, and the preset deviation difference threshold can be 0.05 or 0.03. The settings of the preset accuracy difference threshold and the preset deviation difference threshold here are only for illustrative purposes. The setting of the number of interval thresholds being 3 here is also only for illustrative purposes. This will not be elaborated here.

[0087] Step S203: Based on the validation set matching each training set, verify the training result of each training set to obtain the verification result corresponding to each validation set.

[0088] Specifically, the verification of the training result of each training set based on the validation set matching each training set to obtain the verification result corresponding to each validation set includes:

[0089] If both the accuracy rate and the deviation value of the estimated value data corresponding to the formula adjustment plan in the training result of the training set are higher than the accuracy rate and the deviation value in the validation set matching the training set, it is determined that the verification result corresponding to the training result of the training set is verification successful;

[0090] Otherwise, add 1 to the number of training times corresponding to the training set;

[0091] If the number of training times corresponding to the training set exceeds the preset training times threshold, it is determined that the verification result corresponding to the training result of the training set is verification failed;

[0092] Otherwise, retrain the automatic adjustment model based on the training set to obtain the secondary training result of the training set;

[0093] And based on the validation set matching the training set, verify the secondary training result of the training set to obtain the secondary verification result of the training set:

[0094] If the secondary verification result of the training set is successful verification, it is determined that the verification result corresponding to the secondary training result of the training set is successful verification, and the number of training times corresponding to the training set is recorded;

[0095] Otherwise, re - execute "add 1 to the number of training times corresponding to the training set" and subsequent steps;

[0096] To obtain the verification results corresponding to each group of verification sets.

[0097] Specifically, the preset training - times threshold can be 3 or 4. The setting of the preset training - times threshold here is only for illustrative purposes, and the setting of the number of interval thresholds being 3 here is also only for illustrative purposes, which will not be elaborated here.

[0098] Step S204, based on the verification results corresponding to each group of verification sets, determine whether the auto - adjustment model is successfully verified;

[0099] Specifically, determining whether the auto - adjustment model is successfully verified based on the verification results corresponding to each group of verification sets includes:

[0100] Based on the verification results corresponding to each group of verification sets, determine the verification success rate of the auto - adjustment model;

[0101] If the verification success rate of the auto - adjustment model exceeds the preset verification success - rate threshold, it is determined that the auto - adjustment model is successfully verified;

[0102] Otherwise, it is determined that the auto - adjustment model fails to be verified, and then re - execute "train the auto - adjustment model".

[0103] Specifically, the preset verification success - rate threshold can be 80% or 85%. The setting of the preset verification success - rate threshold here is only for illustrative purposes. In actual tests, those skilled in the art can set it according to actual needs, which will not be elaborated here.

[0104] Step S205, based on the multiple groups of test sets, test the successfully - verified auto - adjustment model to obtain the test results of each group of test sets, and based on the test results of each group of test sets, selectively retrain the successfully - verified auto - adjustment model.

[0105] Specifically, testing the successfully - verified auto - adjustment model based on the multiple groups of test sets to obtain the test results of each group of test sets includes:

[0106] Substitute the multiple groups of test sets into the successfully - verified auto - adjustment model respectively to obtain the formula adjustment plan corresponding to each group of test sets;

[0107] Simulate the formulation adjustment plan corresponding to each test set to obtain the test parameter values corresponding to the formulation adjustment plan corresponding to each test set;

[0108] Based on the test parameter values corresponding to the formulation adjustment plan corresponding to each test set, obtain the test results corresponding to each test set.

[0109] Specifically, the simulation method for simulating the formulation adjustment plan corresponding to each test set can use a VMS (Virtual Messure System) system or a VPP (Virtual Process Parameter) simulator. The selection of the simulation method here is only for illustrative purposes. In actual tests, those skilled in the art can select according to actual needs, as long as the formulation adjustment plan corresponding to each test set can be simulated through the simulation method to obtain the test parameter values corresponding to the formulation adjustment plan corresponding to each test set, which will not be elaborated here.

[0110] Specifically, the test parameter values can be the thickness of the wafer or the size of the wafer. The selection of the test parameter values here is only for illustrative purposes. In actual tests, those skilled in the art can select according to actual needs, which will not be elaborated here.

[0111] Specifically, the obtaining of the test results corresponding to each test set based on the test parameter values corresponding to the formulation adjustment plan corresponding to each test set includes:

[0112] If the difference rate between the test parameter values corresponding to the formulation adjustment plan corresponding to the test set and the preset reference values corresponding to the test parameter values is lower than the preset difference rate threshold, it is determined that the test result corresponding to the test set is a test success;

[0113] Otherwise, it is determined that the test result corresponding to the test set is a test failure.

[0114] Specifically, the preset difference rate threshold can be 5% or 3%. The setting of the preset difference rate threshold here is only for illustrative purposes. In actual tests, those skilled in the art can set it according to actual needs, which will not be elaborated here.

[0115] Specifically, the selectively retraining of the successfully verified automatic adjustment model based on the test results of each test set includes:

[0116] Based on the test results of each test set, determine the comprehensive test success rate of all test sets;

[0117] If the comprehensive test success rate of all the test sets exceeds a preset comprehensive test success rate threshold, it is determined that the test of the successfully verified automatic adjustment model is successful, and further it is determined that the training of the automatic adjustment model is successful;

[0118] Otherwise, it is determined that the test of the successfully verified automatic adjustment model fails, and then the successfully verified automatic adjustment model is retrained.

[0119] Specifically, the preset comprehensive test success rate threshold can be 95% or 93%. The setting of the preset comprehensive test success rate threshold here is only for illustrative purposes. Those skilled in the art can set it according to actual needs during actual testing, and details are not elaborated here.

[0120] Step S103, download the recipe adjustment plan to the machine platform and control the machine platform to execute the recipe adjustment plan.

[0121] The advantage of the method of this application is that it provides a method for automatically adjusting the recipe of a semiconductor device. By substituting the obtained combined data into the trained automatic adjustment model, a corresponding recipe adjustment plan is obtained. Then, by downloading the recipe adjustment plan to the machine platform and controlling the machine platform to execute the recipe adjustment plan, it is possible to quickly determine the recipe adjustment parameters, reduce the error rate and quality risk, improve production efficiency, and thus reduce the collaboration cost caused by errors, reduce human operation errors, and further improve the product yield.

[0122] Second Embodiment

[0123] Figure 3 It is a schematic structural diagram of a system for automatically adjusting the recipe of a semiconductor device provided by an embodiment of this application. It should be understood that the system shown in the figure is exemplary rather than restrictive. This means that the involved system architecture is not limited to a specific form or design, but is presented as an example. In other words, the architecture shown in the figure can be regarded as a way of expression to clearly describe relevant concepts and relationships, and does not exclude other forms of architectures. Therefore, when interpreting the architecture in the figure, it should be understood that the model has flexibility and diversity, and its purpose is to provide an exemplary description rather than a restrictive regulation of a specific form.

[0124] Specifically, as Figure 3As shown in the figure, a recipe automatic adjustment system for a semiconductor device is used to execute the above-mentioned recipe automatic adjustment method. The system includes: a collection unit, a communication unit, and a calculation unit; wherein, the collection unit is used to obtain combined data and a historical data set; the communication unit is used for information interaction between the system and the machine platform; the calculation unit is used to train an automatic adjustment model using the data set; substituting the fixed parameters in the recipe to be adjusted into the automatic adjustment model to obtain a recipe adjustment plan based on the combined data.

[0125] Specifically, the specific communication connection method between the communication unit and the machine platform is not restrictive. Technicians can set it according to actual usage requirements as long as communication connection can be achieved. For example, it can be connected through wifi or Bluetooth, etc. Technicians can set it according to actual usage requirements.

[0126] Specifically, the communication unit can be a wireless communication device in the prior art or a wired communication device. The selection of the communication unit here is only for illustrative purposes. In actual tests, those skilled in the art can choose according to actual needs as long as information interaction between the system and the machine platform can be achieved. Details are not elaborated here.

[0127] In summary, the adjustment method in the embodiment of this application transforms the adjustment method of a professional engineer adjusting the Recipe according to the actual conditions of the machine platform into an adjustment method of obtaining a recipe adjustment plan by substituting combined data into a trained automatic adjustment model.

[0128] Through the trained automatic adjustment model, the combined data is analyzed and processed to automatically generate a corresponding recipe adjustment plan, reducing the dependence on the personal experience of engineers. Further, by dynamically adjusting the recipe adjustment plan, the stability of the deposited film thickness is improved, thereby reducing the error rate and quality risk, and then precisely adjusting the recipe strategy, thus improving the stability of the production process. Further, through the accurate prediction of the recipe adjustment plan, the time for manual analysis is reduced, the production preparation and adjustment process are accelerated, and the overall production efficiency is improved.

[0129] It is not difficult to find that this embodiment is a system embodiment corresponding to the first embodiment, and this embodiment can be implemented in cooperation with the first embodiment. The relevant technical details mentioned in the first embodiment are still valid in this embodiment. To avoid repetition, they are not elaborated here. Correspondingly, the relevant technical details mentioned in this embodiment can also be applied in the first embodiment.

[0130] It is worth mentioning that each module involved in this embodiment is a logical module. In practical applications, a logical unit can be a physical unit, a part of a physical unit, or a combination of multiple physical units. In addition, to highlight the innovative part of this application, units that are not closely related to solving the technical problems proposed in this application are not introduced in this embodiment, but this does not mean that there are no other units in this embodiment.

[0131] Third Embodiment

[0132] In addition, some embodiments of this application also provide an electronic device. The electronic device can be various forms of digital computers, such as, laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and so on. The electronic device can also be various forms of mobile devices, such as, personal digital processors, cellular phones, smart phones, wearable devices, and other similar computing devices.

[0133] The electronic device includes: one or more processors; and a memory storing computer program instructions, which when executed cause the processor to perform the steps of the method provided in any one or more of the above embodiments. Figure 4 An exemplary structural diagram of the electronic device is disclosed. As Figure 4 shown, the electronic device includes: one or more processors 1101, a memory 1102, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Each component is interconnected using different buses and can be installed on a common motherboard or in other ways as needed. The processor can process instructions executed within the electronic device, including instructions stored in the memory or on the memory to display graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some other embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple electronic devices can be connected, and each device provides some necessary operations (such as, as a server array, a set of blade servers, or a multi-processor system). Among them, the components, their connections and relationships, and their functions shown herein are only examples and are not intended to limit the implementation of this application described and / or claimed herein.

[0134] The electronic device may further include: an input device 1103 and an output device 1104. The processor 1101, the memory 1102, the input device 1103, and the output device 1104 can be connected through a bus or other means, Figure 2 taking connection through a bus as an example.

[0135] The input device 1103 can receive input digital or character information, and generate key signal inputs related to the user settings and function controls of the electronic device, such as input devices like touchscreens, keypads, mice, trackpads, touchpads, pointing sticks, one or more mouse buttons, trackballs, joysticks, etc. The output device 1104 can include display devices, auxiliary lighting devices (e.g., LEDs), and tactile feedback devices (e.g., vibration motors), etc. The display device can include, but is not limited to, liquid crystal displays (LCDs), light-emitting diode (LED) displays, and plasma displays. In some embodiments, the display device can be a touchscreen.

[0136] To provide interaction with the user, the electronic device can be a computer. The computer has: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and a pointing device (e.g., a mouse or a trackball), through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including voice input, speech input, or tactile input).

[0137] In the embodiments of the present application, computer programs / instructions are stored on a computer-readable medium, and when the computer programs / instructions are executed by a processor, the steps of the methods provided in any one or more of the above embodiments are implemented. The computer-readable medium can be included in the electronic device described in the above embodiments; or it can exist separately without being assembled into the device. The above computer-readable medium carries one or more computer-readable instructions.

[0138] The memory 1102 can be used as a non-transitory computer-readable storage medium, and can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules. The processor 1101 executes various functional applications and data processing of the server by running the non-transitory software programs, instructions, and modules stored in the memory 1102, so as to implement the program instructions / modules corresponding to the methods provided in any one or more of the above embodiments of the present application.

[0139] The memory 1102 may include a program storage area and a data storage area. The program storage area may store an operating system and application programs required for at least one function. The data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 1102 may include a high-speed random access memory, and may also include a non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some embodiments, the memory 1102 may optionally include a memory remotely disposed relative to the processor 1101, and these remote memories may be connected to the electronic device through a network. Examples of the above network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0140] It should be noted that the computer-readable medium described in this application may be a computer-readable signal medium, a computer-readable storage medium, or any combination of the two. The computer-readable medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this application, the computer-readable medium may be any tangible medium that contains or stores a program, and the program may be used by or in conjunction with an instruction execution system, apparatus, or device.

[0141] The computer-readable medium includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. The information may be computer-readable instructions, data structures, program modules, or other data. Examples of the computer's storage medium include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory, or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD), or other optical storage, magnetic cassette tapes, magnetic disk storage, or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible by a computing device.

[0142] Computer program code for performing the operations of this application can be written in one or more programming languages or combinations thereof. The programming languages include object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (for example, by connecting through the Internet using an Internet service provider).

[0143] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. For example, an application-specific integrated circuit (ASIC), a general-purpose computer, or any other similar hardware device can be used. In some embodiments, the software program of this application can be executed by a processor to implement the above steps or functions. Similarly, the software program of this application (including related data structures) can be stored in a computer-readable recording medium, for example, a RAM memory, a magnetic or optical drive, or a floppy disk and similar devices. In addition, some steps or functions of this application can be implemented using hardware, for example, as a circuit that cooperates with a processor to execute each step or function.

[0144] The computer program product provided by the embodiments of this application includes one or more computer programs / instructions. When the computer programs / instructions are executed by a processor, they wholly or partly generate the processes or functions described in the embodiments of this application. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, fiber optic, digital subscriber line (DSL)) or wirelessly (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that the computer can access or a data storage device such as a server or data center that includes one or more integrated available media. The available media can be magnetic media (such as floppy disks, hard disks, magnetic tapes), optical media (such as DVDs), or semiconductor media (such as solid state disks (SSDs)).

[0145] The flowcharts or block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of devices, methods, and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a part of code that contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and the combination of blocks in the block diagram and / or flowchart, may be implemented by a dedicated hardware-based system that performs the specified functions or operations, or may be implemented by a combination of dedicated hardware and computer instructions.

[0146] The scope of the present application is defined by the appended claims rather than the above description. Therefore, all changes that fall within the meaning and scope of the equivalent elements of the claims are intended to be included in the present application. Any reference numerals in the claims should not be construed as limiting the claims involved. In addition, it is obvious that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. The multiple units or devices stated in the apparatus claims may also be implemented by one unit or device through software or hardware. The words "first", "second", etc. are only used for distinguishing descriptions and do not represent any specific order, nor can they be understood as indicating or implying relative importance.

[0147] As described above, this is only a specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can easily mention changes or substitutions, which should all be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims, and the above embodiments should be regarded as exemplary and non-limiting.

Claims

1. A method for automatically adjusting the formula of a semiconductor device, characterized in that, Including: Obtain combined data, where the combined data includes product data and process flow data; Substitute the combined data into a trained automatic adjustment model to obtain a formula adjustment plan, where the formula adjustment plan at least includes a predicted formula strategy for adjustment, a time point for adjustment execution, and an adjustment type of the formula strategy; Download the formula adjustment plan to the machine end and control the machine end to execute the formula adjustment plan.

2. The adjustment method according to claim 1, characterized in that, Before substituting the combined data into the trained automatic adjustment model, the method also trains the automatic adjustment model through the following steps: Obtain a data set, where the data set includes multiple groups of training sets, verification sets matched with each group of training sets, and multiple groups of test sets; Train an automatic adjustment model based on the multiple groups of training sets to obtain training results for each group of training sets, where the training results are formula adjustment plans corresponding to the training sets; Verify the training results of each group of training sets based on the verification sets matched with each group of training sets to obtain verification results corresponding to each group of verification sets; Determine whether the automatic adjustment model is successfully verified based on the verification results corresponding to each group of verification sets; Test the successfully verified automatic adjustment model based on the multiple groups of test sets to obtain test results for each group of test sets, and selectively retrain the successfully verified automatic adjustment model based on the test results of each group of test sets.

3. The adjustment method according to claim 2, wherein The obtaining of the data set includes: Obtain a historical data set, where the historical data set includes historical formula data, historical process data, and historical adjustment data; Preprocess the obtained historical data set to obtain a processed historical data set; Generate a data set composed of multiple groups of training sets, verification sets matched with each group of training sets, and multiple groups of test sets based on the processed historical data set.

4. The adjustment method according to claim 3, characterized in that The obtaining of the historical data set includes: Obtain a formula historical adjustment database, where the formula historical adjustment database stores records of each formula historical adjustment, adjustment parameters, and measurement data; Obtain the historical replacement time point of the target material; Based on the formula historical adjustment database and the historical replacement time point of the target material, constitute historical adjustment data; Obtain a historical process flow database, where the historical process flow database stores the ambient voltage, power, gas flow rate, and different types of fault data corresponding to each production process; Based on the historical process flow database, constitute historical process data; Obtain a historical formula execution database corresponding to each production process, where the historical formula execution database includes multiple groups of executed historical formula data corresponding to the production process; Based on the historical formula execution database corresponding to each production process, constitute historical formula data; Based on the historical adjustment data, historical process data, and historical formula data, constitute a historical data set.

5. The adjustment method according to claim 4, wherein The training of the automatic adjustment model based on the multiple groups of training sets to obtain the training results for each group of training sets includes: Based on the multiple groups of training sets, determine multiple groups of formula adjustment plans corresponding to each group of training sets; Screen the multiple sets of formula adjustment schemes corresponding to each set of training sets to obtain the screened formula adjustment schemes corresponding to each set of training sets; Based on the number of the screened formula adjustment schemes corresponding to each set of training sets, selectively select one set of formula adjustment schemes as the formula adjustment scheme corresponding to the training set; And use the formula adjustment scheme corresponding to the training set as the training result of the training set.

6. The adjustment method according to claim 5, characterized in that The screening of the multiple sets of formula adjustment schemes corresponding to each set of training sets to obtain the screened formula adjustment schemes corresponding to each set of training sets includes: Predict the multiple sets of formula adjustment schemes corresponding to each set of training sets to generate the predicted value data corresponding to each set of formula adjustment schemes; Based on the predicted value data corresponding to each set of formula adjustment schemes, determine the accuracy rate and deviation value of each set of predicted value data; If the accuracy rate of the predicted value data is lower than the preset accuracy rate threshold, or the deviation value exceeds the preset deviation value threshold, then eliminate the formula adjustment scheme; Otherwise, retain the formula adjustment scheme; To obtain the screened formula adjustment schemes corresponding to each set of training sets.

7. The adjustment method according to claim 6, characterized in that The selectively selecting one set of formula adjustment schemes as the formula adjustment scheme corresponding to the training set based on the number of the screened formula adjustment schemes corresponding to each set of training sets includes: If the number of the screened formula adjustment schemes corresponding to the training set exceeds the preset number threshold, then select the set of formula adjustment schemes with the highest accuracy rate and the lowest deviation value among the multiple sets of screened formula adjustment schemes corresponding to the training set as the formula adjustment scheme corresponding to the training set; and use the formula adjustment scheme corresponding to the training set as the training result of the training set; Otherwise, dynamically adjust the screened formula adjustment schemes corresponding to the training set to obtain multiple sets of dynamically adjusted formula adjustment schemes; And screen the multiple sets of dynamically adjusted formula adjustment schemes to obtain the multiple sets of screened and dynamically adjusted formula adjustment schemes corresponding to the training set; And re - execute "selectively selecting one set of formula adjustment schemes as the formula adjustment scheme corresponding to the training set based on the number of the screened formula adjustment schemes corresponding to each set of training sets" and subsequent steps.

8. The adjustment method according to claim 7, characterized in that The validating the training results of each set of training sets based on the validation set matched with each set of training sets to obtain the validation results corresponding to each set of validation sets includes: If both the accuracy rate and the deviation value of the predicted value data corresponding to the formula adjustment scheme in the training result of the training set are higher than the accuracy rate and the deviation value in the validation set matched with the training set, then determine that the validation result corresponding to the training result of the training set is validation success; Otherwise, add 1 to the number of training times corresponding to the training set; If the number of training times corresponding to the training set exceeds the preset training times threshold, then determine that the validation result corresponding to the training result of the training set is validation failure; Otherwise, re - train the automatic adjustment model based on the training set to obtain the secondary training result of the training set; And based on the validation set matching the training set, verify the secondary training result of the training set to obtain the secondary verification result of the training set: If the secondary verification result of the training set is successful, determine that the verification result corresponding to the secondary training result of the training set is successful, and record the number of training times corresponding to the training set; Otherwise, re - execute "add 1 to the number of training times corresponding to the training set" and subsequent steps; To obtain the verification result corresponding to each validation set.

9. A semiconductor device recipe automatic adjustment system applying the recipe automatic adjustment method according to any one of claims 1-8, characterized in that, Including: An acquisition unit, a communication unit, and a calculation unit; where The acquisition unit is used to obtain combined data and a historical data set; The communication unit is used for information interaction between the system and the machine platform; The calculation unit is used to train an automatic adjustment model using the data set; substitute the fixed parameters in the formula to be adjusted into the automatic adjustment model to obtain a formula adjustment scheme based on the combined data.

10. An electronic device, characterized in that, The electronic device includes: One or more processors; and A memory storing computer program instructions, which when executed cause the processor to execute the steps of the method according to any one of claims 1 to 8.