IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

1

Spatio-temporal Pattern Modeling for Fault Detection and Classification in Semiconductor Manufacturing Hyung Jin Chang, Dong Sung Song, Pyo Jae Kim, and Jin Young Choi

Abstract—This paper proposes a new approach to modeling the sequential flow characteristics of data patterns for detecting and classifying faulty processes in semiconductor manufacturing. Unlike conventional methods, which consider the spatial pattern distributions, the proposed approach models the spatial patterns local in time, transition time, staying time, and the sequential ordering of the local patterns through the process. To model these spatio-temporal patterns, we develop a sequential version of support vector data description (SVDD). This improves the precision of fault detection and easily detects the process start/end points; the moment a fault occurs can be captured immediately by checking the process start/end point based on the sequential order of SVDD. The detection of the moment a fault occurs is useful in analyzing the source of the fault. Index Terms—Spatio-temporal pattern, fault detection, pattern recognition, sequential support vector data description, start/end point detection.

I. I NTRODUCTION VER the past few decades, the semiconductor industry has grown an average of 15% per year. This steady growth is a result of a continuous reduction in the cost per function of 25%-30% per year [1]–[3]. To improve wafer productivity and reduce production costs, the semiconductor industry demands automation of the process technology. One of the most important research area toward that end is fault detection and classification (FDC) [3]–[6], which refers to an automated process control technology which conducts process fault detection and diagnosis of error sources. Generally, in FDC, faulty process detection is conducted first and fault source classification follows. Up to date, faulty process detection research has used a variety of statistical approaches and research on classification of causes of process abnormality after the detection, methodology based on probabilistic modeling has been used in addition to statistical approaches. Research is now under way to execute fault detection and classification simultaneously.

O

Hyung Jin Chang is with the School of Electrical Engineering and Computer Science, ASRI Seoul National University, Seoul, Korea (e-mail: [email protected]). Dong Sung Song was with the School of Electrical Engineering and Computer Science, Seoul National University and he is now with Continental Automotive Systems Corporation, Icheon, Korea (e-mail: [email protected]). Pyo Jae Kim was with the School of Electrical Engineering and Computer Science, Seoul National University and he is now with Samsung Electronics Co., Ltd., Suwon, Korea (e-mail: [email protected]). Jin Young Choi is with the School of Electrical Engineering and Computer Science, ASRI Seoul National University, Seoul, Korea (e-mail: jychoi@ snu.ac.kr).

Univariate statistical methods, such as Shewhart control chart [7], cumulative sum (CUSUM) [8], and the exponentially weighted moving average (EWMA) [9], are commonly used in the semiconductor industry because of their simplicity [10]–[12]; however they are not adequate for large amounts of nearly real-time data analysis the huge number of charts creates a high maintenance effort and produces false alarms [13]. Multivariate statistical methods have drawn increasing interest in semiconductor manufacturing [1], [5], [14] as more and different sensing data becomes available. The sensor measurements are highly correlated because of the physical and chemical principles governing the process operation. Principal component analysis (PCA), Fisher linear analysis (FLA) [15], and partial least squares (PLS) [16] based methods have been applied successfully in actual applications [17]–[20]. However, further research issues remain due to the unique characteristics of semiconductor manufacturing processes, such as the nonlinearity of data and time varying properties. Several methods have been presented to handle the time varying characteristics. The wavelet method [21] analyzes process data in a frequency space to detect abnormalities. Recursive PCA (RPCA) [22], [23] detects faulty processes by updating the PCA model through various processes. PCA and k-nearest neighbor (kNN) are used hierarchically in PC-kNN [14]. First, PCA is applied to the original batch process data and then kNN is applied to the principal subspace to perform fault detection. Unfolding process data into several clusters as time sequences is used in multi PCA (MPCA), parallel factor analysis (PARAFAC) and trilinear decomposition (TLD) [24]. However, the unfolding dramatically increases the number of variables, requiring a significant number of batches to build a reliable PCA model and the methods are sensitive to slow parameter drifts over long periods. Among the multivariate statistical methods, Hotelling T 2 [25]–[27] is widely used in the semiconductor industry [5], [13], [28]. Hotelling T 2 is a statistical decision method that calculates the T 2 statistic value, which serves as a threshold for distinguishing normalfrom abnormal processes. To detect an abnormal process, it reduces the training data dimension using PCA, uses statistics to set a normal/abnormal decision threshold, and then makes the decision. This method is simple and efficient, however, if the distribution model of the target data (training data) is not simple, such as a Gaussian distribution, the normal/abnormal decision threshold covers a larger area than the actual area an abnormal process would appear

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

in, leading to a high incidence of missed faults. Recently, researches for FDC using discriminative classification methods have been conducted actively. Several methods using artificial neural network (ANN) [15], [29]–[34] have shown good FDC results for various processes. Also the applications of support vector machine (SVM) [35] in FDC have made a lot of achievements [36]–[39]. SVM can effectively solve the learning problems of small sample size, high dimension, nonlinearity and overcome the disadvantages of the difficult determination of reasonable ANN learning structure and the existence of local optimum [40], [41]. However, in many cases, abnormal data which are necessary for training binary classification are expensive to collect and very rare. So, the two-class classification methods (etc. ANN and SVM) may not be effective for FDC. For this one-class classification problem, support vector data description (SVDD) is proposed [42]. The SVDD is a specified SVM [35] for one-class classification that successfully describes non Gaussian data [42]–[45]. Most of the conventional methods mentioned handle spatial patterns and their distributions, whereas they apply a simple decision criterion [46], [47]. This paper proposes a spatiotemporal pattern classification approach for accurate detection of faulty processes. To model this type of process, we developed a new sequential SVDD classifier. The proposed sequential version is designed to model the sequential flow of process data and characteristic areas of flow. Both the description boundaries and sequential relations among SVDDs are modeled to monitor the process status. SVDD handles the nonlinear and non Gaussian data characteristics and sequential modeling handles the sequential characteristics. First, a PCA algorithm conducts feature extraction and dimension reduction on the original sensory data; the processed feature data are plotted in two dimensional space to better visualize the process flow. Then the featured areas that are critical in discerning normal/abnormal status are selected either automatically or manually reflecting the empirical knowledge of a professional engineer with semiconductor line management experience. A training algorithm configures a sequential classifier that describes the selected data areas with the SVDD and their sequential relationships with a Gaussian distribution. This essential local information and relational modeling describes the characteristics of all of the process data excluding redundant details. Checking the sequential order of SVDDs can simultaneously detect the process start/end points and the moment the fault occurred. This temporal fault information is useful for diagnosis of fault sources. The performance of the proposed algorithm was evaluated by experiments with data obtained from a semiconductor manufacturing line. The rest of this paper is organized as follows: Section II provides brief preliminary discussions of the PCA and SVDD; Section III presents the proposed framework for process fault detection using sequential SVDD; Section IV presents experimental results using actual process data , comparing our proposed method with the Hotelling T 2 based method [13], [26]; and Section V provides the conclusions and some discussions.

