Method and model for calculating processing time of semiconductor equipment, equipment and storage medium

By calculating the processing time of semiconductor equipment, including the corresponding configuration of the machine and the calculation model, data acquisition and outlier value removal, the complex problem of processing time calculation in semiconductor manufacturing is solved, and efficient and accurate processing time calculation and Traceable rate management.

CN119477591APending Publication Date: 2025-02-18SEMICON MFG SOUTH CHINA CORP +1
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202311008322.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-08-10
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

In the semiconductor manufacturing process, it is necessary to quickly calculate the volume of multi-branched upstream and downstream products in different production processes. Due to the diverse types of machine equipment and the complex calculation of processing time, it is difficult for the prior art to achieve fast and accurate processing time calculation.

Method used

It provides a method for calculating the processing time of semiconductor equipment, including the corresponding configuration of the machine and the calculation model, obtaining processing time sample data, selecting data within the preset statistical period, eliminating outliers, and obtaining processing time values. This method improves computing efficiency by configuring the computing model and thread configuration, and uses data cleaning methods such as outlier detection to improve data accuracy.

Benefits of technology

The calculation efficiency of semiconductor equipment processing time is improved, the accuracy and accuracy of the acquired processing time values ​​are improved, and the traceability of long-term machine processing time efficiency and productivity is realized.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119477591A_ABST
    Figure CN119477591A_ABST
Patent Text Reader

Abstract

The invention discloses a semiconductor equipment processing time calculation method and model, equipment and a storage medium. The calculation method comprises the steps of performing corresponding configuration of a machine table and a calculation model; obtaining processing time sample data corresponding to the machine table according to the calculation model; selecting processing time sample data in a preset statistical period; removing abnormal values in the processing time sample data in the preset statistical period, and retaining the processing time sample data after removal as processing time effective data; and obtaining a processing time value corresponding to the machine table according to the processing time effective data. According to the method, the calculation efficiency of the machining time is improved, the accuracy of the obtained machining time value is improved, and the traceability of the long-term machine machining time efficiency and the operation rate is established.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of semiconductor manufacturing, and in particular to a method and model for calculating the processing time of semiconductor equipment, equipment and storage medium. Background Art

[0002] In the current semiconductor manufacturing management process, as the process becomes more and more advanced, the process window (Q-time) in the production process (Flow) becomes shorter and shorter, and dozens of products are produced simultaneously in the factory. In the process of scheduling or scheduling, it is necessary to calculate the upstream and downstream work-in-progress (Coming WIP Volume) of multiple branches in different FLOWs. In this process, it is necessary to know the reasonable processing time of each station (STEP), each equipment (Equipment), and each recipe (Recipe) in the production process.

[0003] The processing behaviors of each WAFER in the machine in the factory are various, and it is necessary to abstract a method that can be applied to all machines to achieve fast configuration, instead of requiring additional programming code each time. And because the machines are different, there are at least two types of time: single-wafer processing time (Wafer Per Hour: WPH) and batch processing time (Batch Process Time).

[0004] The entry and exit time of each unit in the machine, such as LOT (product batch, maximum 25 pieces) or WAFER (smallest unit of product batch, 1 piece), has been recorded by the equipment automation program. However, the data of each machine model is extremely large, and the daily log volume of all machines in the factory has reached tens of millions. How to achieve fast calculation is a problem. Summary of the invention

[0005] The problem solved by the embodiments of the present invention is to provide a method and model, a device and a storage medium for calculating the processing time of semiconductor equipment, which is conducive to establishing the traceability of long-term machine processing time efficiency and utilization rate.

[0006] To solve the above problems, an embodiment of the present invention provides a method for calculating the processing time of semiconductor equipment, including: performing corresponding configuration of a machine and a calculation model; obtaining processing time sample data corresponding to the machine according to the calculation model; selecting the processing time sample data within a preset statistical period; eliminating abnormal values ​​in the processing time sample data within the preset statistical period, and retaining the eliminated processing time sample data as valid processing time data; and obtaining the processing time value corresponding to the machine according to the valid processing time data.

[0007] Optionally, after the corresponding configuration of the machine and the computing model, before obtaining the processing time sample data corresponding to the machine according to the computing model, it also includes: configuring the computing model according to the computing amount of the computing model corresponding to each machine, and configuring each computing model in the corresponding thread; according to the computing model, obtaining the processing time sample data corresponding to the machine, and running multiple threads simultaneously.

[0008] Optionally, before performing the corresponding configuration of the machine and the calculation model, the calculation method also includes: obtaining the processing time database of the machine; analyzing the processing time database to obtain the machine type corresponding to the machine; and performing the corresponding configuration of the machine and the calculation model based on the machine type.

[0009] Optionally, the method for calculating the processing time of semiconductor equipment is applicable to wafer processing, wherein multiple wafers constitute a batch; the processing time database is analyzed to obtain the machine type corresponding to the machine, wherein the machine type includes a batch processing machine and a non-batch processing machine; when the machine type is a non-batch processing machine, according to the calculation model, the processing time sample data corresponding to the machine is obtained, and the processing time sample data is sample data of the number of wafers processed per hour; when the machine type is a batch processing machine, according to the calculation model, the processing time sample data corresponding to the machine is obtained, and the processing time sample data is batch processing time sample data.

[0010] Optionally, the processing time database is analyzed to obtain the machine type corresponding to the machine. If the machine type is a non-batch processing machine, the processing time database is analyzed to obtain the bottleneck component of the machine. According to the calculation model, the processing time sample data corresponding to the machine is obtained, including: based on the processing time of the bottleneck component of the machine, obtaining sample data of the number of wafers processed per hour.

[0011] Optionally, based on the processing time of the bottleneck component of the machine, sample data of the number of wafers processed per hour is obtained, including: selecting the processing data of the bottleneck component of the machine from a processing time database, the processing data including the characteristic moment of the wafer, the characteristic moment including the entry time or the exit time of the bottleneck component; arranging multiple processing data of the bottleneck component in order of the characteristic moment from small to large into a time data table; based on an operation criterion, obtaining the difference between the characteristic moment of the bottleneck component of the n+1th wafer and the characteristic moment of the bottleneck component of the nth wafer as the processing time of a single wafer, wherein the operation criterion is the same machine, the same start processing time, the same batch, the same bottleneck component and the same processing formula; according to the processing time of the single wafer, sample data of the number of wafers processed per hour is obtained.

[0012] Optionally, the processing time database is analyzed to obtain the machine type corresponding to the machine, where the machine type is a batch processing machine; based on the calculation model, the processing time sample data corresponding to the machine is obtained, including: marking the batch numbers of wafers passing through the same machine; and obtaining the batch processing time sample data based on the batch numbers.

[0013] Optionally, batch processing time sample data is obtained based on the batch number, including: obtaining processing data under the same batch number in the processing time database, the processing data including the wafer's entry time and exit time at the machine; obtaining the difference between the exit time and the entry time as the batch processing time sample data.

[0014] Optionally, outliers in the processing time sample data within a preset statistical period are removed, and outlier detection is used to obtain outliers in the processing time sample data as outliers.

[0015] Optionally, outlier detection is performed using the interquartile range method or the isolation forest method.

[0016] Optionally, outlier detection is used to obtain outliers of the processing time sample data as abnormal values. When the distribution of the processing time sample data conforms to the normal distribution principle, the interquartile range method is used for outlier detection; when the distribution of the processing time sample data does not conform to the normal distribution principle, the isolation forest method is used for outlier detection.

[0017] Optionally, in outlier detection using the interquartile range method, sample data between the maximum value of the processing time sample data and the upper quartile, and sample data between the minimum value of the processing time sample data and the lower quartile are obtained as outliers.

[0018] Optionally, outlier detection using the isolation forest method includes: performing one or more segmentation processes on the processing time sample data until each processing time sample data has a sample label, and the sample label includes a valid point and an outlier; wherein the segmentation process includes: randomly selecting part of the sample data as segmentation data; performing binary tree segmentation on the segmentation data to obtain an isolated tree of the segmentation data; and performing sample labeling on the processing time sample data in the isolated tree.

