Hindawi Publishing Corporation EURASIP Journal on Advances in Signal Processing Volume 2008, Article ID 863629, 17 pages doi:10.1155/2008/863629

Research Article

Code Tracking Algorithms for Mitigating Multipath Effects in Fading Channels for Satellite-Based Positioning

Mohammad Zahidul H. Bhuiyan, Elena Simona Lohan, and Markku Renfors

Institute of Communications Engineering, Tampere University of Technology, P.O. Box 553, 33101 Tampere, Finland Correspondence should be addressed to Elena Simona Lohan, elena-simona.lohan@tut.fi Received 28 February 2007; Accepted 30 September 2007 Recommended by Richard J. Barton

The ever-increasing public interest in location and positioning services has originated a demand for higher performance global navigation satellite systems (GNSSs). In order to achieve this incremental performance, the estimation of line-of-sight (LOS) delay with high accuracy is a prerequisite for all GNSSs. The delay lock loops (DLLs) and their enhanced variants (i.e., feedback code tracking loops) are the structures of choice for the commercial GNSS receivers, but their performance in severe multipath scenarios is still rather limited. In addition, the new satellite positioning system proposals specify the use of a new modulation, the binary offset carrier (BOC) modulation, which triggers a new challenge in the code tracking stage. Therefore, in order to meet this emerging challenge and to improve the accuracy of the delay estimation in severe multipath scenarios, this paper analyzes feedback as well as feedforward code tracking algorithms and proposes the peak tracking (PT) methods, which are combinations of both feedback and feedforward structures and utilize the inherent advantages of both structures. We propose and analyze here two variants of PT algorithm: PT with second-order differentiation (Diff2), and PT with Teager Kaiser (TK) operator, which will be denoted herein as PT(Diff2) and PT(TK), respectively. In addition to the proposal of the PT methods, the authors propose also an improved early-late-slope (IELS) multipath elimination technique which is shown to provide very good mean-time-to-lose-lock (MTLL) performance. An implementation of a noncoherent multipath estimating delay locked loop (MEDLL) structure is also presented. We also incorporate here an extensive review of the existing feedback and feedforward delay estimation algorithms for direct sequence code division multiple access (DS-CDMA) signals in satellite fading channels, by taking into account the impact of binary phase shift keying (BPSK) as well as the newly proposed BOC modulation, more specifically, sine-BOC(1,1) (SinBOC(1,1)), selected for Galileo open service (OS) signal. The state-of-art algorithms are compared, via simulations, with the proposed algorithms. The main focus in the performance comparison of the algorithms is on the closely spaced multipath scenario, since this situation is the most challenging for estimating LOS component with high accuracy in positioning applications.

Copyright © 2008 Mohammad Zahidul H. Bhuiyan et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

1. INTRODUCTION

Today, with the glorious advance in satellite navigation and positioning technology, it is possible to pinpoint the exact location of any user anywhere on the surface of the globe at any time of day or night. Since its launch in the 1970s, the United States (US) Navstar global positioning system (GPS), has become the universal satellite navigation system and reached full operational capability in 1990s [1]. This has created a monopoly, resulting in technical, political, strategic and economic dependence for millions of users [2]. In recent years, the rapid improvement and lowered price ofcom-puting power have allowed the integration of GPS chips into

small autonomous devices such as hand-held GPS receivers, personal digital assistants (PDAs), and cellular phones, increasing the speed of its consumption by the general public. In order to capitalize on this massive rising demand, and to cope with civil and military expectations in terms of performance, several projects were launched to give birth to a second generation of global navigation satellite systems (GNSSs) in the 1990s [3]. This led to two major GNSS decisions: the modernization of the current US GPS, known as GPS II, and the independent European effort to create its own GNSS, known as Galileo [4, 5]. These two systems are now being finalized and are expected to be available to the public by the end of the decade. It is anticipated that once

the new European satellite navigation system Galileo is operational, the vast majority of all user receivers sold will be both GPS and Galileo capable [2]. The benefits of receiving signals from both constellations include improved accuracy, reliability, and availability [2].

Galileo signals, as well as GPS signals, are based on direct-sequence code division multiple access (DS-CDMA) technique. Spread spectrum systems are known to offer frequency reuse, better multipath diversity, better narrowband interference rejection, and potentially, better capacity compared to narrowband techniques [6]. On the other hand, code and frequency synchronization are fundamental prerequisites for the good performance of the receiver. These two tasks pose several problems in the presence of mobile wireless channels, due to the various adverse effects of the channel, such as the multipath propagation, the possibility of having the line-of-sight (LOS) component obstructed by closely spaced nonline-of-sight (NLOS) components, or even the absence of LOS, and the high level of noise (especially in indoor scenarios). Moreover, the fading statistics of the channel and the possible variations of the oscillator clock limit the coherent integration time at the receiver (i.e., the receiver filters which are used to smooth the various estimates of channel parameters cannot have the bandwidth smaller than the maximum Doppler spread of the channel without introducing significant errors in the estimation process) [711]. The Doppler shift induced by the satellite is also prone to deteriorate the receiver performance, unless correctly estimated and removed. Moreover, the fading behavior of the channel paths induces a certain Doppler spread, directly related to the terminal velocity. Typical GNSS receivers estimate jointly the code phase and the Doppler shifts or spreads via a two-dimensional search in time-frequency plane. The delay-Doppler estimation is usually done in two stages: acquisition (or coarse estimation), followed by tracking (or fine estimation). The acquisition and tracking stages will be treated here together, assuming implicitly that the frequency-time search space is reduced, for example, via some assistance data (e.g., Doppler assistance, knowledge of previous delay estimates, etc.). In this situation, the delay estimation problem can be seen as a tracking problem (i.e., very accurate delay estimates are desired) with initial code misalignment of several chips or tens of chips and initial Doppler shift not higher than few tens of Hertz.

One particular situation in multipath propagation is the situation when LOS component is overlapping with one or several closely spaced NLOS components [7, 9-16] making the delay estimation process more difficult. This closely spaced path scenario is most likely to be encountered in indoor positioning applications or in outdoor urban environments, and is the main focus of our paper.

The main algorithms used for GPS and Galileo code tracking, providing a certain sufficiently small Doppler shift, are based on what is typically called a feedback delay estimator and are implemented based on a feedback loop. The most known feedback delay estimators are the delay lock loops (DLLs) or early-minus-late (EML) loops [13, 17-21]. The classical EML fails to cope with multipath propagation [6]. Therefore, several enhanced EML-based techniques have

been introduced in order to mitigate the effect of multipaths, especially in closely spaced path scenarios. One class of these enhanced EML techniques is based on the idea of narrowing the spacing between early and late correlators, that is, narrow EML (nEML) [22-24]. Another class of enhanced EML structures uses a modified reference waveform for the correlation at the receiver, that narrows the main lobe of the cross-correlation function, at the expense of deterioration of signal power. Examples belonging to this class are the high resolution correlator (HRC) [24], the strobe correlators [23, 25], the pulse aperture correlator (PAC) [26] and the modified correlator reference waveform [23, 27]. One other similar tracking structure is the multiple gate delay (MGD) correlator [28-30], where the number of early and late gates and the weighting factors used to combine them in the discriminator are parameters of the model. While coping better with the ambiguities of BOC correlation function, MGD may have poorer performance in multipaths than the narrow EML correlator and is very sensitive to the parameters chosen in the discriminator function (i.e., weights and number of correlators) [31].

One more feedback code tracking structure is the early-late-slope (ELS) [32] correlator, also known as multipath elimination technique (MET), which is based on two correlator pairs at both sides of the correlation function's central peak with parameterized spacing. Based on these two correlator pairs, the slopes of early and late sides of the correlation function can be computed and then, the intersection point will be used for pseudorange correction. However, simulation results performed in [23] showed that ELS technique is outperformed by HRC from the point of view of the multipath error envelopes (MEE), for both BPSK and SinBOC(n,n)-modulated signals. ELS is also outperformed by narrow correlator for very closely spaced paths (i.e., below 0.1 chip separation) and for paths spaced at about 1/2th of the envelope of the correlation function (i.e., 1 chip spacing for BPSK signals and 0.5 chip spacing for SinBOC(n,n) [23].