2

II. P RELIMINARIES A. PCA PCA [15] is a well-known statistical method for extracting features from data distribution. Let x ∈ Rd be the original vector representation of a datum, where d corresponds to the dimension of the data space. When n data x1 , x2 , ..., xn are given, dimension reduction is achieved by projecting the data into a low-dimensional feature space. Projection of n d-dimensional data into an r-dimensional feature space is conducted by multiplying a transformation matrix W ∈ Rd×r with the data as follows: fi = Wxi

i = 1, ..., n.

(1)

where r and fi ∈ Rr denote the feature dimension and rdimensional feature for the original data xi , respectively. To reduce the dimensions, the feature dimension r should be less than the data dimension d, i.e., r < d. The goal of PCA is to find a basis vector w∗ such that w∗ = arg max wT Aw,

(2)

w

d where vector ∥w∥ = 1 and A = ∑n w ∈ R is a unit 1 T [x − m ][x − m ] is the auto-covariance matrix of i n i n i=1 n ∑n each component in xi ∈ Rd . mn = n1 i=1 xi is a mean vector of n data vectors. The w∗ is the first principal axis w1 of xi for i = 1, 2, ..., n. Then, by removing the data component in the w1 direction and solving the above problem again, we obtain an additional w∗ which is orthogonal to w1 . This is called the second principal axis w2 . The other principal axes and principal components, noted wk for k = 3, 4, ..., r, are similarly achieved. Then the transformation matrix is determined by

WT = [w1 , w2 , ..., wr ].

(3)

Determining the reduced dimensions requires checking the percentage of data information that must be preserved. The amount of preserved information is measured by the cumulative variance ratio [15]. B. Support Vector Data Description (SVDD) The SVDD [43] is a well-known one-class classification algorithm. This algorithm attempts to find the smallest hypersphere in the feature space that contains almost every target example. The hypersphere becomes a decision boundary for classification. By assuming a hypersphere with center a and radius R, the cost function is defined as: L(R, a, ξ) = R2 + C

n ∑

ξi .

(4)

i=1

where ξi is a slack variable such that ξi ≥ 0, and regularization parameter C(0 ≤ C ≤ 1) controls the trade-off between false positive (type-I error) and the false negative (type-II error). As the C is closer to 1, false positive, which means the error data are placed inside of the decision boundary, is increased and false negative, which means the target data are placed outside of the decision boundary, is decreased. Also Eq. (4) should

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

3

be minimized under the following constraints in feature space (ϕ(·) maps data xi into feature space.): ∥ϕ(xi ) − a∥2 ≤ R2 + ξi ,

ξi ≥ 0,

∀i.

Outlier Inlier

D(z)

(5)

z

a R

Constraints can be incorporated into the cost function by using Lagrangian multipliers: ∑ L(R, a, αi , γi , ξi ) = R2 + C ξi (6) − −

∑ i ∑

Decision Boundary

Support Vector

(a)

(b)

i

αi {R2 + ξi − (K(xi , xi ) − 2a · ϕ(xi ) + ∥a∥2 )} γ i ξi ,

Fig. 1. (a) SVDD in two-dimensional feature space. The markers ⊗ represent support vectors, ◦ inliers, and ⊙ outliers, respectively. The decision boundary is a linking line of support vectors, and this boundary separates inliers and outliers. (b) SVDD trained result (C = 1.0, σ = 3.6).

i

αi ≥ 0,

Training Process

γi ≥ 0.

Preprocessing

Here K(xi , xj ) = ϕ(xi ) · ϕ(xj ) is a kernel function used to describe arbitrary boundaries, as depicted in Fig. 1(b). In this paper, we use a Gaussian kernel: 2

K(xi , xj ) = exp(−

∥xi − xj ∥ ). σ2

(7)

L should be minimized with respect to R, a, ξi and maximized with respect to αi , γi . After setting the partial derivatives of L to zero, we obtained the following dual objective function max L(α) = max α

α

n ∑

n ∑

αi K(xi , xi ) −

i=0

(8) which is subject to αi = 1.

(9)

n ∑

αi ϕ(xi ).

(10)

i=1

0 ≤ αi ≤ C.

(11)

We can solve this optimization problem with a quadratic programming (QP) solver. The data xi with 0 < αi < C are called support vectors (SVs). The data xi with αi = C are outliers, and the data xi with αi = 0 are inliers. To test data z, the distance D(z) to the center a of the sphere is used to make the decision. D(z) = ∥z − a∥2 = K(z, z) − 2

Dimension Reduction

Data Selection Training SVDD for each GATE



Preprocessing

Training SVDD for each GATE

Applying Classifier - Fault detection

Configuring Sequential SVDD Classifier

- End point detection Classifier Training results

Fig. 2.

Result

Fault process detection algorithm.

III. P ROPOSED F RAMEWORK FOR P ROCESS FAULT D ETECTION A. System Overview

i=1

a=

Dimension Reduction

Loading principal basis matrix

αi αj K(xi , xj ).

i,j=0

n ∑

Test Process

Manufacturing Process Sensor data

Abnormal processes occur unexpectedly and their costs to manufacturing are high. It is impossible to model all of the fault process patterns, as too many things can trigger an abnormal process; thus, we designed our fault detection system to detect faulty processes after training with normal process data. The proposed fault detection system is placed between sensors and manufacturing equipment. The system receives data from self plasma optical emisson spectroscopy (SPOES) sensors and determines if the current process has a fault. To develop decision criteria, training is performed with normal process data before testing. In the test step, the system makes decisions using the training results and the test results are fed back to the semiconductor manufacturing equipment. Fig. 2 shows the overall system flow.