[0019] Optionally, binary tree segmentation is performed on the segmented data to obtain an isolated tree of the segmented data, including: randomly generating a bifurcation point between the maximum value and the minimum value of the segmented data for bifurcation processing, dividing the sample data into two sub-segmented data greater than the bifurcation point and less than or equal to the bifurcation point; judging whether the bifurcation processing is completed; when the bifurcation processing is completed, obtaining the isolated tree; when the bifurcation processing is not completed, returning the sub-segmented data as the segmented data to execute a bifurcation processing by randomly generating a bifurcation point between the maximum value and the minimum value of the segmented data.

[0020] Optionally, whether the bifurcation process is completed is determined by judging whether the height of the isolated tree reaches an extreme value. When the height of the isolated tree reaches an extreme value, the bifurcation process is determined to be completed; or, whether the bifurcation process is completed is determined by judging whether the sub-segmentation data cannot be cut. When the sub-segmentation data cannot be cut, the bifurcation process is determined to be completed.

[0021] Optionally, in the sample marking of the processing time sample data in the isolated tree, the sample data within a set distance range from the isolated tree root are marked as outliers, and the remaining sample data are marked as valid points.

[0022] Optionally, obtaining a processing time value corresponding to a machine according to the valid processing time data includes: obtaining a mean value of the valid processing time data as the processing time value; or obtaining a median value of the valid processing time data as the processing time value.

[0023] Correspondingly, an embodiment of the present invention also provides a calculation model for the processing time of semiconductor equipment, including: a configuration unit, used to perform corresponding configuration of the machine and the calculation model; a sample data acquisition unit, used to obtain processing time sample data corresponding to the machine according to the calculation model; a sample data selection unit, used to select processing time sample data within a preset statistical period; a valid data acquisition unit, used to eliminate abnormal values ​​in the processing time sample data within the preset statistical period, and retain the eliminated processing time sample data as valid processing time data; a processing time value acquisition unit, used to obtain the processing time value corresponding to the machine according to the valid processing time data.

[0024] Correspondingly, an embodiment of the present invention also provides a device, comprising at least one memory and at least one processor, wherein the memory stores one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method for calculating the processing time of semiconductor equipment provided in an embodiment of the present invention.

[0025] Correspondingly, an embodiment of the present invention further provides a storage medium, wherein the storage medium stores one or more computer instructions, and the one or more computer instructions are used to implement the method for calculating the processing time of a semiconductor device provided in an embodiment of the present invention.

[0026] Compared with the prior art, the technical solution of the embodiment of the present invention has the following advantages:

[0027] The method for calculating the processing time of semiconductor equipment provided in an embodiment of the present invention performs corresponding configuration of a machine and a calculation model, obtains processing time sample data corresponding to the machine according to the calculation model, selects processing time sample data within a preset statistical period, eliminates abnormal values ​​in the processing time sample data within the preset statistical period, retains the eliminated processing time sample data as valid processing time data, and obtains the processing time corresponding to the machine according to the valid processing time data; in the embodiment of the present invention, the processing time sample data is obtained by configuring the calculation model, and then the valid data is obtained by eliminating abnormal values, and the processing time corresponding to the machine is obtained according to the valid data, which is conducive to improving the calculation efficiency of the processing time and improving the accuracy of the obtained processing time value, and is also conducive to establishing the traceability of long-term machine processing time efficiency and utilization rate. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1 It is a flow chart of an embodiment of a method for calculating semiconductor equipment processing time of the present invention;

[0029] Figures 2 to 11 It is a schematic diagram corresponding to each step in an embodiment of a method for calculating semiconductor device processing time of the present invention;

[0030] Fig.12 It is a functional block diagram of an embodiment of a calculation model of semiconductor equipment processing time of the present invention;

[0031] Fig.13 It is a hardware structure diagram of an embodiment of the device provided by the present invention. DETAILED DESCRIPTION

[0032] As can be seen from the background technology, in the current calculation of semiconductor equipment processing time, engineers manually obtain records of individual machines, machine chambers, etc. through machine logs, and put them into Excel for manual calculation. Due to the performance limitations of office computers themselves, due to the huge amount of data, only a small amount of data is used for estimation in 2-3 days, which is extremely laborious.

[0033] According to my own understanding of machine behavior, if it is Chamber type, then use Chamber; if it is whole machine processing, then use LOT level calculation, the data granularity is large, not fine enough, and limited by the tool itself, it is difficult to consider the real bottleneck component (Bottle Neck Unit) of the machine during the processing. Its WPH or Process Time calculation result is very rough.

[0034] At the same time, because there are many environmental factors during machine processing, such as alarms, gas dosage, chemical switching, internal temperature of the machine and other abnormal conditions, it is too difficult to include all factors that may cause variation in the calculation process.

[0035] Due to the above reasons, even if engineers calculate the processing time, they rarely use reasonable data cleaning methods, and more often use simple mathematical averages for calculations.

[0036] Due to the above reasons, manual statistics are inefficient, it is impossible to perform massive big data statistics, and there is no reasonable method for cleaning outlier data.

[0037] In order to solve the technical problem, an embodiment of the present invention provides a method for calculating the processing time of a semiconductor device. Figure 1 , showing a flow chart of an embodiment of a method for calculating semiconductor equipment processing time of the present invention.

[0038] In this embodiment, the method for calculating the semiconductor equipment processing time includes the following basic steps:

[0039] Step S1: Perform corresponding configuration of the machine and the calculation model;

[0040] Step S2: Obtaining processing time sample data corresponding to the machine according to the calculation model;

[0041] Step S3: Selecting processing time sample data within a preset statistical period;

[0042] Step S4: Eliminate abnormal values ​​in the processing time sample data within a preset statistical period, and retain the eliminated processing time sample data as valid processing time data;

[0043] Step S5: Obtain the processing time value corresponding to the machine according to the effective processing time data.

[0044] In the embodiment of the present invention, a configuration calculation model is adopted to obtain processing time sample data, and then valid data is obtained by eliminating abnormal values. The processing time corresponding to the machine is obtained based on the valid data, which is beneficial to improving the calculation efficiency of the processing time and improving the accuracy of the obtained processing time value. Moreover, it is also beneficial to establish the traceability of long-term machine processing time efficiency and utilization rate.

[0045] In order to make the above-mentioned purposes, features and advantages of the embodiments of the present invention more obvious and understandable, specific embodiments of the present invention are described in detail below with reference to the accompanying drawings.

[0046] Figures 2 to 11 It is a schematic diagram corresponding to each step in an embodiment of a method for calculating semiconductor device processing time of the present invention.

[0047] In this embodiment, the method for calculating the processing time of semiconductor equipment is applicable to wafer processing, wherein a plurality of wafers constitute a batch.

[0048] Specifically, in this embodiment, the machines include batch type machines and non-batch type machines. The calculation result of the processing time corresponding to the batch type machine is the batch processing time (Batch Process Time), and the batch processing time is calculated as the processing time for one or more batches of wafers to be processed simultaneously. The calculation result of the processing time corresponding to the non-batch type machine is the single-wafer processing time (Wafer Per Hour: WPH), and the single-wafer processing time is calculated as the processing time for processing a single wafer when multiple wafers are processed sequentially, and the number of wafers processed per hour is obtained based on the processing time.

[0049] Execute step S1 to configure the machine and the calculation model accordingly.

[0050] A corresponding calculation model is configured for each machine, so as to obtain the corresponding processing time sample data of the machine according to the settings in the calculation model.

[0051] As an example, in this embodiment, the calculation model includes a type of calculating a single-wafer processing time and a type of calculating a batch processing time.

[0052] Specifically, the calculation model for calculating WPH includes the bottleneck components corresponding to the corresponding machine, which corresponds to non-Batch type machines. The calculation model for calculating Process Time includes the corresponding machine, which does not calculate the bottleneck components but directly calculates the batch processing time based on the entry and exit time points, which corresponds to Batch type machines.