The feedback loops typically have a reduced ability to deal with closely spaced path scenarios under realistic assumptions (such as the presence of errors in the channel estimation process), a relatively slow convergence, and the possibility to lose the lock (i.e., they may start to estimate the LOS delay with high estimation error) due to the feedback error propagation. Alternatively, various feedforward approaches have been proposed in the literature and they have been summarized in [8]. While improving the delay estimation accuracy, these approaches are sensitive to the noise-dependent threshold choice.

One of the most promising feedforward code tracking algorithms is the multipath estimating delay lock loop (MEDLL) [15, 33], implemented by NovAtel for GPS receivers. The MEDLL is a method for mitigating the effects due to multipath within the receiver tracking loops. The MEDLL does this by separating the incoming signal into its LOS and multipath components. Using the LOS component, the unbiased measurements of code and carrier phase can be made. Performance evaluation of narrow EML, wide EML (i.e., EML correlator with chip spacing of 1 chip) and

MEDLL in terms of multipath mitigation capability is presented in [34] for GPS C/A codes. The MEDLL shows better performance than narrow and wide EML DLLs, but it does not completely eliminate all multipath errors. Especially multipath signals with small relative delays are difficult to eliminate. However, the advantage of MEDLL is that it reduces the influence of multipath signals by estimating both LOS and multipath parameters. However, the performance analysis of MEDLL has not been much studied for SinBOC(1,1) modulated signals. Moreover, classical MEDLL is based on a maximum-likelihood search, which is computationally extensive. Here, we reduce the search space, by using a noncoherent MEDLL approach and by incorporating a phase search unit, based on statistical distributions of mul-tipath phases. We will also include MEDLL in our performance comparison, as a benchmark algorithm.

Another feedforward technique is the slope differential (SD) approach, a recent multipath mitigation scheme based on the slope difference of the prompt correlator output (the correlation is computed between the received signal and the locally generated reference signal). This technique was first proposed in [35]. Advantage of the SD scheme is that it does not require a high speed digital signal processing for the narrow early-late spacing since it employs only the prompt correlator unlike standard DLLs [35]. In [35], it is assumed that the amplitude of the LOS signal is always larger than the amplitude of the multipath signal, which is a rather limiting assumption from the point of view of realistic multipath propagation scenarios. Therefore, a slightly modified approach, named as second-order differentiation (Diff2), is proposed in [31]. Unlike SD, Diff2 computes an adaptive threshold based on the estimated noise variance of the channel obtained from the feedforward loop in order to estimate the delay of the first arriving path. Because of this adaptive threshold, Diff2 is able to estimate the first path delay even in mul-tipath profiles where the first path power is less than or equal to the consecutive path powers [31].

The matched filter (MF) concept is another popular feedforward technique which is extensively studied in [8,36,37]. MF is based on a threshold computation which is determined according to the channel condition provided by the feedforward loop. At first, the noise level is estimated and then a linear threshold is computed based on the noise variance plus some weight factor obtained from the feedforward loop. The choice of the weight factor is dependent on the modulation type. For SinBOC(1,1)-modulated signals, it has to be chosen such that the side lobe peaks of the envelope of the correlation function (CF) between the received signal and locally generated reference signal can be compensated. Therefore, the first peak of MF which is above the linear threshold corresponds to the estimated delay of the first path.

Another very promising code tracking algorithm is Teager-Kaiser (TK)-based delay estimation algorithm. The principle and the properties of the TK-based delay estimation algorithm are described in detail in [38, 39]. TK approach proved to give the best results for WCDMA scenarios in the presence of overlapping paths [9, 38]. According to [8], the performance of this algorithm is also very promising in closely spaced multipath scenarios for LOS delay es-

timation of SinBOC(1,1)-modulated signal in terms of accuracy and complexity. However, the best results performed with TK estimator were obtained with infinite receiver bandwidth. The presence of bandwidth limiting filter affects adversely the performance of TK estimator.

The purpose of our paper is two-fold: first, to propose an improved early-late-slope (IELS) technique, which increases the MTLL and decreases the RMSE compared with the narrow correlator, and secondly, to introduce two peak-tracking-based techniques with optimized parameters, that provide the best LOS estimation accuracy among the other studied algorithms. Aditionally, the step-by-step implementation of a noncoherent MEDLL with incorporated phase estimation is given for both SinBOC and BPSK signals. In our improved ELS (IELS) technique, we propose two major updates to the basic ELS model. The first update is the adaptation of random spacing between the early and the late correlator pairs. This is mainly because of the fact that the random spacing between the early and late correlator pairs will generally provide more accuracy in order to draw slopes in the early and late sides of the correlation function as compared to fixed spacing, especially when fading channel model is concerned. The second update is the utilization of the feedforward information in order to determine the most appropriate peak on which the IELS technique should be applied. The peak tracking (PT) algorithms, as mentioned above, combine the advantages of feedback and feedforward techniques, in such a way that the delay estimation accuracy is increased, while still preserving a good mean time to lose lock (MTLL). We remark that the basic ideas of a peak tracking-like algorithm have been introduced by the authors in [40]. However, in [40], the PT was using only the second-order derivative estimates and its parameters were chosen empirically. Moreover, the algorithm presented in [40] is valid only for Galileo SinBOC(1,1)-modulated signals, while the work here is valid for both GPS and Galileo signals. We also explain here the choice of all the PT parameters and we introduce also the PT-with-TK algorithm.

Simulation results in multipath fading channels are included, in order to compare the performance of the proposed algorithm with the performance of various feedback and feedforward algorithms (some of them have been already mentioned in this introductory chapter, and the rest of them, which are less known or new, are explained in Sections 2 and 3). The procedure of PT algorithm is detailed in Section 4. The last two sections are dedicated to the simulation results and conclusions.

2. SIGNAL AND CHANNEL MODEL

In what follows, the continuous-time model is adopted for clarity purpose. The signal s(t) transmitted from one satellite, with pseudorandom (PRN) code can be written as:

S(t) = ^Ebpmod(t) ® C(t), (1)

where Eb is bit energy, pmod(t) is the modulation waveform (e.g., BPSK for C/A GPS code or SinBOC(1,1) for L1 Galileo signals), and c(t) is the spread navigation data

(spreading is done with a pseudorandom code of chip interval Tc and spreading factor SF):

c(t) = X b„Xck,nS(t - nTcSp - kTc).

n = -0 k = l

Above S( •) is the Dirac unit pulse, bn is the nth data bit (for pilot channels, bn = 1, vn) and ck,n is the kth chip (±1 valued) corresponding to the nth spread bit.

The modulation waveform for BPSK and SinBOC-modulated signals1 can be written as [41]:

Pmod(t) = PTb (t) ® £ 8(t - Tb) ,

where NB is BOC modulation order: NB = 1 for BPSK modulation2 and NB = 2 Jsc/Jc where Jsc is the subcarrier frequency and fc is the carrier frequency for SinBOC modulation, TB = Tc/NB is the BOC interval, and pTB (t) is the pulse shaping filter (e.g., for unlimited bandwidth, pTB(t) is a rectangular pulse of width TB and unit amplitude).

The received signal r(t), after multipath propagation and Doppler shift introduced by the channel is

r(t) = bnY, Ck,nY,

n=-o k=1 l=1

x pmod (t - nTcSp - kTc - Tl)e-i2nfot + n(t),

where L is the number of channel paths, ai,n is the Ith path amplitude during nth code epoch, fy n is the ith path phase during nth code epoch, and Ti is the ith path delay (typically assumed to be slowly varying or constant within the observation interval) and q(t) is a wideband additive noise, incorporating all sources of interferences over the channel. Assuming that the signal is sampled at Ns samples per chip (for BPSK) or per BOC interval (for BOC modulation), then the power spectral density of q(-) can be written as N0/(NsNB SF), where N0 is the noise power in 1 kHz bandwidth (i.e., bandwidth corresponding to one code epoch).

At the receiver side, the incoming signal r(t) is correlated with a replica (reference signal) sref (t) of the modulated PRN code. The correlation output R( •) can be written as:

R T, T, %) = E( r(T) ® Sref(T))

r(t)sref (t - t)dtj,

where the correlation is performed over one spreading length of duration SFTc (this corresponds to 1 millisecond for GPS and Galileo), E( •) is the expectation operator with respect to

the random variables (e.g., PRN code, channel effects, etc.), and