(12) n ∑ i=0

αi K(z, xi ) +

n ∑

αi αj K(xi , xj ).

i,j=0

When the distance is smaller than, or equal to, radius R, then the test data z is determined to be an inlier or support vector. Otherwise, it is classified as an outlier as shown in Fig. 1. Only using the support vector xs , we can calculate the radius R by R = D(xs ). Thus, we easily determine whether a test pattern is an inlier or outlier using equation (4) and R.

B. Process Data Characteristics Manufacturing process data are basically combinations of sequential flow patterns. Similar data patterns appear periodically and the value levels are similar. The transition time and transition order between data are important characteristics for detecting faulty processes. As shown in Fig. 3, there are suspended periods even in normal process data, when the values are abnormal compared to normal process values. Although normal and abnormal values are mixed, the process

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

4

Normal Process Period

Suspending Period ͨ͡͡͡͡

ͧ͡͡͡͡

Time Gate 1 at T5

ͦ͡͡͡͡

ͥ͡͡͡͡

PC 2

ͺΟΥΖΟΤΚΥΪ͙͑Β͟Φ͚͑

T5

ͤ͡͡͡͡

ͣ͡͡͡͡

T4

Trajectory of sequential data

Start/End Gate at T4

Gate 2 at T3

Gate 2 T3

͢͡͡͡͡

͡ ͡

͢͡͡͡

ͣ͡͡͡ ΀͹ͮͤͪ͟͡͡

ͤ͡͡͡

ͥ͡͡͡ ͦ͡͡͡ ͧ͡͡͡ ΄ΔΒΟ͑ΥΚΞΖ͙͑Ω͑ͣͦ͑͟͡͡ΤΖΔ͚͑ Ϳͣͮͤͦͧ͢͟

ͨ͡͡͡

͹ʹΝͮͤͣͥͧ͟

ͩ͡͡͡

ͪ͡͡͡

Gate 1 at T2

T2

͢͡͡͡͡

Gate 1

΅ΚʹΝͮͥͦͨ͟͡

Fig. 3. Process data are a periodic sequence. The transition time and shape of data is cyclic with irregular suspended periods in a normal process data sequence. These suspended periods are caused by reasons such as chamber cleaning or changing the material. Data from a suspended period causes many false alarms.

Start/End Gate

T1

PC 1

Start/End Gate at T1

PC 1

(b)

(a)

Fig. 4. Examples of sequential SVDD. The start/end and corner points are notated as Gk in Fig. 4(a), and Fig. 4(b) shows sequential data passing each Gk as time flows.

should be classified as normal. To model this characteristic, we developed a sequential SVDD, which can represent the timing and ordering properties as well as spatial patterns.

3.5

3

2.5

C. Fault Detection using Sequential SVDD

fp = W × xp

(13)

2) Selecting Gate region in process data: Manufacturing processes, include specific important and necessary operations for producing quality products. Generally important process sections are revealed as radical changes in sequential data, because the physical and chemical characteristics of material or the use of chemical gases changes dramatically during

PC1

2

We propose a sequential data classifier using SVDD for FDC in dynamic processes. The original SVDD provides good classification performance for one-class problems; however it is inappropriate for dynamic data. Because SVDD identifies a whole boundary of training data, it ignores the dynamics of sequential data, such as the relative positions, transition time between data, periodicity, and data transition direction. To represent the dynamics of data with a static SVDD classifier, we compose a sequential chain of SVDDs. Usually, in sequential data, the start/end data positions and corner position are important in describing the sequence. These important data regions are described by this SVDD method. Normal manufacuring process data are periodic and show similar trajectory patterns. If a data sequence is outside of the regular description region or passing the region too late, the sequence becomes abnormal. 1) Preprocessing and dimension reduction: Sensory data must be preprocessed before being used as training input, because process drift can occur as the process flows or after chamber cleaning. Thus, we scale the data from zero to one and use mean centering. The dimensions of sensory data is usually large, but most of it is redundant, we use PCA to reduce the dimensions. Let the original process data be xp and the PCA transformation matrix be W , obtained by (3), and the reduced dimensional data be fp . Then,

1.5

1

0.5

0 0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

PC2

Fig. 5. Automatically selected Gate regions (red regions) by checking curvature.

the process. They appear periodically in the same region of the sequence as process repeats. We define each SVDD description region as Gate. Espesially we call the description of the start/end position data as Start/End Gate(G0 ); the other Gates are numbered sequentially as Gate(Gk ). Fig. 4 shows an example of a sequential SVDD. The drastic material characteristic change appear as a peak or sudden level change of graph. Using these graphical features, important sections of a process can be selected automatically or manually. The automatic method calculates the curvature [48] of a sequence and sets all large curvature regions as Gates. The peak of process graph is represented as a high curvature curve in projected data onto PC1 and PC2. In Fig. 5, high curvature data of fp are mark as red and we set the regions as Gate region. Manually selecting Gate region is also possible in our algorithm. Actually manual selection by a skilled manufacturing expert is more preferable, because his or her empirical knowledge optimizes selection of the Gate region. As mentioned

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

(c)

(a)

(b)

Fig. 6. Monitoring program. (a) Sequence PC1 and PC2. The Gate region can be selected manually in this panel. (b) Projected sequence onto PC1 and PC2 axes. The Gate region can be selected manually in this panel as well. (c) Displaying trained SVDD boundaries of Gate regions.

D 

E 

5

in testing. In the data-training step, each Gate region data are trained by static SVDD training equation(8), and the Gate transition order OT is made by adding the Gate index when F(Gk ) = T . If any Gp is checked that a sequential process datum xp enters into the boundary of the description region 2 (which means D(W xp ) = ∥W xp − a∥ ≤ R2 ), F(Gp ) = T and Ts (Gp ) = 0 . l times later, if F(Gp ) becomes F , then the staying time Ts (Gp ) = l and Gate transition time Tt (Gp , Gq ) begins incrementing until the other F(Gq ) = T is checked. Then the Gate sequence set OT becomes OT = {Gp , Gq }. If K Gates are generated, Tt (Gk , Gk+1 ) and Ts (Gk ) are modeled as a normal distribution and trained for N periodic data sets. In general, exponential distribution is used for life time attribute modeling and Laplacian distribution is appropriate for modeling general communication delay time [49]. However, unlike the typical time modeling situation, the manufacturing process has a periodic property which means similar data value appears in some fixed time interval with some variance [47]. So we model the temporal attribute with normal distribution which models temporal mean and its variance. The staying time distribution ηkS and transition time distriT bution ηk,k+1 are modeled as normal distributions, N (µSk , σkS ) T T and N (µk,k+1 , σk,k+1 ) respectively, for k = 0, 1, ...K − 1 (if k + 1 = K, then k + 1 = 0). Given N training data, if the nth datum stays at Gk during Tsn (Gk ), and its transition time from Gk to Gk+1 is Ttn (Gk , Gk+1 ), then we train each model parameter with these data.

