Piecewise Linear Weighted Iterative Algorithm for Beam Alignment in Scanning Beam Interference Lithography

To obtain a good interference fringe contrast and high fidelity, an automated beam iterative alignment is achieved in scanning beam interference lithography (SBIL). To solve the problem of alignment failure caused by a large beam angle (or position) overshoot exceeding the detector range while also speeding up the convergence, a weighted iterative algorithm using a weight parameter that is changed linearly piecewise is proposed. The changes in the beam angle and position deviation during the alignment process based on different iterative algorithms are compared by experiment and simulation. The results show that the proposed iterative algorithm can be used to suppress the beam angle (or position) overshoot, avoiding alignment failure caused by over-ranging. In addition, the convergence speed can be effectively increased. The algorithm proposed can optimize the beam alignment process in SBIL.


Introduction
Periodic micro/nanostructures have numerous applications, such as photonic crystals [1], liquid crystal displays [2], solar cells [3,4], high density data storage [5,6], and biosensors [7,8]. A number of technologies have been utilized to fabricate periodic structures, including interference lithography [9], nanoimprinting [10,11], electron beam lithography [12,13], focused ion beam etching [14], and direct laser writing [15][16][17]. These commonly used techniques are difficult to produce large area micro/nanostructures with diameters of several hundred millimeters. Scanning beam interference lithography (SBIL) is a technique for fabricating periodic patterns over a large area with high phase fidelity. In SBIL, two small-diameter beams are used to generate an interference image that is exposed onto a photoresist on a substrate that is step-scanned under the interference image by a high performance stage [18,19].
To obtain a good interference fringe contrast and low accumulated phase error, the tolerances for the incident angle difference and position overlaps in the two arms are of the order of μrad and μm, respectively. An automated beam alignment system consisting of two tip-tilt mirrors and two position sensing detectors (PSDs) is used to achieve tight tolerances. Beam alignment operated before the exposure is based on an iterative algorithm, which can satisfy the speed and accuracy requirements of SBIL [20][21][22]. Certain real-time feedback algorithms are not implemented in the beam alignment system of SBIL [23,24].
The Massachusetts Institute of Technology (MIT) firstly proposed an effective iterative algorithm for beam alignment in its SBIL system "nanoruler" [18][19][20][21]25]. We call this the "original iterative algorithm". Nevertheless, if the initial beam deviation is large or the optical parameters are inappropriate, the beam angle or position overshoots may be very large at the beginning of the alignment process. The large overshoot may cause the spot position to exceed the measuring range of the detectors. This finding indicates that the alignment has failed. In our previous paper [25], we discussed the possible cases causing the alignment failure and provided a simple weighted iterative algorithm to reduce the overshoot automatically. In this algorithm, a constant weight factor between 0 and 1 is used to suppress the overshoot by sacrificing convergence speed, and the smaller the overshoot is, the slower the convergence is. A combined two-stage weighted iterative algorithm, adopting a simple weighted iterative algorithm at the beginning stage and original iterative algorithm at the subsequent stage, can increase the convergence speed to a certain extent. However, the convergence speed is still lower than that by the original algorithm.
In this paper, a general mathematical model for the weighted iterative algorithm is given. The value ranges for the weight factors are determined by convergence property analysis. A piecewise linear weighted (PLW) iterative algorithm is then proposed. The variation in beam angle and position deviation with different iterative algorithms is compared by simulation and experiment. The results show that the proposed iterative algorithm can increase the convergence speed effectively and maintain the overshoot at a low level to prevent alignment failure caused by the spot missing the PSDs.