Sref (t, T, fD ) = pmod(t) ® C(t) ® S(t - T )e-jlnfDi, (6)

is the reference modulated PRN code with a code phase T and Doppler shift fD.

Since the main focus in this paper is the multipath tracking, we will assume in what follows that there is only a small residual Doppler error after the acquisition process A fD = fD - fD. Also, if we assume ideal codes and pilot channel-based estimation (or data removed before the correlation process), then E(c(t) ® c(t)) = S(t). With these assumptions, after several manipulations and by replacing (1) to (4) into (5) we get:

R (t , T, fD, n)

= ai,nej hn Rmod (t - Ti + T) F (A fD) + n(T, n),

where Rmod(T) = pmod(t) ® pmoa(t) is the autocorrelation of the modulation waveform (including BPSK or BOC modulation and pulse shaping and whose detailed expression can be found in [41]), and F(AfD) = sinc(nAfDSF TC)e-jnAfDS'Tc is a deterioration factor due to small residual Doppler errors (and it was obtained via integrating e-i2nAfDt over one code epoch). The filtered noise q(T) power spectral density (PSD) No depends on the PSD of the modulation waveform, Gmod( f ) via

No = No Gmod(f ) = N0 GBPSK/BOC(f ) | fier (f ) 12, (8) where the BPSK and BOC PSD are given by3 [41]:

Gbpsk( f ) = Tc sinc2 (nfTc), (9)

and, respectively:

G ( f, 1 fsin( nf (Tc/Nb)) sin( nfTc]

GBOC(J ) =

Tc \ nf co^ nf (Tc/Nb))

In (8), Pfilter( f) is the transfer function of the pulse shaping filter. For example, for infinite bandwidth, Pglter( f) = 1 over the bandwidth of interest.

In a practical receiver, in order to cope with noise, coherent and noncoherent integration of the correlation function might be used. The output after coherent integration over Nc code symbols is

R T, T, Jd) = -X R T, T, fD, n). (11)

Nc n=1

1 The formulas for CosBOC modulations can be found in [41] and theyare not reproduced here for sake of compactness.

2 BPSK can be seen as a particular case of BOC modulation, as shown in

3 For simplicity, only the expression for sine BOC of even BOC modulation order is shown, such as for SinBOC(1,1); the other formulas can be found in [41].

The matched filter (MF) output after Nnc noncoherent integration blocks become:

Jmf(t,t,D = Nri rt,r,Dr*(t,r, fD). (12)

Under the assumption of zero-mean additive noise n( •), (12) becomes

L L _ _

Jmf (T, t, D - Eb£ Xatati e^^Rnod (r - Ark) 1=1 i1=1

x Rmod(T - ATli )|F (A fD )|2+ |n(T )|2,

where ai = E(ai,n) and = E($ln) are the average amplitude and phase values of path l over one code symbol interval, Ati = Ti - t, and %(t) is the filtered and averaged noise (after coherent and noncoherent integration).

-T3-T1 T2 T4

Figure 1: Computation of a pseudorange correction T by analyzing the slopes on both sides of the ACF

3. CODE TRACKING ALGORITHMS

3.1. Early late slope technique (ELS)

The early-late-slope (ELS) multipath mitigation technique can be easily explained by having a look at the signal's au-tocorelation function (ACF) [32]. The general idea is to determine the slope at both sides of the ACF's central peak. Once both slopes are known, they can be used to compute a pseudorange correction that can be applied to the measured pseudorange. This multipath mitigation technique has temporarily been used in some of NovAtel's GPS receivers, where it has been called multipath elimination technology (MET).

The principle of forming pseudorange corrections is illustrated in Figure 1. Here, R(t) can be, for example, the coherent correlation function of (11) or the noncoherent output Jmf(t, t, fD) of (12). It can be noticed that the autocorrelation peak is distorted due to the influence of the multipath signal. The slope of the correlation function on the early side of the peak is a1, and a2 is the slope of the late side of the peak. The spacing between the early and late correlators is d. Using the slope information the following error function can be derived to accurately estimate how much the correlators need to be moved so that they are centered on the peak [32]:

yt - y2 +(d/2)(ax + a2)

ai - a2

where T is the tracking error. This is actually the tcoordinate of the intersection of the two straight lines (i.e., the slopes a1 and a2). T will equal zero when the two correlators are positioned equidistant on each side of the peak. When T is non-zero it can be used to feed back to the hardware to keep the early and late correlators centered on the peak.

3.2. Improved early late slope technique (IELS)

In our improved ELS (IELS) technique, there are two major updates to the basic ELS model. The first update is the adaptation of random spacing between the early correlators (i.e.,

the spacing between E1 and E2) and also between the two late correlators (i.e., the spacing between L1 and L2). The reason is quite straightforward. The random spacing between the correlators will generally be more appropriate than fixed spacing to draw correct slopes in both the early and late sides of the correlation function, especially when fading channel model is concerned. The second update is the utilization of the feedforward information in order to determine the most appropriate peak on which the IELS technique should be applied. Unlike BPSK, BOC-modulated signal has side peaks with nonnegligible magnitudes. Therefore, there should be a fair way to get rid of these side peaks not being considered as the central peak. Similar with PT algorithm (that will be explained in Section 3.4), an IELS threshold is computed based on the estimated noise variance provided from the feedforward structure. The chosen IELS peak is the one which is above the threshold level as well as the closest to the previous estimation.

3.3. Multipath estimating delay lock loop (MEDLL) implementation

Multipath estimating delay lock loop (MEDLL) is mainly designed to reduce both code and carrier multipath errors by estimating the parameters (i.e., amplitudes, delays, phases) of LOS plus multipath signals [15, 33]. The MEDLL of No-vAtel uses several correlators (e.g., 6 to 10) per channel in order to determine accurately the shape of the multipath-corrupted correlation function. Then, a reference correlation function is used in a software module in order to determine the best combination of LOS and NLOS components (i.e., amplitudes, delays, phases and number of multipaths). An important aspect ofthe MEDLL is an accurate reference correlation function which could be constructed by averaging measured correlation functions over a significant amount of total averaging time [33].

The classical MEDLL approach involves the decomposition of correlation function into its direct and multipath components. The MEDLL estimates the amplitude (ai), delay

(Ti) and phase (fy) of each multipath component using maximum likelihood criteria. Each estimated multipath correlation function is in turn subtracted from the measured correlation function. After the completion of this process, only the estimate of the direct path correlation function is left. Finally, a standard EML DLL is applied to the direct path component and an optimal estimate of the code tracking error is obtained [34, 42]. There are several implementations possible for MEDLL algorithm. Here, we chose a noncoherent MEDLL to make the implementation of the algorithm much faster and comparable with the complexity and the implementation of the other discussed algorithms. The steps used in our MEDLL implementation for BPSK and SinBOC(1,1) signals are summarized below.

(1) Find the maximum peak of R(t) (where R(t) = /mf(t, T, fD) from (12)) and its corresponding delay Ti, amplitude a1 and phase fy. However, we have to mention that the phase information is lost due to noncoherent integration, thus we recover it by generating random (uniformly distributed in [0 2n]) phases fy and by choosing that one corresponding to the minimum mean square error of the residual function R(k)(T), k being the iteration index (see next step). In practice, Nrandom = 50 phases proved to give accurate enough results (with no so significant computational burden).

(2) Subtract the contribution of the calculated peak, in order to have a new approximation of the correlation function R(1)(T) = R(t) - aRmod,ideal(t - T 1)ejfy112. Here Rmod, ideal( •) is the reference correlation function for a BPSK or SinBOC-modulated signal, in the absence of multipath (which can be, e.g., computed only once, according to ideal codes [41], and stored at the receiver). We remark that the choice of phase is not important during the first step (due to the squared absolute value), and, thus the phase estimation can be ignored during the first step. Find out the new peak of the residual function R(1) (•) and its corresponding delay T2, the amplitude a2 and phase fy2. Subtract the contribution of the first two peaks from R(t) and find a new estimate of the first peak, as the peak of the residual R(2)(t) =

R(t) - | a 1 Rmod,ideal(t - T 1)ej,fy + a2Rmod,ideal(t - T2)ejfy |2. The reestimated values of the delay and amplitude of first peak are rewritten in T1 and a1, respectively. For more than two peaks, once the two first peaks are found, the search for the ith peak is based on the residual R(1)(t) = R(t) -

iz rn=1 amRmod,ideal(t - Tm)ejfym |2, l > 3. The procedure is continued iteratively until all desired peaks are estimated (see next steps).

(3) The previous step is repeated until a certain criterion of convergence is met, that is, when residual function is below a threshold (e.g., set from 0.4 to 0.5 here) or until the moment when introducing a new delay does not improve the performance (in the sense of root mean square error between the original correlation function and the estimated correlation function).

Ignoring completely the phase information and keeping only the amplitude estimates is also possible for MEDLL implementation, in order to decrease the computational bur-

den. However, slight deterioration of performance is noticed, as seen in the illustrative MEDLL examples of Figure 2 ("Old MEDLL" method refers to the situation when the phase information is not taken into account, while the "New MEDLL" method refers to the situation when the phase information is searched for, in a random manner as explained above, with Nrandom = 50). Here, Ns is the over-sampling factor (a chip interval has 40 samples in this example). By increasing the number of random points Nrandom, the "New MEDLL" would approach the performance of coherent MEDLL.

3.4. Peak tracking algorithm

The motivation behind the development of the new PT algorithm was to find such an algorithm that fully utilizes the advantages of both feedforward and feedback techniques and improves the fine delay estimation. PT utilizes the adaptive threshold obtained from the feedforward loop in order to determine some competitive delays, that is, the delays which are competing as being the actual delay (i.e., the delay of the first arriving path). The adaptive threshold is based on the estimated noise variance of the absolute value of the correlation function between the received signal and the locally generated reference signal. At the same time, PT explores the advantage of feedback loop by calculating some weight factors based on the previous estimation in order to take decision about the actual delay. However, the utilization of feedback loop is always a challenge since there is a chance to propagate the delay error to subsequent estimations. Therefore, the delay error should remain in tolerable range (e.g., less than or equal to half of the width of main lobe of the envelope of the correlation function) so that the advantage from feedback loop could be properly utilized.

For a SinBOC(1,1)-modulated signal, the width of main lobe of the envelope of an ideal CF between the locally generated reference signal and the received code is about 0.7 chips as shown in Figure 3. Thus, when we deal with SinBOC(1,1) signals, we assume in what follows a maximum allowable delay error less than or equal to half of the width of the main lobe (i.e., 0.7/2 = 0.35 chips). This means that, if the delay error is higher (in absolute value) than 0.35 chips, the lock is considered to be lost and the acquisition and tracking processes should be restarted. For BPSK signals, the maximum delay error will be 1 chip (since the width of the main lobe is 2 chips).

The details of the PT algorithm are given in Section 4. Among the feedforward delay tracking algorithms, the matched filter (MF), the second-order differentiation (Diff 2), and the Teager-Kaiser (TK) algorithms are described in the next subsections. Diff2 and TK algorithms represent also parts of the building blocks of PT algorithm with Diff 2 technique, denoted herein as PT(Diff 2) and of PT algorithm with TK technique (PT(TK)).

3.5. MF peak and MF technique

In this context, the term MF peak is defined as any local maximum point in the CF squared envelope that is greater than

0.9 o 0.8

.2 0.6

Old MEDLL method (no phase info)

90 100 110 120 130 140 150 160 170 Path delays (samples)

- Normalized correlation

o True path delays * Estimated path delays

0.9 on 0.8

n io 0.6

g 0.5 o

1 03 I 0.2

New MEDLL method, estimated phases = [1.4361 0.40926 -0.33013] rad

90 100 110 120 130 140 150 160 170 180 Path delays (samples)

- Normalized correlation

o True path delays * Estimated path delays

Figure 2: Illustration of MEDLL estimates without (a) and with (b) phase information. A 4-path Nakagami-m fading channel, average path powers = [0, -1, -2, -3] dB, CNR = 30 dB-Hz, Nc = 100 ms, Nnc = 2, Ns = 20. Infinite bandwidth, SinBOC(1,1) signal.

\J 0.7c hips V

- 1 - 0.5 0 0.5 1

Chip offset (chips)

Figure 3: Ideal envelope of the autocorrelation function of SinBOC(1,1)-modulated signal.

or equal to a specific threshold (i.e., MFThresh, as explained in Section 3.7.1). The MF peak (MFPeak) is actually the normalized amplitude of local maximum point of the CF squared envelope, which can be obtained using the following equation:

MFPeak = vxj[(xj e MF) a (xi > xi-i)

a (Xi > Xi+1) a (Xi > MFThresh)};

i = 2,3,..., Imf - 1,

where ECF here stands for the squared envelope (squared absolute value) of the correlation function between the received signal and the locally generated reference signal: ECF = Jmf(t, t, fD) (see (12)), A is the intersection and operator,

and lMF is the length of the set MF. Above, it was assumed that the samples of ECF are denoted via x,. In what follows, we refer to this method as matched filter (MF) method, by analogy with [8].

3.6. Diff2 peak and Diff2 techniques

Second-order differentiation (Diff2) peak is defined as any local maximum of the second-order derivative of the ECF, that is greater than or equal to a specific threshold (i.e., Diff 2Thresh). The Diff 2 peak (Diff 2Peak) is also normalized with respect to the maximum value of the secondorder derivative of the ECF. We have:

Diff2Peak = vxj{(xj e Diff2) a (x, > x, - 1)

a (xi > xi + 1) a (xi > Diff2Thresh)};

i = 2,3,... , iDiff2 - 1,

where Diff2 is the second-order differentiation of /MF(r, t, fD) from (12), iDff2 is the length of the set Diff2. Since the local maxima of ECF are also seen in the maxima of its second-order derivative, the Diff 2 method includes the MF estimates, but it can also detect closely-spaced paths.

In Figure 4, MF peaks and Diff 2 peaks are marked according to the definition described before. Figure 4 represents a plot for 2 path Nakagami-m fading channel model with m = 0.5 for SinBOC(1,1)-modulated signal. In this example case, decaying power delay profile (PDP) is used with a multipath separation of about 0.75 chips. carrier to noise ratio (CNR) is considerably high, that is, 100 dB-Hz, in order to emphasize the multipath channel effect. In Figure 4,

0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

2 path Nakagami-m fading channel model, multipath delay(s): [0 0.75122] chips, CNR: 100dB-Hz

1 0 1 Delay error (chips)

MF threshold Noise threshold

2 path Nakagami-m fading channel model, multipath delay(s): [0 0.75122] chips, CNR: 100dB-Hz

1 0 1 2 3

Delay error (chips)

—o Diff2

Diff2 threshold ---Noise threshold

Figure 4: MF Peaks (a) and Diff 2 Peaks (b) illustration. SinBOC(1,1) signal.

Ö 0.8

2 path Nakagami-m fading channel model, multipath delay(s): [0 0.75122] chips, CNR: 100dB-Hz

I 05 d

elizd 0.4 al

S 0.3 -r

N0.2 0.1 0

-3 -2 -10 1 2 3

Delay error (chips)

Figure 5: Estimation of noise threshold for the same channel profile as in Figure 4.

the peaks marked in the two subplots correspond to the channel delays and also to the MF and Diff 2 peaks (both MF and Diff 2 algorithms estimate correctly the channel paths in this example).

3.7. Noise thresholds for MF and Diff 2 algorithms

Noise threshold (NThresh) is obtained based on the noise level of the ECF. The noise level is estimated by taking the mean

of out-of-peak values of the ECF. The out-of-peak values are all the ECF points which fall outside the rectangular window shown in Figure 5. The rectangular window is chosen such that it contains all side lobe peaks of the ECF, due to BOC modulation, as well as multipath effects (we have to assume a maximum delay spread of the channel, but this choice proved not to be so critical). Hence, the width of the rectangular window should not be less than 2 chips. In this example case, the width of the rectangular window was 2.4 chips.

3.7.1. MF threshold

MF Threshold (MFThresh) is basically computed from the estimated noise threshold NThresh and a weight factor WMF using the following equation:

MFThresh = max{MFPeak} Wmf + NThresh, (17)

where MFPeak and NThresh were defined above and WMF is defined as follows (the exact choice within these intervals proved not to be critical):

0.1 < WMF < 0.15 0.3 < Wmf < 0.35

for BPSK,

for SinBOC(1,1),

WMF was chosen optimized empirically (e.g., based on the levels of the side lobes of ECF of SinBOC(1,1)-modulated signal). Figure 6 represents an ideal ECF for SinBOC(1,1)-modulated signal where the side lobe peak have approxima-tively the value 0.25. Therefore, WMF could be chosen according to (18) in order to avoid side lobe peaks being considered as the competitive peaks. Definition of competitive peaks is presented in Section 3-1.

ho 0.6

Chip offset (chips)

Figure 6: Ideal ECF (i.e., squared envelope of the correlation function) of SinBOC(1,1)-modulated PRN Signal.

3.7.2. Diff 2 threshold

Diff 2 threshold (Diff 2Thresh) is computed from the estimated noise threshold NThresh and a weight factor WD via:

Diff2Thresh = max {Diff 2peak} Wd + NThresh, (19)

where Diff2Peak and NThresh were defined above and WD is defined as follows (based on the second-order derivative values of an ideal ECF):

0.22 < WD < 0.3 0.37 < Wd < 0.5

for BPSK,

for SinBOC(1,1).

The second-order differentiation of ECF is very sensitive to noise which emphasizes the fact that the weight factor WD should be chosen higher than the weight factor WMF chosen for MFThresh. That is why the weight factor WD is slightly greater than WMF .

3.8. Teager-kaiser (TK) peaks and TKtechnique

The nonlinear quadratic TK technique was first introduced for measuring the real physical energy of a system [43]. Since its introduction, it has widely been used in various speech processing and image processing applications and, more recently, it has also been applied in code division multiple access (CDMA) applications [38, 39, 44]. It was found that this nonlinear technique exhibits several attractive features such as simplicity, efficiency and ability to track instantaneously-varying spatial modulation patterns [45]. Teager-Kaiser operator is chosen in the context of this paper because it proved to give the best results in delay estimation process when used with other CDMA type of signals, as explained in [38,39,44]. Teager-Kaiser operator ^TK( •) to a real or complex continuous signal x(t) is given by [39]:

^TK(x(t)) = X(t)X*(t) - 1 [x(t)x*(t)+ x(t)X*(t)]. (21)

For discrete signals x(n), TK operator is defined as [39]:

¥TK(x(n)) = x(n - 1)x*(n - 1)

1 (22) - ^ [x(n - 2)x*(n) +x(n)x*(n - 2)].

TK peak is defined as any local maximum of the Teager-Kaiser operator applied to the ECF, that is greater than or equal to a specific threshold (i.e., TKThresh):

TKpeak = vXi{(xi g TK a (xj > Xj - 1)

л (Xj > Xj+1) a (Xj > TKrhresh)};

i = 2,3,..., Itk - 1,

where TK = ^tk(/MF(t, t, fD)) is the TK operator applied to ECF and lTK is the length of the set TK.

Above, TK Threshold (TKThresh) is computed similarly with MF and Diff 2 thresholds:

TKThresh = max{TKpeak} Wtk + NThresh,

where WTK weight was obtained from the TK applied to an ideal ECF and by optimization based on simulations, that is,

0.25 < WD < 0.3 for BPSK,

0.3 < WD < 0.32 for SinBOC (1,1).

3.9. Competitive peaks concept

The competitive peaks are to be used in the proposed peak tracking algorithms. A competitive peak (CPeak) can be obtained using the following equations:

CPeak = {(MFPeak) u (Diff2Peak)}, (26)

CPeak = {(MFPeak) u (TKPeak)}, (27)

where the symbol u is used as the union of two sets. This means that we combine the delay estimates given by MF and Diff2, or by MF and TK, and form a set of "competitive" delays, from which the final estimate will be selected.

Since, for GNSS applications, the point of interest is to find the delay of the first arriving path (i.e., the LOS path), therefore, it would be enough to consider only the first few competitive peaks (in their order of arrival). Hence, we assume that:

max(L) = 5.

Figure 7 shows the competitive peaks for the same path profile as in Figures 4 and 5. The competitive peaks are obtained using (26). As it can be seen from Figure 7, for this particular example, there are in total two competitive peaks which compete to be considered as being the actual delay of the LOS path.

In this example, the first competitive peak corresponds to the delay of the first arriving path whereas the second competitive peak corresponds to the delay of the second arriving path which is approximately 0.75 chips apart from the first path.

o G T3

2 path Nakagami-m fading channel model, multipath delay(s): [0 0.75122] chips, CNR: 100dB-Hz

1 0 1 Delay error (chips)

CF —e Diff2

- MF threshold

Diff2 threshold ---Noise threshold

Figure 7: Competitive peaks ofPT(Diff 2) algorithm.

g 0.6 G

£ 0.4

2 path Nakagami-m fading channel model, multipath delay(s): [0 0.75122] chips, CNR: 100dB-Hz

Compet itive peaks i 1

1 0 1 Delay error (chips)

—— CF —0 TK

- MF threshold

TK threshold ---Noise threshold

Figure 8: Competitive peaks ofPT(TK) algorithm.

An example of peak tracking algorithm with TK technique is shown in Figure 8. Figure 4 represents a plot for 2 path Nakagami-m fading channel model with m = 0.5. Here, decaying power delay profile (PDP) is used with a multipath separation of about 0.75 chips. Carrier-to-noise ratio (CNR) is considerably high, that is, 100 dB-Hz, in order to emphasize the multipath channel effect. According to Figure 8, the first competitive peak corresponds to the delay of the first arriving path whereas the second competitive peak corresponds to the delay of the second arriving path which is about 0.75 chips apart from the first path.

4. DESCRIPTION OF PEAK TRACKING ALGORITHMS

The general architecture ofPT algorithms (i.e., PT with Diff2 and PT with TK) is shown in Figure 9. In what follows, the step by step procedure ofPT algorithms is presented.

4.1. Step 1: noise estimation

NThresh is estimated according to Section 3.7, which is then used to determine ACFThresh, Diff 2Thresh and TKThresh. These thresholds are then provided as input to the next step.

4.2. Step 2: competitive peak generation

Step 2(a): Look for MF peak(s) in ECF domain using (15). Step 2(b): Look for Diff2 peak(s) in Diff2 domain using (l6) (for PT(Diff2) method) or for TK peak(s) in TK domain using (23) (for PT(TK) method). Step 2(c): Find competitive peak(s) using (26).

The competitive peak(s) obtained from step 2 are then fed into steps 3(a), 3(b) and 3(c) in order to assign weights in each substep for each particular competitive peak.

4.3. Step 3(a): weight based on peak height

Assign weight(s) (a;), i = 1,..., L, based on the competitive peak height(s) using the following equation:

[ tmf(t;) + Tdiff 2/tk(t;)]

i = 1,..., L,

where TMF and TDiff2/Tk are the MF and Diff 2/TK correlation values, respectively, corresponding to a competitive peak:

TmfT) = MF(ti), i = 1,..., L, (30)

TDiff 2/TK (t) = Diff2/TK(Ti), i = 1,..., L. (31)

4.4. Step 3(b): weight based on peak position

Assign weight(s) b,, i = 1,..., L based on peak positions in ECF distribution: the first peak is more probable than the second one, the second one is more probable than the third one and so on. This is based on the assumption that typical multipath channel has decreasing power-delay profile. In the simulation, the following weights were used based on peak positions:

[b1 b2 b3 b4 b5] = [1 0.8 0.6 0.4 0.2],

where b;, i = 1,..., L denotes the weight factor for ith peak; that is, b1 is the weight for 1st peak, b2 is the weight for 2nd peak, and, so on. It is logical to assign higher weights for the first few competitive peaks as compared to later peaks since the objective is to find the delay of the first path. Figure 10 represents the assignment of weights based on peak position.

4.5. Step 3(c): weight based on previous estimation

Assign weight(s) c„ i = 1,..., L based on the feedback from the previous estimation: the closer the competitive peak is

Figure 9: The general architecture of PT algorithms.

1st peak 2nd peak 3rd peak 4th peak 5th peak Peak position, i

Figure 10: Weight assignment (b-„ i = 1,...,L) based on peak position

4.6. Step 4: compute the decision variable

The decision variable (regarding which of the competitive peaks will be declared as LOS peak), dj, i = 1,..., L is computed according to the following equation:

dj = a* bi + ci, i = 1,..., L,

which means that the first two weights ai and bi have higher weight than the third weight. This decision variable was also optimized empirically, via simulations.

4.7. Step 5: find estimated delay of the LOS path

The LOS delay can then be obtained via:

Tlos = arg max(dj).

from the previous estimation, the higher the weight would be for that particular competitive peak. Weight is assigned to each competitive peak according to (33) as follows:

Cj = 1 - (Terr)j, i = 1, ..., L, (33)

where (Terr)i is the delay error of the ith competitive peak with respect to the previous estimation. For example, for a delay difference of 0.1 chips from the previous estimation, the weight factor ci would be 0.9, and for a delay difference of 0.2 chips, the weight factor cj would be 0.8 and so on.

Table 1 summarizes the weights assigned in the example path profile shown in Figure 7 for PT(Diff2). Similar results were obtained with PT(TK). In this example case, there are two competitive peaks meaning that we need to assign weights only for those two peaks. In assigning weights for cj, i = 1,...,L, PT assumes that there is no initial error present from the previous estimation. In step 4, the algorithm simply computes the decision variable di, i = 1,..., L using (34) for each competitive peak. And, finally, in step 5, PT(Diff2) algorithm selects the peak which has the maximum value for the decision variable di. In our case, it is d1 . Therefore, in this example, the first competitive peak corresponds to the true delay of the LOS path.

Butterworth filter, receiver bandwidth: [8 MHz], 2 path channel: [1 0.8], noncoherent correlation

One snapshot of delay estimates, CNR = 40 dB-Hz

0.2 0.4 0.6 0.8 1 Multipath spacing (chips)

---NEML

-e- HRC -«- IELS

Butterworth filter, receiver bandwidth: [8 MHz], 2 path channel: [1 0.8], noncoherent correlation

• V / 11

i n il

0.2 0.4 0.6 0.8 1 Multipath spacing (chips)

---MEDLL

-O- Diff2 -*- TK

Butterworth filter, receiver bandwidth: [8 MHz], 2 path channel: [1 0.8], noncoherent correlation

/ \ ----

1 1 i . _.

A 1 - jh It / 1 / ft * p- i 1 i \ \ \

^ a n ^ o x »10 \ / \ /A, **-<!v i \\ f a o / /

li /<25 itf/ Vf v / /

0.2 0.4 0.6 0.8 1 Multipath spacing (chips)

-e- PT(Diff2) -«- PT(TK)

Figure 11: Multipath error envelopes (MEEs) for 2 path static channels with path power [10.8] for 8 MHz receiver bandwidth.

ips 5.4 hi

(yla el

5.2 5 4.8 4.6

-¥i f,

1] 1 * s * h T i'I

1 s 72» P ' * I o 1 1 Ja {Jföijft 1 ( ¡7 f 11 ' f * V 1!. T I * I jj i W li 's Ml ..... [A w M".... *.....

I/W^i r n Mi wJ I UUJ. Tk

3 4 5 Time (s)

- True LOS delay

- e - MEDLL estimates -X- PT(Diff2) estimates

Figure 12: One snapshot of delay estimated by MEDLL and PT(Diff2) algorithms. SinBOC (1,1) signal, BT = 8MHz.

Table 1: Assignment of weights for Figure 7.

1st competitive peak a1 1 b1 1 c1 1 d1 2

2nd competitive peak a2 0.85 b2 0.8 c2 0.25 d2 0.93

5. MEE CURVES

The comparison in terms of multipath error envelopes between the different considered algorithms is shown in Figure 11 for 2-path static channels with linear path amplitude values 1 and 0.8. The upper envelope is obtained for in-phase paths, and the lower envelope is obtained for -180 degrees phase shift between the paths. The receiver bandwidth here was set to 8 MHz and the noncoherent correlators were used. We recall the following notations used in the figures' captions:

(i) nEML = narrow early-minus-late correlator (with 0.1 chip early-late spacing);

(ii) HRC = high resolution correlator (with 0.1 chip early-late spacing and 0.2 chip very early-very late chip spacing);

(iii) IELS = improved early late slope;

(iv) MEDLL = multipath estimating delay locked loop (implemented with phase information);

(v) Diff2 = second-order derivative-based algorithm;

(vi) TK = Teager-Kaiser-based algorithm;

(vii) MF = matched filter-based algorithm;

(viii) PT(Diff2) = peak tracking with second-order derivative stage;

(ix) PT(TK) = peak tracking with Teager-Kaiser stage.

Nakagami channel, number ofpaths: between 2 and 5, Nc = 20 ms, Nnc = 4, Ns = 10, init. del. err. = 0 chips

20 22 24 26 28 30 32 34 36 38 40 CNR

- nEML

-x- HRC IELS -+- MEDLL - Diff2

-e- TK -<- MF

PT(Diff2) -*- PT(TK)

Nakagami channel, number ofpaths: between 2 and 5, Nc = 20 ms, Nnc = 4, Ns = 10, init. del. err. = 0 chips

20 22 24 26 28 30 32 34 36 38 40 CNR

nEML -X- HRC IELS -+- MEDLL - Diff2

-e- TK -<- MF

PT(Diff2) -*- PT(TK)

Figure 13: RMSE and MTLL for SinBOC(1,1) and infinite bandwidth.

Nakagami channel, number ofpaths: between 2 and 5, Nc = 20 ms, Nnc = 4, Ns = 10, init. del. err. = 0 chips

nEML -x- HRC IELS -+- MEDLL - Diff2

-e- TK -ft- MF

PT(Diff2) -»- PT(TK)

-e- TK -ft- MF

PT(Diff2) -»- PT(TK)

Figure 14: RMSE and MTLL for SinBOC(1,1) and 8 MHz bandwidth (Butterworth filter).

From Figure 11, the best MEE performance is obtained with the feedforward algorithms (TK, Diff2, PT/TK, and PT/Diff2), followed by MEDLL approaches. We also remark that IELS algorithm outperforms the narrow correlator for closely spaced multipath (unlike the results reported in [23]). However, even after the improvements, ELS algorithm is outperformed by HRC method. However, MEEs are rather poor performance criteria since they assume only static 2-path channels and do not take into account the channel changes. More robust performance estimators are those based on root mean square error and mean-time-to-lose-lock values of the delay estimates, as shown in Section 6.

6. SIMULATION RESULTS

Simulation results have been carried in Nakagami-m closely spaced path scenarios for both SinBOC(1,1) and BPSK signals, and for both limited and unlimited bandwidths. The results are described in the next two subsections.

6.1. SinBOC(1,1) case

Simulation results were carried for both infinite bandwidth situation and for some severe bandwidth situation (i.e., 8 MHz double-sided bandwidth limitation). The received filter for finite bandwidth case was a 8-MHz 5th order butterworth filter with 0.1 dB passband ripples and 40 dB stopband attenuation. The received signal was sampled at Ns = 10 samples per BOC interval, Ns being the oversampling factor (i.e., here we have NBNs = 20 samples per chip). The channel paths were assumed to have a Nakagami-m amplitude variation (m = 0.5). The channel paths number was assumed to be randomly varying between 2 and 5 paths (uniform distribution), and the successive path separation was also a random variable, distributed between 1/(NsNB) and 0.35 chips (i.e., closely spaced path scenarios). The channel paths were assumed to obey a decaying power delay profile (PDP), with the decaying factor ^ = 0.2/NS/NBOC. 8000 random points were used in the computation of RMSE and MTLL values. The RMSE was computed only on those delay estimation values which were (in absolute value) less or equal to 0.35 chips (i.e., half of the main lobe of the ECF). The MTLL was computed as the average number of delay estimates whose error (in absolute value) was less than 0.35 chips. The RMSE values are plotted in meters here, by using the relationship RMSE[m] = RMSE[chips] cTc, where c is the speed of light. It was also assumed that the initial delay estimate coming from the acquisition stage is accurate to 0 chip delay error, but that the LOS delay is randomly varying in time (with a uniform distribution of ±0.05 chips around the previous delay). Thus, the purpose of the delay tracking unit is to keep the lock, that is, to follow these delay variations. A coherent integration time of Nc = 20 ms was used, followed by noncoherent integration on Nnc = 4 blocks.

A snapshot of estimated LOS delay versus the true LOS delay for two of the considered algorithms is shown in Figure 12 for SinBOC(1,1) signal and 8 MHz receiver bandwidth.

One snapshot of delay estimates, CNR = 40 dB-Hz

ips hi

'J 7.4

w * ii

n ii ii 'i|I 'lit 1 in \l ^ <b- - aaa ff ?..... r

X>f « nUl JUi ii ii 1 8 . 1 i 'i 'i Lr i<". son ¥ f

012345678 Time (s)

- True LOS delay

- e - MEDLL estimates PT(Diff2) estimates

Figure 15: One snapshot of delay estimated by MEDLL and PT(Diff2) algorithms. BPSK signal, BT = 8 MHz.

Simulation results for SinBOC(1,1) case are shown in Figures 13 and 14, for infinite and finite bandwidth, respectively.

As seen in Figures 13 and 14, the best RMSE performance for both SinBOC(1,1) is achieved by MEDLL and PT(Diff 2) approaches. However, MEDLL has quite poor MTLL performance (it tends to lose lock faster), thus the best tradeoff between RMSE and MTLL is achieved, by PT(Diff 2) and HRC algorithms. PT(TK) has poorer performance than PT(Diff 2) algorithm.

6.2. BPSKcase

For BPSK signals, similar parameters as for SinBOC(1,1) signal were used in the simulations. The only differences were a higher oversampling factor Ns = 16, for an increased accuracy (since the number of samples per chip is Ns for BPSK case, while, for SinBOC(1,1), it was 2Ns) and the successive path spacing of 1 chip (since the width of the ECF is 2 chips for BPSK). Also, the RMSE values are computed over the delay estimates which are at most half of the main lobe width apart from the true LOS estimate, which corresponds to 1 chip for BPSK case. The statistics were also done for Nrand = 8000 random realizations (each random realization has a length of NcNnc milliseconds), thus the best MTLL that can be achieved by our simulations is NrandNcNnc (here, this corresponds to 640 s).

A snapshot of estimated LOS delay versus the true LOS delay for two of the considered algorithms is shown in Figure 15 for BPSK signal and 8 MHz receiver bandwidth. RMSE and MTLL values for BPSK case are shown in Figures 16 and 17, for infinite and finite bandwidth case, respectively.

140 e 4.

120 100

Nakagami channel, number of paths: between 2 and 5, Nc = 20 ms, Nnc = 4, Ns = 16, init. del. err. = 0 chips

60 40 20

20 22 24 26 28 30 32 34 36 38 40 CNR

Nakagami channel, number of paths: between 2 and 5, Nc = 20 ms, Nnc = 4, Ns = 16, init. del. err. = 0 chips

140 140

20 22 24 26 28 30 32 34 36 38 40 CNR

- nEML

-*- HRC IELS -+- MEDLL - Diff2

-e- TK -<- MF

PT(Diff2) -*- PT(TK)

650 600 550 500

Nakagami channel, number ofpaths: between 2 and 5, Nc = 20 ms, Nnc = 4, Ns = 16, init. del. err. = 0 chips

250 200 150

- /> 'tf* / / / /

/ / / / / / / / /

/ t / / / / /

/' / / / . ./. .

// /' // / / / /

1 y / / / /

/ / / / /

20 22 24 26 28 30 32 34 36 38 40 CNR

- nEML

-x- HRC IELS -+- MEDLL - Diff2

-e- TK -<- MF

PT(Diff2) -*- PT(TK)

650 600 550 500 2 450

TLL 400

Nakagami channel, number of paths: between 2 and 5, Nc = 20 ms, Nnc = 4, Ns = 16, init. del. err. = 0 chips

350 300 250 200 150

20 22 24 26 28 30 32 34 36 38 40 CNR

nEML -X- HRC IELS -+- MEDLL - Diff2

-e- TK -O- MF

PT(Diff2) -*- PT(TK)

Figure 16: RMSE and MTLL for BPSK and infinite bandwidth.

nEML -x- HRC IELS -+- MEDLL - Diff2

-e- TK MF

PT(Diff2) -*- PT(TK)

Figure 17: RMSE and MTLL for BPSK and 8 MHz bandwidth (Butterworth filter).

Similar conclusions as for SinBOC (1,1) signals are also drawn from Figures 16 and 17, but this time PT(Diff2) outperforms MEDLL also in RMSE values. The differences between infinite bandwidth and limited bandwidth situations are quite small, which means that the algorithms work similarly well in both situations.

7. CONCLUSIONS

In this paper, novel peak tracking delay estimation algorithms have been proposed for Galileo and GPS signals. PT algorithms combine the feedback and feedforward delay estimators in order to achieve reduced RMSE delay error and

promising mean time to lose lock. Among all the considered algorithms, the best tradeoff between RMSE and MTLL was achieved via PT(Diff 2) algorithm, which decreased considerably the delay estimation error at moderate to high CNRs, while still preserving a better MTLL compared with other feedforward tracking approaches. We also presented an improved early-late-slope technique which outperforms the narrow correlator especially in the presence of short delay multipath, where the classical ELS was showing worse results. We have as well presented a reduced complexity implementation of a noncoherent MEDLL, where the phase information was searched for via statistical assumptions. Extensive simulation results in both limited and unlimited receiver bandwidth have been presented, including 9 feedback and feedforward delay tracking algorithms. We have also shown that at small CNRs (e.g., up to 25 dB-Hz for a coherent integration time of 20 milliseconds), narrow correlator is still the best choice among the considered algorithms. However, its performance is still far from accurate. Better results can be achieved via increasing CNRs (or, alternatively) increasing Nc, with a combined feedback-feedforward approach.

ACKNOWLEDGMENTS

This work was carried out in the project "Advanced Techniques for Personal Navigation (ATENA)" funded by the Finnish Funding Agency for Technology and Innovation (Tekes). This work has also been partially supported by the Academy of Finland.

REFERENCES

[1] E. D. Kaplan, Understanding Gps: Principles and Applications, Artech House, Boston, Mass, USA, 1996.

[2] E. Chatre, J. Swann, and D. Ludwig, "Galileo: benefits for location based services," Journal of Global Positioning Systems, vol. 2, no. 1, pp. 57-66, 2003.

[3] K. L. Kovach and K. L. Van Dyke, "GPS in ten years," in Proceedings of the 10th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION-GPS '97), vol. 2, pp. 1251-1259, Kansas City, Mo, USA, September 1997.

[4] G. W. Hein, J. Godet, J. L. Issler, J. C. Martin, T. Pratt, and R. Lucas, "Status of Galileo frequency and signal design," in CDROM Proceedings of the International Technical Meeting of the Institute of Navigation (ION-GPS '02), Portland, Ore, USA, September 2002.

[5] G. W. Hein, M. Irsigler, J. A. A. Rodriguez, and T. Pany, "Performance of Galileo L1 signal candidates," in Proceedings of the European Navigation Conference (ENC-GNSS '04), Rotterdam, The Netherlands, May 2004.

[6] M. K. Simon, J. K. Omura, R. A. Scholtz, and B. K. Levitt, Spread Spectrum Communication Handbook, McGraw-Hill, New York, NY, USA, 1994.

[7] E. R. Jativa and J. Vidal, "First arrival detection for positioning in mobile channels," in Proceedings of the 13th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC'02), vol. 4, pp. 1540-1544, Lisbon, Portugal, September 2002.

[8] A. Lakhzouri, E. S. Lohan, R. Hamila, and M. Rentors, "Extended Kalman filter channel estimation for line-of-sight detection in WCDMA mobile positioning," EURASIP Journal on

Applied Signal Processing, vol. 2003, no. 13, pp. 1268-1278, 2003.

[9] E. S. Lohan, Multipath delay estimators for fading channels with applications in CDMA receivers and mobile positioning, Ph.D. thesis, Tampere University of Technology, Tampere, Finland, October 2003.

[10] J. Vidal, M. Najar, and R. Jativa, "High resolution time-of-arrival detection for wireless positioning systems," in Proceedings of the 56th IEEE Vehicular Technology Conference (VTC'02), vol. 4, pp. 2283-2287, Vancouver, BC, Canada, September 2002.

[11] N. R. Yousef and A. H. Sayed, "Detection of fading overlapping multipath components for mobile-positioning systems," IEEE International Conference on Communications, vol. 10, pp. 3102-3106, 2001.

[12] D. D. Colclough and E. L. Titlebaum, "Delay-doppler POCS for specular multipath," in Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP '02), vol. 4, pp. 3940-3943, 2002.

[13] G. Fock, J. Baltersee, P. Schulz-Rittich, and H. Meyr, "Channel tracking for rake receivers in closely spaced multipath environments," IEEE Journal on Selected Areas in Communications, vol. 19, no. 12, pp. 2420-2431, 2001.

[14] Z. Kostic and G. Pavlovic, "Resolving subchip-spaced multi-path components in CDMA communication systems," IEEE Transactions on Vehicular Technology, vol. 48, no. 6, pp. 18031808, 1999.

[15] R. D. J. van Nee, "The multipath estimating delay lock loop," in Proceedings of the 2nd IEEE International Symposium on Spread Spectrum Techniques and Applications (ISSTA '92), pp. 39-42, Yokohama, Japan, November-December 1992.

[16] N. R. Yousef and A. H. Sayed, "A new adaptive estimation algorithm for wireless location findingsystems," in Proceedings of the 33rd Asilomar Conference on Signals, Systems, and Computers (ACSSC '99), vol. 1, pp. 491-495, Pacific Grove, Calif, USA, October 1999.

[17] P. Fine and W. Wilson, "Tracking algorithms for GPS offset carrier signals," in Proceedings of the National Technical Meeting of the Institute of Navigation (ION-NTM '99), San Diego, Calif, USA, January 1999.

[18] J. Baltersee, G. Fock, and P. Schulz-Rittich, "Adaptive code-tracking receiver for direct-sequence code division multiple access (CDMA) communications over multipath fading channels and method for signal processing in a Rake receiver," US Patent Application Publication, US 2001/0014114 A1 (Lucent Technologies), August 2001.

[19] R. Bischoff, R. Hab-Umbach, W. Schulz, and G. Heinrichs, "Employment of a multipath receiver structure in a combined GALILEO/UMTS receiver," in Proceedings of the 55th IEEE Vehicular Technology Conference (VTC'02), vol. 4, pp. 18441848, Birmingham, Ala, USA, May 2002.

[20] K.-C. Chen and L. D. Davisson, "Analysis of SCCL as a PN-code tracking loop," IEEE Transactions on Communications, vol. 42, no. 11, pp. 2942-2946, 1994.

[21] M. Laxton, "Analysis and simulation of a new code tracking loop for GPS multipath mitigation," M.S. thesis, Air Force Institute of Technology, Dayton, Ohio, USA, 1996.

[22] A. J. Van Dierendonck, P. Fenton, and T. J. Ford, "Theory and performance of narrow correlator spacing in a GPS receiver," Journal of the Institute of Navigation, vol. 39, no. 3, pp. 265283, 1992.

[23] M. Irsigler and B. Eissfeller, "Comparison of multipath mitigation techniques with consideration of future signal structures," in Proceedings of the International Technical Meeting of

the Institute of Navigation (ION-GPS/GNSS '03), pp. 25842592, Portland, Ore, USA, September 2003.

[24] A. McGraw and M. Braasch, "GNSS multipath mitigation using high resolution correlator concepts," in Proceedings of the National Technical Meeting of the Institute of Navigation (ION-NTM '99), pp. 333-342, San Diego, Calif, USA, January 1999.

[25] L. Garin and J.-M. Rousseau, "Enhanced strobe correlator multipath rejection for code and carrier," in Proceedings of the 10th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION-GPS '97), vol. 1, pp. 559-568, Kansas City, Mo, USA, September 1997.

[26] J. Jones, P. Fenton, and B. Smith, "Theory and performance of the pulse aperture correlator," Tech. Rep., NovAtel, Calgary, Alberta, Canada, Septemper 2004, http://www.novatel.com/ Documents/Papers/PAC.pdf.

[27] L. R. Weill, "Multipath mitigation—how good can it get with new signals?" GPS World, vol. 16, no. 6, pp. 106-113, 2003.

[28] R. Fante, "Unambiguous tracker for GPS binary-offset carrier signals," in Proceedings of the 59th ION National Technical Meeting, pp. 141-145, Albuquerque, NM, USA, June 2003.

[29] R. Fante, "Unambiguous first-order tracking loop M-Code," Tech. Rep. MTR 94B0000040, MITRE, Bedford, Mass, USA, July 2004.

[30] P. A. Bello and R. L. Fante, "Code tracking performance for novel unambiguous M-Code time discriminators," in Proceedings of the National Technical Meeting of the Institute of Navigation (ION-NTM '05), pp. 293-298, San Diego, Calif, USA, January 2005.

[31] M. Z. H. Bhuiyan, "Analyzing code tracking algorithms for galileo open service signal," M.S. thesis, Tampere University of Technology, Tampere, Finland, 2006.

[32] B. R. Townsend and P. Fenton, "A practical approach to the reduction ofpseudorange multipath errors in a L1 GPS receiver," in Proceedings of the 7th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION-GPS '94), vol. 1, pp. 143-148, Salt Lake City, Uyah, USA, September 1994.

[33] R. D. J. van Nee, J. Siereveld, P. Fenton, and B. R. Townsend, "Multipath estimating delay lock loop: approaching theoretical accuracy limits," in Proceedings of IEEE Position Location and Navigation Symposium (PLANS '94), pp. 246-251, Las Vegas, Nev, USA, April 1994.

[34] B. R. Townsend, R. D. J. van Nee, P. Fenton, and A. J. Van Dierendonck, "Performance evaluation of the multipath estimating delay lock loop," in Proceedings of the Annual National Technical Meeting of the Institute of Navigation (ION-NTM '95), pp. 277-283, Anaheim, Calif, USA, January 1995.

[35] C. Lee, S. Yoo, S. Yoon, and S. Y. Kim, "A novel multipath mitigation scheme based on slope differential of correlator output for Galileo systems," in Proceedings of the 8th International Conference Advanced Communication Technology (ICACT'06), vol. 2, pp. 1360-1363, Phoenix Park, Korea, February 2006.

[36] J. Joutsensalo, "Algorithms for delay estimation and tracking in CDMA," in Proceedings of the IEEE International Conference on Communications Montreal Towards the Knowledge Millennium (ICC '97), vol. 1, pp. 366-370, Montreal, Quebec, Canada, June 1997.

[37] J. Iinatti, Matched filter code acquisition employing a median filter in direct sequence spread-spectrum systems with jamming, Ph.D. thesis, University of Oulu, Oulu, Finland, 1997.

[38] E. S. Lohan, R. Hamila, A. Lakhzouri, and M. Renfors, "Highly efficient techniques for mitigating the effects of multipath

propagation in DS-CDMA delay estimation," IEEE Transactions on Wireless Communications, vol. 4, no. 1, pp. 149-162, 2005.

[39] R. Hamila, E. S. Lohan, and M. Renfors, "Subchip multi-path delay estimation for downlink WCDMA system based on Teager-Kaiser operator," IEEE Communications Letters, vol. 7, no. 1, pp. 1-3, 2003.

[40] M. Z. H. Bhuiyan, E. S. Lohan, and M. Renfors, "Peak tracking algorithm for Galileo-based positioning in multipath fading channels," in Proceedings of IEEE International Conference on Communications (ICC '07), pp. 5927-5932, Glasgow, Scotland, UK, June 2007.

[41] E. S. Lohan, A. Lakhzouri, and M. Renfors, "Binary-offset-carrier modulation techniques with applications in satellite navigation systems," Wireless Communications and Mobile Computing, vol. 7, no. 6, pp. 767-779, 2007.

[42] B. R. Townsend, P. Fenton, A. J. van Dierendonck, and R. D. J. van Nee, "L1 carrier phase multipath error reduction using MEDLL technology," in Proceedings of the 8th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION-GPS '95), vol. 2, pp. 1539-1544, 1995.

[43] J. F. Kaiser, "On a simple algorithm to calculate the 'energy' of a signal," in Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP '90), vol. 1, pp. 381-384, Albuquerque, NM, USA, April 1990.

[44] R. Hamila, E. S. Lohan, and M. Renfors, "Novel technique for multipath delay estimation in GPS receivers," in Proceedings of International Conference on Third Generation Wireless and Beyond (3GWireless '01), pp. 993-998, San Francisco, Calif, USA, June 2001.

[45] R. Hamila, Synchronization and multipath delay estimation algorithms for digital receivers, Ph.D. thesis, Tampere University of Technology, Tampere, Finland, June 2002.