Fig. 7. Manual Gate selection in monitoring system window. The selection can be done in window (a) or (b). In this manufacturing process, there were 3 times major gas changes for each period. So we choose 3 regions as Gate.

above, critical process is easily checked in process graph and the distinct parts appear repeatedly. Fig. 6 shows our implemented monitoring system, an user or expert can easily select Gate region simply dragging critical parts in Fig. 6 (a) or (b) window. Fig. 7 shows the Gate region selection and its compatible results. The Start/End Gate region should be marked separately in either method. 3) Princical Checkpoints for sequential SVDD: Our proposing sequential SVDD classifier makes a decision simply by checking four Checkpoints (CPs). 1) Gate entering flag F(Gk ) = T /F (T rue/F ail). 2) Gate transition order set OT . 3) Gate-to-Gate transition time Tt (Gk , Gk+1 ). 4) Gate staying time Ts (Gk ). The first CP describes spatial location of data. When a process datum falls into Gate i, then F(Gi ) = T , otherwise F(Gi ) = F . The second CP is an ordered Gate index set of the sequence of Gate flagged as ”T”. So, CP 2) plays a role of giving chronological characteristics to spatial data and links separated Gates. CP 3) and 4) makes temporal boundaries and descriptions of linking Gates. 4) Training sequential SVDD: As shown in Fig. 2, training is performed before testing to model normal process for use

1 ∑ n T (Gk ). N n=1 s v u N u1 ∑ = t (T n (Gk ) − µSk )2 . N n=1 s N

µSk σkS

=

(14)

(15)

1 ∑ n (16) T (Gk , Gk+1 ). N n=1 t v u N u1 ∑ t = (T n (Gk , Gk+1 ) − µTk,k+1 )2 . (17) N n=1 t N

µTk,k+1 T σk,k+1

=

5) Testing sequential SVDD: To test a new process data, dimension reduction is conducted by multiplying the PCA transformation matrix, and then fault detection is carried out with the trained normal process model(F(Gk ), OT , Tt (Gk , Gk+1 ), Ts (Gk )). CP 1) can be checked easily by (12). If a datum is classified as an inlier, the flag F(Gk ) becomes T . CP 2) can be checked by just comparing the Gate sequence order OT with the trained result. If F(Gk ) is triggered to ”T” as the order of OT , then CP 2) becomes ”True”, otherwise it is ”Fail”. CPs 3) and 4) are tested by

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

6

Algorithm 1 Testing step of sequential SVDD 1: procedure T ESTING CURRENT DATA xp (t)(W , normal process model(F(Gk ), OT , Tt (Gk , Gk+1 ), Ts (Gk ))) 2: Dimension reduction (13) fp (t) = W × xp (t) 3: Test CP 1) about all GATEs with fp (t) by (12) 4: if All F(Gk ) becomes F from F then 5: Increase time counter l + + 6: if Test CP 3) (l ≥ max(Tt (Gk , Gk+1 ))) then 7: Test result is ABNORMAL 8: else 9: Test result is NORMAL 10: end if 11: else if One of F(Gk ) becomes T from F then 12: Check the CP 4) using time counter l 13: Reset l = 0 14: if CP 4) returns T rue then 15: Test result is NORMAL 16: else 17: Test result is ABNORMAL 18: end if 19: else if One of F(Gk ) becomes F from T then 20: Test CP 2) whether the order of GATE is correct 21: if CP 2) returns T rue then 22: Check the CP 3) using time counter l 23: Reset l = 0 24: if CP 3) returns T rue then 25: Test result is NORMAL 26: else 27: Test result is ABNORMAL 28: end if 29: else 30: Test result is ABNORMAL. 31: end if 32: else if One of F(Gk ) becomes T from T then 33: if Test CP 4) l ≥ Ts (Gk ) then 34: Test result is ABNORMAL 35: Increase time counter l + + 36: else 37: Test result is NORMAL 38: Increase time counter l + + 39: end if 40: end if 41: return Test result 42: end procedure

CP 3)  T rue = F ail CP 4)    T rue =    F ail

√ S 2πσkS2 < Pthres .

(18)

(T (G )−µS )2 exp(− s 2σk S2 k )/ k

otherwise . (19) √ T 2 2πσk,k+1