General model of the weighted iterative algorithm
The beam alignment system in SBIL is shown in Fig. 1. M1 and M2 are the tip-tilt mirrors. M1 is located further from the position decoupling plane (PDP). M1 influences the beam position more than M2 when they tilt at the same angle. Hence, the beam is aligned by alternately using M1 to align the position and M2 to align the angle. For the decoupling optical system, only the translation at the PDP can be sensed by one PSD (called position PSD, PPSD) with the proportion factor Kpos = 1-L 1 / f 1 . The beam angle at the angle decoupling plane (ADP) is converted proportionally to the spot location on another PSD (called angle PSD, APSD). The proportion factor K angle numerically equals f 2 [20]. If the two beams are aligned according to the decoupling planes, they have the same position and angle at any point in the optical path after M2. In this paper, the beam "position" and "angle" refer to those at the decoupling planes. The beam angle and position can be aligned both in the X and Y directions. Taking one-dimensional beam alignment for illustration, with the other being similar, each iteration in the weighted iterative algorithm contains two steps. In the first step of an nth iteration, M1 tilts to reduce the position deviation k p p (n-1, 2) . k p is a weight factor, and p (n-1, 2) is the position deviation after the 2nd step of the (n-1)th iteration. In the following step, one can reduce the angle deviation k a a (n, 1) by actuating M2. k a is another weight factor, and a (n, 1) is the angle deviation after the first step of the nth iteration. Suppose the initial position deviation is p 0 from the desired position, and the angle deviation is a 0 . The weighted iteration can be described by a matrix as (1) and (2) . p (n, 1) and a (n, 1) are the position and angle deviations after the first step of the nth iteration, respectively, and p (n, 2) and a (n, 2) are those after the second step of the nth iteration. The position deviation is acquired by a position PSD, and the angle deviation is acquired by an angle PSD. During the alignment process, the angle overshoot relative to the reference angle is defined as a (1,1) , and the position overshoot is p (1,2) . Equation (1) and (2) show a (1, 1) = -k p p 0 / D 1 + a 0 and p (1, 2) = (1-k p )p 0 + k a D 2 (k p p 0 / D 1 -a 0 ). The original iterative algorithm proposed by MIT is a special case of the weighted iterative algorithm when k p = k a = 1. In this case, if a (1,1) is considerably larger than a 0 , the spot in the APSD is likely to exceed the measuring range of the detector. This causes the iterative process to fail in the first iteration. A similar situation occurs on the PPSD if p (1,2) is large. To solve the problem, a simple weighted iterative algorithm is proposed in a previous paper. We choose a constant k p (k p < 1) and k a = 1 to reduce the angle overshoot as k p has greater influence on the angle deviation. Similarly, k a < 1 and k p = 1 can be used to suppress the position overshoot [25]. The angle or position overshoot are reduced at the expense of a low convergence speed. The circumstance of the angle overshoot and position overshoot both large is uncommon, unless the optical parameters are very inappropriate (e.g. D 2 / D 1 ≈ 1). k a < 1 and k p < 1 can be chosen to suppress the angle overshoot and position overshoot simultaneously.

Convergence property analysis
The convergence property will be divided into two cases of k p ≠ 1，k a = 1, and k a ≠ 1, k p = 1 to be discussed separately. When k p ≠ 1 and k a = 1, we can obtain (3)-(6) by matrix operation   To ensure convergence for the alignment process, 0 ≤ |m p | < 1 is required. If k p = D 1 / (D 1 -D 2 ) and m p = 0, the convergence becomes the fastest. Equations (3) and (4) show the alignment end when n ≥ 3, and [p (n, 1) , a (n, 1) ] T = [p (n, 2) , a (n, 2) ] T = 0 (n ≥ 3), which means that any accuracy requirements can be satisfied in theory. However, if D 1 is close to D 2 , the angle overshoot a (1, 1) = -k p p 0 / D 1 + a 0 = -p 0 / (D 1 -D 2 ) + a 0 will be very large. The fast convergence speed is gained at the sacrifice of overshoot.
The iterations with the same |m p | have the similar convergence speed. Each nonzero |m p | value can give two solution k p 's in the domains of 0 < According to the expression of a (1, 1) , a large k p is not a good choice because it may lead to a large a (1,1) when p 0 and a 0 have opposite signs. Therefore, ] is a better value range for k p , and correspondingly, 0 ≤ m p < 1.
When k a ≠ 1 and k p = 1, the matrices become (7)-(9) where m a = (1k a ) + k a D 2 / D 1 . This finding is similar to the results of the analysis above. The domain ] is a good choice for k a , and correspondingly, 0 ≤ m a < 1.