[0053] In this embodiment, before the corresponding configuration of the machine and the calculation model is performed, the calculation method further includes: obtaining a processing time database of the machine.

[0054] Obtain the machine processing time database to obtain the machine type corresponding to the machine.

[0055] As an example, in this embodiment, the processing time database of a Batch type machine is a database containing a batch processing ID (Batch ID) LOT level processing start (Process In) and processing end (Process End); the processing time database of a non-Batch type machine is a Wafer level machine component entry and exit (Unit In and Unit Out) time log data.

[0056] In this embodiment, the processing time database is analyzed to obtain the machine type corresponding to the machine.

[0057] According to the analysis results of the processing time database, the type of machine can be obtained. Accordingly, when the machine type is obtained, when the machine is a Batch type machine, the machine is correspondingly obtained as a batch processing time calculation mode. When the machine is a non-Batch type machine, the bottleneck component (Bottle Neck Unit) corresponding to the machine is obtained according to the processing time database.

[0058] In this embodiment, the processing time database is analyzed to obtain the machine types corresponding to the machines, and the machine types include batch processing machines and non-batch processing machines.

[0059] A batch processing machine is a batch type machine, and a non-batch processing machine is a non-batch type machine.

[0060] Specifically, in this embodiment, the processing time database is analyzed to obtain the machine type corresponding to the machine, and the machine type is a non-batch processing machine. The processing time database is analyzed to obtain the bottleneck component of the machine.

[0061] Obtain the bottleneck component of the machine, which will be used to calculate the processing time of a single wafer based on the bottleneck component.

[0062] In this embodiment, in the corresponding configuration of the machine and the computing model, the corresponding configuration of the machine and the computing model is performed based on the machine type.

[0063] It should be noted that, usually for each machine, it is necessary to obtain the machine's processing time database, and then analyze the processing time database to perform corresponding configuration of the machine and the calculation model. For machines of the same model, only one machine needs to be analyzed to obtain the corresponding calculation model. The remaining machines of the same model do not need to be analyzed again, and the same calculation model can be directly used, which is conducive to saving computing power and time and improving efficiency.

[0064] In this embodiment, after the corresponding configuration of the machine and the calculation model is performed, before the processing time sample data corresponding to the machine is obtained according to the calculation model, it also includes: configuring the calculation model according to the calculation amount of the calculation model corresponding to each machine, and configuring each calculation model in the corresponding thread.

[0065] According to the computing volume of the computing model corresponding to each machine, the computing model is threaded and each computing model is configured in the corresponding thread. Subsequently, multiple threads can be used to perform calculations simultaneously, which is beneficial to significantly improve the program running performance.

[0066] In this embodiment, the computing model is threaded according to the computing amount of the computing model corresponding to each machine, so that the total computing amount of the computing model configured in each thread is close, which is conducive to the efficient integration of program operations, so that subsequent multiple threads can operate at the same time and also tend to end at the same time, making the best possible use of computing power and time, thereby improving computing efficiency.

[0067] As an example, Figure 2 As shown, EQPID1, EQPID2, EQPID3...EQPIDn correspond to each machine, MODEL1, MODEL2, MODEL3...MODELn are the computing models configured for each machine, MODEL1 and MODEL2 corresponding to EQPID1 and EQPID2 are configured in the same thread AreaThread1, MODEL3 corresponding to machine EQPID3 is configured in thread AreaThread2, and MODELn corresponding to machine EQPIDn is configured in thread AreaThread3.

[0068] In other embodiments, after the corresponding configuration of the machine and the calculation model is performed, before the processing time sample data corresponding to the machine is obtained according to the calculation model, the thread configuration may not be performed, such as Figure 3 As shown, EQPID1, EQPID2, EQPID3...EQPIDn correspond to each machine, MODEL1, MODEL2, MODEL3...MODELn are the computing models configured for each machine, without thread configuration, and the computing models corresponding to each machine are subsequently calculated in sequence.

[0069] Execute step S2 to obtain processing time sample data corresponding to the machine according to the calculation model.

[0070] Obtain the processing time sample data corresponding to the machine, which is used to obtain the valid processing time data later.

[0071] In this embodiment, according to the calculation model, the processing time sample data corresponding to the machine is obtained, and multiple threads are run simultaneously.

[0072] Running multiple threads simultaneously helps save computing time and improve computing efficiency.

[0073] In this embodiment, when the machine type is a non-batch processing machine, the processing time sample data corresponding to the machine is obtained according to the calculation model, and the processing time sample data is sample data of the number of wafers processed per hour.

[0074] Specifically, in this embodiment, according to the calculation model, sample data of processing time corresponding to the machine is obtained, including: based on the processing time of the bottleneck component of the machine, sample data of the number of wafers processed per hour is obtained.

[0075] The bottleneck component of the machine has a great influence on the calculation of the processing time of the machine. Therefore, obtaining sample data of the number of wafers processed per hour based on the processing time of the bottleneck component of the machine is conducive to more accurately obtaining sample data of the number of wafers processed per hour.

[0076] In this embodiment, the processing time database is analyzed to obtain the bottleneck components of the machine. When a machine corresponds to multiple bottleneck components, the sample data of the number of wafers processed per hour is obtained based on the processing time of the bottleneck components of the machine. The same bottleneck component in the same machine is selected, and the sample data of the number of wafers processed per hour is obtained based on the processing time of the bottleneck components of the machine.

[0077] Select the same bottleneck component and obtain sample data of the number of wafers processed per hour based on the processing time of the bottleneck component of the machine, so that the calculation basis is the same, so that the sample data can be accurately obtained.

[0078] In this embodiment, based on the processing time of the bottleneck component of the machine, sample data of the number of wafers processed per hour is obtained, including: selecting the processing data of the bottleneck component of the machine from the processing time database, the processing data including the characteristic moment of the wafer, and the characteristic moment including the entry time or exit time of the bottleneck component.

[0079] The processing data of the bottleneck component of the machine is selected from the processing time database, and the processing time of a single wafer is obtained according to the entry time or exit time of the bottleneck component.

[0080] As an example, Figure 4 The table of the processing time database is shown. According to the calculation model corresponding to the machine, the bottleneck component of the machine is obtained as CL_Opt. The processing data of the bottleneck component is selected in the processing time database, such as Figure 4 As shown in the Bottleneck Unit label, it includes the entry time IN_TIME or the exit time OUT_TIME of the bottleneck component.

[0081] In this embodiment, a plurality of processing data of the bottleneck component are arranged into a time data table in order of characteristic moments from small to large.

[0082] Arrange multiple processing data of bottleneck components into a time data table in order of characteristic moments from small to large, so that the arrangement of bottleneck components according to characteristic moments is clear and easy for subsequent calculation.

[0083] It should be noted that, in the present embodiment, the multiple processing data of the bottleneck component are arranged in ascending order of the characteristic moments into a time data table, which means that the multiple processing data of the bottleneck component can be arranged in ascending order of the entry time into a time data table, or the multiple processing data of the bottleneck component can be arranged in ascending order of the departure time into a time data table.

[0084] As an example, Figure 5 As shown, the bottleneck components of the machine corresponding to model MODEL1 are Chamber A and Chamber B. Select any one of the bottleneck components and sort the corresponding multiple processing data from small to large according to the entry and exit time. The bottleneck component of the machine corresponding to model MODEL2 is Disk1. The corresponding multiple processing data are sorted from small to large according to the entry and exit time. The bottleneck component of the machine corresponding to model MODEL3 is Disk1. The corresponding multiple processing data are sorted from small to large according to the entry and exit time.

[0085] As an example, Figure 6 Shows from Figure 4 The processing data of the bottleneck parts selected from the processing time database are sorted from small to large according to the entry time or exit time to obtain a time data table.

[0086] In this embodiment, based on the operation criteria, the difference between the characteristic moment of the bottleneck component of the n+1th wafer and the characteristic moment of the bottleneck component of the nth wafer is obtained as the processing time of a single wafer, wherein the operation criteria are the same machine, the same start processing time, the same batch, the same bottleneck component and the same processing formula.