2 (Tt (Gk ,Gk+1 )−µT k,k+1 ) )/ exp(− T2 2σk,k+1 T . < Pthres

otherwise .

Start/End  Gate 

Gate 1

Start/End Gate

Gate 3

Gate 1

Gate 3

Gate 2

Gate 2

(a)

(b)

Start/End Gate

Start/End Gate

Gate 1

Gate 3

Gate 1

Gate 3

Gate 2

Gate 2

(c)

(d)

Fig. 8. Examples of fault sequences that can be detected by sequential SVDD. (a) A normal sequence. The sequence starts at the Start/End Gate, passes Gate 1 to 3, and returns to the Start/End Gate. (b) A missing Gate fault. The sequence misses Gate 3. (c) An inverse order sequence. (d) An abnormal transition time captured by sequential SVDD.

S T The Pthres and Pthres are experimentally defined threshold. The test sequence is normal if all CPs are successfully satisfied ”True” state. This CP test scheme enables our algorithm to be applied to on-line process monitoring. The overall process of testing step is given in Algorithm1 Fig. 8 shows the abnormal cases that the sequential SVDD classifier can detect. These are similar to process faults that occur occasionally, such as process level drift, a missing process step, wrong process sequence and irregular process time.

IV. E XPERIMENTAL R ESULTS To demonstrate the efficiency of our proposed method, we performed fault detection using actual industrial semiconductor manufacturing process data. We used a SPOES sensor to obtain the process data. The spectral range of the sensory data is from 200 to 850nm, and the dimension of each process datum is 417. One datum point is collected every 200 ms. Data set 1 was collected for five days and consists of 129 normal process sequences and 21 faulty process sequences. Each process sequence contains 14400 data points with dimension of 417 (R417×14400 ). Data set 2 contains 200 faulty process sequences obtained over five days; Data set 3 consists of 45 abnormal process sequences collected over two days. We used tow normal sequences randomly chosen from Data set 1 to train the PCA and sequential SVDD; the remaining sequences were used for testing. We implemented our system as shown in Fig. 6, and performed experiments. We compared the classification performance of our algorithm with various methods. The multivariate statistical approach method, such as T 2 and Q statics method [26], is widely used in industry and is conceptually similar to our

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

7

# of normal data

# of abnormal data

Total

129 0 0

21 200 45

150 200 45

Data set 1 Data set 2 Data set 3

PC 1

PC 1

TABLE I DATA S ET I NFORMATION

Principal Component & Cumulative Variance Ratio

PC 1

Original Process Data

PC 2

Time

Time

(b) PC 1

(a)

63.5%

PC 2

Principal Component 1

Gate 2

Gate 1

Principal Component 2

Start/End Gate

29.8% PCA

(c)

4.3% PC 1

(a)

PC 2

(d)

PC 2

Principal Component3

(b)

Fig. 10. Sequential SVDD trained result. (a) Process data projected onto PC 1. (b) A 3-dimensional description of PC 1 and PC 2 values as time flows. (c) Selected Gate regions. (d) Sequential SVDD trained Gate regions.

(c)

Fig. 9. Dimension reduction using PCA. (a) The original 417 dimensional sensory data. (b) Projected data onto principal components (PCs). The cumulative variance ratio implies how much information the PC contains. (c) Projected data onto PC1 and PC2.

proposed method in that it finds the statistical boundary of normal data. Famous non parametric methods, such as parzen window [15] and k-nearest neighbor (kNN) [1], are tested for fault process classification. Also discriminative classification based algorithms (ANN, SVM, SVDD methods), which are basically same as our method but not considering temporal properties, are compared. A. Dimension Reduction and Gate Region Training First we performed data dimension reduction from 417 dimension to 2 dimension regardless of classification method. The dimension of the original sequential process data is 417. This is too large and many dimensions are redundant. PCA finds new principal axes that represent the characteristics of the data distribution without information loss. As shown in Fig. 9, the first principal component (PC) contains 63.5% of the original information and the second PC has 29.8%; thus, 93.3% of original information can be expressed only using two PCs (two dimensional data). In our experiment, we use data sets reduced from 417 to two dimensions for training and testing. Fig. 10 shows manually selected Gate region data (colored) and SVDD trained results. We used C = 1 for the regularization parameter, which means that the SVDD allows no outliers, and the σ values of the kernel function are set experimentally so that they do not enclose the data too tightly. B. Faulty Process Detection Result We conducted a fault detection test for Data sets 1, 2, and 3. To simulate a real manufacturing

process data collection, the test was conducted about a sequentially picked process datum. Randomly chosen two normal sequences and two abnormal sequences among Data set 1 are used for training binary classifiers (Parzen Window, kNN, ANN, and SVM) and only two normal sequences are used for training T 2 , Q statics, SVDD, and proposed method. For all data sets, our proposed method achieved better detection performance than other methods. Although the training set is small and consists only of normal data, we obtained good classification results, as shown in Table II. Because of the characteristics of the one-class classifier(SVDD), abnormal data are unnecessary and the classifier can focus on describing normal data. On the other hand, various abnormal data patterns make the binary classifier be dithered. Also Fig. 11 shows some abnormal cases that the sequential SVDD detected. Although there are a variety of abnormal cases, our method successfully detected them all. Fig. 12 demonstrates the superiority of our method. The T 2 and Q statics method [26] classifies both Figs. 12(a) and (d) as normal, but (d) is an abnormal process. Our method successfully detects all the faults because it considers the local characteristics and relative sequential information as well as the complete sequential distribution. C. Process Start and End Point Detection In addition to detecting faulty process data, our proposed method successfully detected the process start and end points. A normal process is typically periodic and starts from similar process value. The start and end points are grouped as a Start/End Gate in the training step; thus, a new process starting point can be detected by capturing the moment the process data returns to the Start/End Gate. Fig. 13 shows a successfully detected process start position. Such temporal information is useful for fault classification. Capturing the

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

8

TABLE II P ROCESS CLASSIFICATION PERFORMANCE RESULTS FOR DATA S ETS 1,2 AND 3.

Data Set 1 Classification Result

Data Set 2 Accuracy

Classification Result

Data Set 3 Accuracy

Classification Result

Normal

Abnormal

T 2 , Q statics [26]

110

38

88.4

0

200

100

0

45

100

Parzen Window [15]

143

3

87.7

9

191

95.5

4

41

91.1

Normal

Abnormal

(%)

Normal

Abnormal

Accuracy

(%)

(%)

kNN [1]

139

7

88.4

181

19

9.5

44

1

2.2

ANN [31], [32]

85

61

71.9

135

65

26.5

35

10

4.1

SVM [36]

118

28

95.2

70

130

65

1

44

97.8

SVDD [42]

80

66

69.2

0

200

100

0

45

100

Proposed

122

26

98

0

200

100

0

45

100

640.8nm sensory data SE

SE SE

SESE SESE SESE SESE SE SE

Gate 2 3

Gate 1 1 2

Start/End Gate

1 2

1 2

3

1 2

1 2

SE SE SE 1 2 SE SE 1 2 SE SE 1 2 SE SE 1 2 SE (b)

(a)

(c)

640.8nm sensory data SESE

SESE

SESE SESE

Gate 2 Gate 1 12

Start/End Gate (d)

1 22 1 22 1 2

1 22 1 2 1 2

1 2 SE SE SE SE 1 2 2 1 2 2 1 2 SE SE SE SE 1 2 2 1 2 1 2 (e)

(f)

Fig. 12. (a), (b) and (c) show normal process data, and (d), (e) and (f) are abnormal process data. (a) and (d) are projected data and (c) and (f) are original sensory data. T 2 and Q statics [26] classified (a) and (d) as a normal process because the values and statistical distributions are similar. Sequential SVDD detected a subtle abnormality in the process by Gate checking. The normal transition sequence is OT = {SE, 1, 2, SE}, but the abnormal process did not enter the Gate region correctly.

temporal position of a fault makes it easier to diagnose its cause. V. C ONCLUSION This paper proposed a fault detection and classification method for semiconductor manufacturing using a sequential SVDD classifier algorithm. After acquiring process state monitoring sensory data, it was reduced to the essential information with a PCA algorithm and the information plotted in a 2 dimensional domain to better visualize process flow. Then the data groups, which are critical in discerning normal/abnormal conditions, were selected automatically or manually by reflecting the empirical knowledge of a professional engineer with experience in semiconductor line management. Training was conducted separately for describing Gates with SVDD and modeling the sequential relationships. Fault detection can be

executed in on-line manner by checking CPs of each newly collected process datum. Our classifier can configure important sub-process regions in more detail than the established T 2 and Q statics method, decreasing the incidence of missed faults. Auto detecting important points (such as start/end points) and the moments faults occur in the process easily achieves fault classification.

ACKNOWLEDGMENT We wish to thank Dong-Ho Cha for providing the SPOES apparatus and experimental data, and for advising on the project. The research was sponsored by the Small and Medium Business Administration and Nanotek Company.

PC2

PC1

(c)

PC1

(b)

PC1

(d)

PC1

PC2

(a) PC2

Fig. 11.

9

PC2

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

(a) Normal process data. (b)(c)(d) Abnormal process data cases.

PC1

Detected process start points

Time

Fig. 13.

Start point detection result

R EFERENCES [1] Q. P. He and J. Wang, “Fault detection using the k-nearest neighbor rule for semiconductor manufacturing processes,” IEEE Transactions on Semiconductor Manufacturing, vol. 20, no. 4, Nov. 2007. [2] T.Adamson, G.Moore, M.Passow, J.Wong, and Y.Xu, “Strategies for successfully implementing fab-wide FDC methodologies in semiconductor manufacturing,” in Proc. AEC/APC symp. XVIII, Westminster, Sep. 2006. [3] T.Moore, B.Harner, G.Kestner, C.Baab, and J.Stanchfield, “Intel’s FDC proliferation in 300mm hvm: Progress and lessons learned,” in Proc. AEC/APC symp. XVIII, Westminster, Sep. 2006. [4] A.Ison and C.J.Spanos, “Robust fault detection and fault classification of semiconductor manufacturing equipment,” in Proc. Int. Symp. Semicond. Manuf., Tokyo, Japan, Oct. 1996. [5] L. H. Chiang, E. L. Russell, and R. D. Braatz, Fault Detection and Diagnosis in Industrial Systems. London: Springer-Verlag, 2001. [6] B. E. Goodlin, D. S. Boning, H. H. Sawin et al., “Simultaneous fault detection and classification for semiconductor manufacturing tools,” in 201st Meeting of the Electrochemical Society International Symposium on Plasma Processing XIV, Philadelphia, PA, May 2002, p. Abs. 415. [7] W.E.Deming, On probability as a basis for action. The American Statistician, 1975. [8] E.S.Page, “Continuous inspection schemes,” Biometrika, vol. 41, pp. 100–115, 1954. [9] S.W.Roberts, “Control chart tests based on geometric moving averages,” Technometrics, vol. 1, pp. 239–250, 1959. [10] H. Kawamura, K. Nishina, and M. Higashide, “Control charts for particle in the semiconductor manufacturing process,” Economic Quality Control, vol. 23, pp. 95–107, Apr. 2008.

[11] A. Chen and Y.K.Chen, “Design of EWMA and CUSUM control charts subject to random shift sizes and quality impacts,” IIE Transactions, vol. 38, pp. 1127–1141, Nov. 2007. [12] L.Huwang, C.J.Huang, and Y.H.T.Wang, “New EWMA control charts for monitoring process dispersion,” Computational Statistics and Data Analysis, vol. 54, pp. 2329–2342, Oct. 2010. [13] G. Spitzlsperger, C. Schmidt, G. Ernst, H. Strasser, and M. Speil, “Fault detection for a via etch process using adaptive multivariate methods,” IEEE Transactions on Semiconductor Manufacturing, vol. 18, no. 4, Nov. 2005. [14] Q. P. He and J. Wang, “Large-scale semiconductor process fault detection using a fast pattern recognition-based method,” IEEE Transactions on Semiconductor Manufacturing, vol. 23, no. 2, May 2010. [15] R. O. Duda, P. E. Hart, and D. G. Stork, Pattern Classification 2nd edition. Wiley-interscience, 2001. [16] H. Abdi, Encyclopedia of Measurement and Statistics. Salkind: Thousand Oaks, 2007, pp. 740–744. [17] P. Nomikos and J. F. MacGregor, “Statistical process control of multivariate processes,” Technometr., vol. 37, pp. 41–59, 1995. [18] G. Cherry, R. Good, and S. J. Qin, “Semiconductor process monitoring and fualt detection with recursive multiway PCA based on a combined index,” in Proc. AEC/APC Symp. XIV, Sult Lake City, UT, Sep. 2002. [19] Q. P. He, J. Wang, and S. J. Qin, “A new fault diagnosis method using fault directions in fisher discriminant analysis,” AIChE Journal, vol. 51, no. 2, Feb. 2005. [20] M.Fuente, G.Garcia, and G.Sainz, “Fault diagnosis in a plant using fisher discriminant analysis,” in 16th Mediterranean Conference on Control and Automation, Congress Centre, Ajaccio, France, 2008, pp. 53–58. [21] M. Misra, “Novel techniques for real-time and predictive FDC systems,” Future Fab International, vol. 22, Jan 2007. [22] W. Li, H. H. Yeu, S. Valle-Cervantes et al., “Recursive PCA for adaptive process monitoring,” Journal of Process Control, vol. 10, pp. 471–486, 2000. [23] J.-C. Jeng, C.-C. Li, and H.-P. Huang, “Fault detection and isolation for dynamic processes using recursive principal component analysis (PCA) based on filtering of signals,” Asia-Pacific Journal of Chemical Engineering, Oct. 2007. [24] B. M. Wise, N. B. Gallagher, S. W. Butler et al., “A comparison of principal component analysis, multiway principal component analysis, trilinear decomposition and parallel factor analysis for fault detection in a semiconductor etch process,” Journal of Chemometrics, vol. 13, pp. 379–396, 1999. [25] K.V.Mardia, J.T.Kent, and J.M.Bibby, Multivariate Analysis. Academic Press, 1979. [26] J. Liu, K. W. Lim, R. Srinivasan et al., “On-line process monitoring and fault isolation using PCA,” in Proc. of IEEE International Symposium on Intelligent Control, Jun. 27–29, 2005, pp. 658–661. [27] S. Kumar, V. Sotiris, and M. Pecht, “Health assessment of electronic products using mahalanobis distance and projection pursuit analsis,” International Journal of Computer, Information, and Systems Science, and Engineering, 2008. [28] H. S. Koo and J. K. Lee, “Statistic analysis of fault detection and classification in semiconductor manufacturing,” United States patent, no. 20080262771, Oct. 2008. [29] Y. Maki and K. A. Loparo, “A neural-network approach to fault detection and diagnosis in industrial processes,” IEEE Trans. on Control Systems Technology, vol. 5, no. 6, Nov. 1997. [30] C. Davis, S. Hong, R. Setia, R. Pratap, T. Brown, B. Ku, G. Triplett, and G. May, “An object-oriented neural network simulator for semiconductor manufacturing applications,” in Proc. 8th World Multiconf. Systemics, Cybernetics and Informatics, 2004, pp. 365–370. [31] M. Khalil, “Neural network based fault diagnosis procedure for the detector system of cfdf,” JCS and T, vol. 10, no. 3, pp. 137–142, Oct. 2010. [32] V. Venkatasubramanian and K. Chan, “A neural network methodology for process fault diagnosis,” AlChE Journal, vol. 35, no. 12, pp. 1993– 2002, Dec. 1989. [33] T. Sorsa and H. N. Koivo, “Application of artificial neural networks in process fault diagnosis,” Automatica, vol. 29, pp. 842–849, Jul. 1993. [34] J. C. Hoskins, K. M. Kaliyur, and D. M. Himmelblau, “Fault diagnosis in complex chemical plants using artificial neural networks,” AlChE Journal, vol. 37, no. 1, Jan. 1991. [35] V. Vapnik, Statistical Learning Theory. Wiley, 1998. [36] E. Tafazzoli and M. Saif, “Application of combined support vector machines in process fault diagnosis,” in 2009 American Control Conference, Jun. 2009.

IEEE TRANSACTIONS ON SEMICONDUCTOR MANUFACTURING

[37] O. A.S.Youssef, “An optimised fault classification technique based on support-vector-machines,” in Power Systems Conference and Exposition (PSCE) 2009, 2009. [38] H. LIU, C. LU, W. HOU, and S. WANG, “An adaptive threshold based on support vector machine for fault diagnosis,” in 8th International Conference on Reliability, Maintainability and Safety, 2009, pp. 907– 911. [39] S.R.Samantaray, P.K.Dash, and G.Panda, “Fault classification and ground detection using support vector machine,” in TENCON 2006, 2006. [40] Y.-B. Li and Y. Li, “Survey on uncertainty support vector machine and its application in fault diagnosis,” in ICCSIT 2010, Jul. 2010. [41] C. S. Tyagi, “A comparative study of svm classifiers and artifical neural networks application for rolling element bearing fault diagnosis using wavelet transform preprocessing,” World Academy of Science, Engineering and Technology, vol. 43, pp. 309–317, 2008. [42] D. M. J. Tax, A. Ypma, and R. Duin, “Support vector data description applied to machine vibration analysis,” in Proc. of 5th Annual Conference of the Advanced School for Computing and Imaging, Heijen, Netherlands, Jun. 15–17, 1999, pp. 398–405. [43] D. M. J. Tax and R. P. W. Duin, “Support vector data description,” Machine Learning, vol. 54, pp. 45–66, 2004. [44] D. M. J. Tax and P. Laskov, “Online svm learning: From classification to data description and back,” in Proc. of IEEE 13th Workshop on Neural Networks for signal Processing, Sep. 17–19, 2003, pp. 499–508. [45] G. Cauwenberghs and T. Poggio, “Incremental and decremental support vector machine learning,” Advances in Neural Information Processing, vol. 13, 2000. [46] V. A. Sotiris, P. W.Tse, and M. G. Pecht, “Anomaly detection through a bayesian support vector machine,” IEEE Transactions on Reliabillity, vol. 59, no. 2, Jun. 2010. [47] S. W. Choi, J. H. Park, , and I.-B. Lee, “Process monitoring using a gaussian mixture model via principal component analysis and discriminant analysis,” Computers and Chemical Engineering, vol. 28, Jul. 2004. [48] S. Kobayashi and K. Nomizu, Foundations of Differential Geometry. Wiley Classics Library, 1996, vol. 1, ch. 2 and 3. [49] J. A. Gubner, Probability and Random Processes for Electrical and Computer Engineers. Cambridge University Press, 2010, pp. 141–143.

Hyung Jin Chang received the B.S. degree from Seoul National University, Seoul, Korea, in 2006. He is currently a candidate for the Ph.D. degree in the Department of Electrical Engineering and Computer Science, Seoul National University, Seoul, Korea. His research interests include machine learning, image analysis, moving object detection and behavior understanding.

Dong Sung Song received the B.S. and M.S. degrees from Seoul National University, Seoul, Korea, in 2006 and 2008, respectively. He is currently on the staff of Continental Automotive Systems Co. in Icheon, Korea. His research interests are in the areas of machine learning, fault detection, and one-class classifiers.

10

Pyo Jae Kim received the B.S., M.S., and Ph.D degree from Seoul National University, Seoul, Korea, in 2008. He currently works for Samsung Electronics Co. Ltd, Suwon, Korea. His research interests are in the areas of pattern recognition, machine learning, and image processing.

Jin Young Choi received the B.S., M.S., and Ph.D. degrees in control and instrumentation engineering from Seoul Nation University, Seoul, Korea, in 1982, 1984, and 1993, respectively. From 1984 to 1989, he was with the Electronics and Telecommunication Research Institute (ETRI). From 1992 to 1994, he was with the Basic Research Department of ETRI, where he was a Senior Member of the Technical Staff working on the neural information system. Since 1994, he has been with Seoul National University, where he is currently a Professor in the School of Electrical Engineering and Computer Science, Seoul National University. His research interests include pattern classification, neural computing and control, evolutionary computing, adaptive and learning control, and their applications.

Spatio-temporal Pattern Modeling for Fault Detection ...

has grown an average of 15% per year. This steady ... function of 25%-30% per year [1]–[3]. To improve wafer ... Computer Science, ASRI Seoul National University, Seoul, Korea (e-mail: ...... is currently a candidate for the Ph.D. degree in the.

1MB Sizes 0 Downloads 207 Views

Recommend Documents

Spatiotemporal Deformable Part Models for Action Detection
This research is supported in part by the Intelligence Advanced. Research Projects Activity (IARPA) ... [21] H. Seo and P. Milanfar. Action recognition from one ...

Spatiotemporal Deformable Part Models for Action Detection - CRCV ...
fully localizes the target action in both space and time. ... Unfortunately, the first is not sufficiently expres- .... 2) The units of space (pixels) and time (frames) in.

Novelty-based Spatiotemporal Saliency Detection for ... - IEEE Xplore
Feb 15, 2016 - Abstract—The automated analysis of video captured from a first-person perspective has gained increased interest since the advent of marketed ...

A Fault Detection and Protection Scheme for Three ... - IEEE Xplore
Jan 9, 2012 - remedy for the system as faults occur and save the remaining com- ponents. ... by the proposed protection method through monitoring the flying.

Distributed Online Simultaneous Fault Detection for ...
paper presents a distributed, online, sequential algorithm for detecting ... group of sensors. Each sensor has a ... We call this change point detection. In order for ...

Robust Subspace Based Fault Detection
4. EFFICIENT COMPUTATION OF Σ2. The covariance Σ2 of the robust residual ζ2 defined in (11) depends on the covariance of vec U1 and hence on the first n singular vectors of H, which can be linked to the covariance of the subspace matrix H by a sen

Pattern recognition techniques for automatic detection of ... - CiteSeerX
Computer-aided diagnosis;. Machine learning. Summary We have employed two pattern recognition methods used commonly for face recognition in order to analyse digital mammograms. ..... should have values near 1.0 on the main diagonal,. i.e., for true .

Pattern Recognition Algorithms for Scoliosis Detection
20 degrees); and severe scoliosis (Cobb angle is above 70 degrees). Scoliosis affects a ... Surprisingly little research has been done in the field of computer- aided medical .... According to the tests, the best successful detection rate for high-.