Piecewise linear weighted (PLW) iterative algorithm
The value range for k p and k a is limited to (0, 1) in previous iterative algorithms. In the PLW iterative algorithm, the value range for the weight factors is extended to (0, D 1 / (D 1 -D 2 )], and the key weight factor is changed piecewise linearly with different slopes in different segments. The segments are divided according to the angle or position deviation.
We take the angle overshoot suppression in the X direction as an example, with other cases being similar. The weight factor k a is kept at 1 constantly, . In the first iteration, k p(1) = k p, min . When n ≥ 2, the angle deviation is set to m + 1 segments with m angle thresholds ξ a, 1 , ξ a, 2 , …, ξ a, m (ξ a, 1 > ξ a, 2 > … >ξ a, m ). k p is changed linearly with a different slope in different segments. When the local maximum a (n, 1) is less than the smallest threshold ξ a, m , k p(n) equals k p, max . The changes in k p can be described by (10)  k n k k a n n k k k an n k k a n n k a n n The differential value is fixed in each segment and increased gradually in different segments. The k p increases from k p, min to k p, max with a decrease of a (n, 1) .
Compared with the simple weighted iterative algorithm, the value range of k p is extended. If one chooses a small k p, min in the first iteration, the angle overshoot a (1,1) can be significantly suppressed. In the middle part of the iteration, k p is gradually increased and it is different in each iteration. Each iteration can be regarded as a small segment, and k p is constant in each segment. Smoothly switching k p leads to a smooth convergence. An appropriate Δ i can maintain a fast convergence speed. When a (n, 1) is sufficiently small [a (n, 1) <  a, m ], the angle deviation converges to zero as soon as possible. The convergence is faster, and the angle deviations maintain a low level.

Experiments
The experimental optical layout is shown in Fig. 2, where BS1-BS3 are the beam splitters, and M1, M2, and M5 are the planar mirrors. M3 and M4 are tip-tilt mirrors. The decoupling topology is similar to that in Fig. 1. To realize the alignment of two beams, the beam from the laser source is split into a reference beam and a regulating beam. Before the beam alignment, the regulating beam is blocked by a shutter (S1). As shown in Fig. 2(a), the reference beam passes through M1, M2, and BS2 before entering the decoupling topology. The spot locations at the APSD and PPSD are recorded and converted to a beam position and angle by the computer program, which are treated as alignment targets. Afterwards, the reference beam is blocked by another shutter (S2), and S1 is removed to let out the regulating beam. As shown in Fig. 2(b), the regulating beam goes through M3, M4, and BS2 before entering the same decoupling topology. The regulating beam is aligned to the targets by tilting M3 and M4. BS2 is located at the PDP in the experiment, and a screen is placed near BS2 as shown in Fig. 2. The spot of the reflected light of the reference beam (the spot of the reference beam) and the spot of the transmitted light of the regulating beam (the spot of the regulating beam) through BS2 will appear on the screen when S1 and S2 are removed after the alignment. The beam alignment on the PDP can be roughly observed by the spots on the screen with the naked eye. A 4.7 mW laser diode module with a wavelength of 532 nm (model CPS532, Thorlabs) is used as a laser source. M3 and M4 are the planar mirrors fixed onto precise mounts (model 8816-6, Newport) with two picomotors used to provide tip and tilt adjustment. A PSD with a sensor size of 9 mm × 9 mm and a resolution of ± 0.2 μm for a ± 2 mm dynamic range (model OPB-U-9H, Newport) is used as a PPSD. The APSD located at the focus plane of Lens2 has a sensor size of 4 mm × 4 mm and a resolution of ± 0.1 μm for a ± 1 mm dynamic range (model OPB-U-4H, Newport). The optical parameters are f 1 = 250 mm, L 1 = 400 mm, f 2 = 400 mm, D 1 = 590 mm, and D 2 = 440 mm. We can obtain the proportion factor of the decoupling system K pos = 1 -L 1 / f 1 = -0.6 and K angle = 0.4 µm/µrad. The distance between Lens1 and the PDP is L 0 = L 1 / |K pos | = 666.7 mm.
An automatic program running on a computer is developed with Labview. The program acquires the readings from the PSD through a universal serial bus (USB) interface and adjusts two tip-tilt mirrors through an ethernet interface. After the optical system is accomplished, the reference beam is blocked, and the regulating beam is let out. The program makes only one picomotor linear step, and the other picomotors are kept stationary. In the meantime, the changes in the beam position and angle are recorded. Then, the relationship between the picomotor's movements and the beam parameter (position and angle) changes can be acquired online by one-order polynomial fitting. After moving every picomotor in the two tip-tilt mirror mounts independently, we can obtain the complete system characteristics for the actuators and beam parameter changes. Due to the nonlinearity of the picomotor, the relationships are slightly different when the picomotor's step numbers or the movement direction are different. The experimental results show that the influence of the nonlinearity is small. Before the alignment, the program records the position and angle of the reference beam as an alignment target. Afterwards, the regulating beam is aligned automatically to the targets based on the iterative algorithm used by the program.
Besides the experiment, the angle and position deviation changes are simulated with the same initial conditions and parameters as those in the experiment using Matlab. The consistency between the experiment and simulation can be checked.