[0087] The accurate processing time of a single wafer can only be obtained by calculating based on the same bottleneck component, the same machine, the same start processing time, the same batch, the same bottleneck component and the same processing recipe.

[0088] The start processing time is the start time of the processing step to be performed by the machine (Process Start), the batch refers to LOTID, and the recipe refers to Recipe.

[0089] Specifically, in this embodiment, when the wafers are processed in a non-batch processing machine, the next wafer starts to be processed by each component only after the previous wafer has been processed by each unit. Therefore, based on the entry time or exit time at the bottleneck component, the processing time of a single wafer can be obtained according to the entry time or exit time of the n+1th wafer at the bottleneck component and the corresponding entry time or exit time of the nth wafer at the bottleneck component.

[0090] In this embodiment, sample data of the number of wafers processed per hour is obtained based on the processing time of a single wafer.

[0091] After obtaining the processing time of a single wafer, sample data of the number of wafers processed per hour can be obtained by conversion. For example, the processing time of a single wafer is in hours, and one hour is divided by the processing time of a single wafer to obtain the number of wafers processed per hour as sample data.

[0092] In this embodiment, the processing time database is analyzed to obtain the machine type corresponding to the machine, and the machine type is a batch processing machine.

[0093] In this embodiment, when the machine type is a batch processing machine, the processing time sample data corresponding to the machine is obtained according to the calculation model, and the processing time sample data is batch processing time sample data. At this time, according to the calculation model, the processing time sample data corresponding to the machine is obtained, including: marking the batch number of wafers passing through the same machine; and obtaining the batch processing time sample data based on the batch number.

[0094] If the machine type is a batch processing machine, there is no calculation of bottleneck components and the processing time is calculated directly.

[0095] By labeling the batch numbers of wafers that pass through the same machine, all wafers processed at the same time can be labeled with the same batch number, that is, Batch ID. After labeling all wafers processed at the same time with the same batch number, the processing time sample data of the machine can be obtained based on the same batch number.

[0096] In this embodiment, obtaining batch processing time sample data based on the batch number includes: obtaining processing data under the same batch number in a processing time database, the processing data including the time when the wafer enters and leaves the machine.

[0097] The processing data under the same batch number are selected. The processing data includes the time when the wafer enters and leaves the machine, so that the processing time in the machine can be obtained through the time when the wafer enters and leaves the machine.

[0098] As an example, Figure 7 As shown, the first three rows of processing data are marked with the same batch number MsgIDBatchID20230224 17000, and the last three rows of processing data are marked with the same batch number MsgIDBatchID2023022309000. The same batch number means that they are processed in the machine at the same time. Figure 7It can be seen from the table that under the same batch number, the wafer entry time (PROCESS START TIME) is the same, and the wafer exit time (PROCESS END TIME) is the same.

[0099] In this embodiment, the difference between the exit time and the entry time is obtained as the batch processing time sample data.

[0100] The same batch number indicates that the wafers are processed in the machine at the same time. Therefore, the processing time of the wafers processed in the machine can be obtained by simply taking the difference between the exit time and the entry time of the wafers processed at the same time.

[0101] As an example, Figure 8 It is shown that in the batch number MsgIDBatchID20230224 17000, the processing time sample data for obtaining the difference between the exit time and the entry time is 3 hours, and in the batch number MsgIDBatchID20230223 09000, the processing time sample data for obtaining the difference between the exit time and the entry time is 3.17 hours.

[0102] Execute step S3 to select processing time sample data within a preset statistical period.

[0103] Preset statistical period and select processing time sample data within the preset statistical period as the calculation basis.

[0104] Specifically, according to actual needs, the unit of the preset statistical period can be set to hours, minutes, seconds or days.

[0105] As an example, Fig. 9 As shown, the statistical period of the machine corresponding to MODEL1 is 1 hour, the statistical period of the machine corresponding to MODEL2 is 2 hours, and the statistical period of the machine corresponding to MODEL3 is 3 hours.

[0106] Execute step S4 to eliminate abnormal values ​​in the processing time sample data within a preset statistical period, and retain the eliminated processing time sample data as valid processing time data.

[0107] By eliminating outliers in the processing time sample data within the preset statistical period, various outliers can be cleaned through mathematical logic, and abnormal deviations caused by various overly complex environmental factors in the machine can be considered to obtain reasonable effective processing time data.

[0108] In this embodiment, a configuration calculation model is used to obtain processing time sample data, and then valid data is obtained by eliminating abnormal values. The processing time corresponding to the machine is obtained based on the valid data. This is beneficial to improving the calculation efficiency of the processing time and improving the accuracy of the obtained processing time value. It is also beneficial to establish the traceability of long-term machine processing time efficiency and utilization rate.

[0109] In this embodiment, in removing abnormal values ​​in the processing time sample data within a preset statistical period, outlier detection is used to obtain outliers in the processing time sample data as abnormal values.

[0110] Outlier detection is used to obtain outliers of processing time sample data as outliers. The method is simple and easy to operate, and outliers can be obtained by obtaining outliers.

[0111] In this embodiment, the outlier detection is performed using the interquartile range method or the isolation forest method.

[0112] The interquartile range (IQR) method is more robust to outliers. Since the interquartile range only considers the middle 50% of the data, it is not affected by extreme values, which makes the interquartile range method very useful when dealing with real data.

[0113] The Isolation Forest method is a fast anomaly detection method based on Ensemble. It has linear time complexity and high accuracy. It is a state-of-the-art algorithm that meets the requirements of big data processing. The advantage of the Isolation Forest algorithm lies in the high efficiency of massive data processing and faster calculation speed.

[0114] In this embodiment, outlier detection is used to obtain outliers of the processing time sample data as abnormal values. When the distribution of the processing time sample data conforms to the normal distribution principle, the interquartile range method is used to perform outlier detection.

[0115] When the distribution of processing time sample data conforms to the normal distribution principle, it is relatively easy to obtain the quartile points corresponding to the data, so that the interquartile range method can be used for outlier detection.

[0116] When the distribution of processing time sample data does not conform to the normal distribution principle, the isolation forest method is used for outlier detection.

[0117] The isolation forest method can detect outliers in relatively discrete data, so when the distribution of processing time sample data does not conform to the normal distribution principle, the isolation forest method can be used for outlier detection.

[0118] In this embodiment, the interquartile range method is used to detect outliers, and sample data between the maximum value of the processing time sample data and the upper quartile, and sample data between the minimum value of the processing time sample data and the lower quartile are obtained as outliers.

[0119] As an example, Fig.10 The box plot obtained according to the interquartile range method is shown, where the sample maximum value is the maximum value of the processing time sample data, the maximum control upper limit is the upper quartile, the sample minimum value is the minimum value of the processing time sample data, and the minimum control lower limit is the lower quartile. The effective sample interval is between the maximum control upper limit and the minimum control lower limit, and the outlier abnormal interval is between the sample maximum value and the maximum control upper limit, and between the sample minimum value and the minimum control lower limit, in which the sample data are outliers.

[0120] In this embodiment, the use of the isolation forest method for outlier detection includes: performing one or more segmentation processes on the processing time sample data until each processing time sample data has a sample label, and the sample label includes a valid point and an outlier; wherein the segmentation process includes: randomly selecting part of the sample data as segmentation data; performing binary tree segmentation on the segmentation data to obtain an isolated tree of the segmentation data; and performing sample labeling on the processing time sample data in the isolated tree.

[0121] By establishing an isolated tree (iTree), the sample data is segmented and iterated continuously until each processing time sample data has a sample label, wherein the sample label includes valid points and outliers, and the outliers are clearly identifiable.

[0122] In this embodiment, binary tree segmentation is performed on the segmented data to obtain an isolated tree of the segmented data, including: randomly generating a bifurcation point between the maximum value and the minimum value of the segmented data for bifurcation processing, dividing the sample data into two sub-segmented data greater than the bifurcation point and less than or equal to the bifurcation point; judging whether the bifurcation processing is completed; when the bifurcation processing is completed, obtaining the isolated tree; when the bifurcation processing is not completed, returning the sub-segmented data as the segmented data to execute a bifurcation processing by randomly generating a bifurcation point between the maximum value and the minimum value of the segmented data.