Pattern recognition techniques for automatic detection of ... - CiteSeerX
Moreover, it is com- mon for a cluster of micro–calcifications to reveal morphological features that cannot be clearly clas- sified as being benign or malignant. Other important breast .... mammography will be created because of the data deluge to

Efficient and Effective Video Copy Detection Based on Spatiotemporal ...
the Internet, can be easily duplicated, edited, and redis- tributed. From the view of content ... in this paper, a novel method for video copy detection is proposed. The major ...... images," IEEE International Conference on Computer. Vision, 2005.

Fault Detection Using an LSTM-based Predictive Data ...
data set with labeled faults, we used an LSTM architecture with a forecasting error threshold to ... data. Numerous approaches to fault detection (FD) in industrial and other types of multivariate time series have been proposed: classic methods like

COMPUTATION OF FAULT DETECTION DELAY IN ...
event of type Σfi , L may still be diagnosable as ... servation as st should be faulty in terms of type. Σfi. Note that ..... Proc. of CDC 2002, IEEE Conference on De-.

Fault Detection in Military Communication Network ...
[7] Viren Mahajan, Maitreya Natu, and Adarshpal Sethi “Analysis Of Wormhole Intrusion Attacks In. MANETs” ,IEEE, 2008. [8] Ehsan Khazaei and Ali Barati “Improvement of Fault detection in wireless sensor networks” published in ISECS, 2009. [9]