Results
We take alignment in the X direction for illustration and aim to reduce the angle overshoot, which is the same situation as that in the analysis above. To compare different iterative algorithms, the initial deviations a 0 and p 0 should be adjusted to similar values. So, M3 and M4 move certain steps in the X direction after the end of the previous alignment. When M3 moves + 2000 steps and M4 moves -2600 steps, a 0 ≈ 260 μrad, and p 0 ≈ -400 µm. The initial deviation is chosen small values to avoid the possible alignment failure when the original iterative algorithm is used. The alignment tolerances are set to 20 μrad (angle) and 20 μm (position). In the second step of an nth iteration, we check whether the accuracy requirements are satisfied. Figure 3 shows the changes in the position and angle deviations using the original iterative algorithm. In the whole iterative process, the weight parameters k p and k a are held at a constant value of 1. The experimental results agree with the simulation, and the small differences between the experiment and simulation are caused by the nonlinearity of the picomotors. The angle overshoot is approximately -850 μrad, and the iteration tolerances are satisfied when the number of iteration is n ≥ 11.
The alignment results with the combined two-stage weighted iterative algorithm are shown in Fig. 4. At the beginning of the alignment, a small value for k p is chosen (k p = 0.5) to suppress the angle overshoot. When the angle deviation is smaller than ξ a, 1 , k p is changed to 1 to increase the convergence speed. Let ξ a, 1 = 350 μrad, the combined two-stage weighted iterative algorithm is described by (11). As shown in Fig. 4, the angle overshoot is suppressed to -628 μrad, but the convergence speed is slower than that observed with the original iterative algorithm for n ≥ 13 for satisfying the accuracy requirements.  The PLW iterative algorithm is shown as (10). In the experiment, the first group of parameters (parameters #1) chosen are m = 2, ξ a, 1 = 350 μrad, ξ a, 2 = 200 μrad, k p, min = 0.5, and k p, max =D 1 / (D 1 -D 2 ) -0.05 = 3.88. The increments in the two segments are Δ 1 = 0.2 and Δ 2 = 0.4, respectively. The changes in the position and angle deviations are shown in Figs. 5(a) and 5(b). Compared with the combined two-stage weighted iterative algorithm, k p is both 0.5 when n = 1. Therefore, the angle overshoot in Fig. 4(b) is close to that in Fig. 5(b). For increasing k p , the convergence is faster compared with the combined iterative algorithm and the original iterative algorithm. The iteration is completed when n = 9. With the PLW iterative algorithm, a low angle overshoot is acquired, and the convergence speed is meanwhile effectively boosted.  The beam alignment repeats 15 times with parameter #1 to verify the effectiveness of the PLW iterative algorithm. The beam position and angle deviations after the alignment are shown in Fig. 6. They all meet the alignment tolerance of 20 μrad (angle) and 20 μm (position). The repeatability is 5.514 μm (, position) and 6.002 μrad (, angle), respectively. The nonlinearity of the picomotors, the small differences in the initial deviation and the environmental changes can affect the repeatability.
A large initial deviations a 0 = -1000 μrad and p 0 = 1750 μm are chosen for simulation with the same optical parameters and tolerances as those in the experiment. Table 1 shows the parameters and simulation results. Compared with the original iterative algorithm, the combined two-stage weighted and PLW iterative algorithm both can reduce the angle overshoot in the same degree with the position overshoot increasing slightly when k p 's in the first iteration are equal. The convergence speed of the PLW iterative algorithm is faster than the combined two-stage weighted iterative algorithm. That means the PLW iterative algorithm gives consideration to both of the overshoot suppression and the convergence speed. The simulation results agree with those in the experiment.
As shown in Fig. 2(b), the position changes of the regulating beam on the PDP can be roughly observed by the spot on the screen with the naked eye during the alignment process, but the spot movement can't be observed clearly due to the limited resolution of the eye and the stray light of the spot, especially in the posterior parts of the alignment. Nevertheless, the coincidence of the spots of the reference light and the regulating light on the screen still can be checked after alignment. Figure 7(a) shows the photo of the spots on the screen before alignment with a large initial deviation in order to distinguish clearly (a 0 and p 0 in the X direction are -1019 μrad and 1744 μm, respectively. a 0 and p 0 in the Y direction are -2131 μrad and 1662 μm, respectively). The spot of the reference beam is shown in Fig. 7(b). Figure 7(c) shows the spot of the regulating beam after the beam alignment in X and Y directions. The weaker intensity and smaller diameter are caused by the characteristic difference of the mirrors and the beam splitters. As shown in Fig. 7(d), the two spots are superposed when S2 is removed after the alignment, which is an assisted proof for the beam alignment.  Fig. 7 Spots of the reference beam and regulating beam on the screen: (a) shows the spots before the alignment, (b) shows the spot of the reference beam on the screen in the reference beam path, (c) shows the spot of the regulating beam after the beam alignment in the X and Y directions, and (d) shows the overlapping spots when S2 are removed after the alignment.

Discussion
As shown in (4), m p (n1) represents the convergence speed of the weighted iterative algorithm when k a = 1. According to the experimental parameters, the changes in m p (n1) with different iterative algorithms are shown in Fig. 8. The original iterative algorithm has a consistent convergence speed during the whole alignment process. The combined two-stage weighted algorithm converges slowly at the beginning of the alignment to decrease the angle overshoot. Next, the convergence speed is the same as that with the original algorithm. The whole alignment process displays a lower speed. The convergence speed of the PLW iterative algorithm at the beginning is decided by k p, min , which is usually small to obtain a small overshoot. In the middle part of the alignment, the convergence is gradually accelerated. Once the angle deviation is smaller than a certain threshold, the iteration converges as fast as possible with a large k p, max value. The PLW iteration algorithm can simultaneously give rise to a low overshoot and high-speed convergence.
As shown in Section 4, choosing different parameters in the PLW iterative algorithm can change k p in different ways, and the angle overshoot and convergence speed will vary correspondingly. We discuss the parameter selection method theoretically and by simulation. In this instance, we take k p regulation in the X direction for illustration too.
Firstly, the maximum value for k p, min can be determined by the angle overshoot a (1,1) . Assume that the value for the X coordinate of the angle alignment target on the APSD is x a, r . The change in the X coordinate on the APSD in the first iteration is K angle a (1, 1) + x a, r , which must be within the X coordinate range [x a, min , x a, max ] of the APSD. According to the expression of a (1, 1) = -k p, min p 0 / D 1 + a 0 , the maximum value for k p, min can be determined to keep the spot in the range of the APSD at the beginning of the iteration.  Secondly, although a small k p, min can reduce the angle overshoot at the beginning of the alignment, a smaller k p, min is not better. If k p, min is smaller, Δ 1 should be smaller, and the width of the initial segments should be larger. This means the convergence speed is decreased. Otherwise, a large angle deviation may appear at the middle and posterior parts of the alignment, which may also give rise to alignment failure caused by the measuring spot exceeding the detector range. For example, we choose the same parameters as those in parameters #1, except for k p, min . k p, min is changed from 0.5 to 0.2. The simulation result indicates that deviations of -515 μrad and -512 μrad appear in the third and fourth iterations, respectively, which are larger than the angle overshoot -488 μrad in the first iteration. Therefore, choosing the parameters of the PLW iterative algorithm is a compromise. To avoid the probable risk of alignment failure in the whole alignment process, a smaller overshoot leads to a slower iteration. Besides, m, Δ i , and ξ a, i are important parameters in the PLW iterative algorithm. The larger of the angle or position overshoot is, the larger m can be chosen to smooth the alignment. Nevertheless, the algorithm becomes more complicated due to an increase in the number of parameters with a larger m. As shown in (10), Δ i < Δ i+1 , it means the first order difference of Δ i is positive. When choosing Δ i to make the second order difference of Δ i positive, the convergence speed can increase gradually with a positive acceleration. ξ a,i can be chosen a certain percentage of the angle or position overshoot as needed. Generally, ξ a, m is in the order of hundred μrad (μm) to keep the stability at the posterior parts of the alignment.
Thirdly, the small APSD and PPSD placement errors exist in reality. The APSD placement error impacts the accuracy of the decoupled angle readout. Reference [21] analyzed the effect and gave the angle readout error caused by the APSD placement error. It can be described as (12) where δa e is the angle readout with the APSD placement error ΔL 2 , δa is the exact angle readout if there is no placement error, and L pa is the distance from the PDP to the ADP. In our system, L pa is about 700 mm, and ΔL 2 is estimated 2 mm with careful placement. According to (12), the relative angle readout error is 3.75‰, and the maximum readout error is at the edge of the APSD. The PLW iterative algorithm can make the measuring spot away from the edge of PSD. Hence, the angle readout error due to the APSD misplacement is quite small. The PPSD placement error only changes the location of the PDP, which has no influence on the beam alignment.
Fourthly, as the simulation results have a high coherence with the experimental results, the simulation program can be embedded in an automatic alignment program. Before the alignment, the measured a 0 and p 0 are input to the simulation program, and the parameters of the PLW iterative algorithm are set. Then, the alignment processes are simulated to check the performance of the parameters in the program online. The online simulation technique can optimize parameters for practical applications. It is cost effective and time saving.
The position overshoot can be reduced by regulating k a . The situations in the Y direction are similar. Thus, we do not discuss them.

Conclusions
We have demonstrated a new PLW iterative algorithm for beam alignment in SBIL. The convergence property of the general weighted iterative algorithm model is analyzed mathematically, with the ranges of the weight factors determined. In the PLW iterative algorithm, the key weight factor impacting the large overshoot the most is changed linearly piecewise within the value range, with the other weight parameter being kept at a constant value of 1. The changes in angle and position deviations during alignment with different iterative algorithms are experimented and simulated for comparison. The experimental and simulation results show good consistency, which indicates that the PLW iterative algorithm can reduce the angle or position overshoot at the beginning of the alignment. The probable alignment failure caused by exceeding the detector range can be avoided. Beyond that, the convergence speed can be effectively raised compared with the previous algorithm. The algorithm proposed can be applied to accomplish beam alignment in SBIL both reliably and quickly.