[0123] Specifically, in this embodiment, whether the bifurcation processing is completed is determined by judging whether the height of the isolated tree reaches an extreme value. When the height of the isolated tree reaches an extreme value, the bifurcation processing is determined to be completed; or, whether the bifurcation processing is completed is determined by judging whether the sub-segmentation data cannot be cut. When the sub-segmentation data cannot be cut, the bifurcation processing is determined to be completed.

[0124] The height extreme value of the isolated tree is preset. When the height of the isolated tree reaches the extreme value, it indicates that the isolated tree can no longer be split. Or, when the sub-segmentation data cannot be cut, it also indicates that the isolated tree can no longer be split, and the bifurcation process is completed.

[0125] In this embodiment, when the processing time sample data in the isolated tree are marked as samples, the sample data within a set distance range from the isolated tree root are marked as outliers, and the remaining sample data are marked as valid points.

[0126] As an example, Fig.11 It shows multiple isolated trees iTree1, iTree2...iTreen obtained by performing the isolation tree method operation, wherein for each sample data, the sample data within a set distance range from the isolated tree root is marked as anomaly, i.e., an outlier, and the remaining sample data is normal data point.

[0127] Execute step S5 to obtain the processing time value corresponding to the machine according to the valid processing time data.

[0128] The processing time value corresponding to the machine is obtained according to the effective processing time data, so that the obtained processing time value more accurately represents the processing time of the machine.

[0129] Specifically, in this embodiment, obtaining the processing time value corresponding to the machine according to the valid processing time data includes: obtaining the mean of the valid processing time data as the processing time value; or obtaining the median of the valid processing time data as the processing time value.

[0130] Fig.12 It is a functional block diagram of an embodiment of a calculation model for semiconductor equipment processing time of the present invention.

[0131] refer to Fig.12 The embodiment of the present invention further provides a calculation model 50 for the processing time of semiconductor equipment, including: a configuration unit 501, used for performing corresponding configuration of the machine and the calculation model; a sample data acquisition unit 502, used for acquiring the processing time sample data corresponding to the machine according to the calculation model; a sample data selection unit 503, used for selecting the processing time sample data within a preset statistical period; a valid data acquisition unit 504, used for eliminating abnormal values ​​in the processing time sample data within the preset statistical period, and retaining the eliminated processing time sample data as the valid processing time data; a processing time value acquisition unit 505, used for acquiring the processing time value corresponding to the machine according to the valid processing time data.

[0132] In this embodiment, the method for calculating the processing time of semiconductor equipment is applicable to wafer processing, wherein a plurality of wafers constitute a batch.

[0133] Specifically, in this embodiment, the machines include batch type machines and non-batch type machines. The calculation result of the processing time corresponding to the batch type machine is the batch processing time (Batch Process Time), and the batch processing time is calculated as the processing time for one or more batches of wafers to be processed simultaneously. The calculation result of the processing time corresponding to the non-batch type machine is the single-wafer processing time (Wafer Per Hour: WPH), and the single-wafer processing time is calculated as the processing time for processing a single wafer when multiple wafers are processed sequentially, and the number of wafers processed per hour is obtained based on the processing time.

[0134] The configuration unit 501 is used to configure the machine and the computing model accordingly.

[0135] A corresponding calculation model is configured for each machine, so as to obtain the corresponding processing time sample data of the machine according to the settings in the calculation model.

[0136] As an example, in this embodiment, the calculation model includes a type of calculating a single-wafer processing time and a type of calculating a batch processing time.

[0137] Specifically, the calculation model for calculating WPH includes the bottleneck components corresponding to the corresponding machine, which corresponds to non-Batch type machines. The calculation model for calculating Process Time includes the corresponding machine, which does not calculate the bottleneck components but directly calculates the batch processing time based on the entry and exit time points, which corresponds to Batch type machines.

[0138] In this embodiment, before the corresponding configuration of the machine and the calculation model is performed, the calculation method further includes: obtaining a processing time database of the machine.

[0139] Obtain the machine processing time database to obtain the machine type corresponding to the machine.

[0140] As an example, in this embodiment, the processing time database of a Batch type machine is a database containing a batch processing ID (Batch ID) LOT level processing start (Process In) and processing end (Process End); the processing time database of a non-Batch type machine is a Wafer level machine component entry and exit (Unit In and Unit Out) time log data.

[0141] In this embodiment, the processing time database is analyzed to obtain the machine type corresponding to the machine.

[0142] According to the analysis results of the processing time database, the type of machine can be obtained. Accordingly, when the machine type is obtained, when the machine is a Batch type machine, the machine is correspondingly obtained as a batch processing time calculation mode. When the machine is a non-Batch type machine, the bottleneck component (Bottle Neck Unit) corresponding to the machine is obtained according to the processing time database.

[0143] In this embodiment, the processing time database is analyzed to obtain the machine types corresponding to the machines, and the machine types include batch processing machines and non-batch processing machines.

[0144] A batch processing machine is a batch type machine, and a non-batch processing machine is a non-batch type machine.

[0145] Specifically, in this embodiment, the processing time database is analyzed to obtain the machine type corresponding to the machine, and the machine type is a non-batch processing machine. The processing time database is analyzed to obtain the bottleneck component of the machine.

[0146] Obtain the bottleneck component of the machine, which will be used to calculate the processing time of a single wafer based on the bottleneck component.

[0147] In this embodiment, in the corresponding configuration of the machine and the computing model, the corresponding configuration of the machine and the computing model is performed based on the machine type.

[0148] It should be noted that, usually for each machine, it is necessary to obtain the machine's processing time database, and then analyze the processing time database to perform corresponding configuration of the machine and the calculation model. For machines of the same model, only one machine needs to be analyzed to obtain the corresponding calculation model. The remaining machines of the same model do not need to be analyzed again, and the same calculation model can be directly used, which is conducive to saving computing power and time and improving efficiency.

[0149] In this embodiment, after the corresponding configuration of the machine and the calculation model is performed, before the processing time sample data corresponding to the machine is obtained according to the calculation model, it also includes: configuring the calculation model according to the calculation amount of the calculation model corresponding to each machine, and configuring each calculation model in the corresponding thread.

[0150] According to the computing volume of the computing model corresponding to each machine, the computing model is threaded and each computing model is configured in the corresponding thread. Subsequently, multiple threads can be used to perform calculations simultaneously, which is beneficial to significantly improve the program running performance.

[0151] In this embodiment, the computing model is threaded according to the computing amount of the computing model corresponding to each machine, so that the total computing amount of the computing model configured in each thread is close, which is conducive to the efficient integration of program operations, so that subsequent multiple threads can operate at the same time and also tend to end at the same time, making the best possible use of computing power and time, thereby improving computing efficiency.

[0152] As an example, Figure 2 As shown, EQPID1, EQPID2, EQPID3...EQPIDn correspond to each machine, MODEL1, MODEL2, MODEL3...MODELn are the computing models configured for each machine, MODEL1 and MODEL2 corresponding to EQPID1 and EQPID2 are configured in the same thread AreaThread1, MODEL3 corresponding to machine EQPID3 is configured in thread AreaThread2, and MODELn corresponding to machine EQPIDn is configured in thread AreaThread3.

[0153] In other embodiments, after the corresponding configuration of the machine and the calculation model is performed, before the processing time sample data corresponding to the machine is obtained according to the calculation model, the thread configuration may not be performed, such as Figure 3 As shown, EQPID1, EQPID2, EQPID3...EQPIDn correspond to each machine, MODEL1, MODEL2, MODEL3...MODELn are the computing models configured for each machine, without thread configuration, and the computing models corresponding to each machine are subsequently calculated in sequence.

[0154] The sample data acquisition unit 502 is used to acquire the processing time sample data corresponding to the machine according to the calculation model.

[0155] Obtain the processing time sample data corresponding to the machine, which is used to obtain the valid processing time data later.

