Paper Menu >>
Journal Menu >>
![]() Journal of Global Positioning Systems (2005) Vol. 4, No. 1-2: 258-267 Null-steering LMS Dual-Polarised Adaptive Antenna Arrays for GPS W C Cheuk, M Trinkle & D A Gray CRC for Sensor Signal and Inf ormation Processing, Dept of Electrical and Electronic Engineering, University of Adelaide, Adelaide SA e-mail: dgray@eleceng.adelaide.edu.au Tel: + 61 83036425; Fax: +61 83934369 Received: 27 November 2004 / Accepted: 12 July 2005 Abstract. The implementation of a null-steering antenna array using dual polarised patch antennas is considered. Several optimality criterion for adjusting the array weights are discussed. The most effective criteria minimises the output power of the array subject to maintaining a right hand circular polarisation (RHCP) response on the reference antenna. An unconstrained form of this criteria is derived, in which the reference channel is the RHCP output of the reference antenna and the LHCP output of the reference antenna is included as one of the auxiliary channels. An FPGA implementation of the LMS algorithm is then described. To prevent weight vector drift a variant of the circular leakage LMS algorithm was used. The implementation details of a simplified circular leakage algorithm more suited to an FPGA implementation are presented. This simplified leakage algorithm was shown to have a similar steady state weight vector as the full algorithm. Key words: GPS, Polarisation, Interference Mitigation, Adaptive filters. 1 Introduction A GPS receiver is relatively susceptible to interference and a number of antenna and signal processing techniques have been investigated to overcome this deficiency. These include : • Fixed antenna enhancements: Manz (2000), Kunysz (2000). • Single Channel Adaptive Filters: Dimos et al (1995), Trinkle and Gray (2001). • Adaptive Beamformers: Trinkle and Gray (2001), Zoltowski and Gecan (1995), Jian et al (1998), Fante and Vaccaro (2000). • Polarisation Cancellers: Brassch et al (1998), Trinkle and Cheuk (2003). • Adaptive Beamformers with Polarisation Diversity: Nagai et al (2002), Fante and Vaccaro (2002), Compton (1981). • Modifying the tracking loop of the GPS receivers: Manz et al(2000),Legrand et al (2000). • Integrating GPS and INS sensors: Soloviev and van Grass (2004). In this paper combined spatial and polarisation null steering are considered. A single GPS antenna with an adaptive polarisation response can be used to reject interferences with polarisations other than the GPS signal. The GPS signal uses RHCP (right hand circular polarisation), i.e., it contains both horizontal and vertical polarizations 90 degrees out of phase; thus it is possible to remove any linearly polarised signal with only a 3 dB loss in GPS signal power see e.g. Brassch et al (1998). The key idea of polarisation cancellers is thus to reject th e interference by adaptively mismatching the polarisation response of the antenna to the polarisation of the interfering signal. Adaptive polarisation antennas can be implemented by adaptively combining the two outputs of a dual polarised patch antenna see e.g. Brassch et al (1998), Compton (1981). Clearly this technique becomes ineffective if the interference has the same polarisation as the GPS signal (i.e., RHCP ) . Single antenna polarisation cancellers operate purely in the polarisation domain, while adaptive beamformers operate only in the spatial (angle domain). It is possible to combine these two domains in a single algorithm by applying beamforming techniques to an antenna array with dual polarised antenna elements. Using a such an array, will approximately double the degrees of freedom available for interference cancellation compared with using a conventional antenna array see e.g. Jain (1998), Trinkle and Cheuk (2003), Nagai et al (2002), and it has ![]() Cheuk: Null-steering LMS Dual-Polarised Adaptive Antenna Arrays for GPS 259 recently been shown in Jian et al (1998) and Fante and Vaccaro (2002) that GPS polarimetric antenna arrays can cancel more interferences than a standard antenna array with the same number of antenna elements. Thus polarisation diversity can be used to significantly reduce the size of GPS antenna arrays, which is important in many applications. Field Programmable Gate Array, FPGA, technology has lately become an attractive alternative for the implementation of a wide range of DSP applications because of its flexibility and speed. An FPGA allows a large number of multipliers and accumulators to be configured and inter-connected in such a way as to suit a particular algorithm. This fine-grain parallelism allows most adaptive beamforming techniques to be implemented much more efficiently than on a standard DSP. Algorithms implemented on the largest of the current generation FPGAs can achieve several hundred Giga Operati o ns per Seconds (GOPs) The FPGA implementation of an adaptively null-steering dual-polarised antenna array is proposed. The novelty of this approach lies in • The choice of the reference and auxiliary channels in the power minimisation algorithm. • The use of a modified version of the complex LMS algorithm to minimise computations. • The use of Hilbert transforms to generate the analytic signal. • The use of the circular leakage LMS algorithms rather than the standard leaky LMS to prevent weight vector drift. • A simplification of the circular leakage LMS algorithm more suited to FPGA implementation. 2 Digital Null-Steering Structure System Architecture A polarimetric adaptive antenna array is placed in front of the GPS receiver. Each element of the array is a patch antenna with two outputs corresponding to the horizontal and vertical polarizations of the received signal. See Figure 1 for a four channel digital null-steering system using two dual-polarized antenna elements. Figure 1. Basic structure of digital null-steerer using a polarimetric antenna array y : Beamformer output w : Beamformer weight vector e : Estimation error u : Antenna output. HT : Hilbert Transform ![]() 260 Journal of Global Positioning Systems In this example the horizontal component of the first antenna is used as a reference channel as originally proposed in Fante and Vaccaro (2002). The subscript H denotes the horizontal polarization, V denotes the vertical polarization, I denotes the real part of the complex signal, and Q denotes the imaginary part of the complex signal. The output of each polarization channel is converted into a digital signal using an analog to digital (A/D) converter. Since the L1 band GPS signal is transmitted at 1.575GHz and most A/D converters do not have an input bandwidth large enough to sample the GPS signal, a down-converter is used to convert the incoming GPS signal to a lower intermediate frequency. The digital signal from the A/D converter is then fed into an FPGA, see Figure 1, which implements further filtering and the complete adaptive antenna array processing. The single channel output, y, of the adaptive antenna array is then converted back to the analogue domain by a D/A converter and after further analogue filtering and mixing the signal can be played into a standard GPS receiver. Adaptive Al g orithm Optimum null-steering algorithms are usually applied to antenna arrays by simply minimising the output power of a weighted sum of receiver outputs subject to one of the multiplier weights (the reference channel) being fixed at unity, see e.g. Trinkle and Gray (2001). This leads to an optimum weight vector given by cRc cR wH1 1 − − = where T c]0,,0,0,1[ …= and R is the covariance matrix of the receiver outputs defined by { } )()( kukuER H =. The vector )(ku contains the antenna outputs at time s kt where s t is the sampling interval. With reference to Figure 1, it is assumed that each channel is Hilbert transformed allowing the use of the analytic (complex) signal representation. For polarimetric antenna arrays, better performance may be achieved by choosing as the reference channel the right hand circularly polarized component of the reference antenna, thus avoiding a 3dB loss in SNR of desired GPS signals in the absence of interferences see e.g. Trinkle and Cheuk (2003). To handle the dual channels of each polarised antenna the vector of complex receiver outputs is written as: ( ) T NVNHVHVH kukukukukukuku ][],[],...[],[],[],[)( 2211 = (2.1) where ][][][kjukuku nHQnHInH + = and ][][][ kjukuku nVQnVInV + = . For right hand circular polarisation the horizontal and vertical components of the electric field are –90 degrees out of phase with each other. Thus, for an ideal narrowband RHCP signal the complex vector of outputs from the first reference channel, is given by ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ − = ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ =j kts ku ku ku s V H1 ][ ][ ][ )( 1 1 1 Combining, with complex weights, H w1 and V w1, the outputs of the horizontal and vertical channels, such that the response due to a circularly polarised signal of unit amplitude is fixed at unity implies that the complex weights are constrained to satisfy 1 1 * 1 *=− VH jww . Generalising for the full array, the constraint becomes 1=cwH where T jc ]0,,0,,1[ …−= . From Trinkle and Cheuk (2003), the optimum weight vector becomes cRc cR wH1 1 − − =. (2.2) The advantage of this cons traint, is that it allows, for an N channel receiver, N-1 nulls to be formed as opposed to the previous approaches which restricted the number of nulls to be N-2 see e.g. Trinkle and Cheuk (2003). In order impose this constraint with an unconstrained LMS adaptive algorithm, an orthogonal projection matrix is used. This transformation takes the horizontally and the vertically polarized complex signals from the dual polarized antenna and converts them to a RHCP signal and another signal that is orthogonal to the RHCP signal (LHCP) as illu strated in Figure 2 below. ![]() Cheuk: Null-steering LMS Dual-Polarised Adaptive Antenna Arrays for GPS 261 Figure 2. Orthogonal pr ojec tion matrix. The orthogonal projection matrix transformation is given by ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎥ ⎦ ⎤ ⎢ ⎣ ⎡− = ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ][ ][ 1 1 ][ ][ 1 1 1 1 ku ku j j ku ku H V L R The outputs of the orthogonal projection matrix are then fed to the adaptive algorithm. The RHCP channel, ][ 1ku R, is the reference channel, as it has the same polarization as the GPS signal. The orthogonal projection of the RHCP channel, i.e., ][ 1ku L is the first auxiliary channel, which is multiplied by a weight determined by the adaptive algorithm. The other auxiliary channels are the vertical and horizontally polarised outputs of the second anten na. Note that there is no need to transform these outputs into right and left circularly polarised components as the signals are assumed narrow-band so the required phase shift can be incorporated into the adaptive alg orithm. To estimate the weights we could first estimate R from the input data and then substitute into Eq. 2.2 to give the desired weights. This approach was not taken as it would require a matrix inversion which is not simple to implement in an FPGA. To avoid direct matrix inversion, gradient descent algorithms are used to iteratively minimise the mean square error. As the output of the beamformer needs to be converted back to a real signal, a simplified version, of the standard complex LMS algorithm was applied. The trade-off between this algorithm and the full complex LMS algorithm has been considered in Horowitz and Senne (1981). 3 Implementation of the LMS Algorithm The use of finite precision arithmetic in the LMS algorithm can cause drift in the weight vectors, Sethares et al (1986), particularly in the presence of strong interferences. To overcome this a leakage factor can be incorporated into the LMS algorithm. An investigation of a number of leaky LMS algorithms is carried out below. Leaky LMS Algorithm The leaky LMS algorithm prevents weight vector drift in finite precision implementations by inserting a leakage factor, L α , into the weight vector update loop. This leakage factor avoids weight vector drift by containing the energy in the impulse response of the LMS adaptive filter see e.g. Haykin (2002). The leaky LMS algorithm is given by : { } ][)()()1()1( kekukwkw L µ µα + − = + (3.1) where ][ke , the error signal, is given by )()()()()(][][ 1kukwkukukwkdke H R H ′ −= ′ −= and () T NVNHVHLkukukukukuku ][],[....],........[],[],[)( 221 = ′ The difference between the leaky LMS and the conventional LMS algorithm is the leakage factor )1( L µα − , the first term on the right hand side of the Eq. 3.1. To stabilize the algorithm (i.e., to avoid overflows), the leakage factor, L α , must satisfy the condition µ α 1 0<≤L (3.2) The leakage factor can also prevent stalling in the LMS algorithm. Stalling occurs when the correction term (i.e. )]()([ keku µ ) in the weight update equation is smaller than the least significant bit (LSB), thus the LMS algorithm will stop adapting. Stalling can also be prevented by dithering the error term. R u1 L u1 ![]() 262 Journal of Global Positioning Systems A disadvantage of the leaky LMS algorithm is that it requires more computational and hardware resources. It also biases the weight vector away from the optimal solution, which degrades the performance of the filter. Since the average weight vector noise in the leaky LMS will never converge to the zero, the MSE (Minimum Square Error) is normally larger than for the conventional LMS. Decreasing the value of L α will reduce this problem, but if it is too small then stalling will occur, as the estimation error is not noisy enough. Circular Leakage LMS Algorithm The circular leakage LMS described in Nascimento and Sayed (1999) is another leakage-based algorithm to prevent the drift problem. It has an advantage over the leaky LMS algorithm as it does not introduce a bias in the weight estimates. The circular leakage LMS algorithm is a modified version of the σ − switching algorithm described in Ioannou and Tsakalis (1986), but uses less hardware resources while maintaining the same stabilization performance in the adaptive filter. The weight update equation for the circular leakage LMS can be written as )]()([)())(1()1( kekukwkkw C µ µα +−=+ (3.3) where )(k C α is a nonlinear and time-varying circular leakage term. It is defined as follows In the above equation the 0 α is a pre-defined constant, 21 0CC << are pre-specified levels for the magnitudes of the components of the estimated weight vectors and {} 12 5.0 CCD −=. Their choice is not discussed here. As indicted above the circular leakage term has four different regions which determine the value of the time-varying circular leakage term to be applied to the weight vector recursion It is also only applied to one channel at each iteration (i.e. in a multi-channel antenna array each channel has a single tap weight )(kwn, where n is the channel number). At the first iteration, the magnitude of the weight vector component corresponding to the first channel, i.e., )( 1kw is checked to determine into which of the ranges of Eq 3.4 it falls. The circular leakage term appropriate to that range is then applied to the weight vector update equation. In the next iteration, the magnitude of the weight vector component corresponding to the second channel, i.e., )1( 2+kw is examined to determine which circular leakage term to apply to the update equation, etc. The procedure continues until the weights of all channels have been examined and then, in the next iteration, the process returns to the first channel and cycles around again. A typical circular leakage function plot is illustrated in Figure 3 where the positive constants chosen are : 0 α = 0.3, 1 C = 0.6, 2 C= 0.9. These values can be calculated using the equations given in Nascimento and Sayed (1999). {} {} ⎪ ⎪ ⎪ ⎪ ⎭ ⎪ ⎪ ⎪ ⎪ ⎬ ⎫ ⎪ ⎪ ⎪ ⎪ ⎩ ⎪ ⎪ ⎪ ⎪ ⎨ ⎧ +<< ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛− <≤+ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛− − ≥ = otherwise CCkwCif D Ckw CkwCCif D kwC Ckwif k n n n n n C ,0 5.0)( )( 2 )(5.0 )( 2 )( )( 211 2 1 0 221 2 2 0 0 20 α α α α α (3.4) ![]() Cheuk: Null-steering LMS Dual-Polarised Adaptive Antenna Arrays for GPS 263 Figure 3. Circular leakage fu n ct i o n . When implementing the circular leakage in real time on the FPGA, one of the main factors that needs to be consider is latency. The standard LMS weight update loop has a delay of one clock cycle. From Eq. 3.3 and Eq. 3.4 the circular leakage algorithm requires six multiplications, two subtractions and two divisions per weight vector update. This introduces significant latency in the weight estimation loop, requiring it to take more than one clock cycle to complete all the calculations. Such a delay would cause the LMS algorithm to behave like the DLMS (Delayed Least Mean Square algorithm), resulting in increased convergence times and an overall loss in performance. Modified Circular Leakage LMS Algori thm As the adaptive null-steerer is to operate in real time, the above circular leakage algorithm was replaced by a simplified linear algorithm that required less arithmetic operations. The linear equations for determining the leakage factor C α are given by Eq. 3.5 has the same four regions as Eq. 3.3, but since the quadratic terms are replaced by linear ones the modified function uses less multiplications and no division and so its computational complexity is significantly reduced. As a result, the modified function can complete the weight update calculation in one clock cycle, making it more suitable for a real time implementation. Figure 4 shows a plot of c α for the standard circular- leakage (blue), and the modified circular-leakage (red). As shown in the plot, the original function rises quickly when the weight estimation reaches the 1 C (0.88) bound, it then goes up almost linearly as w increases, and then rolls off smoothly shortly before reaching the 2 C(0.93) bound. {} {} ⎪ ⎪ ⎭ ⎪ ⎪ ⎬ ⎫ ⎪ ⎪ ⎩ ⎪ ⎪ ⎨ ⎧ +<<− <≤++− ≥ = otherwise CCkwCifCw CkwCCifw Ckwif n n n C ,0 5.0)()(4.17 )(5.058.0)9133.0(2.5 )( 2111 221 20 α α (3.5) )(kwn ![]() 264 Journal of Global Positioning Systems Figure 4. Simplified/s t andard circular leakage function with 93.0,88.0 21 = = CC . The linear approximation has a slightly higher numerical value of leakage factor (c α ) at the same weight value (w) compared with the standard one. This ensures stability of the algorithm. Figure 5 shows simulation results indicating that the modified circular leakage algorithm remains stable and behaves almost the same as the original one albeit at what appears to be a higher level of misadjustment noise. 4 FPGA Implementation This section considers the FPGA implementation of the adaptive null-steerer. The FPGA has four main processing modules including, digital decimation filtering, Hilbert transform filtering and the implementation of the LMS adaptive algorithm using the simplified circular leakage algorithm. The signal flow diagram is illustrated in Figure 6. Figure 5 w for standard/simplified circular leakage 1667.0= o µα , 93.0,88.0 21 = = CC . ![]() Cheuk: Null-steering LMS Dual-Polarised Adaptive Antenna Arrays for GPS 265 Figure 6 FPGA signal flow diagram In this section, the FPGA implementation of the circular leakage algorithm is discussed. Simplified Circular Leakage LMS Algorithm FPGA Implementation The Xilinx System Generator was used to implement the code for the adaptive null-steerer. A schematic block diagram which represents the structure of the code is shown in Figure 7. In Figure 7, there are 8 inputs on the left hand side (these are from top to bottom: u1HI, u1HQ, u1VI, u1VQ, u2HI, u2HQ, u2VI and u2VQ) and one output on the right hand side. The top four inputs on the left hand side are fed to the orthogonal projection block, this block converts the horizontal polarization and vertical polarization to a RHCP and LHCP output signal. The RHCP channel is chosen to be the reference channel (i.e. u_RHCP_I), which is treated as the desired signal )(kdI. Then the next pair is the real part and imaginary part of the signal from the orthogonal projection of RHCP channel (i.e. u_RHCP(1+j)_I and u_RHCP(1+j)_Q), then the next pair is u2HI and u2HQ etc. So there are a total of one reference and three pairs of auxiliary channels. Each of the real / imaginary signals are fed to the LMS based adaptive algorithm, shown in Figure 8. Then all the outputs of each LMS block are fed into the adder and subtracted from the desired signal to give the error signal which is then is fed back to the LMS block to calculate the updated weights. The LMS loop operates continuously, at the input sample rate, and the optimum weights are continuously estimated. ![]() 266 Journal of Global Positioning Systems Figure 7 Four channel dig i t al n u l l -steerer - FPGA schematic. Figure 8 LMS base algorithm block - FP GA sch ematic. ![]() Cheuk: Null-steering LMS Dual-Polarised Adaptive Antenna Arrays for GPS 267 The circular leakage algorithm is implemented in VHDL, as shown in Figure 7 in the block called circular leakage. It has six inputs on the right hand side and same number of outputs in left hand side. It implements the if/then statement of Eq. 3.5. In each iteration, it measures the weight estimate for one channel, and outputs the leakage value according to the Eq. 3.5. This value is then fed back to the leak_out (Figure 8), and subtracted from the current weight vector component. Then in the next iteration, the circular leakage block will check the wof the next channel. Conclusions The FPGA implementation of an adaptive LMS algorithm suitable for dual polarised GPS antenna arrays has been presented. The LMS algorithm minimises the output power of the array while maintaining unity gain for RHCP signals on the reference antenna. To prevent weight vector drift in the LMS algorithm a circular leakage algorithm was implemented. A simplified version of the leakage algorithm was derived which introduces minimal additional bias and allows the LMS updates to occur at the input data rate. The complete algorithm was implemented on an FPGA using the Xilinx System Generator. References Manz A.; Shallerg K.; Shloss P.; (2000): Improving WAAS Receiver Radio Frequency Interference Rejection. ION GPS 200, September 2000, pp471-479 Kunysz W. (2000): A Novel GPS Survey Antenna. ION NTM 2000, January 2000 Kunysz W. (2000): High Performance GPS Pinwheel Antenna. ION NTM 2000, September 2000 Dimos G.; Upadhyay T.; Jenkins T. (1995): Low-Cost Solution to Narrowband GPS Interference Problem Proc IEEE 1995 Naecon Meeting, vol I pp145-153 May 1995. Trinkle M.; Gray D. (2001): GPS Interference Mitigation; Overview and Experimental Results. SatNav 2001, July, 2001. Braasch M. S.; Rosen M. W. (1998): Low-Cost GPS Interference Mitigation Using Single Aperture Cancellation Techniques. Navigation 2000, 1998 ION National Technical Meeting. Zoltowski M. D.; Gecan A. S. (1995): Advanced Adaptive Null Steering Concepts for GPS. MILCOM 95 Vol. 3, pp. 1214-1218. Jian K.; Guosheng R.; Xizhang K. (1998): Power Inversion Adaptive Algorithm for GPS Receiver Antijamming. International Radar Symposium, September 1998. pp.1395-1401. Fante R. L.; Vaccaro J. J. (2000): Wideband Cancellation of Interference in a GPS Receive Array. IEEE Transaction on Aerospace and Electronic Systems Vol. 36, No. 2 April 2000. Trinkle M.; Cheuk W. (2003): Null-Steering GPS Dual- Polarized Antenna Arrays. SatNav July 2003. Nagai E. C.; Blejer D. J.; Phuong T.; Herd J. (2002): Anti- jam Performance of Small GPS Polarimetric Array. IEEE Antennas and Propagation Society Int. Symp. 2002 Digest, Vol. 2, 16-21 June 2002, pp. 128-131. Fante R. L.; Vaccaro J. J. (2002): Evaluation of Adaptive Space-Time-Polarization Cancellation of Broadband Interference. Proceedings of the 2002 IEEE Precision Location & Navigation Symposium pp.1-3. Compton R. T. JR. (1981): On the Performance of a Polarization Sensitive Adaptive Array. IEEE Transaction on Antennas and Propagation, Vol. AP-29, No. 5, pp. 718-725, September 1981. Legrand F.; Macaiau C.; Issler J. L.; Lestarquit L.; Mehlen C. (2000): Improvement of Pseudo Range Measurements Accuracy By Using Fast Adaptive Bandwidth Lock Loops. ION GPS 200, September 2000, pp. 2346-2356 Soloviev A.; van Grass F. (2004): Combining Low-Cost Inertial System with GPS Applications for General Aviation. GPS World, March 2004 pp. 38-45. Horowitz L.; Senne D. (1981): Performance Advantage of Complex LMS for Controlling Narrow-Band Adaptive Arrays. IEEE Transactions on acoustics, and signal processing, Vol. ASSP-29, NO.3 June 1981. Sethares W. A.; Dale A.; Lawrence C.; Johnson R. JR.; Bitmead R. R. (1986): Parameter Drift in LMS Adaptive Filters. IEEE Transactions on Acoustic, Speech and Signal Processing Vol. ASSP-34, No 4, August 1986. Nascimento V. H.; Sayed A. H. (1999): Unbiased and Stable Leakage-Based Adaptive Filter. IEEE Transactions on Signal Processing, Vol. 47, No. 12 December 1999. Ioannou P.; Tsakalis K. Robust discrete-time adaptive control in Narendra K. S, Ed.,(1986): Adaptive and Learning Systems: Theory and Applications. New York: Plenum, 1986, pp. 73-87. Haykin S. (2002): Adaptive Filter Theory 4th Edition. Prentice Hall 2002. |