Abrupt Change Detection in Power System Fault ...
Jun 23, 2005 - (FDI) systems; one such domains viz., power systems fault analysis is the .... between zero hertz and half the data sampling frequency. The.

qualitative fuzzy model-based fault detection
fuzzy model based observer (FMBO) that compares the qualitative prediction with the measured or estimated ..... HVAC buildings in order to provide security and self maintenance at low cost. In. [13] a quasi-real time .... AFSHARI, A., FAUSSE, A. and

Fault Detection in Military Communication Network ...
... mobile nodes to establish a connection path for fault free communication. The ... speed, decreasing power consumption, increasing security and fault tolerance [1]. .... The drawback of this research was that will not check the time redundancy.

Sparse Spatiotemporal Coding for Activity ... - Semantic Scholar
of weights and are slow to train. We present an algorithm .... They guess the signs by performing line searches using a conjugate gradi- ent solver. To solve the ...

FP-Outlier: Frequent Pattern Based Outlier Detection
implemented using Java language with JDK 1.4 development package. 5. Experimental Results ..... H. Liu, F. Hussain, C. L. Tan, M. Dash. Discretization: An ...

Structured Stochastic Modeling of Fault-Tolerant Systems - CIn-UFPE
rotary table, two presses, and a rotary robot that has two orthogonal extendible arms equipped with electromagnets. (see Fig. 7). These devices are associated ...

Structured Stochastic Modeling of Fault-Tolerant Systems - CiteSeerX
an expression of non-typed programming languages, e.g., C language. ... definition composed of D DMIS, R roles, and P play- ers (see Section 2) can be ...

Structured Stochastic Modeling of Fault-Tolerant Systems
ple threads of control: managing their creation and destruc- tion, and controlling ... been used to implement control software for several safety- critical systems [25 ..... bility and efficiency, may be taken into account, but must not conflict with

Modeling and Predicting Fault Tolerance in Vehicular ... - IEEE Xplore
Millersville, PA 17551. Email: [email protected]. Ravi Mukkamala. Department of Computer Science. Old Dominion University. Norfolk, VA 23529.

Modeling Motor Pattern Generation in the Development of Infant ...
Centre for Human Communication, University College London, London WC2E ... support sound production. .... Howard, I.S. and P. Messum, A computer model.

Spatial Light Modulators for Complex Spatiotemporal ...
spatially modulated illumination by using liquid crystal on silicon spatial light modulators (LCOS-. 12. SLMs). ...... Opt Express 17:6209–6217. 744. 22.