[0156] In this embodiment, according to the calculation model, the processing time sample data corresponding to the machine is obtained, and multiple threads are run simultaneously.

[0157] Running multiple threads simultaneously helps save computing time and improve computing efficiency.

[0158] In this embodiment, when the machine type is a non-batch processing machine, the processing time sample data corresponding to the machine is obtained according to the calculation model, and the processing time sample data is sample data of the number of wafers processed per hour.

[0159] Specifically, in this embodiment, according to the calculation model, sample data of processing time corresponding to the machine is obtained, including: based on the processing time of the bottleneck component of the machine, sample data of the number of wafers processed per hour is obtained.

[0160] The bottleneck component of the machine has a great influence on the calculation of the processing time of the machine. Therefore, obtaining sample data of the number of wafers processed per hour based on the processing time of the bottleneck component of the machine is conducive to more accurately obtaining sample data of the number of wafers processed per hour.

[0161] In this embodiment, the processing time database is analyzed to obtain the bottleneck components of the machine. When a machine corresponds to multiple bottleneck components, the sample data of the number of wafers processed per hour is obtained based on the processing time of the bottleneck components of the machine. The same bottleneck component in the same machine is selected, and the sample data of the number of wafers processed per hour is obtained based on the processing time of the bottleneck components of the machine.

[0162] Select the same bottleneck component and obtain sample data of the number of wafers processed per hour based on the processing time of the bottleneck component of the machine, so that the calculation basis is the same, so that the sample data can be accurately obtained.

[0163] In this embodiment, based on the processing time of the bottleneck component of the machine, sample data of the number of wafers processed per hour is obtained, including: selecting the processing data of the bottleneck component of the machine from the processing time database, the processing data including the characteristic moment of the wafer, and the characteristic moment including the entry time or exit time of the bottleneck component.

[0164] The processing data of the bottleneck component of the machine is selected from the processing time database, and the processing time of a single wafer is obtained according to the entry time or exit time of the bottleneck component.

[0165] As an example, Figure 4 The table of the processing time database is shown. According to the calculation model corresponding to the machine, the bottleneck component of the machine is obtained as CL_Opt. The processing data of the bottleneck component is selected in the processing time database, such as Figure 4 As shown in the Bottleneck Unit label, it includes the entry time IN_TIME or the exit time OUT_TIME of the bottleneck component.

[0166] In this embodiment, a plurality of processing data of the bottleneck component are arranged into a time data table in order of characteristic moments from small to large.

[0167] Arrange multiple processing data of bottleneck components into a time data table in order of characteristic moments from small to large, so that the arrangement of bottleneck components according to characteristic moments is clear and easy for subsequent calculation.

[0168] It should be noted that, in the present embodiment, the multiple processing data of the bottleneck component are arranged in ascending order of the characteristic moments into a time data table, which means that the multiple processing data of the bottleneck component can be arranged in ascending order of the entry time into a time data table, or the multiple processing data of the bottleneck component can be arranged in ascending order of the departure time into a time data table.

[0169] As an example, Figure 5 As shown, the bottleneck components of the machine corresponding to model MODEL1 are Chamber A and Chamber B. Select any one of the bottleneck components and sort the corresponding multiple processing data from small to large according to the entry and exit time. The bottleneck component of the machine corresponding to model MODEL2 is Disk1. The corresponding multiple processing data are sorted from small to large according to the entry and exit time. The bottleneck component of the machine corresponding to model MODEL3 is Disk1. The corresponding multiple processing data are sorted from small to large according to the entry and exit time.

[0170] As an example, Figure 6 Shows from Figure 4 The processing data of the bottleneck parts selected from the processing time database are sorted from small to large according to the entry time or exit time to obtain a time data table.

[0171] In this embodiment, based on the operation criteria, the difference between the characteristic moment of the bottleneck component of the n+1th wafer and the characteristic moment of the bottleneck component of the nth wafer is obtained as the processing time of a single wafer, wherein the operation criteria are the same machine, the same start processing time, the same batch, the same bottleneck component and the same processing formula.

[0172] The accurate processing time of a single wafer can only be obtained by calculating based on the same bottleneck component, the same machine, the same start processing time, the same batch, the same bottleneck component and the same processing recipe.

[0173] The start processing time is the start time of the processing step to be performed by the machine (Process Start), the batch refers to LOTID, and the recipe refers to Recipe.

[0174] Specifically, in this embodiment, when the wafers are processed in a non-batch processing machine, the next wafer starts to be processed by each component only after the previous wafer has been processed by each unit. Therefore, based on the entry time or exit time at the bottleneck component, the processing time of a single wafer can be obtained according to the entry time or exit time of the n+1th wafer at the bottleneck component and the corresponding entry time or exit time of the nth wafer at the bottleneck component.

[0175] In this embodiment, sample data of the number of wafers processed per hour is obtained based on the processing time of a single wafer.

[0176] After obtaining the processing time of a single wafer, sample data of the number of wafers processed per hour can be obtained by conversion. For example, the processing time of a single wafer is in hours, and one hour is divided by the processing time of a single wafer to obtain the number of wafers processed per hour as sample data.

[0177] In this embodiment, the processing time database is analyzed to obtain the machine type corresponding to the machine, and the machine type is a batch processing machine.

[0178] In this embodiment, when the machine type is a batch processing machine, the processing time sample data corresponding to the machine is obtained according to the calculation model, and the processing time sample data is batch processing time sample data. At this time, according to the calculation model, the processing time sample data corresponding to the machine is obtained, including: marking the batch number of wafers passing through the same machine; and obtaining the batch processing time sample data based on the batch number.

[0179] If the machine type is a batch processing machine, there is no calculation of bottleneck components and the processing time is calculated directly.

[0180] By labeling the batch numbers of wafers that pass through the same machine, all wafers processed at the same time can be labeled with the same batch number, that is, Batch ID. After labeling all wafers processed at the same time with the same batch number, the processing time sample data of the machine can be obtained based on the same batch number.

[0181] In this embodiment, obtaining batch processing time sample data based on the batch number includes: obtaining processing data under the same batch number in a processing time database, the processing data including the time when the wafer enters and leaves the machine.

[0182] The processing data under the same batch number are selected. The processing data includes the time when the wafer enters and leaves the machine, so that the processing time in the machine can be obtained through the time when the wafer enters and leaves the machine.

[0183] As an example, Figure 7 As shown, the first three rows of processing data are marked with the same batch number MsgIDBatchID20230224 17000, and the last three rows of processing data are marked with the same batch number MsgIDBatchID2023022309000. The same batch number means that they are processed in the machine at the same time. Figure 7It can be seen from the table that under the same batch number, the wafer entry time (PROCESS START TIME) is the same, and the wafer exit time (PROCESS END TIME) is the same.

[0184] In this embodiment, the difference between the exit time and the entry time is obtained as the batch processing time sample data.

[0185] The same batch number indicates that the wafers are processed in the machine at the same time. Therefore, the processing time of the wafers processed in the machine can be obtained by simply taking the difference between the exit time and the entry time of the wafers processed at the same time.

[0186] As an example, Figure 8 It is shown that in the batch number MsgIDBatchID20230224 17000, the processing time sample data for obtaining the difference between the exit time and the entry time is 3 hours, and in the batch number MsgIDBatchID20230223 09000, the processing time sample data for obtaining the difference between the exit time and the entry time is 3.17 hours.

[0187] The sample data selection unit 503 is used to select processing time sample data within a preset statistical period.

[0188] Preset statistical period and select processing time sample data within the preset statistical period as the calculation basis.

[0189] Specifically, according to actual needs, the unit of the preset statistical period can be set to hours, minutes, seconds or days.

[0190] As an example, Fig. 9 As shown, the statistical period of the machine corresponding to MODEL1 is 1 hour, the statistical period of the machine corresponding to MODEL2 is 2 hours, and the statistical period of the machine corresponding to MODEL3 is 3 hours.

