Professional Documents
Culture Documents
Multipath Mitigation Techniques Suitable For Low Cost GNSS Receivers
Multipath Mitigation Techniques Suitable For Low Cost GNSS Receivers
Jury
September 2008
Acknowledgements
I would like to thank Deimos Engenharia for giving me the opportunity of training in dynamic and
enterprising company, while developing this exciting subject. I, also, thank everyone who work there,
for their politeness and for the excellent work environment. My special thanks to Eng. João Silva for
his time, availability, technical feedback, suggestions and good moods.
No less important, I am very grateful to my advisor at Instituto Superior Técnico, Prof. Fernando
Nunes, for his time, availability, and priceless corrections and suggestions for this work.
To all my teachers, without whom I would not be the person that I am today, I sincerely thank them.
I am, also, very thankful to all my friends and colleagues at Salesianos de Manique, Mem Martins and
Instituto Superior Técnico. I write here a special word to Catarina and Paulo, not only for their good
friendship but also for helping me achieving my goals several times.
Finally, but not least, I am deeply thankful to my parents and sister, who I owe the most. It is very
difficult, if not impossible, to describe in words my acknowledges for their love, support and
comprehension. To them I dedicate this work.
I
Abstract
Today, Global Navigation Satellite Systems (GNSS) have become available to civilian population.
Because of that, the market of low cost GNSS receivers is very active.
There are several limitations to the use of GNSS receivers: signal delays in the ionosphere, receiver's
clock bias, multipath, etc. Nevertheless, the effect of multipath is very significant, specially in urban
environments, where there are many and large building surfaces that can reflect GNSS signals. So, it
is required low cost receivers that are capable to mitigate the multipath effect in difficult situations, like
urban navigation. Thereby, it is necessary to find multipath mitigation techniques, suitable for use in
low cost GNSS receivers.
In the search for techniques capable of meeting those requirements, several techniques were found:
the Narrow Correlator, the High Resolution Correlator (HRC), several Code Correlation Reference
Waveforms (CCRWs) and a Teager Kaiser operator based technique. The different techniques were
initially analysed using the multipath error envelopes and the steady-state noise. For more
representative results, it was developed a GNSS receiver simulator, using Simulink and GRANADA
FCM Blockset.
From the tested techniques, it is one of the CCRWs that is considered the more suitable for
implementation in low cost receiver.
KEYWORDS: GNSS, Multipath Mitigation, Narrow Correlator, High Resolution Correlator, Code
Correlation Reference Waveforms, Teager-Kaiser.
II
Resumo
Hoje em dia, os Sistemas Globais de Navegação por Satélite (GNSSs) tornaram-se acessíveis à
população em geral. Actualmente, o mercado dos receptores de baixo custo é bastante activo.
Existem várias limitações ao uso dos receptores de GNSS: atrasos dos sinais na ionoesfera, erros de
relógio do receptor, multipercurso, etc. No entanto, o multipercurso destaca-se, sobretudo para
ambientes urbanos, onde existem inúmeras e grandes superficies reflectoras como edifícios. É, então,
exigido que receptores de baixo custo sejam capazes de cumprir requisitos exigentes como a
navegação urbana. Torna-se então necessário encontrar técnicas eficientes a mitigar o efeito do multi-
percurso mas que cuja implementação seja possível em receptor de baixo custo.
Iniciou-se então uma pesquisa por técnicas capazes de cumprir os requisitos e encontraram-se
algumas técnicas: Narrow Correlator, High Resolution Correlator (HRC), algumas Code Correlation
Reference Waveforms (CCRWs) e ainda um técnica baseada no operador Teager Kaiser. As técnicas
foram inicialmente analisadas tendo em conta as envolventes de erro na presença de multipercurso e
o ruído em regime estacionário.
Para resultados mais fidedignos, foi implementado um simulador de receptor GNSS, utilizando o
software Simulink e GRANADA FCM blockset. O receptor implementado fez uso de ajudas em cadeia
fechada.
Concluiu-se que das técnicas utilizadas a que apresenta um maior potencial para um receptor de
baixo custo é uma das CCRWs.
Palavras chave: GNSS, Mitigação de multipercuso, Narrow Correlator, High Resolution Correlator,
Code Correlation Reference Waveform, Teager-Kaiser.
III
Table of Contents
Chapter 1 - Introduction.........................................................................................................................1
1.1 Motivation.......................................................................................................................................1
1.2 Research Objectives......................................................................................................................1
1.3 Thesis outline.................................................................................................................................2
Chapter 3 - Receiver.............................................................................................................................14
3.1 Receiver Architecture Overview..................................................................................................14
3.2 Baseband Signal Processing.......................................................................................................15
3.2.1 Aided Tracking Loops..........................................................................................................19
3.2.1.1 Aided PLL....................................................................................................................19
3.2.1.2 Aided DLL....................................................................................................................19
III
5.4 Teager-Kaiser Operator...............................................................................................................52
References.............................................................................................................................................79
IV
Index of Tables
Table 2.1: Main technical characteristics of GPS L1, GPS L1C and Galileo E1 OS signals [7].............13
Table 6.1: Multipath mitigation techniques selected for simulation.........................................................64
Table 6.2: Multipath Model Parameters..................................................................................................67
Table 7.1: Tested conditions....................................................................................................................71
Table 7.2: Computational complexity......................................................................................................76
Table C.1: BPSK signals and bandwidth BWTc = 5..................................................................................85
Table C.2: BOC(1,1) signals and bandwidth BWTc = 5............................................................................85
Table C.3: CBOC(6,1,1/11) signals and bandwidth BWTc = 5..................................................................86
Table C.4: BPSK signals and bandwidth BWTc = 12................................................................................86
Table C.5: BOC(1,1) signals and bandwidth BWTc = 12. ........................................................................86
Table C.6: CBOC(6,1,1/11) signals and bandwidth BWTc = 12................................................................87
V
Illustration Index
Figure 2.1: Baseline GPS Satellite Constellation.....................................................................................3
Figure 2.2: The principle of satellite navigation........................................................................................4
Figure 2.3: Indirect distance determination...............................................................................................5
Figure 2.4: Power Spectral Density of BPSK, BOC(1,1) and MBOC(6,1,1/11) signals............................9
Figure 2.5: Example of TMBOC (6,1,p) Sub-carrier...............................................................................10
Figure 2.6: Possible CBOC(6,1,1/11) sub-carriers..................................................................................11
Figure 2.7: Auto-correlation functions for unfiltered BPSK, BOC(1,1) and CBOC(6,1,1/11) signals......11
Figure 2.8: GPS and Galileo frequency plan..........................................................................................12
Figure 3.1: A conceptual view of a GNSS receiver.................................................................................15
Figure 3.2: Typical diagram of the receiver code and carrier loops........................................................15
Figure 3.3: Code discriminator outputs for BOC(1,1) with unlimited pre-correlation bandwidth............18
Figure 3.4: Carrier discriminator output for the arc tangent discriminator..............................................19
Figure 4.1: Possible multipath situation..................................................................................................20
Figure 4.2: Normalized in-phase prompt correlator for BOC signals, with α = 0.5 and τ = 0.4Tc.........22
Figure 4.3: E-L power code discriminator outputs for BOC(n,n).............................................................22
Figure 4.4: Multipath error envelopes for the Narrow Correlator and BOC signals...............................24
Figure 5.1: Code discriminator outputs and multipath error envelopes for the NELP discriminator......27
Figure 5.2: Multipath error envelopes for the NELP discriminator and normalized bandwidth BWTc = 5
and BWTc = 12 .........................................................................................................................................28
Figure 5.3: Normalized code error variances for the NELP discriminator..............................................29
Figure 5.4: Multipath error envelopes as function of E-L spacing and attenuation coefficient, for the
NELP discriminator..................................................................................................................................30
Figure 5.5: HRC code discriminator response for BPSK signals for several λ values...........................31
Figure 5.6: Code discriminator outputs and multipath error envelope for HRC, with unlimited pre-
correlation bandwidth and λ = 2..............................................................................................................32
Figure 5.7: Multipath error envelopes for the HRC, with normalized bandwidth BWTc = 5 and BWTc=12 .
................................................................................................................................................................32
Figure 5.8: Normalized code error variances for the HRC.....................................................................33
Figure 5.9: Multipath error envelopes as function of E-L spacing and attenuation coefficient, for the
HRC discriminator with λ=2....................................................................................................................34
Figure 5.10: Block diagram of the receiver code and phase loops using the strobe correlator.............35
Figure 5.11: CCRW waveforms for a BPSK signal.................................................................................37
Figure 5.12: W1 CCRW pulse.................................................................................................................37
Figure 5.13: Code discriminator outputs and multipath error envelopes for the RECT CCRW ...........38
Figure 5.14: Code discriminator outputs and multipath error envelopes for the New RECT CCRW.....39
Figure 5.15: Normalized code error variances versus pre-correlation bandwidth RECT CCRW...........40
VI
Figure 5.16: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for RECT CCRW with BPSK signals and for New RECT CCRW with BOC and CBOC signals............40
Figure 5.17: W1 CCRW pulse.................................................................................................................41
Figure 5.18: Code discriminator outputs and multipath error envelopes for W1 CCRW........................42
Figure 5.19: Multipath error envelope for several signals for the W1 CCRW and pre correlation
bandwidth BWTc = 5 and BWTc = 12 .........................................................................................................42
Figure 5.20: Code discriminator outputs and multipath error envelopes for the New W1 CCRW..........43
Figure 5.21: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for W1 CCRW with BPSK signals and for New W1 CCRW with BOC and CBOC signals....................43
Figure 5.22: Normalized code error variances for the W1 CCRW ........................................................44
Figure 5.23: Code discriminators outputs and multipath error envelopes for W2 CCRW......................45
Figure 5.24: Multipath error envelopes for the W2 CCRW and pre correlation bandwidth BWTc = 5 and
BWTc = 12.................................................................................................................................................46
Figure 5.25: Normalized code error variances for the W2 CCRW..........................................................46
Figure 5.26: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for W2 CCRW..........................................................................................................................................47
Figure 5.27: W3 CCRW pulse.................................................................................................................47
Figure 5.28: Code discriminator output for several signals and multipath error envelopes for several
signals for the W3 CCRW.......................................................................................................................48
Figure 5.29: Multipath error envelopes for the W3 CCRW and pre correlation bandwidth BWTc = 5 and
BWTc = 12.................................................................................................................................................48
Figure 5.30: Normalized code error variances versus pre-correlation bandwidth and CCRW pulse
width, for W3 CCRW and several signal modulations: BPSK (top), BOC(1,1) (bottom left) and
CBOC(6,1,1/11) (bottom right)................................................................................................................49
Figure 5.31: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for W3 CCRW..........................................................................................................................................49
Figure 5.32: W4 CCRW pulse.................................................................................................................50
Figure 5.33: Code discriminator output for several signals (left) and multipath error envelopes for
several signals (right) for the W4 CCRW................................................................................................50
Figure 5.34: Multipath error envelopes for the W4 CCRW and pre correlation bandwidth BWTc = 5 and
BWTc = 12.................................................................................................................................................51
Figure 5.35: Multipath error envelopes as function of CCRW pulse duration and attenuation coefficient,
for W4 CCRW..........................................................................................................................................51
Figure 5.36: Normalized code error variances for the W4 CCRW..........................................................52
Figure 5.37: TK operator output for BPSK, BOC(1,1) and CBOC(6,1,1/11) signals..............................53
Figure 5.38: TK operator output for BOC(1,1) for a LOS signal and one reflect ray with different delays
relative the LOS signal............................................................................................................................54
Figure 5.39: Code discriminator response (left) and multipath error envelopes (right) for several signals
and unlimited pre-correlation bandwidth.................................................................................................56
VII
Figure 5.40: Multipath error envelopes for several signals BWTc = 5 and BWTc =12 ...............................56
Figure 6.1: Typical signal processing chain for the tracking of GNSS signals [35]................................58
Figure 6.2: Possible implementation of a multi-channel GNSS receiver's tracking loops [35]...............58
Figure 6.3: Simulink block diagram of the implement receiver simulator...............................................63
Figure 6.4: Receiver trajectory................................................................................................................64
Figure 6.5: Receiver dynamics...............................................................................................................65
Figure 6.6: Echoes amplitudes versus echoes delays, for the different scenarios. ..............................66
Figure 7.1: Multipath error envelopes for BPSK signals, for the different techniques and bandwidths. 68
Figure 7.2: Multipath error envelopes for BOC(1,1) signals, for the different techniques and
bandwidths..............................................................................................................................................69
Figure 7.3: Multipath error envelopes for CBOC(6,1,1/11) signals, for the different techniques and
bandwidths..............................................................................................................................................69
Figure 7.4: Normalized code error variances for BPSK signals,for the different techniques and
bandwidths..............................................................................................................................................70
Figure 7.5: Normalized code error variances for BOC(1,1) signals, for the different techniques and
bandwidths..............................................................................................................................................70
Figure 7.6: Normalized code error variances for CBOC(6,1,1/11) signals for the different techniques
and bandwidths.......................................................................................................................................70
Figure 7.7: Code tracking error for aided PLL versus not aided PLL without multipath (left), and with
multipath..................................................................................................................................................71
Figure 7.8: Code tracking error mean and variance (average of the eight scenarios) for normalized
bandwidth BWTc = 5, different techniques and modulations....................................................................73
Figure 7.9: Code tracking error mean and variance (average of the eight scenarios) for normalized
bandwidth BWTc = 12, different techniques and modulations..................................................................74
Figure 7.10: Code tracking error mean and variance (average of the four worst scenarios) for
normalized bandwidth BWTc = 5, different techniques and modulations. ...............................................74
Figure 7.11: Code tracking error mean and variance (average of the four worst scenarios) for
normalized bandwidth BWTc = 12, different techniques and modulations...............................................75
Figure A.1: Signals a(t) and b(t)..............................................................................................................82
Figure A.2: Cross-correlation function....................................................................................................82
VIII
List of Acronyms
E Early
FT Fourier Transform
IF Intermediate Frequency
L Late
LOS Line-of-Sight
OS Open Service
IX
P Prompt
RF Radio Frequency
TK Teager-Kaiser
VE Very Early
VL Very Late
X
List of Symbols
∗ convolution
Π (t ) rectangular pulse
Λ (t ) triangular pulse
c speed of light
ρ pseudorange
b bias
A(t ) signal amplitude
D (t ) navigation message
C (t ) spreading code
Tc Chip duration
BW pre-correlation bandwidth
ω0 Carrier central frequency
θ0 Initial carrier Phase
ωd offset frequency due to the Doppler effect
ωe frequency error
N, n noise
σ2 variance
∆ early-late spacing
T integration period
ε code tracking error
d (ε ) code discriminator
W (t ) CCRW
C N0 carrier-to-noise density
α attenuation coefficient
XI
τ Reflected ray delay relative to the LOS
φ carrier phase excess
BDLL equivalent code loop bandwidth
XII
Chapter 1
Introduction
1.1 Motivation
Global Navigation Satellite System (GNSS) is defined as satellite navigation systems (SNS) capable of
providing position, speed and time (PVT) with global coverage. The original motivations behind GNSS
were military applications (e.g. precise location of forces on the field, weaponry guidance, etc.).
However, today, GNSS cover a wider range of applications, like transportation systems, agriculture
and fisheries, several sciences or leisure applications.
Currently, the location of persons and vehicles has become more and more important and a large
number of GNSS receivers were made available for that purpose. However, GNSS application in
urban scenarios is limited by low satellites' visibility, signal interference and multipath. In fact, today,
multipath is one of the dominant error sources in GNSS applications [1]. Thereby, it is necessary to
search for suitable techniques capable of mitigating the multipath effect.
● To study the GNSS principles, some navigation signals available for civilian use, typical GNSS
receiver architecture and the effect of multipath;
● To investigate different multipath mitigation techniques: special attention will be given to the
correlation based techniques;
● To evaluate several multipath mitigation techniques: this analysis will be done comparing
simulation results obtaining for several multipath scenarios;
● Identify the multipath mitigation techniques suitable for low cost GNSS receivers.
1
1.3 Thesis outline
This thesis will be composed of eight chapters.
Chapter 2 will explain the principles behind GNSS and present the navigation signals considered in
the thesis.
In Chapter 3, an overview of a GNSS receiver architecture will be presented. In this chapter the
receiver's baseband processing will be described and the concepts of code delay and carrier phase
loops will be introduced. Chapter 4 discusses multipath and its effects on the tracking loops.
Chapter 5 provides a description of the multipath mitigation techniques considered in this thesis. The
concepts of Narrow Correlator, High Resolution Correlator, different Code Correlation Reference
Waveforms (CCRWs) and the Teager-Kaiser operator are explained in this chapter.
Chapter 6 will describe the simulation set up: the used software, the workarounds required, the
correlated noise generator, the multipath scenarios considered and the simulation plan. In Chapter 7,
the simulation results will be presented and analysed.
Finally, in Chapter 8 will summarize the work described in this thesis, the major conclusions will be
drawn and future work guidelines and proposals will be also presented.
2
Chapter 2
Basic Concepts
Beside GPS, the Russian GLONASS (Global'naya Navigatsionnaya Sputnikovaya Sistema) is the
other active GNSS. Since the collapse of the Soviet Union, GLONASS has fallen into disrepair and,
currently, it has only partial availability, but it is planned to restore it to full global availability by 2010
with the collaboration of India.
3
In the future, new GNSS are scheduled to become operational. Europe’s own GNSS system, Galileo ,
is currently being developed and it is expected to be compatible with the modernized GPS [5] and
working from 2013 [6]. Future receivers should be able to combine both modernized GPS and Galileo
signals to increase overall system performance. The China's Compass is the other satellite navigation
system planned to have a global coverage.
where ρ i is the pseudorange between the receiver and the ith satellite, [x y z ] is the receiver
position, [xi yi zi ] is the ith satellite position and b depends on the user receiver clock bias.
The receiver measurements are called pseudorange because they include the clock offset. The
pseudorange, ρ , between the receiver and a satellite is directly proportional to the signal propagation
time:
ρ = c.∆t − b (2.2)
where c is the speed of light and ∆t = tt − tr x x is the propagation time defined by the difference
between the time of transmission and the time of reception (as illustrated in Figure 2.3). The range
measured by the receiver is affected by several error sources: receiver's clock errors, ionosphere
delays, multipath,etc. [4].
4
Figure 2.3: Indirect distance determination.
2.3 Signals
The simplest navigation signal component is named channel [7]. A navigation signal component is one
of the spreading sequences modulated onto one common carrier. Each navigation signal component
has its own spreading code and can carry its own data modulation.
where:
● x (t ) is the sub-carrier;
● cos(ω t + θ 0 ) is the carrier, a Radio Frequency (RF) sinusoidal with a known frequency ω and
There are two type of channels: data and pilot. In a data channel, the navigation message, D (t ) ,
contains information, for instance like precise orbits of the satellites (ephemeris) and the signal's time
The spreading code of a signals is a unique Pseudo Random Noise (PRN) assigned to one only
satellite. It is named spreading code because of the wider bandwidth occupied by the signal after
modulation by the high-rate PRN waveform [8]. The minimum interval of time between transitions in
the spreading code is commonly referred to as the chip duration, Tc , and the portion of the spreading
code over one chip duration is named chip. PRN sequences approximate the properties of truly
random sequences:
N chip
1 1, n = 0
N chip
∑C C
k =1
k k +n =
0 n ≠ 0
(2.4)
5
where N chip is the period in chips ( Tc ) and Ck = C (kTc ) , and
N chip
1
N chip
∑ C C′
k =1
k k +n = 0, ∀n (2.5)
The product between the spreading code and the sub-carrier, C (t )x(t ) , is known as spread spectrum
or spread sequence. For that reason, the signal given by (2.3) is named Direct Sequence Spread
Spectrum (DSSS) [8].
The use of DSSS signals in satellite navigation has three main reasons [8]:
1. The spreading code introduces frequent phase transitions in the signal. These transitions help
the receiver to make precise range measurements.
2. The use of different PRN sequences allows multiple signals, from multiple satellites, to be
transmitted simultaneously and with the same RF carrier. Then, these signals can be
distinguished, based on their different codes. In other words, it allows Code Division Multiple
Access (CDMA).
2.3.1 Modulations
There are several modulations employed by GNSSs. In, this thesis only the modulations described in
sub sub sections 2.3.1.1 to 2.3.1.3 will be considered.
N chip −1
t − nTc
sBPSK ( t ) = ∑ Cn Π , (2.6)
n =0 Tc
where N chip is number of chips of the spreading code period, Cn = C (nTc ) is the code sign for the nth
chip and
t 1, t ≤ T 2
Π =
T 0, otherwise
N chip −1
S BPSK ( f ) = ∑C
n=0
n Tc sinc( f Tc )e −i 2T π f n .
c
(2.7)
6
with sinc(t ) = sin(π t ) π t .
+∞
Rs (ε ) = s(τ ) ∗ s( −τ ) = ∫ s(t )s(t −ε )dt ,
−∞
(2.8)
where ∗ denotes convolution. And, in the frequency domain, the FT of the ACF will be [9]
GS ( f ) = S ( f ) S ( − f ) (2.9)
Thereby, from (2.7) and (2.9), the ACF of a BPSK signal is given by:
N chip −1 N chip −1
GBPSK ( f ) = ∑ ∑T C
n =0 k =0
c
2
n Ck sinc 2 ( f Tc )e − i 2T π f ( n − k )
c
(2.10)
N chip
Let Cl′ = ∑C n Cmod (n − l , N ) , with l = n − k and where mod(n − l , N chip ) is the circular chip operator. Now
chip
n =0
N chip −1
GBPSK ( f ) = ∑T C′ sinc ( f T )e
c
l = − N chip +1
2
l
2
c
− i 2 Tc π f l
(2.11)
If l > 0 then Cl′ ≈ 0 and for l = 0 then C0′ = N chip . Thereby, applying the Inverse FT (IFT) to (2.11), the
ACF of a BPSK signal will be:
ε
RBPSK (ε ) = N chipTc Λ (2.12)
Tc
where
t 1 − t T , t < T
Λ =
T 0, otherwise
by the square-wave subcarrier, B(t ) = sign[sin (2πf s t )] to obtain X BOC (t ) = B(t )C (t ) . The chip rate and the
subcarrier frequency are given, respectively, by f c = 1 Tc = nf g and f s = mf g , where m and n are two
A Binary Offset Carrier (BOC(pn,n)) signal can be defined BOC(pn,n) signal, where 2p is a positive
integer, can be written as:
7
N chip −1
s BOC (t ) = ∑C
n =0
n x BOC (t − n ) (2.13)
where N chip is the number of chips per code period, Cn is the spreading code sign for the nth chip and
2p
t − lTc
xBOC ( t ) = ∑ (−1) l +1
Π .
l =1 2 pTc
N chip
X BOC ( f ) = ∑C Xn =1
n BOC ( f )e −i 2T π fn
c
(2.15)
2R
X BOC ( f ) = ∑ 2 pT ( −1)
l =1
c
l +1
sinc(2 pTc f )e− iT π f l c p
(2.16)
N chip N chip
GBOC ( f ) = X ( f ) X ( − f ) = ∑ ∑ C C X ( f ) X ( − f )e
n =1 k =1
n k
− i 2π f ( n + k )
N chip −1
= ∑ C X ( f ) X ( − f )e
k =1− N chip
l
' − i 2π f l
= N chip X ( f ) X ( − f ) (2.17)
2p 2p
= N chip ∑
l =1
2 pTc ( −1) l +1 sinc(2 pTc f )e− iT π f l c p
∑ 2 pT ( −1)
m =1
c
m +1
sinc(− 2 pTc f )eiT π f m
c p
2p 2p
= N chip (2 pTc ) sinc (2 pTc f )
2 2
∑ (−1)
l =1
l +1
e − iπ Tc f l p
∑ ( −1)
m =1
m +1
eiT π f m
c p
There so, after apply the IFT, the ACF in time domain will be:
ε 2 p −1
→ RBOC (ε ) = N chip 2 pTc Λ
GBOC ( f ) TF
−1
(2 p − m )(−1)m e−iT π ε m
2 pT m = −2 p +1 ∑ c p
(2.18)
chip
A BPSK signal can be seen as (2.13) with p = 0.5, so (2.12) is a particular case of (2.18) with p = 0.5.
It can be shown that for BOC(pn,n) with p integer the ACF is given by [10]:
k +1 1 ε
(
( −1) − k + 2kp + k − p − (4 p − 2k + 1) , ε < Tc
2
)
RBOC (ε ) = p Tc
(2.19)
0, otherwise
8
where k = ceil (2 p ε Tc ) , with the ceiling function, y = ceil (x ) , denoting the smallest integer such that
2
πf πf
sin sin
2 f s f c , 2 fs
GBOC ( f ) = f c = n even. (2.20)
πf cos πf fc
2f
s
1 10
GMBOC ( 6,1,1/11) ( f ) = GBOC ( 6,1) ( f ) + GBOC (1,1) ( f ) (2.21)
11 11
In Figure 2.4, the MBOC(6,1,1/11) normalized PSD is compared to the BPSK and BOC(1,1)
normalized PSDs. Compared to the BOC(1,1) PSD, in the MBOC(6,1,1/11) PSD is evident the
increased power at the frequency shifted about 6MHz from the central frequency, due to the presence
of the BOC(6,1) component. However for bandwidths narrower than about 5 MHz the BOC(1,1) and
MBOC(6,1,1/11) PSDs are very similar. Because of that, it is expected that the MBOC(6,1,1/11)
behaves similarly to the BOC(1,1) for bandwidths narrower than about 5 MHz.
0
BPSK
-5 BOC(1,1)
CBOC(6,1,1/11)
power spectral density, dB/Mhz
-10
-15
-20
-25
-30
-35
-40
-20 -15 -10 -5 0 5 10 15 20
frequency, Mhz
Figure 2.4: Power Spectral Density of BPSK, BOC(1,1) and MBOC(6,1,1/11) signals
There are different ways to generate a MBOC signal. Two possible solution are Time MBOC (TMBOC)
and Complex BOC (CBOC).
9
The TMBOC(6,1,4/33) is characterized by using a binary sub-carrier component that results from the
time-multiplexing of the BOC(1,1) and BOC(6,1) sub-carriers according to a deterministic pattern [13].
The TMBOC(6,1,4/33) sub-carrier is defined as [12]
x BOC (1,1) if t ∈ S1
xTMBOC ( 6,1, 4 / 33) (t ) = (2.22)
x BOC ( 6,1) if t ∈ S2
where xBOC (1,1) and xBOC (1,1) are respectively BOC(1,1) and BOC(6,1) sub-carriers and the S1 and S 2
are the union of the segments of time when the BOC(1,1) and the BOC(6,1) sub-carriers are used,
respectively. S1 and S 2 are chosen so that 4/33 of the signal total duration will be assigned to the
BOC(6,1) sub-carrier and the remaining time to the BOC(1,1) sub-carrier. Figure 2.5 shows a possible
portion of a TMBOC sub-carrier.
29 4
RCBOC ( 6,1,1 / 11) (ε ) = RBOC (1,1) (ε ) + RBOC ( 6,1) (ε ) (2.23)
33 33
-1
0 1 2 3 4 5 6
time, Tc
A CBOC(6,1,1/11) signal uses four-level sub-carrier formed by the weighted sum of BOC(1,1) and
BOC(6,1) signals and is given by:
10 1
sCBOC ( 6,1,1/11) (t ) = C (t ). xBOC (1,1) ( t ) ± xBOC ( 6,1) ( t ) (2.24)
11 11
where xBOC (1,1) ( t ) and xBOC ( 6,1) ( t ) are the sub-carrier of BOC(1,1) and BOC(6,1), respectively. The two
possible sub-carriers of (2.24) are plotted in Figure 2.6.
10
1.5 1.5
1 1
0.5 0.5
0 0
-0.5 -0.5
-1 -1
-1.5 -1.5
0 0.5 1 0 0.5 1
time, Tc time, Tc
10 1
RCBOC ( 6,1,1 / 11) (ε ) =
11
RBOC (1,1) (ε ) +
11
[
RBOC ( 6,1) (ε ) ± RBOC (1,1) BOC ( 6,1) (ε ) + RBOC ( 6,1) BOC (1,1) (ε ) ] (2.25)
Let a (t ) = Π[t Ta ] and b( t ) = Π[t Tb ] stand for two unity rectangular pulses of duration Ta = 2 p1Tchip and
Tb = 2 p2Tchip . The cross-correlation between two BOC signals can be written as:
N chip −1 2 p −1 1 l N 2 p −1
chip −1
l 2
RBOC ( p n , n ) BOC ( p n , n ) (ε ) = ∑ Cn ∑
( −1) l a t −
2 p1Tchip n = 0
Cn
∑
( −1) l b t − ε − ∑
2 p2Tchip
(2.26)
n = 0
1 2
l =0 l =0
Applying (A.1):
p1 + p 2 −1
l
RBOC ( p n , n ) BOC ( p n , n ) (ε ) =
1 2 ∑ RAB ε −
( p + p )T
(2.27)
(
l = − p1 + p 2 −1 ) 1 2 chip
Figure 2.7 shows the auto-correlation function for BPSK, BOC(1,1) and CBOC(6,1,1/11). It is possible
to see that the CBOC(6,1,1/11) curve is not too different from the BOC(1,1) curve, confirming the
similarities between the power spectrum of the two signals. In Figure 2.4, however, the sharper peak
of the CBOC signal will have benefits in the code tracking accuracy.
1
BPSK
BOC(1,1)
CBOC(6,1,1/11)
0.5
R (ε)
X
-0.5
-1.5 -1 -0.5 0 0.5 1 1.5
ε/Tc
Figure 2.7: Auto-correlation functions for unfiltered BPSK, BOC(1,1) and CBOC(6,1,1/11) signals.
11
2.3.2 Considered Signals
There are several GNSS signals currently available or planned for the future. GNSS signals are
divided by bands, as Figure 2.8 shows for the case of GPS and Galileo [7]. However, as this thesis
scope only covers low cost civilian GNSS receivers, the signal considered must be freely worldwide
available for civil use. Because of that, three signals will be considered: GPS L1, Galileo E1 Open
Service (OS) and GPS L1 Civil (L1C).
sL1 ( t ) = { 2P C/A }
x(t ) D(t ) + 2 PY 1 y (t ) D(t ) cos(ω 0t + θ 0 ) (2.28)
where PC / A and PY 1 are the signal powers for signals carrying C/A-code and P(Y)-codes and x and y
are the Coarse / Acquisition (C/A) and P(Y)-code sequences assigned to a unique satellite; D
denotes the navigation data bit stream; ω 0 = 2π f L1 are the carrier frequencies corresponding to L1
The channel carrying P(Y)-code is encrypted and restricted for military use; so from now on, the focus
in legacy GPS signals will be on the L1 signal carrying C/A-code and which uses a BPSK modulation.
1
sL1C (t ) = {eL1C − I (t )d L1C − I (t ) xBOC (1,1) (t ) + eL1C − Q (t ) xTMBOC ( 6,1, 4 / 33) ( t )} cos(ω 0t + θ 0 ) (2.29)
2
where eL1C − I (t ) and eL1C −Q ( t ) are the data and pilot spreading sequences respectively, d L1C − I ( t ) is the
GPS L1C navigation message, and xBOC (1,1) ( t ) and xTMBOC ( 6,1, 4 / 33) ( t ) are the BOC(1,1) and
TMBOC(6,1,4/33) sub-carriers respectively.
12
The selected GPS implementation of MBOC places 75% of the total power on the pilot channel and
25% on the data channel. Thereby, the PSD of the signal sL1C ( t ) will be equal to the PSD of a
MBOC(6,1,1/11) signal [5], [13].
1
sE 1C (t ) = eE1− B ( t ) d E 1− B ( t )[Px(t ) + Qy (t )] − eE 1− C [Px( t ) − Qy (t )] cos(ω 0t + θ 0 ) (2.30)
2
where eE 1− B (t ) and eE 1−C (t ) are the data and pilot spreading sequences respectively, d E 1− B (t ) is the
Galileo E1-B navigation message, and x (t ) and y (t ) are the sine-BOC(1,1) and sine-BOC(6,1) sub-
From (2.30) it can be noted that the data and pilot are in anti-phase, with respect to the BOC(6,1)
component.
Table 2.1 summarizes the main technical characteristics of the signals considered in this thesis.
Signal
C/A I Q B C
Component
Component
- 25% 75% 50% 50%
power
RF carrier
1575.42 MHz
frequency
PRN code
1024 10230 4092
length
Spreading
BPSK BOC(1,1) TMBOC(6,1,4/33) CBOC(6,1,1/11)
Modulation
Table 2.1: Main technical characteristics of GPS L1 [4], GPS L1C [13] and Galileo E1 OS signals [7].
13
Chapter 3
Receiver
Chapters 2 gave a first preview of GNSS systems and the signals considered in this thesis. This
chapter will now address to the receiver operation.
● to decode the navigation message in order to determine the satellite position, velocity, and
clock parameters;
● Antenna
The signals are gathered by the antenna. Several antenna types can be used, however, usually, the
antenna is right-hand circularly polarized, to match the incoming signals and reject reflected signals,
and the pattern is hemispherical, to allow tracking of satellites from zenith almost down to the horizon
for all azimuths [14].
● Front End
The Front End is responsible for RF and all the intermediate frequency (IF) signal processing: the
signal received by the antenna is filtered, amplified and down converted to baseband or near
baseband. The final conversion to baseband involves converting the (IF) signal to the in-phase (I) and
quadrature (Q) components of the signal envelope [14].
● Tracking Loops
Two loops per each receiver's channel fit in this block: the Delay Lock Loop (DLL) and the Phase Lock
Loop (PLL). The DLL is responsible to track the code delay, while the PLL is responsible to track the
14
carrier phase. The code delay and carrier phase tracking loops will be analysed with more detail in the
next section. When both the code delay and the carrier phase loops are locked, the navigation
message can be extracted from the received signal [14].
● Navigation Processing
This block is responsible to provide the PVT solution. Normally it relies on the pseudorange, rate
measurements and navigation message to solve the navigation equation [14], defined in (2.1).
^ ^
cos φ(t) sin φ(t) IE
I&D
cos(ω 0 t) IP
I&D
y i (t) z i (t)
IL
I&D
Phase Code d(ε)
r(t)
Rotation QE Discriminator
I&D
yq (t)
QP
I&D
sin(ω 0 t) zq (t)
QL
I&D
Signal
L P E
Generator
Figure 3.2: Typical diagram of the receiver code and carrier loops.
It is assumed that the received signal is given by r( t ) = s(t ) + n(t ) , where n(t ) is Gaussian noise and
s(t ) is the navigation signal given by
15
~
s( t ) = AX (t ) D( t ) cos[(ω0 + ωd )t + θ 0 ], (3.1)
~
where A depends on the power s(t ) , X (t ) is the filtered spread sequence, D(t ) is the navigation
data, ω0 is the nominal carrier frequency, ωd is an offset frequency due to the Doppler effect and
~
The filtered spread sequence can be defined as X (t ) = X (t ) ∗ h( t ) , where h(t ) is the impulse response
of the receiver's input filter. Considering a raised-cosine filter with bandwidth BW and roll-off factor
0 ≤ ξ ≤ 1 , the impulse response is [15]:
cos(2π ξ BW t )
h(t ) = sinc( 2 BW t ) 2 2 2 (3.2)
1 − 16ξ BW t
The in-phase and quadrature components of the received signal are given by
yi (t ) ~ cos ϕ (t ) ni (t )
y (t ) = AX (t ) D(t ) + , (3.3)
q sin ϕ (t ) nq (t )
with ϕ (t ) = ωd t + θ 0 and where ni (t ) and nq (t ) are the in-phase and quadrature noise components. The
zi ( t ) cos ϕˆ (t ) sin ϕˆ (t ) yi (t )
z (t ) = . (3.4)
q sin ϕˆ (t ) cos ϕˆ (t ) yq (t )
Assuming that the phase error in the integration interval [0, T ] may be written as
ϕ e (t ) ≡ ϕ (t ) − ϕˆ (t ) = ωet + θ e , where ωe = 2π f e is the frequency error and θ e is the initial phase error,
leads to
zi ( t ) ~ cos ϕ e ( t ) ni′(t )
z ( t ) = AX (t ) D(t ) + , (3.5)
q sin ϕ e (t ) nq′ (t )
where D(t ) is the navigation data in the integration, and ni′(t ) and nq′ (t ) are the noise components
after phase rotation.
The components zi (t ) and z q (t ) are then multiplied by Early (E) and Late (L) version of the locally
T
1 ∆
I E (ε ) = ∫
T 0
zi ( t ) X (t − ε + ∆ 2 )dt = ADRX~X ε − sinc( f eT ) cos(πf eT + θ e ) + N i , E
2
(3.6)
16
and similarly
∆
I L (ε ) = ADRX~X ε + sinc( f eT ) cos(πf eT + θ e ) + N i , L
2
∆
QL (ε ) = ADRX~X ε + sinc( f eT ) sin(πf eT + θ e ) + N q , E (3.7)
2
QP (ε ) = ADRX~X (ε )sinc( f eT ) sin(πf eT + θ e ) + N q, P
∆
QL (ε ) = ADRX~X ε + sinc( f eT ) sin(πf eT + θ e ) + N q , L
2
~
where the cross-correlation function between X (t ) and X (t ) can be defined as
T
∫
RX~X (ε ) = X (ε )X (t − ε )dt = RX (ε ) ∗ h(ε ) , ∆ is the early-late spacing, and
0
N i ,E 1 T
ni ∆
N =
q ,E T
∫0 nq X t + 2 − ε dt
N i ,P 1 T
ni
N =
q ,P T
∫0 nq X (t − ε )dt (3.8)
N i ,L 1 T
ni ∆
N =
q,L T
∫ n X t − 2 − ε dt
0 q
are zero-mean, Gaussian, random variables with equal variance σ 2 and cross-correlation
{ } { }
E{N i , E N i , L }= E N q , E N q , L = σ 2 RX ( ∆ ) and E{N i , E N i , P }= E N q , L N q , P = σ 2 RX ( ∆ / 2) .
The output of the Code Discriminator block depends on the selected discriminator. Three common
discriminators are:
● E-minus-L Coherent
d (ε ) = I E (ε ) − I L (ε ) (3.9)
[ ] [
d (ε ) = I E2 (ε ) − I L2 (ε ) + QE2 (ε ) − QL2 (ε ) ] (3.10)
● Non-coherent dot-product
The three code discriminator functions are plotted in Figure 3.3. These three functions, as all the
discriminator functions, present a zero crossing for a tracking error ε = 0 and a linear or near linear
behaviour in the neighbour region, where the code discriminator output will be proportional to the code
tracking error. Thereby the output of the code discriminator, after filtered with a low pass filter, is used
17
as a estimation of the code tracking error to feed back the signal generated (see Figure 3.2). In this
way, the receiver can keep the locally generated signal synchronized with the received signal.
It is important that the zero crossing point be ε = 0 , because, for the receiver's point of view, the code
of the locally generated signal is synchronized with the code of the received signal, when the code
discriminator output is d (ε ) = 0 . If the zero crossing point is shifted, then the receiver stable lock point
would not be ε = 0 and a code tracking error will occur.
0.05
0.025
discriminator output, d ( ε )
-0.025
E-L Coherent
-0.05 Dot Product
E-L Power
-1 -0.5 0 0.5 1
code tracking error, ε/TC
Figure 3.3: Code discriminator outputs for BOC(1,1) with unlimited pre-correlation bandwidth.
The output of the Carrier Discriminator depends on the carrier discriminator function. A common carrier
discriminator function is the arc tangent discriminator, that is insensitive to the phase transition of the
navigation data bit transitions [8]:
I (ϕ )
d PLL (ϕ e ) = arctan P e (3.12)
QP (ϕ e )
The discriminator for the carrier loop is showed in Figure 3.4, and, similar to the code discriminator, it
is used to give a phase tracking error estimate to feed back the Local Phase Generator. Thereby the
18
0.5
-0.5
-1 -0.5 0 0.5 1
phase tracking error, φ/π
Figure 3.4: Carrier discriminator output for the arc tangent discriminator.
ωaid = ωˆ d . (3.13)
The aiding signal allows the local phase generator to generate a more accurate frequency and thereby
it will be easier for the PLL to track the carrier phase, giving also a more accurate phase.
19
Chapter 4
Multipath Effect
In Chapter 3 was assumed that there was an unobstructed path from to the receiver to the satellite
and that the received signal was a single undisturbed signal, the so called Line-of-Sight signal (LOS).
However in a realistic environment multipath may occur.
Multipath is defined as the propagation of a wave from one point to another by more than one path. By
that means, the received signal will be the result of the sum of a first path plus one or several reflected
echoes. The first path is usually a direct, unobstructed path from the satellite to the antenna (LOS),
and the reflected rays are the result of reflections from a nearby objects or the ground. These reflected
paths will be delayed relative to the LOS and, usually, will be weaker than the LOS, due to the energy
loss from the reflection. However, when the LOS is partially obstructed or when the reflecting surface
has a large area (e.g. a building), the LOS may be weaker than some echoes. Figure 4.1 shows a
possible multipath situation, where three rays reach the receiver: LOS, a ray reflected on a building
and another ray reflected on the ground.
LOS
20
As it will be seen in the following section, the reflections will confound the receiver by distorting the
correlation peak and hence the code discriminator will not estimate correctly the code delay. The
effects of multipath in the receiver tracking loops will depend on:
where 0 < α < 1 is the attenuation coefficient and stands for the relative amplitude of the reflected ray,
and τ and φ are respectively the delay and the extra phase of the reflected signal relative the LOS.
Following the proceeding described in Section 3.2, now the correlator outputs will be given by:
∆ ∆
I E (ε ) = ADsinc( f eT ) RX~X ε − sin(πf eT + θ e ) + αRX~X ε − − τ cos(πf eT + θ e + φ ) + N i , E
2 2
I P (ε ) = ADsinc( f eT ){RX~X (ε )cos(πf eT + θ e ) + αRX~X (ε − τ )cos(πf eT + θ e + φ )}+ N i , P
∆ ∆
I L (ε ) = ADsinc( f eT ) RX~X ε + cos(πf eT + θ e ) + αRX~X ε + − τ cos(πf eT + θ e + φ ) + N i , L
2 2
(4.2)
∆ ∆
QE (ε ) = ADsinc( f eT ) RX~X ε − sin(πf eT + θ e ) + αRX~X ε − − τ sin(πf eT + θ e + φ ) + N q , E
2 2
QP (ε ) = ADsinc( f eT ){RX~X (ε )sin(πf eT + θ e ) + αRX~X (ε − τ )sin(πf eT + θ e + φ )}+ N q , P
∆ ∆
QL (ε ) = ADsinc( f eT ) RX~X ε + sin(πf eT + θ e ) + αRX~X ε + − τ sin(πf eT + θ e + φ ) + N q , L
2 2
According to (4.2), in the presence of multipath, the correlator outputs can be viewed as a
superposition of shifted and distorted versions of (3.6) and (3.7). Figure 4.2 shows the effect of a
single reflected ray on the output of the in-phase prompt correlator, I P (ε ) . In the Figure, it is
considered that the reflected signal has a attenuation coefficient of α = 0.5 and is in-phase, φ = 0 , and
As the output of the correlators is distorted in the presence of multipath, the zero-crossing of the
discriminator function will be shifted from the correct position (see Figure 4.3). This leads to an error
21
in the code delay measurement between the received signal code and the local generated code.
1
direct signal
reflected signal
0.8
received signal
0.6
0.4
I (ε)
0.2
P
-0.2
-0.4
-0.6
-1.5 -1 -0.5 0 0.5 1 1.5 2
ε/T c
Figure 4.2: Normalized in-phase prompt correlator for BOC signals, with α = 0.5 and τ = 0.4Tc.
In Figure 4.3 is plotted the discriminator function for BOC(1,1) signals with unlimited bandwidth and for
three situations: E-L spacing ∆ = 0.2Tc and no reflected path; E-L spacing ∆ = 0.2Tc a in-phase echo
with attenuation coefficient α = 0.5 and delay τ = 0.4Tc ; and the same as the second situation, but now
with an E-L spacing ∆ = 0.05Tc . It is evident that the discriminator's function is shifted when α ≠ 0 and
that a narrower E-L spacing decreases the error due to multipath.
-0.05
φ =0
τ/Tc =0.4
-0.1
-1 -0.5 0 0.5 1
tracking error, ε/Tc
22
A common approach to describe the effects of multipath consists of determining the multipath error
envelopes, as it will be explained in the next section.
It is considered that the output of the correlators is given by (4.2), then the discriminator's output can
variables, d (ε ,τ , α , φ ) .
The tracking error can be determined by solving d (ε ,τ , α , φ ) = 0 for ε . The worst tracking errors will
(destructive interference), φ = π . The multipath error envelope consists of two curves given by
d (ε , α ,τ ,0 ) = 0 and d (ε , α ,τ , π ) = 0 , that define the tracking error limits for a constant attenuation
coefficient, α , and as a function of the reflected path delay τ relative to the LOS.
Depending of the discriminator's function and the signal's modulation, there may exist more than one
zero-crossing in the discriminator's function. When this happens, it must be selected the zero-crossing
correspondent to the stable lock point near ε = 0 .
Figure 4.4 displays the multipath error envelopes for BOC(1,1) obtained for the E-L power
discriminator, with two E-L spacing values and infinite bandwidth. It can be seen that the use of
narrower correlator architecture decreases the code tracking error in the presence of multipath. Since
the error given in Figure 4.4 is in units of chip ( Tc ), it is important to state that signals with higher chip
rates will offer better multipath performance (less code tracking error) than signals with lower chip
rates. Other important conclusion is that for reflected rays delayed by more than about one chip, the
tracking error due to multipath will drop to zero. The reason for this event is the the fact that the auto-
correlation function be null for misalignments equal or greater than one chip.
23
0.03
α=0.5 ∆=0.1Tc
α=0.5 ∆=0.05Tc
0.02
α=0.2 ∆=0.05Tc
0.01
tracking error, ε / TC
-0.01
-0.02
-0.03
0 0.2 0.4 0.6 0.8 1 1.2
multipath delay, τ/TC
Figure 4.4: Multipath error envelopes for the Narrow Correlator and BOC signals.
Despite the simplifications assumed in the multipath error envelopes, it is a very suited tool to compare
the multipath performance of different signals and different tracking techniques. Therefore, in the next
chapter, where it will be discuss several methods to mitigate the effects of multipath, the multipath
error envelope will be used to assess the performance of each technique.
24
Chapter 5
Multipath Mitigation
As it was seen in Chapter 4, the multipath error is a limiting factor of the GNSS positioning accuracy.
Several techniques have been studied in the past to mitigate the multipath tracking error. These
different techniques can be classified into three main categories:
1) Pre-processing techniques.
These techniques are applied before the satellite signals enters the receiver's processing
chain. In this category it is possible to find:
● Methods that make assumptions about the geometry of the multipath. We find in this
category the Choke-Ring antenna, which works quite well for under the horizon
multipath (which covers most of the survey situations), but falls short for above the
ground configurations (building reflections for example) [17];
● Methods that assume repeatability of the multipath from one day to another, and
characterize the multipath environment by azimuth and elevation [18]. These have the
disadvantage of requiring a significant time to calibrate the environment, and are
limited to the specific location where the calibration was made. This limits the use of
methods to static cases such as reference stations. The other drawback is that, unless
another calibration is made, these methods will not take into account any change in
the multipath environment with the time.
Signal processing techniques occur within the code and frequency tracking loops.
● Techniques that make no assumption about the multipath model, like the Narrow
Correlator [19] and Code Correlation Reference Waveforms [20], [10];
● Techniques that assume a multipath model and try to identify the parameters of this
model. Some examples are: DLL with interference cancellation and/or interference
mitigation, Kalman Filtering, Multipath Estimating DLL, Pulse Subtraction, Least
Squares, Subspace-based algorithms and Quadratic Optimization Methods [21].
25
3) Post-processing techniques.
Post-processing techniques are applied after the pseudo-range measurements have been
produced. In this category, it can be found the methods that analyse the consistency of the
different code measurements, and eliminate the satellites with a too large bias (Receiver
Autonomous Integrity Monitoring). Although this might work well if only one or two satellite
signals present multipath and if the multipath level is quite significant (20 meters level), it has
severe limitations otherwise [18].
However, not all the mitigation techniques are suitable for implementation in low cost GNSS receivers.
Low cost receivers can not afford to use high performance processor and expensive hardware. These
receivers have limited computational capabilities. Thereby, the techniques suitable for such type of
receiver must minimize the computing load. In this category, it can be found: the Narrow Correlator,
the CCRWs and the Teager-Kaiser operator. These techniques will be analysed in the following
sections.
generation of GPS receivers used large E-L spacings (e.g. ∆ = 1Tc ). The main concept behind the
Narrow Correlator is narrowing the E-L correlator spacing. This has the advantage of reducing the
tracking errors in the presence of both noise and multipath [19]. Although, the Narrow Correlator was
developed for BPSK signals, the BOC and MBOC signals can also be used, as shown in [12] and [5].
Several discriminator functions can be used with the Narrow Correlator, as, for instance, coherent, E-L
power and dot-product discriminators. However, these different discriminators have a similar
performance in the presence of multipath, and then, in this section, it only will be considered the
Narrow E-L Power (NELP) discriminator, given by (3.10).
The noise reduction is achieved with narrower E-L spacings because the noise components of the E
and L correlator outputs are correlated and the discriminator output tend to cancel. The multipath
effects are reduced because the code discriminator is less distorted by the delayed multipath signal. In
Figures 4.3 and 4.4, the reduction of tracking errors in the presence of multipath with narrower E-L
spacings is well visible.
Figure 5.1 (left) shows the NELP code discriminator response for unlimited bandwidth and E-L spacing
∆ = 0.05Tc . For the BPSK signal, the code discriminator response has only one stable lock point at
ε = 0 . However for BOC(1,1) and CBOC(6,1,1/11) it has three stable lock points: at ε = 0 and two
false-lock points at ε = ± Tc 2 . The false-lock points are a disadvantage because they introduce
ambiguity in the code discriminator, which means that the receiver may lock at the wrong point and
estimate wrongly the code tracking delay.
26
On the right side of Figure 5.1 (right) are plotted the multipath error envelopes for NELP code
discriminator, attenuation coefficient α = 0.5 , E-L spacing ∆ = 0.05Tc and unlimited bandwidth. There is
a performance improvement in changing from a BPSK signal to a BOC(1,1) signal and from a
BOC(1,1) signal to a CBOC(6,1,1/11) signal. The reason for this is that CBOC(6,1,1/11) signals have
sharper peaks in their ACF than BOC(1,1) signals, and the last ones also have sharper peaks in their
ACF than BPSK signals(as it was seen in Figure 2.7). The sharper peaks in the ACF allows the code
discriminator to be less distorted by delayed reflected rays.
0.025 0.015
BPSK BPSK
0.02 BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.01
0.015
0.01
0.005
discriminator output, d ( ε )
0 0
-0.005
-0.005
-0.01
-0.015
-0.01
∆=0.05Tc
∆=0.05Tc
-0.02 B T =∞
BWTc=∞ W c
α=0.5
-0.025 -0.015
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/T multipath delay, τ/T
C C
Figure 5.1: Code discriminator outputs (left) and multipath error envelopes (right) for the NELP
discriminator, with unlimited pre-correlation bandwidth.
The impact of the input filter bandwidth on the multipath performance should not be neglected. The
input filter bandwidth affects the correlator outputs, the code discriminator output and, thereby, the
multipath error envelope. Figure 5.2 shows the multipath error envelopes for the NELP code
discriminator, E-L spacing ∆ = 0.05Tc , attenuation coefficient α = 0.5 and two different bandwidths:
BW Tc = 5 and BW Tc = 12 . In general, the larger the input bandwidth, the better will be the multipath
performance. This behaviour was expected, because narrower input bandwidth implies smoother
correlation peaks and, therefore, code discriminator response more sensitive to reflected rays.
27
0.04 0.015
BPSK BPSK
BOC(1,1) BOC(1,1)
0.03 CBOC(6,1,1/11) CBOC(6,1,1/11)
0.01
0.02
0.005
0.01
tracking error, ε / TC
-0.01
-0.005
-0.02
-0.01
-0.03 ∆=0.05Tc ∆=0.05Tc
B T =5 B T =12
W c W c
α=0.5 α=0.5
-0.04 -0.015
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/T multipath delay, τ/T
C C
Figure 5.2: Multipath error envelopes for the NELP discriminator and normalized bandwidth BWTc = 5
(left) and BWTc = 12 (right).
CBOC(6,1,1/11) it is necessary to use a input bandwidth larger than BW Tc ≥ 7 so that the wide
frequency BOC(6,1) component would not be neglected.
The multipath error envelopes plotted in Figures 5.1 and 5.2 are important, because they can give a
good idea how the NELP discriminator behaves in the presence of multipath. Nevertheless, the
contribution of the thermal noise in the correlator outputs should not be neglected. The discriminator
performance is deeply affected with the amount of channel noise.
Assuming weak noise conditions and linearising (3.10) around ε = 0 (stead-state), from (B.3) and
2
2 BPLL [1 − RX (∆ )] RX~X ( ∆ 2)
.
(ε Tc ) =
2
R ~ ( ∆ 2) R′~ ( ∆ 2)T
(5.1)
(C N 0 ) 2
XX XX c
Figure 5.3 shows the evolution of the normalized code error variance, (ε / Tc )2 , versus the pre-
correlation bandwidth, BW , and the E-L spacing, ∆ , for the fixed carrier-to-noise density ratio
C N 0 = 40 dB/Hz . It can be seen that narrower E-L spacings reduce the code discriminator noise, but
requires wider pre-correlation bandwidths. This is the primary disadvantage of the Narrow Correlator,
because wider bandwidths require higher sample rates, higher digital signal processing rates and
more expensive receivers.
28
So, for each bandwidth value there will be an optimal E-L spacing, that minimizes the steady-state
normalized code error variance. The selected E-L spacing does not need to be one that minimizes the
code error variance, but it must assure low variances while providing better multipath performance.
Thereby, it is preferable to use a narrower E-L spacing that allow better multipath mitigation (see
Figure 5.4), but higher steady-state code error variance, than the optimal value. In this way, ∆ = 0.1Tc
and ∆ = 0.05Tc are suitable E-L spacings, for the normalize pre-correlation bandwidths BW Tc = 5 and
Subsection 6.3 and used in the simulation, whose results will be presented in Chapter 7.
29
α∆ /2
ε /T c BPSK
0
code tracking error,
BOC(1,1)
CBOC(6,1,1/11)
BWTc=∞
-α∆ /2
0 0.5+∆ /4 1+∆ /2
multipath delay, τ/Tc
Figure 5.4: Multipath error envelopes as function of E-L spacing and attenuation coefficient, for the
NELP discriminator.
The structure of the HRC receiver is similar to the one illustrated in Figure 3.2, but with the difference
that the HRC receiver requires eight correlators: Very-Early-in-phase IVE , Early-in-phase I E , Late-in-
QL , Very-Late-quadrature QVL .
If the input RF signal is given by (4.1) and the receiver is coherent, then the correlators outputs of the
HRC will be given by (4.2) and
∆ ∆
QVE (ε ) = ADsinc( f eT ) RX~X ε −λ sin(πf eT + θ e ) + α RX~X ε − λ − τ cos(πf eT + θ e + φ ) + N i ,VE
2 2
∆ ∆
IVL (ε ) = ADsinc( f eT ) RX~X ε + λ cos(πf eT + θ e ) + α RX~X ε + λ − τ cos(πf eT + θ e + φ ) + N i ,VL
2 2
(5.2)
∆ ∆
QVE (ε ) = ADsinc( f eT ) RX~X ε − λ sin(πf eT + θ e ) + α RX~X ε − λ − τ sin(πf eT + θ e + φ ) + N q ,VE
2 2
∆ ∆
QVL (ε ) = ADsinc( f eT ) RX~X ε + λ sin(πf eT + θ e ) + α RX~X ε + λ − τ sin(πf eT + θ e + φ ) + N q ,VL
2 2
where ∆ is the early-late spacing, λ∆ is the very-early-very-late spacing, with λ > 1 , typically λ = 2 ,
and N i ,VE N i ,VL N q ,VE N q ,VL are zero-mean Gaussian random variables, with variances σ 2 and cross-
30
correlations
∆
E{N x ,VE N x , E }= E{N x , L N x ,VL }= σ 2 RX (λ − 1)
2
∆
E{N x ,VE N x , L }= E{N x , E N x ,VL }= σ 2 RX (λ + 1)
2
E{N x ,VE N x ,VL }= σ 2 RX (λ∆ ) (5.3)
E{N x , E N x , L }= σ 2 RX (∆ )
{ }
E N i ,Y N q , Z = σ 2 RX (∆ )
Figure 5.5 shows the HRC code discriminator responses for BPSK signals with unlimited input
bandwidth, E-L spacing ∆ = 0.1Tc and several λ values. The linear area of the code discriminator
around the stable lock point at ε =0 remains similar for different λ values, but the areas where the
code discriminator response is different from zero are narrower.
0.06
λ=1.5
λ=2
λ=2.5
0.04
0.02
discriminator output, d ( ε )
-0.02
-0.04
∆ =0.1Tc
-0.06
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
tracking error, ε/TC
Figure 5.5: HRC code discriminator response for BPSK signals for several λ values.
Figure 5.6 shows the code discriminator output and the multipath error envelope for the HRC with
unlimited bandwidth. While for BPSK signals the code discriminator has one stable lock point at ε = 0 ,
for BOC(1,1) signals the code discriminator has three stable lock points: one at ε = 0 and two false-
lock points at ε = ±Tc . For CBOC(6,1,1/11) signals the situation is even worse, as the HRC code
31
discriminator presents even more false-lock points than for the BOC(1,1) signals. The multipath error
envelope shows that the HRC discriminator is not well adapted for use with CBOC(6,1,1/11) signals,
as it can be seen than the tracking error will be different from zero for a larger set of delays of the
reflected ray, than for the case of the BOC(1,1) signal. From the three signals and the HRC
discriminator, the BPSK signal is the one that offers the best performance in the presence of multipath.
0.025 0.015
BPSK BPSK
0.02 BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.01
0.015
0.01
0.005
discriminator output, d (ε )
tracking error, ε / TC
0.005
0 0
-0.005
-0.005
-0.01
-0.015
-0.01
∆=0.05Tc
∆=0.05Tc
-0.02 BWTc=∞
BWTc=∞
α=0.5
-0.025 -0.015
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/TC multipath delay, τ/TC
Figure 5.6: Code discriminator outputs (left) and multipath error envelope (right) for HRC, with
unlimited pre-correlation bandwidth and λ = 2.
Figure 5.7 illustrates the effects of the different input bandwidths on the multipath error envelopes. The
multipath error envelopes for input bandwidth BW Tc = 12 have similar envelopes as the case of
unlimited pre-correlation bandwidth; but, while for unlimited bandwidth the shapes of multipath error
envelope were sharp, for the BW Tc = 12 bandwidth these shapes are smooth. For input bandwidth
BW Tc = 5 it is important to refer that the behaviour the CBOC(6,1,1/11) signal closes up BOC(1,1)
0.025 0.015
BPSK BPSK
0.02 BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.01
0.015
0.01
0.005
C
tracking error, ε / TC
0.005
tracking error, ε / T
0 0
-0.005
-0.005
-0.01
-0.015
-0.01
∆=0.05Tc ∆=0.05Tc
-0.02 BWTc=5 BWTc=12
α=0.5 α=0.5
-0.025 -0.015
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/TC multipath delay, τ/TC
Figure 5.7: Multipath error envelopes for the HRC, with normalized bandwidth BWTc = 5 (left) and
BWTc = 12 (right).
For weak noise conditions and linearising (5.4) around ε = 0 , from (B.3) and (B.5), the steady-state
32
normalized code error variance, (ε / Tc )2 , is given by:
E-L spacing, ∆ , for C N 0 = 40 dB/Hz , integration period T = 0.004 s , λ = 2 and code loop bandwidth
BPLL = 1 Hz . In general, the code error variance will decrease for lower E-L spacings and higher pre-
correlation bandwidths. However, for each pre-correlation value there is a E-L spacing that minimizes
the code error variance. The selected E-L spacing must provide both good multipath mitigation (see
Figure 5.8) and low noise propagation. The E-L spacings ∆ = 0.08Tc and ∆ = 0.15Tc were considered
33
α∆ /4
-α∆ /8
ε /Tc
BPSK
code tracking error,
0
BOC(1,1)
-α∆ /8
BWTc=∞
λ=2
-α∆ /4
0 ∆/2 0.5-∆ /2 0.5 0.5+∆/2
multipath delay, τ/Tc
Figure 5.9: Multipath error envelopes as function of E-L spacing and attenuation coefficient, for the
HRC discriminator with λ=2.
CCRW was first developed to improve the multipath performance of BPSK signals. More recently the
same technique was extended to BOC signals [27], [28], and proved to be able to mitigate the
multipath effects for this modulation also. In this section, the CCRW concept will be applied to BPSK,
BOC and a MBOC signal, the CBOC(6,1,1/11).
Figure 5.10 shows the receiver's structure considered for use CCRW. Let RF signal be given by (4.1),
then, the correlators I P and QP outputs are given by (4.2) and IW and QW are given by
with RX~W (ε ) = RXW (ε ) ∗ h(ε ) , where RXW (ε ) = E{X (t )W (t − ε )} is the cross-correlation between X (t ) and
the CCRW W (t ) .
d (ε ) = I P (ε ) IW (ε ) + QP (ε )QW (ε ) (5.7)
34
Local Phase Phase
Generator Discriminator
^ ^
cos φ(t) sin φ(t)
I
P
I&D
cos(ω 0 t)
z i(t)
IW
I&D
y i(t)
y q(t) QW
I&D
sin(ω 0 t) z q(t)
Q
P
I&D
Figure 5.10: Block diagram of the receiver code and phase loops using the strobe correlator.
The receiver's performance will be strongly dependent of the selected CCRW. In the past several
CCRW have been studied, as a way to improve the code tracking performance [23]-[28]. The CCRW
studied and plotted in Figure 5.11 can be partitioned in two sub-categories: transition-based, if a
CCRW pulse appears only when a signal value transition occurs; or per-chip, if a CCRW pulse occurs
for every chip code. The determination of CCF R XW will depend if the CCRW is transition-based or
per-chip.
Let the CCRW and the received BOC(n,m) signal (with unlimited bandwidth) be defined as:
Ck + ( −1) 2n m Ck −1
W (t ) = ∑ 2
W ′(t − kTc )
k
(5.8)
X (t ) = ∑ C X ′(t − kT )
k
k c
where W ′(t ) is a CCRW pulse and X ′(t ) depends on the signal modulation. For instance, for BPSK
Considering that G XW ( f ) is the Fourier Transform (FT) of the cross-correlation function between the
received signal and CCRW:
FT
RXW (τ ) → G XW ( f ) (5.9)
35
Then,
C + ( −1) 2n m C j −1
G XW ( f ) = X ( f )W (− f ) = ∑ Ck X ′( f )e −i 2π f k ∑ j W ′( f )ei 2π f j
2
k j
C j + ( −1) 2n m C j −1
= ∑∑ Ck X ′( f )W ′( f )ei 2π f ( j − k ) (5.10)
k =1 m =1 2
C ′ + ( −1) 2n m Cl′+1
=∑ l X ′( f )W ′( f )e −i 2π f l
l 2
C ′ = N chip ;
Cl′ = ∑C C
k= l
k k− l
, with 0
Cl′ = 0, l ≠ 0
.
Thereby,
(
G XW ( f ) = N chip X ′( f )W ′( f ) 1 + ( −1) n / m ei 2π τ ) (5.11)
The cross-correlation function can be determined applying the Inverse Fourier Transform (IFT).
IFT
RXW (τ )
G XW ( f ) → (5.12)
Now let the CCRW and the received BOC(n,m) signal (with unlimited bandwidth) be defined as:
W (t ) = ∑ C W ′(t − kT )
k c
k
(5.13)
X (t ) = ∑ k
Ck X ′(t − kTc )
Applying the same steps as in the previous section, it is easy to show that
G XW ( f ) = N chip X ′( f )W ′( f ) . (5.14)
And then determine the cross-correlation function, applying the IFT
RXW (τ ) .
IFT
G XW ( f ) → (5.15)
36
signal
rect
W1
W2
W3
W4
0 1 2 3 4 5 6
time, Tc
concept as alternative to the conventional E-L discriminator for BPSK signals [23]. It is possible to
show that, for BPSK signals the E-L discriminator is equivalent to a CCRW transition-based:
∆ ∆ ~ ∆ ∆ ~ t − kTc
RX~X t − − RX~X t + = X ∗ X t + − X t − = X ∗
2 2 2 2
∑ s Π
k
k
∆
. (5.16)
where sk depends on the signal code and can take one of the values -1, 0 or +1. Because of (5.16),
the here named Rectangular (RECT) CCRW, is also known as narrow CCRW [23].
1
value
-L/2 0 L/2
time
It is important to state that (5.16) is only valid for BPSK signal. Nevertheless a CCRW may be defined
as
37
t − kTc
W (t ) = ∑ s Π
k
k
L
(5.17)
and applied to other signals. However for other signals it would not be equivalent to a E-L
discriminator.
Comparing Figures 5.1 and 5.13, it is possible to confirm the similarities between the multipath
performance of the Narrow CCRW and the E-L discriminator for BPSK signals, and the differences for
BOC and CBOC signals.
0.05 0.03
BPSK BPSK
0.04 BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.02
0.03
0.02
0.01
discriminator output, d ( ε )
tracking error, ε / TC
0.01
0 0
-0.01
-0.01
-0.02
-0.03
-0.02
L/Tc=0.05 L/Tc=0.05
-0.04
B T =∞ α=0.5
W c
-0.05 -0.03
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/T multipath delay, τ/T
C C
Figure 5.13: Code discriminator outputs (left) and multipath error envelopes (right) for the RECT
CCRW with unlimited pre correlation bandwidth.
For BOC and CBOC signals, the RECT CCRW (Figure 5.13), given by (5.17), offers a worse
performance than the NELP discriminator (Figure 5.13). However by changing the CCRW to a New
RECT CCRW
t − (k + 0.5)Tc
W (t ) = ∑ s Π
k
k
L
,
(5.18)
for BOC and CBOC signals, it was found that the multipath performance will increase. Reflected rays
with delays larger than about half chip duration, i.e. Tc 2 , will cause no effect on the tracking error
(Figure 5.14).
38
0.05 0.04
BOC(1,1) BWTc=5 BOC(1,1)
0.04 CBOC(6,1,1/11) B T =5 CBOC(6,1,1/11)
W c
0.03
B T =12 BOC(1,1)
W c
0.03 B T =12 CBOC(6,1,1/11)
W c
0.02
0.02
discriminator output, d ( ε )
0.01
tracking error, ε / TC
0.01
0 0
-0.01
-0.01
-0.02
-0.02
-0.03
-0.05 -0.04
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/TC multipath delay, τ/TC
Figure 5.14: Code discriminator outputs (left) for the New RECT CCRW with unlimited pre correlation
bandwidth. Multipath error envelopes (right) for the New RECT CCRW for different signals and pre
correlation bandwidths.
Assuming weak noise and from (B.3) and (B.6), the steady-state normalized code error variance,
BDLL L Tc 1
ε2 = (5.19)
(C N 0 ) R′X~W (0) 2 [ ]
For each pre-correlation bandwidth, there is a pulse duration, L , that minimize the code error
variance. This can be seen in Figure 5.15, where the normalized code error variance, (ε / Tc )2 , versus
the pre-correlation bandwidth, BW , and the E-L spacing, ∆ , is plotted for C N 0 = 40 dB/Hz , integration
period T = 0.004 s , and code loop bandwidth BPLL = 1 Hz . The pulse durations L = 0.05Tc and L = 0.1Tc
39
α∆ /2
ε / Tc
BPSK
code tracking error,
0 BOC(1,1)
CBOC(6,1,1/11)
BWTc=∞
-α∆ /2
0 0.5+∆ /2 1+∆ /2
Figure 5.16: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for RECT CCRW with BPSK signals and for New RECT CCRW with BOC and CBOC signals.
40
5.3.2 W1 CCRW
This technique is also known as HRC (for BPSK signals the W1 CCRW is equivalent to the technique
presented in section 5.2) or Double Delta [18], [23].
2t t
G(t ) = 2 Π − Π (5.20)
L L
1
value
-1
W (t ) = ∑ s G(t − kT )
k
k c (5.21)
where sk depends on the signal sign in such way that a W1 CCRW pulse only occurs at the beginning
of the chip when a signal sign transition happens.
Figure 5.18 shows the discriminator response and the multipath error envelope for the W1 CCRW and
unlimited input bandwidth. BPSK signals are well suitable to this CCRW, the discriminator response
has only one stable lock point at ε = 0 and the multipath error envelope has three protuberances1, the
first at about τ = 0 and the last two at around τ = Tc . The discriminator response for BOC signals,
compared to the one for BPSK signals, has two false-lock points at ε = m Tc 2 , that introduce an
ambiguity in the code discriminator response. The multipath error envelope for BOC signals has two
more protuberances for delays around τ = m Tc 2 , relative to the same plot for BPSK signals. For the
CBOC signals, the discriminator response has even more false-lock points than for BOC signals, and
the multipath error envelope is similar to the BOC one, but with several small protuberances due to the
high frequency component.
1 Areas of the multipath error envelope, where the tracking error is not zero.
41
0.025 0.025
BPSK BPSK
0.02 BOC(1,1) 0.02 BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.015 0.015
0.01 0.01
discriminator output, d ( ε )
0.005 0.005
tracking error, ε / TC
0 0
-0.005 -0.005
-0.01 -0.01
-0.015 -0.015
L/Tc=0.2
L/Tc=0.2
-0.02 -0.02 BWTc=∞
BWTc=∞
α=0.5
-0.025 -0.025
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/TC multipath delay, τ/TC
Figure 5.18: Code discriminator outputs (left) and multipath error envelopes (right) for unlimited pre
correlation bandwidth and W1 CCRW.
Figure 5.19 shows the effect of different pre-correlation bandwidth values on the multipath error
envelope. Regarding to the multipath error envelopes illustrated in Figure 5.18, the protuberances on
the multipath error envelopes in Figure 5.19 are smoother. For bandwidth BW Tc = 5 , the amplitude of
the protuberances is significantly increased and, hence, the multipath performance is not so good
compared to to a normalized pre-correlation bandwidth BW Tc = 12 .
0.025 0.02
BPSK BPSK
0.02 BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) 0.015 CBOC(6,1,1/11)
0.015
0.01
0.01
0.005
0.005
tracking error, ε / TC
tracking error, ε / TC
0 0
-0.005
-0.005
-0.01
-0.01
-0.015
-0.025 -0.02
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/T multipath delay, τ/T
C C
Figure 5.19: Multipath error envelope for several signals for the W1 CCRW and pre correlation
bandwidth BWTc = 5 (left) and BWTc = 12 (right).
W (t ) = ∑ s G[t − (k + 0.5)T ]
k
k c (5.22)
Comparing to the the results obtained with W1 CCRW, and plotted in Figures 5.18 and 5.19, the New
W1 CCRW offers a much better performance, as it can be seen in Figure 5.20. For BOC and CBOC
signals and the new CCRW, the multipath error envelope, illustrated in Figure 5.20, is preferable to the
42
one for W1 CCRW, plotted in Figure 5.18: the new CCRW offers a lower tracking error for reflected
rays delayed about Tc 2 and eliminates the tracking error due to reflected rays delayed about Tc .
0.05 0.03
BOC(1,1) BPSK
0.04 CBOC(6,1,1/11) BOC(1,1)
CBOC(6,1,1/11)
0.02
0.03
0.02
0.01
discriminator output, d ( ε )
0.01
tracking error, ε / TC
0 0
-0.01
-0.01
-0.02
-0.03
-0.02
L/T =0.2
L/Tc=0.2 c
-0.04 B T =∞
BWTc=∞ W c
α=0.5
-0.05 -0.03
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/T multipath delay, τ/T
C C
Figure 5.20: Code discriminator outputs (left) and multipath error envelopes (right) for unlimited pre
correlation bandwidth and the New W1 CCRW.
2 2
Figure 5.22 shows the steady-state normalized code error variance, ε Tc , given by (5.19), as a
function of the normalized pre-correlation bandwidth and CCRW pulse duration. For both the CCRWs
and for all the three signals, L = 0.1Tc and L = 0.05Tc for BW Tc = 5 and BW Tc = 12 , respectively, were
considered suitable pulse widths (see also Figure 5.21).
α L/4
-α L/8
ε /Tc
BPSK
0
code tracking error,
BOC(1,1)
CBOC(6,1,1/11)
-α L/8
BWTc=∞
-α L/4
0 L/2 0.5-L/2 0.5 0.5+L/2
multipath delay, τ/Tc
Figure 5.21: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for W1 CCRW with BPSK signals and for New W1 CCRW with BOC and CBOC signals.
43
5.3.3 W2 CCRW
The W2 CCRW pulse is equal to the W1 CCRW pulse, given by (5.20). Although the CCRW W2 is
different and written as
W (t ) = ∑ G (t − kT )
k
k c (5.23)
where Gk = ±G (t ) and ± depends on the chip sign. The main difference between W1 CCRW and W2
CCRW is that, in the latter the CCRW pulses will appear at the beginning of every chip, while in the
former CCRW only occur when a signal value transition happens, as shown in Figure 5.11.
For BPSK signals, the discriminator response for W2 CCRW has one stable lock point at ε = 0 . For
BOC(1,1) signals, the discriminator function has two stable lock points at ε = 0 and at ε = Tc . For
CBOC(6,1,1/11) signals, there are other two zero crossing points that can act as lock points. However,
this area has a lower slope and is smaller (the points will be harder to lock) than the stable lock points
44
at ε = 0 and at ε = Tc .
Compared to the others CCRW seen so far (RECT, W1), the W2 has the best multipath error envelope
for the three signals. The multipath error envelope has only one protuberance at τ ≈ 0 , which means
that the W2 CCRW is only affected by reflected rays delays lower than L . It is important to refer that,
for CBOC(6,1,1/11) the multipath error envelope has a bias error; however this is a deterministic error
that is easily corrected.
0.05 0.025
BPSK BPSK
0.04 BOC(1,1) 0.02 BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.03 0.015
0.02 0.01
discriminator output, d ( ε )
0.01 0.005
tracking error, ε / TC
0 0
-0.01 -0.005
-0.02 -0.01
-0.03 -0.015
L/Tc=0.2
L/Tc=0.2
-0.04 -0.02 B T =∞
BWTc=∞ W c
α=0.5
-0.05 -0.025
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/T multipath delay, τ/T
C C
Figure 5.23: Code discriminators outputs (left) and multipath error envelopes (right) for unlimited
bandwidth and the W2 CCRW.
Assuming that the received signal has a limited input bandwidth, the multipath error envelopes will
change. For bandwidths of BW Tc = 5 and BW Tc = 12 the multipath error envelopes will change to the
curves plotted in Figure 5.24. Beside the original and now smoother protuberance, several other and
smaller protuberances appear in the multipath error envelopes. Other important change is that a bias
appears for BOC signals, and the initial bias for CBOC(6,1,1/11) is increased, but, as before, these
bias are deterministic and can be corrected.
Figure 5.25 plots the steady-state normalized error variance, ε 2 Tc2 , given by (5.19), versus the
CCRW pulse duration and the normalized pre-correlation bandwidth, for several signals. For the W2
CCRW, considering also the multipath performance (see Figure 5.26), L = 0.3Tc and L = 0.15Tc for
45
0.03 0.02
BPSK BPSK
BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) 0.015 CBOC(6,1,1/11)
0.02
0.01
0.01
0.005
tracking error, ε / TC
tracking error, ε / TC
0
-0.01
-0.005
-0.02
-0.01
-0.04 -0.02
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/T multipath delay, τ/T
C C
Figure 5.24: Multipath error envelopes for the W2 CCRW and pre correlation bandwidth BWTc = 5 (left)
and BWTc = 12 (right).
46
α L/4
ε /T c
code tracking error, BPSK
0 BOC(1,1)
CBOC(6,1,1/11)
BWTc=∞
-α L/4
0 L/2
multipath delay, τ / Tc
Figure 5.26: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for W2 CCRW.
5.3.4 W3 CCRW
The W3 CCRW pulse is sketched in Figure 5.27. As can be seen, while the previous analysed pulses
were symmetric, the W3 CCRW pulse is asymmetric, and is given by
t 1 t−L 2
G (t ) = Π − Π . (5.24)
L 2 2 L 2
1
value
-0.5
-L/2 0 L/2
time
Figure 5.28 illustrates the code discriminator response and the multipath error envelope for the W3
CCRW, different signals and unlimited input bandwidth. Despite the discriminator output be clearly
different, the multipath error envelope is very similar to the one obtained with the W2 CCRW, plotted in
Figure 5.23. As it is possible to see in the multipath error envelopes presented in Figures 5.23 and
5.28, the main difference in the multipath error envelopes from the W2 CCRW tracking error is a
deterministic bias error.
47
0.06 0.08
BPSK BPSK
BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) 0.07 CBOC(6,1,1/11)
0.04
0.06
0.02
discriminator output, d ( ε )
0.05
tracking error, ε / TC
0
0.04
-0.02
0.03
-0.04
0.02
-0.08 0
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/T multipath delay, τ/T
C C
Figure 5.28: Code discriminator output for several signals (left) and multipath error envelopes for
several signals (right) for the W3 CCRW.
Figures 5.29 illustrates the multipath error envelopes for the W3 CCRW and two different pre
correlation bandwidths. For the wider bandwidth BW Tc = 12 , the multipath error envelopes are very
similar to the ones plotted in 5.28, but for the bandwidth BW Tc = 5 , several small protuberances appear
in the multipath error envelopes.
0.08 0.07
BPSK BPSK
BOC(1,1) BOC(1,1)
0.07 CBOC(6,1,1/11) CBOC(6,1,1/11)
0.06
0.06
0.05
0.05
tracking error, ε / TC
tracking error, ε / TC
0.04
0.04
0.03
0.03
0.02
0.02
0 0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/T multipath delay, τ/T
C C
Figure 5.29: Multipath error envelopes for the W3 CCRW and pre correlation bandwidth BWTc = 5 (left)
and BWTc = 12 (right).
The steady-state normalized error variance, ε 2 Tc2 , given by (5.19), is plotted in Figure 5.30 as a
function of the normalized pre-correlation bandwidth, BW Tc , and of the CCRW pulse duration, L , for
several signals and with BPLL = 1 Hz and T = 0.004 s . It is possible to see that W4 CCRW pulses with a
total duration L = 0.05Tc and L = 0.1Tc are adequate, both in the presence of noise and multipath
48
α L/4
code tracking error, ε / Tc
BPSK
0 BOC(1,1)
CBOC(6,1,1/11)
BWTc =∞
-α L/4
0 3L/4
multipath delay, τ/Tc
Figure 5.31: Multipath error envelopes as function of CCRW pulse width and attenuation coefficient,
for W3 CCRW.
49
5.3.5 W4 CCRW
The W4 CCRW is a per-chip CCRW given by (5.23), where the waveform elements, plotted in Figure
5.32, are asymmetric pulses defined as
t t −L/2
G (t ) = Π − Π . (5.25)
2 L 3 L3
1
value
-1
The W3 and W4 CCRWs behaviours are quite similar and, as so, their performances are also very
similar. As it happens with W3, W4 CCRW also presents a deterministic tracking error bias. Figures
5.33 and 5.34 (when compared to Figures 5.28 and 5.29) confirm the similarities between the W3 and
W4 CCRWs.
0.06 0.025
BPSK BPSK
BOC(1,1) 0.02 BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.04
0.015
0.01
0.02
discriminator output, d ( ε )
0.005
tracking error, ε / TC
0 0
-0.005
-0.02
-0.01
-0.015
-0.04
L/T =0.15
L/Tc=0.15 c
-0.02 B T =∞
BWTc=∞ W c
α=0.5
-0.06 -0.025
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/T multipath delay, τ/T
C C
Figure 5.33: Code discriminator output for several signals (left) and multipath error envelopes for
several signals (right) for the W4 CCRW.
For a input bandwidth BW Tc = 12 , the effects of the input bandwidth on the multipath error envelope are
small, as it can be seen in Figure 5.34. It is important to refer, that for the pre correlation bandwidth
BW Tc = 5 a bias and several protuberances appear on the multipath tracking error. However, as before,
50
0.03 0.02
BPSK BPSK
BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) 0.015 CBOC(6,1,1/11)
0.02
0.01
0.01
0.005
tracking error, ε / TC
tracking error, ε / TC
0 0
-0.005
-0.01
-0.01
-0.02
L/T =0.15 L/T =0.15
c -0.015 c
B T =5 B T =12
W c W c
α=0.5 α=0.5
-0.03 -0.02
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
multipath delay, τ/T multipath delay, τ/T
C C
Figure 5.34: Multipath error envelopes for the W4 CCRW and pre correlation bandwidth BWTc = 5 (left)
and BWTc = 12 (right).
The steady-state normalized error, ε 2 Tc2 , given by (5.19), is represented in Figure 5.34 versus the
normalized pre-correlation bandwidth and the CCRW pulse width, for several signals and with
BPLL = 1 Hz , Tc = 1 ns and T = 0.004 s . The W4 CCRW pulses with a total duration of L = 0.1Tc and
L = 0.2Tc are suitable, considering also the multipath performance (Figure 5.35), for bandwidths of
BW Tc = 12 and BW Tc = 5 , respectively.
α L/3
ε /T c
BPSK
0
code tracking error,
BOC(1,1)
CBOC(6,1,1/11)
BWTc=∞
-α L/3
0 2L/3
multipath delay, τ/Tc
Figure 5.35: Multipath error envelopes as function of CCRW pulse duration and attenuation coefficient,
for W4 CCRW.
51
5.4 Teager-Kaiser Operator
The non-linear quadratic TK operator was first introduced for measuring the real physical energy of a
system [29]. It was found that this non-linear operator is simple, efficient and able to track
instantaneously varying spatial modulation patterns [30]. Since its introduction, several other
applications have been found for TK operator, including estimating the code tracking error of a GNSS
receiver [31], [21].
The discrete-time TK operator for a complex valued signal x[n ] is given by [32]
1
ψ ( x[n ]) = x[n ] x* [n ] −
2
( )
x[n − 1] x * [n + 1] + x[n + 1] x * [n − 1] . (5.26)
If this operator is applied to the ACF of a BPSK signal, the TK energy of the function will exhibit a peak
at zero lag [31]. If instead of a BPSK signal it is used a BOC(1,1) or a CBOC(6,1,1/11) signal is used,
52
the TK energy of the autocorrelation function will still exhibit a large peak at zero lag, but other lower
peaks will appear at secondary lobes. Figure 5.37 shows the behaviour of the TK output for different
signals using a sample time Ts = 0.04Tc .
1
CBOC(6,1,1/11)
BOC(1,1)
0.8 BPSK
0.6
Ψ (ε)
0.4
normalized TK operator,
0.2
-0.2
-0.4
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
tracking error, ε/Tc
Figure 5.37: TK operator output for BPSK, BOC(1,1) and CBOC(6,1,1/11) signals.
As it was mentioned earlier, in the presence of multipath, the CCF function between the received and
the locally generated signals can be viewed as a superposition of shifted and distorted versions of the
undisturbed ACF. Applying the TK operator, the TK energy of the CCF will exhibit a peak at zero lag
(Figure 5.38). The lower peaks are the result of ACF secondary lobes and received echoes.
In [21] was analysed a deconvolution algorithm that used the TK operator to remove the reflected rays
from the incoming signals. The main assumption for that algorithm was that, as the multipath signals
provides time-aligned peaks located at the multiple rays time of arrival, then it should be possible to
remove the reflected rays from the incoming signal, and hence eliminate the code tracking errors
produced by them. The computation load of this method will vary considering the number of
correlators used. But as it is possible to operated with few correlators, the computation load could be
very low, and thereby adequate for use in low cost, mass-market receivers [21]. The drawback of
using fewer correlators is that method will lose resolution and will present bigger errors estimating the
peak positions.
53
0.35
τ=0.2
τ=0.4
0.3
τ=0.6
0.25
Ψ (ε)
0.2
normalized TK operator,
0.15
0.1
0.05
-0.05
-1 -0.5 0 0.5 1 1.5
tracking error, ε/Tc
Figure 5.38: TK operator output for BOC(1,1) for a LOS signal and one reflect ray with different delays
relative the LOS signal.
To keep the complexity as low as possible, while obtaining high resolution, was proposed in [33] a
continuous update technique, in which a discriminator constructed from the TK operator is used to
estimate the code delay.
Similarly to algorithm present in [33], the TK operator can be used to replace the Early and Late
correlators output and used with a classical Early-minus-Late discriminator (Figure 5.39).
d (ε ) = ψ E −ψ L (5.27)
where ψ E and ψ L are the result of applying the TK operator to the CCF between the received signal
and the early and the late version of the locally generate signal with Ts = 2 ∆ , respectively, and are
proportional to
∆ ∆
ψ E (ε ) ∝ RX~X ε + RX~X ε +
2 2
1
* *
3∆ 5∆ 5∆ 3∆
− RX~X ε − RX~X ε + + RX~X ε + RX~X ε −
2 2 2 2 2
(5.28)
∆ ∆
ψ L (ε ) ∝ RX~X ε − R ~ ε −
2 XX 2
1 5∆
* *
5∆ 3∆ 3∆
− RX~X ε − RX~X ε + + RX~X ε + RX~X ε −
2 2 2 2 2
Now, considering a receiver architecture like the one plotted in Figure 3.2, but with six correlators: very
very late (VVL), VL, L, E, VE, very very early (VVE); with E-L spacing ∆ , VE-VL spacing 3∆ and VVE-
54
1
ψ E (ε ) = I E2 + QE2 − [( IVL + iQVL )( IVVE − iQVVE ) + ( IVVE + iQVVE )( IVL − iQVL )]
2
= IVL IVVE − iIVLQVVE + iQVL IVVE + QVLQVVE + IVVE IVL − iIVVE QVL + iQVVE IVL + QVVE QVL
= IVL IVVE + QVLQVVE + IVVE IVL + QVVE QVL + iQVL IVVE − iIVVE QVL + iQVVE IVL − iIVLQVVE
(5.29)
= I E2 + QE2 − [IVL IVVE + QVLQVVE ]
1
ψ L (ε ) = I L2 + QL2 − [( IVVL + iQVVL )( IVE − iQVE ) + ( IVE + iQVE )( IVVL − iQVVL )]
2
= I L2 + QL2 − [IVVL IVE + QVVLQVE ]
Thereby, the discriminator response for the purposed TK based algorithm is given by:
{
d (ε ) = I E2 + QE2 − [IVL IVVE + QVLQVVE ] − I L2 + QL2 − [IVVL IVE + QVVLQVE ] }
(5.30)
[ ] [ ]
= I E2 + QE2 − I L2 + QL2 + [IVVL IVE + QVVLQVE ] − [IVL IVVE + QVLQVVE ]
This method has the advantage of using the well known classic DLL, keeping complexity low and
improving the performance under a multipath environment. As it can be seen in Figure 5.39 (right), the
method significantly improves the performance comparative to the narrow correlator. It has particularly
good performance for BPSK signals. For BOC(1,1) the results are also good, and for CBOC(6,1,1/11)
despite being worse compared to BPSK and BOC(1,1), the performance is still superior to the Narrow
Correlator. On the other hand the method will require at least 6 correlators (if considered a coherent
receiver) for tracking the code delay, while a classic E-L can do the same with only two correlators. But
the complexity is still low.
However, the CCRW, judging the multipath error envelopes, offers a best performance than this
technique based on the TK operator and has a lower complexity, as the CCRW requires only 4
correlators for a non coherent receiver, or 2 correlators if it is considered a coherent receiver.
Figure 5.40 shows the multipath error envelopes for input bandwidth BW Tc = 5 and BW Tc = 12 . As it
happened with the other multipath mitigation techniques analysed in this chapter, the code tracking
error increases when the pre correlation bandwidth is narrower.
This TK-based technique uses more correlators than the other techniques. Thus, it is more difficult to
deduce an expression for the steady-state code error variance. For this reason and this technique, the
effect of noise will be only considered in the simulation results, that will be presented in Sub Section
7.3.
55
0.025 0.015
BPSK BPSK
0.02 BOC(1,1) BOC(1,1)
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.01
0.015
0.01
0.005
discriminator output, d ( ε )
0.005
tracking error, ε / TC
0 0
-0.005
-0.005
-0.01
-0.015
-0.01
∆=0.05Tc
∆=0.05Tc
-0.02 B T =∞
B T =∞ W c
W c
α=0.5
-0.025 -0.015
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tracking error, ε/T multipath delay, τ/T
C C
Figure 5.39: Code discriminator response (left) and multipath error envelopes (right) for several signals
and unlimited pre-correlation bandwidth.
0.025 0.02
BPSK BPSK
0.02 BOC(1,1) BOC(1,1)
0.015
CBOC(6,1,1/11) CBOC(6,1,1/11)
0.015
0.01
0.01
0.005
tracking error,ε /TC
0.005
tracking error,ε /T
0 0
-0.005
-0.005
-0.01
-0.01
-0.015
∆=0.05T ∆=0.05T
c -0.015 c
-0.02 B T =5 B T =12
W c W c
α=0.5 α=0.5
-0.025 -0.02
0 0.5 1 1.5 2 0 0.5 1 1.5 2
multipath delay, τ/T multipath delay, τ/T
C C
Figure 5.40: Multipath error envelopes for several signals BWTc = 5 (left) and BWTc = 12 (right).
56
Chapter 6
Simulation Setup
In Chapter 5, the behaviour of some multipath mitigation technique in the presence of multipath was
analysed. Nevertheless, the assumptions made in the previous Chapter were very simple and ideal. It
is necessary to set up a test environment more close to reality. Thereby, a GNSS receiver and a more
realistic multipath model were developed in Simulink with GRANADA FCM Blockset.
Compared to hardware GNSS receiver test benches (e.g. FPGA based), the FCM provides more
flexibility and thereby it is more adequate for architecture design and development phase. FCM allows
to analyse and control the internal receiver signals, so new algorithms for acquisition, tracking, lock
detection and other can be easy developed and tested.
If compared to highly realistic software simulators that simulate part or the whole GNSS receiver’s
signal processing chain, the FCM is much faster, because it models the outputs of the high frequency
stages of a GNSS with a low frequency algorithm (as illustrated in Figure 6.1). Thereby, FCM
significantly increases simulation speed, while still weighting numerous effects, like the carrier phase
and frequency errors, code delay errors, and Doppler effects [34].
Therefore, FCM is a good choice to simulate a receiver employing the techniques presented in
Chapter 5. Figure 6.2 shows a possible implementation with code and carrier loops).
57
Figure 6.1: Typical signal processing chain for the tracking of GNSS signals [35].
Figure 6.2: Possible implementation of a multi-channel GNSS receiver's tracking loops [35].
First it is necessary understand how the FCM works. FCM assumes that the correlator outputs of the
nth integration can be approximated by [34]
Sn ≈ An En Rn Ln + Wn (6.1)
where An is the post-correlation signal amplitude, En is the contribution of the complex carrier, Rn is
the contribution of the code misalignment and is related with the ACF, Ln accounts for the period
noise.
The factors An and En will not be affected by changes in the signal modulation or the use of CCRW.
58
However, both the factors Rn and Ln depend of the signal modulation and the correlation technique
used. In this thesis, the period expansion or compression due to satellite-receiver relative motion was
neglected; thus the contribution of the factor Ln was also neglected (and its contribution scheduled for
future work).
It is necessary to rewrite the FCM internal function that determines the factor Rn . The new function
can generate the ACF of BPSK, BOC and MBOC signals, applying the expressions given in Sub
Section 2.3.1; and the CCF between a signal and a CCRW, using the procedure described in Section
5.3.
2
[ ]
Let y1 ,L, yn denote the desired Gaussian random variables with covariance matrix R = σ ij , where
σ ij2 = E {yi y j }, and let u1 ,L, un denote a set of independent of independent Gaussian random variables
with unit variance. In [36] was presented a method to generate {yi } from {ui }:
y = Au , (6.2)
{ } {
R = E yy T = E Auu T AT } (6.3)
{ }
where E uu T = I . Any matrix A which satisfies R = AAT can be used in (6.2) to generate the desired
correlated random variables.
λ1 L 0
R = P M O M PT (6.4)
0 L λn
where P is an orthogonal matrix, and λi are eigenvalues of R . Considering that the λi are indexed
in decreasing order, the jth column of P , denoted p j is simply an eigenvector of R associated with
59
λ1 0
A = p1 L pn
O (6.5)
0 λn
The random variables generated this way will have a unitary variance. In this situation the noise
power at the output of the correlator PN will be equal to one. To simulate the behaviour of the
correlators' output under different carrier to noise density ( C / N 0 ) it was decided to keep PN = 1 and
For the following determination of typical multipath errors that are valid for a dedicated environment,
the wide band channel model presented in [37] has been used. This model provides general
distribution of the number of occurring multipath signals, their corresponding path delays and relative
amplitudes as well as associated model parameters for different environments and elevation angles.
Effects like shadowing are also taken into account by modelling the amplitude of the line-of-sight
(LOS) component.
The considered model comprises a direct path, near echoes and far echoes. Each path is described
by its complex amplitude relative to free space propagation, path delay τ m relative to 1st path,
A navigation signal is transmitted from the satellite in many directions. Different reflectors Rk cause
echoes with a round-trip detour ∆sk and a delay ∆τ k = ∆sk / c (where c is the velocity of light) with
respect to the propagation delay of an undisturbed signal. All reflected components of the signal
superimpose at the receiver input.
60
N
h(τ , t ) = ∑E
k =1
k (t )δ (τ k (t )) (6.6)
E k ( t ) = a k ( t ) e iφ k (t)
. (6.7)
For WSSUS channels, the phases φk (t ) are uniformly distributed in [0, 2π [ , since there is no
correlation among scatterers with different geometrical distances by definition.
● Clear
The amplitude of the direct path ray, a1 , is random and can be described by the Rician
distribution:
ak ak ak2 + 1
pdf Rice (ak ) = I exp − , (6.8)
σ 2 σ 2 2σ 2
0
SMR) and I 0 ( x ) is the modified Bessel function of the first kind and 0th order.
● Shadowing
The probability density function of the ray amplitude is a1 a Rayleigh-type with a lognormal-
ak a (6.9)
pdf Rayl (ak ) = exp − k 2
σ2 2σ
10 1 (10 log(P0 ) − µ )2 .
pdf ln ( P0 ) = ⋅ exp − 2
2π σ ln 10 P0 2σ (6.10)
● Blocked
61
near echoes, M NE , is Poisson distributed with mean λNE according to
λN
PPoisson ( N ) = e −λ . (6.11)
N!
1 ∆τ
Pexp ( ∆τ k ) = exp − k (6.12)
b b
( )
The mean power of near echoes S (τ ) = ε ak2 is exponentially decreasing
S (τ ) = S0e −δτ , k
(6.13)
or in log scaling
S (τ ) S0 d
= − τ (6.14)
dB dB dB
with d = 10 log(δ ) / 10 log(e ) . Given a mean power S (τ ) for a fixed delay τ , the amplitude a k of the near
echoes will vary around this mean value according to a Rayleigh distribution, (6.9), with 2σ 2 = S (τ ) .
The amplitudes of ak of the far echoes follow a Rayleigh distribution (6.9). The delays of the far
echoes are uniformly distributed in [τ e , τ max [ .
then the cross-correlation between the received signal and the locally generated signal will be
Rsx (τ 1 ) = ∑ a R (τ
k =1
k x 1 − ∆τ k ) ei 2πφk (6.16)
Thereby, a multipath scenario may be set up with FCM, considering that each signal path
ak x(τ 1 − ∆τ k ) e i 2πφ k
is an independent channel. The sum of all these channels will result in the
correlators' output of the multipath signal given by (6.15). The parameters ak , ∆τ k ,φ are determined
according to Section 6.2.
62
6.3 Simulation Plan
Figure 6.3 shows the implemented GNSS receiver simulator in Simulink, using the Granada FCM
blockset. The block FCM+SCM+CCM models the correlator outputs considering correlated noise and
the multipath channel model.
The block normalization estimates the signal power and then normalizes the correlator outputs by the
estimated signal power. The DLL block implements the code discriminator and code low pass filter.
The INS aiding simulates the aiding signal to the Aided PLL. The block Aided PLL, implements the
carrier phase discriminator.
The developed GNSS receiver was set up with code loop bandwidth BDLL = 1Hz , carrier loop
bandwidth BPLL = 3Hz , integration time T = 4ms and chip duration Tc = 1ns . The receiver was tested
with BPSK, BOC(1,1) and CBOC(6,1,1/11) signals. The simulations were performed for two pre
correlation bandwidths BW Tc = 5 and BW Tc = 12 . These two input bandwidths were selected, because
they allow to simulate the behaviour of very low cost receivers, that have narrower input bandwidths
and the behaviour of wideband GNSS receivers, that can take advantage of the wideband
components of the new GPS and Galileo signals.
Table 6.1 shows the multipath mitigation techniques selected for the simulation plan. The E-L spacing,
∆ , and the CCRW pulse duration, L , were chosen for each technique and each bandwidth, in a way
that the code discriminator offers a good all-round performance (in the presence of both multipath and
noise). For BOC and CBOC signals, instead of RECT and W1 CCRWs it is used New RECT and New
63
W1 CCRWs.
Bandwidth BW Tc = 5 Bandwidth BW Tc = 12
The receiver trajectory is illustrated in Figure 6.4. The directions x and y are orthogonal and belong to
a plane tangential to Earth's surface. The selected trajectory simulates the dynamics of a vehicle in an
urban environment and it has the duration of 50s.
140
120
100
80
y, m
60
40
20
-20
0 50 100 150 200 250
x, m
Figure 6.5 shows the acceleration components, the velocity and the dynamics relative (velocity, vr,, and
acceleration, ar) to the satellite of the receiver versus the simulation time.
64
Eight multipath scenarios were selected to evaluate the performance of the different techniques:
● Suburban (SUB) – Multipath model for a suburban scenario and elevation angle E=35º, [37];
● Urban I (URB1)– Simulates the multipath present in a urban environment for elevation angle
E=45º, [37];
● Urban II (URB2) – The same as the previous scenario, but for elevation angle E=25º [37];
● Urban III (URB3) – This scenario is based on the previous one, but it adds more and stronger
reflected rays.
● Urban IV (URB4) – The same as before, but with even more reflected rays and stronger
multipath amplitudes.
● Urban V (URB5) – This scenario differs from the last one in the number of near echoes.
Figure 6.6 illustrates the typical distribution of amplitudes versus the echoes delays for the all
scenarios, obtained from the multipath channel model. There is no plot for the “no multipath” scenario,
because in this scenario there are no echoes. The eight multipath environments selected to test the
techniques studied are defined in Table 6.2.
65
a) Sub-urban b)Urban I
Figure 6.6: Echoes amplitudes versus echoes delays, for the different scenarios.
66
Environment NMP SUB URB1 URB2 URB3 URB4 URB5 URB6
Time Share of Shadowing A 0 0.54 0.56 0.79 0.79 0.79 0.79 0.79
a1 , clear, Rice c [dB] - 10.7 8.5 3.2 3.2 3.2 3.2 3.2
Maximum near echoes delay τ e [ns] - 400 600 600 600 600 600 600
Delay ∆τ NE exp. b [µs] - 0.039 0.081 0.063 0.15 0.15 0.15 0.15
67
Chapter 7
Results Discussion
This Chapter is subdivided into three sections. First, the multipath mitigation techniques analysed in
Chapter 5 will be compared between them, so it may be possible to have an idea of what to expect
from the simulation results. Next, the benefits of using a aided PLL will be discussed. And finally, the
simulation results will be presented and discussed.
0.04 0.025
0.02
0.03
0.015
0.02
NELP 0.01 NELP
code tracking error, ε / Tc
Figure 7.1: Multipath error envelopes for BPSK signals, for the different techniques and bandwidths.
68
0.04 0.025
0.02
0.03
0.015
0.02
NELP 0.01 NELP
code tracking error, ε / Tc
Figure 7.2: Multipath error envelopes for BOC(1,1) signals, for the different techniques and
bandwidths.
0.04 0.02
0.03 0.015
0.02 0.01
code tracking error, ε / Tc
0.01 0.005
NELP NELP
HRC HRC
0 0
RECT RECT
TK TK
-0.01 -0.005
-0.02 -0.01
0.03 0.015
0.02 0.01
code tracking error, ε / Tc
0.01 0.005
W1 W1
W2 W2
0 0
W3 W3
W4 W4
-0.01 -0.005
-0.02 -0.01
BWTc=5 BWTc=12
α =0.5 α =0.5
-0.03 -0.015
0 0.2 0.4 0.6 0.8 1 1.2 0 0.2 0.4 0.6 0.8 1
multipath delay, τ/Tc multipath delay, τ/Tc
Figure 7.3: Multipath error envelopes for CBOC(6,1,1/11) signals, for the different techniques and
bandwidths.
Figures 7.4-7.6 show the normalized steady-state code error variance, (ε Tc ) , for the selected
2
techniques (Table 6.1) and the different signals. It can be seen that the NELP and the HRC
discriminators have lower steady-state error variance relative to CCRW discriminators. So, these
techniques should offer superior performance in the presence of noise comparative to CCRWs. The
TK based technique was not included in Figures 7.4-7.6 because it was not deduced a formula for
determining the steady-state code error variance.
69
0 -1
10 10
-1
10 -2
10
-6
-6 10 BWTc =12
10 BWTc =5
-7 -7
10 10
30 35 40 45 50 30 35 40 45 50
C/N0, dB C/N0, dB
Figure 7.4: Normalized code error variances for BPSK signals,for the different techniques and
bandwidths.
0 0
10 10
-1
-1 10
10 Normalized code error variances
-2
-2 10
10
NELP -3 NELP
10
-3 HRC HRC
10
RECT -4
RECT
W1 10 W1
-4
10 W2 W2
-5
W3 10 W3
-5
W4 W4
10 -6
10
-6
10 BWTc =5 -7
BWTc =12
10
-7 -8
10 10
30 35 40 45 50 30 35 40 45 50
C/N0, dB C/N0, dB
Figure 7.5: Normalized code error variances for BOC(1,1) signals, for the different techniques and
bandwidths.
0 0
10 10
-1
-1 10
10
Normalized code error variances
-2
-2 10
10
NELP -3 NELP
10
-3 HRC HRC
10
RECT -4
RECT
W1 10 W1
-4
10 W2 W2
-5
W3 10 W3
-5
W4 W4
10 -6
10
-6
10 BWTc =5 -7
BWTc =12
10
-7 -8
10 10
30 35 40 45 50 30 35 40 45 50
C/N0, dB C/N0, dB
Figure 7.6: Normalized code error variances for CBOC(6,1,1/11) signals for the different techniques
and bandwidths.
70
7.2 Aiding signal
As it was seen on Chapter 3, the receiver tracking loops can be aided: the PLL can be aided with a
signal, that estimates the frequency shift due to the Doppler effect; and the DLL can be aided with the
phase rate estimated by the PLL. The concept of aided loops was applied to the GNSS receiver
developed in Section 6.3. In this Section will be compared the code tracking error of aided tracking
loops with unaided tracking loops.
Two different environments are considered in this section: “no multipath” (NMP) and “urban
E=25º” (URB2). Different receiver settings are also considered (see Table 7.1). The GNSS receiver,
here considered, uses the NELP discriminator with pre-correlation bandwidth BW Tc = 12 , E-L spacing
∆ = 0.05Tc , integration time and code period Tcode = T = 0.004 s , number of chips N chip = 4092 , and
BOC(1,1) signals.
Figure 7.7: Code tracking error for aided PLL versus not aided PLL without multipath (left), and with
multipath.
The advantage of using aided loops is that lower PLL bandwidth, BPLL , can be used, because the
71
aiding signal helps the tracking loops estimating the receiver dynamics. So the estimated phase will
have less noise (as it is possible to see in Figure 7.7, the standard deviation for the aided PLL is lower
than for the unaided PLL). As the phase rate aids the DLL, then the code delay estimation will also be
more accurate and have less noise.
Although the presented results were valid only for BOC signals and the NELP discriminator, the
benefits of aided loops are extendable to all signals and discriminator functions.
Figure 7.8 shows the mean (colour bars) and standard deviation (error bars) of the code tracking error
for all multipath scenarios, pre-correlation bandwidth BWTc = 5 and different techniques and signals. It is
possible to see how the different techniques behave for each signal modulation. Lower expected
values and variances means that a technique has a better performance.
As expected, the NELP discriminator has the lowest tracking error standard deviation of all tested
techniques, but the code tracking error mean is the second highest.
HRC offers the lowest code tracking error mean for all the three modulations. When compared with the
NELP results, the code error standard deviation is higher than was expected, especially for BPSK
signals. This seems to go against what was seen in Section 7.1. However, it is important to say that
multipath error envelopes and steady-state code tracking error variance only give an idea of the
performance in the presence of multipath only and in the presence of noise only, respectively. On the
other hand, the results obtained with the Simulink model considered both the presence of multipath
and noise, and, thereby, they are more representative of the real behaviour.
RECT CCRW offers a code tracking error mean similar to NELP, but with higher standard deviation.
This fact was expected because, as it was seen in Section 5.3.1, the RECT CCRW can be shown to
be equivalent to a conventional E-L discriminator for BPSK signals, and it is similar for near echoes (
τ k < 0.5Tc ) and for BOC and CBOC signals.
W1, W2, W3 and W4 CCRWs have a similar behaviour: lower tracking error mean than the NELP and,
generally, lower standard deviation than the HRC. From these four CCRWs, W3 has lower code
tracking error mean, while W4 has lower code tracking error standard deviation; overall W3 has the
best performance of the four. Other important point to refer is that for these CCRWs, there is an
increase in code tracking error standard deviation for BOC and CBOC. This behaviour was expected
as it was seen in Section 7.1.
The proposed implementation of the TK operator, could not match up with the performance of other
72
techniques: TK has the highest code tracking error mean and standard deviation.
For normalized pre-correlation bandwidth BWTc = 5, the HRC and W3 are the techniques that have the
lowest code tracking error.
20
18
.
16
14
code tracking error, m
12 BPSK
10 BOC
8 CBOC
6
4
2
0
NELP HRC RECT W1 W2 W3 W4 TK
Figure 7.8: Code tracking error mean and variance (average of the eight scenarios) for normalized
bandwidth BWTc = 5, different techniques and modulations.
Figure 7.9 plots the mean (colour bars) and standard deviation (error bars) of the code tracking error
for all multipath scenarios, normalized pre-correlation bandwidth BWTc = 12 and different techniques
and signals. Overall, there is a performance increase (both the code tracking error mean and standard
deviation decrease) relative to the results plotted in Figure 7.8. However, CCRWs (neglecting RECT
CCRW) and HRC are the techniques that best benefit with the use of a larger pre-correlation
bandwidth, offering lower tracking error mean and standard deviation when compared to others.
The TK-based shows a slight performance increase, but, again, its performance is much far away from
the other techniques.
For normalized pre-correlation bandwidth BWTc = 12 the best techniques were HRC and W3 and W4
CCRWs. Based on the results, HRC is by far the best technique for BOC and CBOC signals, while
W3 and W4 CCRWs are superior for BPSK signals.
Until now, the results presented were the average of the tracking error mean and standard deviation
over the eight scenarios. These results can translate the overall performance of the different technique
into different environments: without multipath, weak multipath and heavy multipath. Now, Figures 7.11
and 7.10 plot the average of the code tracking error mean and standard deviation only for the
scenarios with strong multipath: Urban III, Urban IV, Urban V and Urban VI (see Table 6.2 and Figure
6.6). This way it is easier to see the differences between the different algorithms, in the presence of
multipath. Or in other words, the real capability of the different techniques to mitigate the multipath
effect.
73
20
18
.
16
code tracking error, m
14
12 BPSK
10 BOC
8 CBOC
6
4
2
0
NELP HRC RECT W1 W2 W3 W4 TK
Figure 7.9: Code tracking error mean and variance (average of the eight scenarios) for normalized
bandwidth BWTc = 12, different techniques and modulations.
In general, in Figures 7.10 and 7.11, there is an increase on the error mean and standard deviation,
relative to Figures 7.8 and 7.9. This was expected, because, as it was stated before, the effect of
multipath depends on the intensity of multipath, and for the last two Figures, the scenarios considered
were the four worse of the eight considered environments. Otherwise, in Figures 7.11 and 7.10, there
are not different observations to make relative to Figures 7.8 and 7.9: HRC and W3 CCRW, for both
pre-correlation bandwidths, and W4 CCRW for pre-correlation bandwidth BWTc = 12, continue to be the
best technique.
35
30
.
25
code tracking error, m
20 BPSK
BOC
15 CBOC
10
0
NELP HRC RECT W1 W2 W3 W4 TK
Figure 7.10: Code tracking error mean and variance (average of the four worst scenarios) for
normalized bandwidth BWTc = 5, different techniques and modulations.
74
35
.
30
25
20 BPSK
code tracking error, m
BOC
15 CBOC
10
0
NELP HRC RECT W1 W2 W3 W4 TK
Figure 7.11: Code tracking error mean and variance (average of the four worst scenarios) for
normalized bandwidth BWTc = 12, different techniques and modulations.
Finally, some words must be addressed regarding the complexity of the different techniques. The
CCRW techniques require four correlators and the discriminator has two multiplications and one
addition. The NELP requires six correlators, four additions and four multiplications. The HRC requires
ten correlators and the discriminator two multiplications and six additions. The TK is by far the most
complex. Table 7.2 compares the complexity of the different techniques considered.
Considering the computational complexity and the code tracking error mean and standard deviation,
W3 CCRW was considered the most adequate technique to use in a low cost GNSS receiver:
● it is one of the techniques with lower code tracking error mean and standard deviation (only
HRC was better);
● it has lower computational complexity than a conventional NELP discriminator and than the
HRC;
If possible, it is preferable to use wider pre-correlation bandwidth, because less signal power is lost
and, thereby, lower code tracking errors can be achieved. However, larger pre-correlation bandwidths,
require higher sampling rates and more expensive receivers.
75
Technique Correlators Multiplications Additions Overall
NELP 6 4 3 Medium
HRC 10 1 6 Medium/High
RECT
W1
W2 4 2 1 Low
W3
W4
TK 14 8 7 High
76
Chapter 8
8.1 Summary
This dissertation focused in multipath mitigation techniques suitable for civilian low cost GNSS
receivers.
The basic concepts of GNSS were introduced. GNSS navigation signals were described, namely GPS
L1 and L1C, and Galileo E1 signals. The operation of GNSS receiver tracking loops was described. It
was explained what is multipath, when it happens and what is its effect on the tracking loops.
It was given an overview of current multipath mitigation techniques, with focus on the correlation
based techniques. Several techniques were analysed: NELP, HRC, CCRW with several waveforms
and a TK based technique.
A GNSS receiver simulator was implemented in Simulink using the GRANADA FCM blockset. The
developed receiver simulator required also the implementation of a correlator noise generator, a
stochastic multipath model and some workarounds, so GRANADA FCM blockset could support MBOC
signals and CCRW. Some multipath environments were described and some techniques were picked
up for simulation.
The simulation results were presented and discussed, and the techniques suitable for implementation
on mass market civilian receivers were identified.
8.2 Conclusion
The purpose of this thesis was to study and identify multipath mitigation techniques for urban
scenarios, which are suitable for low cost GNSS receivers. The main research objectives were
accomplished: the GNSS principles, different multipath mitigation techniques giving special attention to
the correlation based techniques were studied and multipath mitigation techniques suitable for low
cost GNSS receiver were identified.
All the techniques analysed operate at the tracking loops level and can be implemented in mass
market receiver. However they behave differently in the presence of multipath and noise:
● NELP is not a bad option: it works well in the presence of weak multipath and its performance
77
is good in the presence of noise. The negative point is that, in the presence of stronger
multipath, the tracking error is large when compared with other techniques. The use of new
signals, as BOC(1,1) and CBOC(6,1,1/11) signals, helps the NELP discriminator to achieve
lower code tracking errors.
● HRC offers good performance. However, it has the disadvantage that, using CCRWs, it is
possible to have similar performance and lower computational complexity.
● The performance of CCRWs are affected by the selected waveform. With exception to the
RECT and New RECT CCRW, the tested CCRW presented good performance, however W3
CCRW offered the best performance among CCRWs.
● TK was the most complex (from the computational point of view), but the worse technique.
The TK operator may be a powerful algorithm, as it was seen in [21], but it fails as it was
shown in Section 5.4. Another disadvantage was the fact that from all the tested algorithms,
this was the one that required a higher number of correlators and, hence, the most
computationally heavier.
From all techniques, W3 CCRW is the one that offers the lowest computational complexity (as the
others CCRWs) and the tracking performance nearest to the HRC. Thereby, from the tested
techniques, this one was considered the most suitable for low cost receivers.
Other important conclusion, is that using larger pre-correlation bandwidths, it is possible to have a
lower tracking error. Nevertheless, wider bandwidth required higher sampling frequencies and so,
expensive hardware. Thus, if the cost does not exceed the receiver budget it is preferable to use
larger bandwidth.
The techniques were tested in a virtual environment: the Matlab Simulink. The next step is to test the
techniques in a real GNSS receiver with real signals (e.g. GPS L1). The virtual environment can give a
very good idea how the different algorithms and signals behaves, but it can not replace the tests in
real environments.
78
References
[1] M. Braasch, Isolation of GPS Multipath and Receiver Tracking Errors, Navigation: J. of the
Inst. of Navigation, vol. 41, no. 4, Winter 1994-95, pp. 415-434.
[2] W. B. Parkinson, J. J. Spilker Jr., Global Positioning System: Theory and Applications,
American Institute of Aeronautics & Astronautics, Inc., Washington, D.C., vol. 163 and 164 of
Progress in Astronautics and Aeronautics, 1996.
[3] S. Lazar, Modernization and the Move to GPS III, Crosslink, Summer 2002, pp. 42-46.
[4] P. Misra, P. Enge, Global Positioning System - Signals, Measurements, and Performance,
Ganga-Jamuna Press, Lincoln, MA, 2006.
[5] J.-A. Avila-Rodriguez, G. W. Hein, S. Wallner, J. L. Issler, L. Ries, L. Lestarquit, A. de Latour, J.
Godet, F. Bastide, A. R. Pratt, J. Owen, The MBOC Modulation: The Final Touch to the Galileo
Frequency and Signal Plan, ION GNSS 2007, Fort Worth, TX, Sept. 2007, pp. 1515-1529.
[6] G. Gibbons, Galileo Redirecting a Stuttering Program, Inside GNSS, Fall 2007, pp. 18-22.
[7] Galileo Project Office, GIOVE-A Navigation Signal-In-Space Interface Control Document, ESA,
2007
[8] E. Kaplan, Understanding GPS: Principles and Applications, Artech House, Norwood, MA,
1996.
[9] S. Haykin, An Introduction to Analog and Digital Communications, Wiley, USA, 1989.
[10] F. Nunes, F. Sousa, J. Leitão, Gating functions for multipath mitigation in GNSS BOC signals,
IEEE Transactions on Aerospace and Electronic Systems, vol. 43, no. 3, July 2007, pp.
951-964.
[11] J. W. Betz, The Offset Carrier Modulation for GPS Modernization, ION NTM 1999, San Diego,
CA, Jan. 1999, pp. 639-648.
[12] J.-A. Ávila-Rodríguez, S. Wallner, M. Paonni, G. W. Hein, On Potential CBOC/TMBOC
Common Receiver Architectures, ION GNSS 2007, Fort Worth, TX, Sept. 2007, pp.
1530-1542.
[13] Draft IS-GPS-800 Navstar GPS Space Segment/User Segment L1C Interfaces, 2008
[14] M. Braash, A. Van Dierendonck, GPS Receiver Architectures and Measurements,
Proceedings of the IEEE, vol. 87, no. 1, Jan. 1999, pp. 48-64.
[15] S. Haykin, Communication Systems, Wiley, 2001.
[16] P.F. da Silva, J.S. Silva, A. Caramagno; M. Wis, M. Eulalia Pares, I. Colomina; A. Fernandez,
J. Diez, V. Gabaglio, IADIRA: Inertial Aided Deeply Integrated Receiver Architecture, ION
GNSS 2006, Sept. 2006, pp. 2686-2694.
[17] D. Aloi, F. Van Graas, Ground-multipath mitigation via polarization steering of GPS signal,
IEEE Transactions on Aerospace and Electronic Systems, vol. 40, no. 2, April 2004, pp.
536-552.
[18] L. J. Garin, The "Shapping Correlator", Novel Multipath Mitigation Technique Applicable to
GALILEO BOC(1,1) Modulation Waveforms in High Volume Markets, The European
79
Navigation Conference, 2005.
[19] A. Van Dierendock, P. Fenton, T. Ford, Theory and Performance of Narrow Correlator Spacing
in a GPS receiver, Navigation: Journal of The Institute of Navigation, USA, vol. 39, no. 3, Fall
1992, pp. 265-283.
[20] L. Garin, Dr. F. Van Diggelen, J.M. Rousseau, Strobe & Edge Correlator - Multipath Mitigation
for Code, ION GPS 1996, Kansas City, MS, Sept. 1996, pp. 657-664.
[21] E. S. Lohan, R. Hamila, A. Lakhzouri, M. Renfors, Highly Efficient Techniques for Mitigating
the Effects of Multipath Propagation, IEEE Transaction on Wireless Communications, vol. 4,
Jan. 2005, pp. 149-162.
[22] G. McGraw, M. Braasch, GNSS Multipath Mitigation Techniques using Gated and High
Resolution Correlator Concepts, ION NTM 1999, Jan. 1999, pp. 333-342.
[23] Y. C. Lee, Compatibility of the New Military GPS Signals with Non-Aviation Receivers, ION AM
2002, Albuquerque, NM, June 2002, pp. 581-597.
[24] V. Veitesl, A. Zhdanov, M. Zhodzishsky, The Mitigation of Multipath Errors by Strobe
Correlators in GPS/GLONASS Receivers, GPS Solutions, vol. 2, no. 2, 1998, pp. 38-45.
[25] A. Zhdanov, V. Veitsel, M.Zhodzishky, J. Asjaee, Multipath error reduction in signal processing,
ION-GPS 1999, Nashville, TN, Sept. 1999, pp. 1217-1223.
[26] L. Garin, J. Rousseau, Enhanced strobe correlator multipath rejection for code & carrier, ION
GPS 1997, Kansa City, MS, Sept. 1997, pp. 559-568.
[27] F. Nunes, F. Sousa, J. Leitão, Improving Multipath Mitigation in GPS/Galileo BOC signals with
Gating Functions, ION AM 2005, Cambridge, MA, June 2005, pp. 498-507.
[28] F. Sousa, F. Nunes, J. Leitão, Strobe Correlator Design for Multipath Mitigation in BOC GNSS
Receiver, Proc. IEEE Position, Location and Navigation Symp., San Diego, CA, vol. 1, April
2006, pp. 1-8.
[29] J. F. Kaiser, On a simple algorithm to calculate the 'energy' of a signal, Proc. IEEE Int. Conf.
Acoustics, Speech, and Signal Processing, Albuquerque, NM, April 1990, pp. 381-384.
[30] P. Marago, J. F. Kaiser, T. F. Quatieri, On amplitude and frequency demodulation using energy
operators, IEEE Transactions on Signal Processing, vol. 41, April 1993, pp. 1532-1550.
[31] R. Hamila, E. S. Lohan, M. Renfors, Subchip multipath delay estimation for downlink WCDMA
system based on Teager-Kaiser operator, IEEE Communications Letters, vol. 7, Jan. 2003,
pp. 1-3.
[32] R. Hamila, J. Astola, J. A. Cheikh, M. Gabbouj, M. Renfors, Teager energy and the ambiguity
function, IEEE Transactions on Signal Processing, vol. 47, Jan. 1999, pp. 260-262.
[33] D. Castro, J. Diez, A. Fernández, Continuously-Update Multipath Mitigation Technique based
on the Teager-Kaiser Operator, ENC GNSS 2007, Geneva, Switzerland, May 2007, pp.
301-307.
[34] J. Silva, P. Silva, A. Fernández, J. Diez, J. Lorga, Factored Correlator Model: A Solution for
Fast Flexible, and Realistic GNSS Receiver Simulations, ION GNSS 2007, Forth Worth, TX,
25-28 Sept. 2007, pp. 2676-2686.
80
[35] GRANADA FCM blockset, Product Documentation, DEIMOS Engenharia, S.A., 2007
[36] J. Geist, Computer Generation of Correlated Gaussian Random Variables, Proceedings of the
IEEE, vol. 67, no. 5, May 1979, pp. 862-863.
[37] A. Jahn, H. Bischl, G. Heiβ, Channel Characterization for Spread Spectrum Satellite
Communications, Proceedings of the IEEE 4th International Symposium on Spread Spectrum
Techniques & Applications, Mainz, Germany, Sept. 1996.
81
Appendix A
Cross-Correlation Function
Let a (t ) = Π[(t − ta ) Ta ] and b(t ) = Π[(t − tb ) Tb ] stand for two unity rectangular pulses of duration Ta
+1 +1
0 0
-Ta/2 0 +Ta/2 -Tb/2 0 +Tb/2
t − ta + tb Ta t − ta + tb
RAB = Ta Tb Λ − Λ , (A.1)
Ta + Tb Ta + Tb Ta − Tb
where Λ (t ) is a triangular pulse zero centred, with Λ (t ) = 0, t > 1 and Λ (0) = 1 . Figure A.2 shows the
Ta.Tb
0
-(Ta+Tb)/2 -(Ta-Tb)/2 0 +(Ta-Tb)/2 +(Ta+Tb)/2
82
Appendix B
Noise Analysis
The code discriminator response at time t = kT , where T is the integration time, can be linearised
around ε = 0 as [10]
d k = g0ε k + N k , (B.1)
where g 0 is the discriminator gain, ε k is the code tracking error at time t = kT , and N k is a zero-
mean Gaussian random variable with variance σ d2 . For finite bandwidths the discriminator gain
The transfer function of the linearised closed code loop in the z-domain is [10]
g0 F ( z )V ( z )
H ( z) = (B.2)
1 + g0 F ( z )V ( z )
where F (z ) and V (z ) are, respectively, the loop filter and the numerically controlled oscillator transfer
functions. Thereby, it can be shown that the steady-state normalized code error variance is given by
2 BDLLTσ d2
ε2 = (B.3)
g02
Considering weak noise condition (neglecting the contribution of the noise x noise terms), the variance
4
σ d2 ≈ R 2~ ( ∆ 2)[1 − RX (∆ )] , (B.4)
(C N 0 )T XX
and the discriminator gain is g0 = −4 RX~X ( ∆ 2) R′X~X ( ∆ 2) .
83
1
σ d2 ≈
(C / Ν 0 )T
{1 + λ [1 − R (∆ )] − R (λ∆ ) + 2λ [R ((λ + 1)∆ / 2) − R ((λ − 1)∆ / 2)]},
2
X X X X (B.5)
[
with the discriminator gain given by g0 = 2 RX′~X (λ ∆ 2) − λR′X~X ( ∆ 2) . ]
● For Code Correlation Reference Waveforms:
1 L Tc
σ d2 ≈ R 2~ (0 ) , (B.6)
2 (C N 0 )T XX
and the discriminator gain is given by g0 = RX~X (ε ) RX~W (ε ) [ ]′ = RX~X (0) R′X~W (0) .
ε =0
84
Appendix C
Tables of Results
ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2
NELP -0.11 0.44 0.02 0.45 0.20 0.42 1.52 0.45 12.07 2.65 20.43 5.08 20.21 5.21 24.12 9.73
139.2
HRC -0.12 1.14 -0.17 2.86 0.20 2.07 0.29 11.15 0.30 7.30 -0.79 14.92 1.03 11.12 8.44
1
RECT -0.01 0.23 0.14 0.26 0.23 0.25 1.22 0.50 10.66 11.45 19.85 15.43 19.61 20.57 24.70 10.68
W1 0.01 1.20 0.03 1.39 0.10 1.22 0.99 1.37 5.05 5.15 11.46 11.35 10.50 9.01 15.29 9.31
W2 0.04 1.27 0.19 1.19 0.02 1.33 0.76 0.97 5.03 4.93 10.59 10.55 10.35 8.07 14.55 8.03
W3 -0.08 2.81 -0.09 2.51 -0.30 3.00 0.93 2.47 2.54 8.12 6.50 12.28 6.74 12.77 9.28 13.25
W4 -0.16 0.67 0.04 0.65 -0.04 0.71 0.76 0.48 4.93 2.48 8.73 5.40 9.57 8.11 13.74 11.25
TK 0.02 12.59 0.30 14.04 0.43 13.72 3.44 17.21 21.13 43.66 25.97 47.50 27.00 49.73 30.17 49.08
ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2
NELP 0.04 0.13 0.12 0.14 0.12 0.15 1.43 0.26 8.65 1.45 15.20 3.28 15.95 5.20 19.85 7.57
HRC -0.06 0.45 0.24 0.84 0.14 0.75 0.15 2.76 0.30 3.62 1.48 12.34 0.48 5.16 1.01 25.80
RECT -0.02 0.23 -0.01 0.29 0.15 0.31 1.13 0.88 7.00 4.02 14.90 10.85 14.81 12.43 18.43 10.93
W1 -0.02 1.26 -0.05 1.39 0.26 1.00 0.95 1.20 4.83 4.03 10.07 9.38 10.40 9.03 14.45 10.39
W2 0.25 4.30 1.15 7.30 0.30 4.80 0.67 4.58 5.50 14.66 11.41 16.15 12.47 19.17 14.80 19.92
W3 0.05 6.72 -0.99 8.20 -0.37 10.89 0.62 7.14 2.69 13.56 7.53 13.59 6.42 20.78 9.17 15.05
W4 -0.12 2.92 0.05 2.85 0.01 2.92 0.88 4.46 4.16 6.25 9.50 14.06 11.99 18.99 15.43 16.18
W5 -0.10 6.23 0.04 6.84 0.24 6.57 3.28 9.73 15.59 31.80 19.71 34.39 21.04 37.73 23.16 42.28
85
NMP SUB URB1 URB2 URB3 URB4 URB5 URB6
ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2
NELP 0.08 0.17 -0.07 0.17 0.21 0.16 1.47 0.24 9.20 1.81 15.55 3.19 15.54 4.28 19.82 5.27
HRC -0.05 0.52 0.13 0.91 0.25 0.74 0.38 2.29 0.89 3.93 3.96 42.22 1.03 20.37 1.99 7.95
RECT -0.01 0.26 0.02 0.28 0.07 0.36 1.14 0.34 7.35 5.24 12.72 10.18 14.81 10.73 18.30 15.01
W1 -0.18 1.15 0.09 1.23 0.02 1.35 0.99 1.87 4.86 2.56 9.52 6.22 10.39 8.77 14.75 9.52
W2 -0.21 5.18 0.47 5.30 -0.46 5.14 1.28 6.63 6.29 11.45 10.13 19.15 11.02 20.77 13.81 27.20
W3 -0.26 7.36 0.13 7.11 -0.51 9.44 -0.10 9.31 2.27 10.64 7.37 19.19 6.02 19.15 9.43 18.16
W4 0.06 3.10 0.41 3.15 0.06 2.62 0.64 4.13 4.37 5.77 10.77 16.23 8.90 10.55 13.07 12.16
TK 0.06 7.46 0.25 8.68 0.19 8.62 3.46 13.01 17.54 40.35 20.96 36.24 20.88 39.04 22.89 42.13
ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2
-0.03 0.18 -0.01 0.21 0.12 0.18 1.07 0.20 7.63 1.42 17.10 3.01 17.48 4.57 22.80 5.12
NELP
89.00 0.50 -0.08 1.04 0.01 0.77 0.34 1.79 0.39 4.52 -2.38 15.02 0.84 5.51 3.44 35.62
HRC
-0.02 0.05 -0.02 0.07 0.08 0.06 0.84 0.14 6.03 3.32 16.46 14.73 16.28 14.66 22.74 15.87
RECT
-0.05 0.15 -0.02 0.29 -0.04 0.19 0.37 0.29 1.92 0.60 4.59 2.82 4.81 2.04 7.03 5.82
W1
-0.08 0.17 0.03 0.33 0.01 0.21 0.36 0.25 2.27 0.85 4.57 1.53 4.02 2.51 7.03 4.44
W2
0.01 0.42 0.06 0.55 -0.09 0.46 0.19 0.69 0.70 0.84 2.08 2.54 1.98 1.65 3.18 4.21
W3
0.00 0.13 -0.04 0.13 -0.01 0.13 0.41 0.14 1.72 0.74 3.77 1.81 3.52 2.50 5.90 4.33
W4
-0.05 5.73 0.20 5.63 0.41 5.29 2.01 6.79 18.28 34.45 25.16 36.59 25.71 33.75 29.15 39.34
TK
ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2
NELP -0.05 0.06 0.10 0.05 0.10 0.07 0.83 0.11 5.14 0.65 11.01 1.91 12.16 3.29 16.57 5.33
HRC 0.06 0.16 -0.05 0.35 0.13 0.26 0.18 0.60 -0.15 1.58 0.08 2.45 0.36 6.17 -0.84 6.45
RECT -0.02 0.04 0.01 0.04 0.05 0.05 0.69 0.10 3.77 1.07 9.78 6.27 10.11 7.65 16.81 10.50
W1 -0.04 0.25 0.03 0.18 0.04 0.18 0.21 0.24 1.72 0.70 4.55 3.39 3.95 1.60 8.21 3.03
W2 0.04 0.77 -0.09 0.88 -0.05 0.81 0.35 0.47 1.73 1.79 3.94 2.74 5.94 5.10 7.43 9.47
W3 -0.20 2.03 -0.32 2.45 -0.06 2.59 -0.17 4.17 0.50 4.66 2.72 8.40 1.77 5.07 2.80 4.61
W4 -0.02 0.50 -0.15 0.47 0.21 0.63 0.52 0.73 1.68 1.64 3.40 2.55 3.63 1.74 5.27 3.56
W5 -0.02 2.55 0.02 2.60 0.24 2.79 1.64 3.86 12.82 21.11 18.63 27.52 19.37 33.15 21.94 34.06
86
NMP SUB URB1 URB2 URB3 URB4 URB5 URB6
ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2 ε ε2
NELP 0.01 0.03 0.09 0.04 0.13 0.05 0.66 0.05 3.18 0.25 7.13 0.90 7.09 1.09 10.95 1.75
HRC 0.00 0.07 -0.06 0.15 0.04 0.13 0.26 0.45 0.20 1.21 -0.18 1.03 1.28 3.32 -0.18 2.52
RECT 0.00 0.05 0.05 0.07 0.11 0.06 0.44 0.11 4.13 1.52 8.64 4.99 9.34 5.97 17.97 6.54
W1 0.04 0.23 0.10 0.26 0.05 0.24 0.35 0.33 1.80 0.67 4.43 1.91 4.29 1.75 6.66 3.64
W2 0.09 0.78 0.34 0.78 -0.10 0.71 0.17 0.79 1.16 1.08 3.77 2.87 3.85 1.84 5.74 5.18
W3 0.10 2.00 -0.19 2.01 -0.11 2.10 0.06 2.70 0.71 3.75 2.81 7.60 1.89 4.84 3.77 7.79
W4 -0.01 0.44 -0.21 0.48 -0.06 0.62 0.29 0.72 0.90 0.71 2.79 1.59 2.48 1.68 4.50 3.34
TK -0.03 0.56 0.07 0.60 0.17 0.61 1.01 0.93 6.41 8.10 12.86 15.51 13.93 18.59 17.90 25.69
87