This application claims the benefit of Taiwan application Serial No. 111124776, filed Jul. 1, 2022, the subject matter of which is incorporated herein by reference.
The present disclosure relates to a fault detection method, and more particularly, relates to a fault detection method for detecting behavior deviation of parameters in Fault Detection and Classification (FDC).
In a manufacturing process of a production line, whether the parameter variables of the process are abnormal maybe analyzed by Fault Detection and Classification (FDC). For example, in the semiconductor process, the parameter variables related to the silicon wafer process may be monitored, and the values of the parameter variables at different time points may be established as a time sequence, and the curve of such a time sequence maybe used as an “FDC control chart”. The FDC control chart is analyzed by fault detection classification to determine whether the parameter variables are abnormal.
The abnormal conditions of the parametric variables include: (1) The numerical range of the parametric variable does not change significantly, but the profile of the time sequence of the parametric variable has abnormal behavior (i.e., “behavior deviation”), and (2) the profile of the time sequence of parametric variables has no apparent abnormal behavior, but the time sequence of parametric variables has discontinuous conditions (i.e., “jump point” conditions).
However, when the parameter variables of the process of multiple targets are to be analyzed, lengths of the time sequences related to different targets are different from one another, or the time sequences are ahead or delayed with one another in time relationship, hence it is not easy to establish a standard sequence for normal condition. Furthermore, when the numerical variation of the parametric variable is large, a reasonable upper limit value (or a reasonable lower limit value) of the value of the parametric variable may not be set.
In order to overcome the above-mentioned technical problems, those skilled in this art are devoted to improve the fault detection method of parametric variables, and to process and calculate the time sequences of parameter variables. It is desired that numerical variation of time sequences may be reduced, and reasonable standard sequence may be established.
According to an aspect of the present disclosure, a fault detection method is provided. The fault detection method comprises the following steps. Receiving a first original sequence comprising a plurality of first data. Receiving a second original sequence comprising a plurality of second data. Aligning the first original sequence with the second original sequence according to trends of value changing of the first data and the second data. Performing an average operation on the aligned first original sequence and second original sequence to establish a standard sequence. Performing a difference operation between the first original sequence and the standard sequence to obtain a first total difference value. Performing a difference operation between the second original sequence and the standard sequence to obtain a second total difference value. When the first total difference value and/or the second total difference value is greater than an upper limit value, determining that the first original sequence and/or the second total difference value is abnormal.
According to another aspect of the present disclosure, a fault detection method is provided. The fault detection method comprises the following steps. Receiving a target sequence, the target sequence comprises a plurality of data. Performing a first moving average operation on the target sequence to establish a first moving average sequence. Performing a second moving average operation on the target sequence to establish a second moving average sequence. Performing a difference operation between the first moving average sequence and the second moving average sequence to obtain a difference sequence, the difference sequence comprises a plurality of difference values. Setting an upper limit value. When one of the difference values is greater than the upper limit value, determining that the target sequence is abnormal.
In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the disclosed embodiments. It will be apparent, however, that one or more embodiments may be practiced without these specific details. In other instances, well-known structures and devices are schematically illustrated in order to simplify the drawing.
The fault detection method of the present disclosure may process a plurality of original sequences to detect abnormal conditions therein. The data included in the original sequences are raw data which are not processed yet. In the embodiments of the present disclosure, the original sequences to be processed at least include a first original sequence OS1 and a second original sequence OS2.
The first original sequence OS1 is related to a first target A1. More specifically, in a manufacturing process of the first target A1, the processing equipment of the first target A1 has a plurality of parameter variables, including the first parameter variable P1. Values of the first parameter variable P1 at different time points may form the first original sequence OS1, that is, the first data D1(1)˜D1(N) included in the first original sequence OS1 are the corresponding values of the first parameter variable P1 at time points t1-tN.
Taking a process of silicon wafers as an example, to process a plurality of wafers in a batch, the first target A1 is, for example, one of the wafers. In the anneal process of the process of wafer, the first target A1 is placed in a temperature control box for heating and cooling. The first parameter variable P1 is, for example, the temperature of the temperature control box. The first data D1(1) of the first original sequence OS1 is the temperature at time point t1 when the temperature control box processes the first target A1, and the first data D1(2) is the temperature of the temperature control box at time point t2, and so on.
The marked points of the first data D1(1)-D1(N) of the first original sequence OS1 may be connected to form a profile. By analyzing the abnormality of the profile of the first original sequence OS1, a Fault detection and Classification (FDC) may be performed on the process of the first target A1.
The first data D1(1)˜D1(N) of the first original sequence OS1 have a trend of value changing corresponding to the time axis, which indicates a trend of value changing of the first parameter variable P1 corresponding to the time axis. For example, between the time point t2 and the time point t5, the first data D1(2)-D1(5) have an increasing trend. Between the time point t5 and the time point t7, the first original sequence OS1 reaches a local maximum value, (i.e., reaches the peak of the first original sequence OS1). The first data D1(5)-D1(7) corresponding to the time points t5-t7 are the local maximum values of the first original sequence OS1.
On the other hand, between the time point t13 and the time point t16, the first data D1(13)-D1(16) have a decreasing trend. Between the time point t16 and the time point t18, the first original sequence OS1 reaches a local minimum value, (i.e., reaches the valley of the first original sequence OS1). The first data D1(16)-D1(18) are the local minimum values of the first original sequence OS1.
From the above, at least one local maximum value and at least one local minimum value of the first original sequence OS1 may be located according to the trend of value changing of the first data D1(1)-D1(N).
The second original sequence OS2 is related to the second target A2. The second target A2 is different from the first target A1, and the second target A2 is, for example, another wafer. In the annealing process, the temperature of the temperature control box to process the second target A2 is the second parameter variable P2. The second data D2(1) of the second original sequence OS2 is the temperature of the temperature control box at time point t1 when the second target A2 is processed, the second data D2(2) is the temperature of the temperature control box at time point t2, and so on.
At time point t6, the second data D2(6) of the second original sequence OS2 has a local maximum value (i.e., a peak). At time point t14, the second data D2(14) of the second original sequence OS2 has a local minimum value (i.e., a valley). The profile of the second original sequence OS2 is substantially similar to that of the first original sequence OS1, i.e., both have local maximum values around time point t6. However, the second original sequence OS2 may lead or lag the first original sequence OS1 on the time axis, or, the time sequences length of the second original sequence OS2 may be different from that of the first original sequence OS1. Therefore, a dynamic time warping (DTW) operation may be performed to align the first original sequence OS1 with the second original sequence OS2 corresponding to the time axis.
On the other hand, the horizontal segments D2(1)˜D2(2), Incremented segment D2(2)˜D2(6), local maximum value D2(6) (i.e., peak), decremented segment D2(6)˜D2(9), horizontal segment D2(9)˜D2(11), decremented segments D2(11)˜D2(14), local minimum value D2(14) (i.e., valley), incremental segments D2(14)˜D2(17) of the second data D2(1)˜D2(20) of the second original sequences OS2 may be located according to the trend of value changing of the second original sequences OS2.
Then, on the time axis, the local maximum values D1(5)˜D1(7) (i.e., the peaks) of the first original sequence OS1 are aligned with the local maximum value D2(6) (i.e., the peak) of the second original sequence OS2. And, the local minimum values D1(16)-D1(18) (i.e., valleys) of the first original sequence OS1 are aligned with the local minimum value D2(14) (i.e., valley) of the second original sequence OS2.
Similarly, the incremented segments D1(2)˜D1(5) and the incremented segments D1(18)˜D1(20) of the first original sequence OS1 are respectively aligned with the incremented segments D2(3)˜D2(6) and the incremental segment D2(14)˜D2(17) of the second original sequence OS2. In addition, the decremented segments D1(7)-D1(11) and the incremented segments D1(13)-D1(16) of the first original sequence OS1 are respectively aligned with the incremented segments D2(6)-D2(9) and the increment segment D2(11)˜D2(14). Furthermore, the horizontal segments D1(11)-D1(13) of the first original sequence OS1 are aligned with the horizontal segments D2(9)-D2(11) of the second original sequence OS2.
After the DTW operation is performed to align the first original sequence OS1 and the second original sequence OS2 on the time axis, a normalize operation may be selectively performed on the first original sequence OS1 and the second original sequence OS2 according to actual requirements, so as to adjust the numerical range of the first data D1(1)-D1(20) of the first original sequence OS1 and the second data D2(1)-D2(20) of the second original sequence OS2.
After performing the DTW operation and selectively performing the normalize operation, an averaging operation is performed according to the aligned first data D1(1)˜D1(20) of the first original sequence OS1 and the second data D2(1)˜D2(20) of the second original sequence OS2 to establish a standard sequence. An example of the averaging operation on the first original sequence OS1 and the second original sequence OS2 is: a DTW-based barycenter average operation (DBA).
D0(3)=(D1(2)+D2(3))/2 (1)
And, the local maximum value of the first original sequence OS1 is the first data D1(6), which is aligned with the local maximum (i.e., the second data D2(6)) of the second original sequence OS2, therefore, the average value D0(6) of the first data D1(6) and the second data D2(6) is calculated as shown in equation (2):
D0(6)=(D1(6)+D2(6))/2 (2)
Furthermore, the local minimum value of the first original sequence OS1 is the first data D1(17), which is aligned with the second data D2(14) of the local minimum of the second original sequence OS2, therefore, the average value D0(14) of the first data D1(17) and the second data D2(14) is calculated as the equation (3):
D0(14)=(D1(17)+D2(14))/2 (3)
Similarly, calculate the average value D0(8) of the first data D1(10) and the aligned second data D2(8), as shown in equation (4):
D0(8)=(D1(10)+D2(8))/2 (4)
Based on the above, average values are calculated for all the first data and the respective aligned second data to obtain a plurality of average values D0(1)-D0(20). Then, a standard sequence STD is established according to the average values D0(1)˜D0(20). The standard sequence STD may be regarded as a profile that the first original sequence OS1 and the second original sequence OS2 should have under normal conditions.
Then, difference between the first original sequence OS1 and the standard sequence STD is calculated to evaluate the degree of deviation of the first original sequence OS1 from the standard sequence STD, so as to determine whether the first original sequence OS1 has an abnormal condition. For example, the difference value dD1(2) between the first data D1(2) of the first original sequence OS1 and the corresponding average value D0(3) of the standard sequence STD is shown in equation (5):
dD1(2)=D1(2)−D0(3) (5)
Similarly, the difference value dD1(6) between the first data D1(6) of the first original sequence OS1 and the corresponding average value D0(6) of the standard sequence STD is shown in equation (6):
dD1(6)=D1(6)−D0(6) (6)
Based on the above, the difference value dD1(n) between each of the first data D1 (n) of the first original sequence OS1 and the corresponding average value of the standard sequence STD is calculated. Then, these difference values dD1(n) are summed up to obtain a total difference value dD1T (which may be referred to as a “first total difference value”), as shown in equation (7):
dD1T=ΣndD1(n) (7)
The total difference value dD1T may represent the degree of deviation of the first original sequence OS1 from the standard sequence STD, and reflects the degree of abnormality of the first parametric variable P1, that is, the degree of “behavior deviation” of the first parameter variable P1.
Based on the same operating method, the difference between the second original sequence OS2 and the standard sequence STD is calculated, so as to evaluate the degree of deviation of the second original sequence OS2 from the standard sequence STD. For example, the difference value dD2(6) between the second data D2(6) of the second original sequence OS2 and the corresponding average value D0(6) of the standard sequence STD is calculated as shown in equation (8):
dD2(6)=D2(6)−D0(6) (8)
The difference value dD2(n) between each of the second data D2(n) of the second original sequence OS2 and the corresponding average value of the standard sequence STD is calculated successively. Then, the difference values dD2(n) are summed up to obtain a total difference value dD2T (which may be referred to as the “second total difference value”), as shown in equation (9):
dD2T=ΣndD2(n) (9)
The total difference value dD2T may represent the degree of deviation of the second original sequence OS2 compared to the standard sequence STD, which reflects the degree of abnormality (degree of behavioral deviation) of the second parameter variable P2.
The above embodiments are described by taking two original sequences OS1 and OS2 as examples. When the fault detection method of the present disclosure intends to analyze L targets (i.e., the first target A1, the second target A2, . . . , the Lth target A(L)), a plurality of original sequences OS1˜OS(L) related to L targets are performed with DBA operation to obtain the standard sequence STD, is shown in
Based on the above calculation method of the total difference value dD1T and the total difference value dD2T, the total difference values dD1T, dD2T, . . . , dD(L)T are calculated for all L original sequences OS1, OS2, . . . , OS(L). Then, a total difference sequence D_dif is established according to the total difference values dD1T, dD2T, . . . , dD(L)T.
For example, the total difference value dD4T corresponding to the fourth target A4 is greater than the upper limit value dDmax, and the total difference value dD7T corresponding to the seventh target A7 is greater than the upper limit value dDmax, indicating that the parameter variables of the processes of the fourth target A4 and the seventh target A7 have abnormal conditions. Similarly, the total difference values dD13T, dD14T, dD19T and dD20T corresponding to targets A13, A14, A19 and A20 are greater than the upper limit value dDmax, indicating that the parameter variables of processes of the targets A13, A14, A19 and A20 are abnormal.
When the numerical range of the data of the target sequence to be analyzed (for example, the original sequences OS1-OS(L)) do not change significantly, behavior deviation of the profile of the target sequences may be detected by the above embodiments in
As shown in
In response to the large numerical variation of the data F(1)˜F(L), average operations may be performed on the data F(1)˜F(L), and then the data F(1)˜F(L) are performed with filter-processing. An example of the average operation is a moving average (MA) operation. A first moving window W1 may be defined to perform a first moving average operation on the data F(1)-F(L). The first moving window W1 has a first width, and the first width is “5” for example. The first moving window W1 may cover a first amount of data F(1)-F(5). The first amount is “5” and is equal to the first width. And, average value M1(1) of the first amount of data F(1)˜F(5) is calculated as shown in equation (10):
M1(1)=(F(1)+F(2)+F(3)+F(4)+F(5))/5 (10)
Then, the first moving window W1 is shifted backward by one data, so that the first moving window W1 covers the first amount of data F(2)-F(6). And, calculate the average value M1(2) of data F(2)˜F(6), as shown in equation (11):
M1(2)=(F(2)+F(3)+F(4)+F(5)+F(6))/5 (11)
Similarly, the first moving window W1 is shifted backward by (k−1) data, so that the first moving window W1 covers the first number of data F(k)˜F(4+k), and average value M1(k) of the data F(k)˜F(4+k) is calculated as shown in equation (12):
M1(k)=(F(k)+F(1+k)+F(2+k)+F(3+k)+F(4+k))/5 (12)
Then, the first moving window W1 is shifted backwards successively, and the average value of the first amount of data in the first moving window W1 is calculated. According to the above-mentioned first moving average operation, a plurality of average values M1(1)˜M1(L) are obtained, and a first moving average sequence MS1 is established according to the average values M1(1)˜M1(L).
On the other hand, a second moving window W2 may be defined, and a second moving average operation maybe performed on the target sequence FS1 according to the second moving window W2 (not shown in
Then, the second moving window W2 is shifted backward by one data to cover the second amount of data F(2)-F(11). And, calculate the average value M2(2) of data F(2)˜F(11), as shown in equation (14):
Similarly, the second moving window W2 is shifted backward by (k−1) data to cover the second amount of data F(k)-F(9+k). And, the average value M2(k) of the data F(k)˜F(9+k) is calculated, as shown in equation (15):
Similarly, according to the above-mentioned second moving average operation, a plurality of average values M2(1)˜M2(L) may be obtained. Then, a second moving average sequence MS2 is established according to the average values M2(1)˜M2(L).
Then, the difference between the first moving average sequence MS1 of
Through two moving average operations with different widths of moving windows, the short-term value fluctuation of the target sequence FS1 may be reduced, so as to highlight the long-term trend of value changing. Moreover, by subtracting the results of the two moving average operations, the discontinuous “jump point” situation of the target sequence FS1 may be highlighted. The numerical variation of the difference sequence M_dif is much smaller than the target sequence FS1, which benefit setting of a reasonable upper limit value dMmax of the difference sequence M_dif.
In the difference sequence M_dif, the difference values dM(13), dM(40) and dM(41) are detected to be greater than the upper limit value dMmax. The difference values dM(13), dM(40) and dM(41) correspond to the discontinuous “jumping points” of the first and second moving average sequences MS1 and MS2 of
It will be apparent to those skilled in the art that various modifications and variations may be made to the disclosed embodiments. It is intended that the specification and examples be considered as exemplary only, with a true scope of the disclosure being indicated by the following claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
111124776 | Jul 2022 | TW | national |