[0191] The effective data acquisition unit 504 is used to remove abnormal values ​​in the processing time sample data within a preset statistical period, and retain the processing time sample data after the removal as the effective processing time data.

[0192] By eliminating outliers in the processing time sample data within the preset statistical period, various outliers can be cleaned through mathematical logic, and abnormal deviations caused by various overly complex environmental factors in the machine can be considered to obtain reasonable effective processing time data.

[0193] In this embodiment, a configuration calculation model is used to obtain processing time sample data, and then valid data is obtained by eliminating abnormal values. The processing time corresponding to the machine is obtained based on the valid data. This is beneficial to improving the calculation efficiency of the processing time and improving the accuracy of the obtained processing time value. It is also beneficial to establish the traceability of long-term machine processing time efficiency and utilization rate.

[0194] In this embodiment, in removing abnormal values ​​in the processing time sample data within a preset statistical period, outlier detection is used to obtain outliers in the processing time sample data as abnormal values.

[0195] Outlier detection is used to obtain outliers of processing time sample data as outliers. The method is simple and easy to operate, and outliers can be obtained by obtaining outliers.

[0196] In this embodiment, the outlier detection is performed using the interquartile range method or the isolation forest method.

[0197] The interquartile range (IQR) method is more robust to outliers. Since the interquartile range only considers the middle 50% of the data, it is not affected by extreme values, which makes the interquartile range method very useful when dealing with real data.

[0198] The Isolation Forest method is a fast anomaly detection method based on Ensemble. It has linear time complexity and high accuracy. It is a state-of-the-art algorithm that meets the requirements of big data processing. The advantage of the Isolation Forest algorithm lies in the high efficiency of massive data processing and faster calculation speed.

[0199] In this embodiment, outlier detection is used to obtain outliers of the processing time sample data as abnormal values. When the distribution of the processing time sample data conforms to the normal distribution principle, the interquartile range method is used to perform outlier detection.

[0200] When the distribution of processing time sample data conforms to the normal distribution principle, it is relatively easy to obtain the quartile points corresponding to the data, so that the interquartile range method can be used for outlier detection.

[0201] When the distribution of processing time sample data does not conform to the normal distribution principle, the isolation forest method is used for outlier detection.

[0202] The isolation forest method can detect outliers in relatively discrete data, so when the distribution of processing time sample data does not conform to the normal distribution principle, the isolation forest method can be used for outlier detection.

[0203] In this embodiment, the interquartile range method is used to detect outliers, and sample data between the maximum value of the processing time sample data and the upper quartile, and sample data between the minimum value of the processing time sample data and the lower quartile are obtained as outliers.

[0204] As an example, Fig.10 The box plot obtained according to the interquartile range method is shown, where the sample maximum value is the maximum value of the processing time sample data, the maximum control upper limit is the upper quartile, the sample minimum value is the minimum value of the processing time sample data, and the minimum control lower limit is the lower quartile. The effective sample interval is between the maximum control upper limit and the minimum control lower limit, and the outlier abnormal interval is between the sample maximum value and the maximum control upper limit, and between the sample minimum value and the minimum control lower limit, in which the sample data are outliers.

[0205] In this embodiment, the use of the isolation forest method for outlier detection includes: performing one or more segmentation processes on the processing time sample data until each processing time sample data has a sample label, and the sample label includes a valid point and an outlier; wherein the segmentation process includes: randomly selecting part of the sample data as segmentation data; performing binary tree segmentation on the segmentation data to obtain an isolated tree of the segmentation data; and performing sample labeling on the processing time sample data in the isolated tree.

[0206] By establishing an isolated tree (iTree), the sample data is segmented and iterated continuously until each processing time sample data has a sample label, wherein the sample label includes valid points and outliers, and the outliers are clearly identifiable.

[0207] In this embodiment, binary tree segmentation is performed on the segmented data to obtain an isolated tree of the segmented data, including: randomly generating a bifurcation point between the maximum value and the minimum value of the segmented data for bifurcation processing, dividing the sample data into two sub-segmented data greater than the bifurcation point and less than or equal to the bifurcation point; judging whether the bifurcation processing is completed; when the bifurcation processing is completed, obtaining the isolated tree; when the bifurcation processing is not completed, returning the sub-segmented data as the segmented data to execute a bifurcation processing by randomly generating a bifurcation point between the maximum value and the minimum value of the segmented data.

[0208] Specifically, in this embodiment, whether the bifurcation processing is completed is determined by judging whether the height of the isolated tree reaches an extreme value. When the height of the isolated tree reaches an extreme value, the bifurcation processing is determined to be completed; or, whether the bifurcation processing is completed is determined by judging whether the sub-segmentation data cannot be cut. When the sub-segmentation data cannot be cut, the bifurcation processing is determined to be completed.

[0209] The height extreme value of the isolated tree is preset. When the height of the isolated tree reaches the extreme value, it indicates that the isolated tree can no longer be split. Or, when the sub-segmentation data cannot be cut, it also indicates that the isolated tree can no longer be split, and the bifurcation process is completed.

[0210] In this embodiment, when the processing time sample data in the isolated tree are marked as samples, the sample data within a set distance range from the isolated tree root are marked as outliers, and the remaining sample data are marked as valid points.

[0211] As an example, Fig.11 It shows multiple isolated trees iTree1, iTree2...iTreen obtained by performing the isolation tree method operation, wherein for each sample data, the sample data within a set distance range from the isolated tree root is marked as anomaly, i.e., an outlier, and the remaining sample data is normal data point.

[0212] The processing time value acquiring unit 505 acquires the processing time value corresponding to the machine according to the processing time valid data.

[0213] The processing time value corresponding to the machine is obtained according to the effective processing time data, so that the obtained processing time value more accurately represents the processing time of the machine.

[0214] Specifically, in this embodiment, obtaining the processing time value corresponding to the machine according to the valid processing time data includes: obtaining the mean of the valid processing time data as the processing time value; or obtaining the median of the valid processing time data as the processing time value.

[0215] The embodiment of the present invention further provides a device, which can implement the method for calculating the processing time of a semiconductor device provided by the embodiment of the present invention by loading the method for calculating the processing time of a semiconductor device in the form of a program. An optional hardware structure of the terminal device provided by the embodiment of the present invention can be as follows: Fig.13 As shown, it includes: at least one processor 01, at least one communication interface 02, at least one memory 03 and at least one communication bus 04.

[0216] In this embodiment, the number of processor 01, communication interface 02, memory 03, and communication bus 04 is at least one, and the processor 01, communication interface 02, and memory 03 communicate with each other through the communication bus 04. The communication interface 02 can be an interface of a communication module for network communication, such as an interface of a GSM module. The processor 01 may be a central processing unit CPU, or an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement an embodiment of the present invention. The memory 03 may include a high-speed RAM memory, and may also include a non-volatile memory (NVM), such as at least one disk memory. Among them, the memory 03 stores one or more computer instructions, and the one or more computer instructions are executed by the processor 01 to implement the method for calculating the processing time of a semiconductor device provided in an embodiment of the present invention.

[0217] It should be noted that the above-mentioned terminal device may also include other devices (not shown) that may not be necessary for understanding the contents disclosed in the embodiments of the present invention; given that these other devices may not be necessary for understanding the contents disclosed in the embodiments of the present invention, the embodiments of the present invention will not introduce them one by one.

[0218] An embodiment of the present invention further provides a storage medium, wherein the storage medium stores one or more computer instructions, and the one or more computer instructions are used to implement the method for calculating the processing time of a semiconductor device provided by the embodiment of the present invention.

[0219] Embodiments of the present invention may be implemented by various means such as hardware, firmware, software or a combination thereof. In a hardware configuration, the method according to an exemplary embodiment of the present invention may be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, etc. In a firmware or software configuration, embodiments of the present invention may be implemented in the form of modules, processes, functions, etc. The software code may be stored in a memory unit and executed by a processor. The memory unit is located inside or outside the processor and may send data to the processor and receive data from the processor via various known means.

[0220] Although the present invention is disclosed as above, the present invention is not limited thereto. Any person skilled in the art can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the scope defined by the claims.

Claims

1. A method for calculating semiconductor equipment processing time, characterized in that: include: Perform corresponding configuration of the machine and the calculation model; According to the calculation model, obtaining processing time sample data corresponding to the machine; Select processing time sample data within a preset statistical period; Eliminate abnormal values ​​in the processing time sample data within the preset statistical period, and retain the eliminated processing time sample data as valid processing time data; The processing time value corresponding to the machine is obtained according to the processing time valid data.

2. The method for calculating semiconductor equipment processing time according to claim 1, wherein: After the corresponding configuration of the machine and the calculation model is performed, before the processing time sample data corresponding to the machine is obtained according to the calculation model, the method further includes: performing thread configuration on the calculation model according to the calculation amount of the calculation model corresponding to each machine, and configuring each calculation model in the corresponding thread; According to the calculation model, the processing time sample data corresponding to the machine is obtained, and a plurality of the threads are run simultaneously.

3. The method for calculating semiconductor equipment processing time according to claim 1, wherein: Before performing the corresponding configuration of the machine and the calculation model, the calculation method further includes: obtaining a processing time database of the machine; Analyze the processing time database to obtain the machine type corresponding to the machine; In the corresponding configuration of the machine and the computing model, the corresponding configuration of the machine and the computing model is performed based on the machine type.

4. The method for calculating semiconductor equipment processing time according to claim 3, wherein: The method for calculating the processing time of the semiconductor equipment is applicable to wafer processing, wherein a plurality of the wafers constitute a batch; Analyze the processing time database to obtain the machine type corresponding to the machine, wherein the machine type includes a batch processing machine and a non-batch processing machine; When the machine type is a non-batch processing machine, obtaining processing time sample data corresponding to the machine according to the calculation model, wherein the processing time sample data is sample data of the number of wafers processed per hour; When the machine type is a batch processing machine, processing time sample data corresponding to the machine is obtained according to the calculation model, and the processing time sample data is batch processing time sample data.

5. The method for calculating semiconductor equipment processing time according to claim 4, wherein: Analyze the processing time database to obtain the machine type corresponding to the machine, wherein the machine type is a non-batch processing machine, and analyze the processing time database to obtain the bottleneck component of the machine; According to the calculation model, the processing time sample data corresponding to the machine is obtained, including: based on the processing time of the bottleneck component of the machine, obtaining the sample data of the number of wafers processed per hour.

6. The method for calculating semiconductor equipment processing time according to claim 5, wherein: Based on the processing time of the bottleneck component of the machine, obtaining the sample data of the number of wafers processed per hour, including: selecting the processing data of the bottleneck component of the machine from the processing time database, the processing data including the characteristic time of the wafer, and the characteristic time including the entry time or the exit time of the bottleneck component; Arranging the plurality of processing data of the bottleneck component into a time data table according to the order of the characteristic moments from small to large; Based on an operation criterion, a difference between a characteristic moment of a bottleneck component of the n+1th wafer and a characteristic moment of a bottleneck component of the nth wafer is obtained as a processing time of a single wafer, wherein the operation criterion is the same machine, the same start processing time, the same batch, the same bottleneck component and the same processing recipe; According to the processing time of the single wafer, sample data of the number of wafers processed per hour is obtained.

7. The method for calculating semiconductor equipment processing time according to claim 4, wherein: Analyzing the processing time database to obtain the machine type corresponding to the machine, wherein the machine type is a batch processing machine; According to the calculation model, obtaining processing time sample data corresponding to the machine, including: marking batch numbers of wafers passing through the same machine; The batch processing time sample data is acquired based on the batch number.

8. The method for calculating semiconductor equipment processing time according to claim 7, wherein: Acquiring the batch processing time sample data based on the batch number includes: acquiring processing data under the same batch number in the processing time database, the processing data including the entry time and exit time of the wafer at the machine; The difference between the exit time and the entry time is obtained as the batch processing time sample data.

9. The method for calculating semiconductor equipment processing time according to claim 1, wherein: In removing the abnormal values ​​in the processing time sample data within the preset statistical period, outlier detection is used to obtain the outliers of the processing time sample data as the abnormal values.

10. The method for calculating semiconductor equipment processing time according to claim 9, wherein: The outlier detection is performed using the interquartile range method or the isolation forest method.

11. The method for calculating semiconductor equipment processing time according to claim 10, wherein: Outlier detection is used to obtain outliers of the processing time sample data as the abnormal values, and when the distribution of the processing time sample data conforms to the normal distribution principle, the interquartile range method is used to perform the outlier detection; When the distribution of the processing time sample data does not conform to the normal distribution principle, the isolation forest method is used to perform the outlier detection.

12. The method for calculating semiconductor equipment processing time according to claim 10, wherein: In the outlier detection using the interquartile range method, sample data between the maximum value of the processing time sample data and the upper quartile, and sample data between the minimum value of the processing time sample data and the lower quartile are obtained as the outliers.

13. The method for calculating semiconductor equipment processing time according to claim 10, wherein: The outlier detection using the isolation forest method includes: performing one or more segmentation processes on the processing time sample data until each of the processing time sample data has a sample label, and the sample label includes a valid point and an outlier point; The segmentation process includes: randomly selecting part of the sample data as segmentation data; Performing binary tree segmentation on the segmented data to obtain an isolated tree of the segmented data; The processing time sample data in the isolated tree are sample marked.

14. The method for calculating semiconductor equipment processing time according to claim 13, wherein: Performing binary tree segmentation on the segmentation data to obtain an isolated tree of the segmentation data, including: randomly generating a bifurcation point between the maximum value and the minimum value of the segmentation data to perform bifurcation processing, and dividing the sample data into two sub-segmentation data greater than the bifurcation point and less than or equal to the bifurcation point; Determining whether the fork process is completed; When the fork process is completed, obtaining the isolated tree; When the bifurcation process is not completed, the sub-divided data is returned as the divided data to execute a bifurcation process by randomly generating a bifurcation point between the maximum value and the minimum value of the divided data.

15. The method for calculating semiconductor equipment processing time according to claim 14, wherein: Determine whether the bifurcation process is completed by determining whether the height of the isolated tree reaches an extreme value, and when the height of the isolated tree reaches an extreme value, determine that the bifurcation process is completed; Alternatively, whether the bifurcation process is completed is determined by determining whether the sub-divided data cannot be split; when the sub-divided data cannot be split, it is determined that the bifurcation process is completed.

16. The method for calculating semiconductor equipment processing time according to claim 13, wherein: In the sample marking of the processing time sample data in the isolated tree, the sample data within a set spacing range from the root of the isolated tree are marked as outliers, and the remaining sample data are marked as valid points.

17. The method for calculating semiconductor equipment processing time according to claim 1, wherein: Obtaining a processing time value corresponding to the machine according to the processing time valid data includes: obtaining a mean value of the processing time valid data as the processing time value; or obtaining a median value of the processing time valid data as the processing time value.

18. A calculation model for semiconductor equipment processing time, characterized in that: include: A configuration unit, used for corresponding configuration of the machine and the computing model; A sample data acquisition unit, used for acquiring processing time sample data corresponding to the machine according to the calculation model; A sample data selection unit, used to select processing time sample data within a preset statistical period; An effective data acquisition unit, used to remove abnormal values ​​in the processing time sample data within the preset statistical period, and retain the processing time sample data after the removal as the effective processing time data; The processing time value acquisition unit is used to acquire the processing time value corresponding to the machine according to the processing time valid data.

19. A device, characterized in that It comprises at least one memory and at least one processor, wherein the memory stores one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method for calculating the processing time of a semiconductor device as described in any one of claims 1-17.

20. A storage medium, characterized in that: The storage medium stores one or more computer instructions, and the one or more computer instructions are used to implement the method for calculating the processing time of a semiconductor device as described in any one of claims 1-17.

Citation Information

Cited By

  • Product scheduling method and device based on locking event, equipment and storage medium

    CN120146810A

  • Product scheduling method, device, equipment and storage medium based on locking events

    CN120146810B