Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
Page 1 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
Joint Detection and Estimation of Weak GNSS
Signals with Application to Coarse Time
Navigation
Zhe He and Mark Petovello
Position, Location And Navigation (PLAN) Group
Department of Geomatics Engineering
Schulich School of Engineering
University of Calgary
BIOGRAPHY
Zhe He is currently a post-doctoral fellow/research
associate in the Position, Location And Navigation
(PLAN) Group in the Department of Geomatics
Engineering at the University of Calgary. He received his
B.E. and M.Sc. from Shanghai Jiao Tong University,
majoring in Guidance, Navigation and Control, and Ph.D.
in Geomatics engineering from the University of Calgary.
His research interests are statistical estimation theory
applied to GNSS, inertial and integrated navigation
systems.
Mark Petovello is a Professor in the Position, Location
And Navigation (PLAN) group, Department of Geomatics
Engineering. He has over 15 years of experience with
various navigation research areas including software
receiver development, satellite-based navigation, inertial
navigation, reliability analysis and dead-reckoning sensor
integration. He is also registered as a professional
engineer in the province of Alberta, Canada.
ABSTRACT
GNSS receivers have already widely been used in vast
applications. The focus of this paper is to improve the
capability in harsh environments. In a high sensitivity
receiver, a conventional approach is to first detect signals
on satellite-by-satellite basis, then generate measurements
and estimate a position solution.
To further enhance the receiver performance, researchers
have proposed to non-coherently make use of all-in-view
satellite information. Examples of this include ‘collective
detection’ and ‘maximum likelihood positioning’. Both
approaches investigated the potentials of this ‘joint’
approach either in a detection aspect by evaluating the
receiver operating characteristic (ROC) or an estimation
aspect based on an estimator’s Cramer-Rao lower bound.
The term ‘joint’ is used in this paper because this
approach automatically combines detection (of all
available satellites) and estimation (navigation solution)
process together.
In this paper, maximum a posteriori (MAP) detection and
estimation analysis of conventional block processing,
receiver and ‘joint’ approach receiver has been conducted,
and comparisons have been worked out. Metrics such as a
posteriori likelihood ratio/detection rate is derived, which
depend on both the estimation and detection metrics. In
the end, a joint approach coarse-time high sensitivity
software receiver with long non-coherent integration has
been implemented and demonstrated. Real data from
indoor environment shows promising improvements over
conventional coarse-time block processing receiver.
INTRODUCTION
With a growing demand for more accurate location in
smart phones or other mobile devices, there is also an
increased demand for better solutions from GNSS
receivers. Signal attenuation, multipath, and even
blockage happen quite often in many scenarios for
pedestrian users. All of these present challenges for signal
tracking as well as positioning.
When a signal is strong enough to be tracked, multipath is
a major source of error. Notable among multipath
mitigation methods was multipath estimation technology
developed and reported in Townsend et al (1995), this
paper introduced the first widely known and practical
method based on estimation theory, such as MEDLL.
These methods are very practical for wide-band receivers
with narrow correlator spacing. Once the measurements
are generated, the solution can still be improved by
applying blunder detection or receiver autonomous
integrity monitoring (RAIM). But In some challenged
scenarios for pedestrian or vehicular users, satellite
availability can significantly limit the reliability tests. An
insightful case study is presented in O'Keefe et al (2012),
which indicates that with limited input, the reliability test
could help very little.
Page 2 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
As for mass-market receivers, both the hardware and
software methodologies are very different positioning
capability in hostile environments is one of the valued
features. Many techniques have been developed such as
high-sensitivity assisted GNSS (van Diggelen, 2009;
Ayaz et al, 2010). The basic problem is how to generate
more reliable measurements in adverse signal conditions.
Researchers have previously discussed the potential of
using long coherent integration to gain additional
processing gain for signal tracking, such as reported in
Pany et al (2009). This approach relies heavily on the
quality of oscillator, as is investigated in Gaggero &
Borio (2008). Other than that, external bit aiding is often
needed to wipe off the navigation bits over integration
intervals, and requires relatively accurate timing
information which is quite difficult to obtain directly in
harsh environments. On the other hand, non-coherent
integration has fewer requirements, but suffers squaring
loss.
To further enhance the receiver performance, other
researchers have already investigated the benefits of
simultaneously and collectively using all-in-view satellite
information for acquisition or signal detection, such as
collective detection in DiEsposti (2007), Axelrad et al
(2011), Cheong (2012) and Esteves et al (2014) to name a
few. The detection performance has been investigated and
compared to the conventional single satellite acquisition.
Snapshot positioning is also discussed with a focus on
reducing the computation load or search dimensions. On
the other hand, some researchers have investigated the
benefits of using all-in-view satellites simultaneously
from a final solution estimation aspect. Closas et al (2007)
analyzed the Cramer lower bound of such maximum
likelihood positioning algorithms, and simulated
positioning performance under multipath conditions. The
performance of maximum likelihood velocity estimates in
multipath environments with GPS and GLONASS has
been reported in He et al (2012). Other researchers also
use non-coherent combining of all-in-view satellite
information as a tracking process, and it is sometimes
called ‘navigation domain receiver’. Some high level
implementation can be found in Weill (2010), Lin et al
(2011), and He (2013).
Recognizing that current literature on collective detection
or maximum likelihood positioning is focused either on
detection or estimation aspect, this paper tries to analyze
the problem by unifying both steps. Similar concepts have
been reported in the literature, which use linear Gaussian
models with focus on communication or power systems
such as Olmo et al (2000) and Chen et al (2013). In our
context, the general problem is similar but the signal
models are more complex, due to the unknown carrier
phase in fading multipath environments. To handle this,
the code phase is assumed to be a Gaussian random
variable, which may have some associated a priori
information associated with it, and the carrier phase is
assumed uniformly distributed over zero to 2π, and also
the received signal power is assumed deterministic. In this
way, a detector performance metric must also rely on the
a priori information of estimator. By extension, the
estimator performance metric will also depend on detector
information
After formulating the problem, this paper further
investigates the benefits of the joint approach as
compared to conventional approach (serial processing).
To further verify the benefits of the joint approach, a real
indoor experiment is conducted. Coarse-time software
receiver with conventional approach and joint approach
was implemented and results are presented.
The focus here is given to coarse time GNSS receivers,
and uses only long non-coherent integration. The assistant
information is some a priori timing and position and
ephemeris. For the simplicity, only GPS L1 C/A signal is
discussed in the paper, although results should apply
equally to other signals and systems. The ‘signal detection’
refers to a verification scheme based on block processing
correlator values. ‘Signal estimation’ means estimation of
a signal’s parameters such as code phase from single
satellite’s correlator outputs. Solution estimation means
computation of a navigation parameter including position,
clock bias and coarse time in our context. Solution
detection indicates a process that compares and selects
between a null solution and a valid solution hypothesis. In
the conventional approach, once a solution is estimated
from navigation filter, the solution is always assumed
valid, thus there is no solution detection concept. The
‘joint’ approach indicates the simultaneous use of all-in-
view satellite signals for solution detection and estimation
or equivalently saying the ‘overall’ signal detection and
estimation combining information from different satellite
tracking channels.
In the following sections, after briefly introducing the
conventional block processing high sensitivity receiver
architecture, a MAP detection and estimation analysis on
this conventional approach is discussed. Then MAP
analysis is extended to the joint case. Performance metrics
such as a posteriori likelihood ratio, detection rate are
discussed. After that, implementation details are
summarized. Finally, a real indoor experiment for coarse
time positioning is demonstrated and analyzed.
IMPLEMENTATION/BACKGROUND
In this section, the implementation aspect of the receivers
discussed in the paper is briefly reviewed. A conventional
block processing receiver is shown in Figure 1, and the
equations are later derived in MAP analysis section. The
incoming signal of each satellite first performs Doppler
Page 3 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
removal and correlation (DRC) with a locally generated
replica of the signal. Block of correlator outputs with
extended integration time can be used to estimate the code
phase and Doppler errors, but a discriminator could also
be used. In order to further reduce the noise, a loop filter
can be applied. Once the satellite can be declared present,
and its code phase can be used for a navigation solution.
When vector-based tracking is enabled (indicated by the
red lines in the figure) the local numerical controlled
oscillators (NCO’s) can be updated from the navigation
solution. This effectively utilizes some information
among all satellites in view, and provides some additional
benefits as reported in Lashley & Bevly (2011) and
Petovello et al (2008).
Figure 1: Conventional scalar/vector-based block
processing receiver; scalar receiver disable red line
and enable yellow; vector receiver vice versa
The implementation diagram of the conventional block
processing receiver used in this work is shown in Figure 2
where the correlator with the largest amplitude/power is
used to determine the ML code phase and Doppler
estimates. The peak power is further compared with a
threshold in order to decide the presence/absence of the
signal. Measurements for signals that are deemed present
are used for a five-state (position, clock bias and coarse-
time) Kalman filter to compute the coarse time solution.
Once the solution is computed it will be used to further
control the NCO of each individual channel. When the
yellow line is enabled, and red lines are disabled, it
indicates the scalar receiver, since the NCO is controlled
only by individual channels. When the red line is enabled,
it then represents a vector receiver, which means the NCO
for each tracking channel in controlled from the
navigation solution. The corresponding NCO updates
equations have also been developed using MAP analysis
in the next section.
Figure 2: Conventional vector-based block processing
receiver implementation
The joint approach receiver architecture is shown in
Figure 3. The major difference is that all the correlators of
each channel are projected into the PVT (including coarse
time in our context) domain, and the PVT is selected as
the one with the largest accumulated power. And this is
maximum likelihood PVT solution (including coarse
time), which is then filtered. And contribution from each
signal is proportional to its signal strength.
Figure 3: Joint approach scalar/vector-based receiver;
scalar receiver disable red line and enable yellow;
vector receiver vice versa
The switch shown in Figure 2 indicates the hard decision
in the conventional block processing receiver. Unless the
signal is stronger than a pre-defined threshold, the
information from that signal will not be used in the
solution. As will be seen in the MAP detection and
estimation analysis, this information loss causes certain
DRC/‘Locate
Peak’
Discrimination
/ Filtering
Local Signal
Generator Channel 1
Channel K
Navigation Filter
Equation (10)
Equation (11)
Equation (14)
Block of
Correlators
EKF PVT
Estimation
Check power level
Signal
Generator
ML Peak
Detection
Joint Processing ‘Locate
Peak’ in the solution domain
DRC/‘Locate
Peak’
Discrimination
/ Filtering
Local Signal
Generator Channel 1
Channel K
Equation (24),
Equation (27)
Page 4 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
level of performance degradation as compared to the joint
approach receiver.
METHODOLOGY
Given the receiver implementations in the previous
section, this section aims to analyze their relative
performance using a MAP approach.
Correlator Models
The multiple correlators can be placed with fixed delay
within valid support of the autocorrelation function, i.e.,
(−1,1) chips in C/A code case as shown in Figure 4. In
this figure, the term 𝜏𝑘− is the a priori estimate of the code
phase for this particular satellite. It can either be
computed from vector feedback or from other augmented
systems such as IMUs or vision tracking systems. For
example, it can be computed as 𝜏𝑘− = 𝐡𝑘𝛉
− , where 𝐡𝑘 is
the projection matrix for this particular satellite, and θ−
contains the a priori position and clock information and
its corresponding covariance matrix is defined as 𝐂𝛉−. τk
is the actual code phase, and the blue lines/dots indicate
the correlators with step of d.
Figure 4: Multiple correlators placed on correlation
triangle
With multiple correlators, a discriminator can be used to
estimate the errors (Δτk = τk − τk−) so that the updated
estimate τk− + Δτk will approach the truth. Although this
is not actually done in the receiver implementation, the
concept of a discriminator is useful for the following
analysis. To this end, the discriminator outputs are
modeled as:
𝐻0: {𝑧𝐼,𝑘 = 𝑙(𝒚𝐼,𝑘) = 𝜂𝐼,𝑘
𝑧𝑄,𝑘 = 𝑙(𝒚𝑄,𝑘) = 𝜂𝑄,𝑘
𝐻1: {𝑧𝐼,𝑘 = 𝑙(𝒚𝐼,𝑘) = √𝐶𝑘Δ𝜏𝑘𝑐𝑜𝑠𝜑𝑘 + 𝜂𝐼,𝑘
𝑧𝑄,𝑘 = 𝑙(𝒚𝑄,𝑘) = √𝐶𝑘Δ𝜏𝑘𝑠𝑖𝑛𝜑𝑘 + 𝜂𝑄,𝑘
(1)
In Equation (1), 𝑧𝑘 = 𝑧𝐼,𝑘 + 𝑗𝑧𝑄,𝑘 are the discriminator
test statistics, which are a function of a grid of correlator
outputs. 𝒚𝐼,𝑘 is a vector composed of grids of multiple
correlator’s in-phase component, and 𝒚𝑄,𝑘 is the
corresponding quadrature component. 𝑙(𝒚) is the
discriminator function which uses multiple correlator
information to estimate errors. A straight forward
discriminator is a least-squares (LSQ) based discriminator
in which is based on L2 norm (Pany 2010), In other cases,
the L∞ norm discriminator can be used which is simply
choosing the maximum peak and compute the
corresponding error term Δ𝜏𝑘 . 𝐶𝑘 is the signal
power. 𝜂𝐼,𝑘, 𝜂𝑄,𝑘 are the noise terms which are the output
from discriminator function. 𝜑𝑘 is unknown carrier phase.
In many multipath environments, due to the fading
phenomenon, reliable phase tracking is difficult. Thus,
this carrier phase term can be treated as random variable
uniformly distributed over zero to 2π.
In our context, block of correlators with additional non-
coherent summation is used in order to get a good
estimate of code phase (L∞ norm discriminator). As such,
the noise statistics are only determined by the peak
correlator, which matches our implementation. In practice,
the ML code phase is determined as Equation (2):
�̂�𝑘,𝑀𝐿 = 𝑎𝑟𝑔max𝜏√∑|𝑦𝑘,𝑛(𝜏)|
2𝑁
𝑛=1
(2)
The corresponding peak amplitude √∑ |𝑦𝑘,𝑛(𝜏)|2𝑁
𝑛=1 will
tend to the summation of a signal component √𝑁𝐶𝑘{1 −
(�̂�𝑘,𝑀𝐿 − τk)} and a noise term (depending on this single
correlator). With sufficiently close spacing of the
correlators, it is assumed that �̂�𝑘,𝑀𝐿 ≈ τk. Also, given a
priori code phase values ( τk− ), the number of non-
coherent integration 𝑁 as well as a reasonable estimate of
signal power 𝐶𝑘, the corresponding norm of non-coherent
discriminator output mean value will be the peak
amplitude subtracted by a deterministic part as shown in
Equation (3)
|𝑧�̅�𝐶,𝑘| = ∑|�̅�𝑘,𝑛(�̂�𝑘,𝑀𝐿)|2
𝑁
𝑛=1
−√𝑁𝐶𝑘{1 − (�̂�𝑘,𝑀𝐿 − τk−)}
≈ √𝑁𝐶𝑘Δ𝜏𝑘
(3)
Equation (3) can be considered as an extension of
Equation (1) with non-coherent summation . As noted
above, the noise statistics of such discriminator will only
relying on the peak correlator outputs.
Equation (1) also implies that the discriminator needs to
know whether the signal is present (𝐻1) or not (𝐻0), in
order to avoid use of noise to update local NCO. In the
conventional approach, the receiver will first validate
certain correlator outputs with certain detectors such as
those based on the Neyman-Pearson criterion. If signal is
Code phase 𝜏𝑘 𝜏𝑘−
𝑑
𝑑
𝜏𝑘− − 𝑑 𝜏𝑘
− + 𝑑
Page 5 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
present, then discriminator will be used to estimate the
errors. If signal is declared absent, then the code phase
error cannot be estimated for this satellite alone, and no
measurement can be generated for use in the navigation
solution.
MAP Analysis of Conventional (Serial Non-Coherent)
Approach
The traditional detection performance analysis often
focuses on the acquisition stage, which indicates no use of
a priori information either because of the a priori
information is so non-informative or a very large search
bin has been used. The test statistics are based on
correlators in a single bin (i.e., for a single code phase and
Doppler), and the signals are assumed to be deterministic
but unknown. By applying the Neyman-Pearson criterion,
a false alarm rate can be fixed to design such detectors. In
the context of this work, the focus is given to exploring
the benefits of using a priori information (such as a
position/clock estimate from a previous navigation
solution (possibly augments with other systems like
inertial or vision) for (i) the signal detection (𝐻0/𝐻1), (ii)
signal parameter estimation (code phase/Doppler) as well
as (iii) navigation solution estimation.
As it is shown in Figure 2, a decision Υ (switch between
signal detection and signal estimation block) can either be
zero or one. And the code phase estimates are relying on
this hard decision (Υ) . In order to compare with the
proposed joint approach, this conventional method which
separates the signal detection and signal estimation as
well as solution estimation is called serial approach. To
better understand how a priori information will contribute
to the detection and estimation as compared to the
proposed joint approach later, maximum a posteriori
criterion has been chosen for the analysis.
First, the conditional likelihood ratio of the discriminator
output test statistics can be expressed as
Λ𝑆𝑁𝐶,𝑘(𝑧𝑘|𝜏𝑘 , 𝜑𝑘) =𝑓𝑍|𝐻1𝑓𝑍|𝐻0
= exp (√𝐶𝑘Δ𝜏𝑘𝑅𝑒{𝑧𝑘𝑒
−𝑗𝜑𝑘}
𝜎𝜂2
−𝐶𝑘Δ𝜏𝑘
2
2𝜎𝜂2)
(4)
where Λ𝑆𝑁𝐶,𝑘 is the likelihood ratio, and subscript ‘SNC’
indicates ‘serial non-coherent processing’ and ‘k’
indicates the satellite index. In the presence of fading, the
phase is assumed to be modeled as a random variable
uniformly distributed from 0 to2π . Using this assumption
to integrate-out the carrier phase term, the corresponding
conditional likelihood ratio can further be expressed as
Λ𝑆𝑁𝐶,𝑘(𝑧𝑘|𝜏𝑘) = E𝜑𝑘[Λ𝑆𝑁𝐶,𝑘(𝑧𝑘|𝜏𝑘, 𝜑𝑘)]
=1
2𝜋∫ Λ𝑆𝑁𝐶,𝑘(𝑧𝑘; 𝜏𝑘 , 𝜑𝑘)𝑑𝜑𝑘
2𝜋
0
= 𝐼0 (√𝐶𝑘Δ𝜏𝑘|𝑧𝑘|
𝜎𝜂2
) exp (−𝐶𝑘Δ𝜏𝑘
2
2𝜎𝜂2)
(5)
where 𝐼0(∙) is the modified Bessel function of the first
kind with the real constant of zero.
When a number of non-coherent summations (𝑁 ) are
applied, the corresponding discriminator outputs are
defined the same as Equation (3), i.e., the peak correlator
value subtracted by a deterministic part.
Then, the corresponding phase integrated-out conditional
likelihood ratio under 𝑁 non-coherent integration is
Λ𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘|𝜏𝑘) =
= (2𝜎𝜂2)𝑁−1
Γ(𝑁)𝑧𝑁𝐶,𝑘1−𝑁 𝐼𝑁−1 (
√𝑁𝐶𝑘Δ𝜏𝑘|𝑧𝑁𝐶,𝑘|
𝜎𝜂2
) ∗
exp (−𝑁𝐶𝑘Δ𝜏𝑘
2
2𝜎𝜂2) (𝑁𝐶𝑘Δ𝜏𝑘
2)1−𝑁
(6)
In equation (6), Γ(∙) is the Gamma function, 𝐼𝑁−1 is the
modified Bessel function of the first kind where the
subscript (𝑁 − 1) is its real constant.
Given the statistic information of a priori code phase, the
a posteriori likelihood ratio of the test statistics can be
obtained as
Λ̂𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘) = E𝜏𝑘[Λ𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘|𝜏𝑘)]
(7)
The MAP code phase estimates can then be obtained as
𝜏𝑘,𝑀𝐴𝑃,𝑆𝑁𝐶 = argmax𝜏𝑘[Λ̂𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘)] (8)
Exact computation of Equation (6) is difficult, and no
simple analytic expression can be worked out. Still
numerical methods can be used to evaluate the exact a
posteriori likelihood ratio, for example, by using
Trapezoidal numerical integration. Approximation
formula for modified Bessel function (Kunc 1983) can
also be used, especially when the estimated code phase
error is relatively small. This is a generally valid
assumption, since with enough integration gain, and the
signal being present, given enough observation time and
filtering process, the a priori estimated solution will near
to the truth (similar to linear feedback loop DLL with
small tracking error assumption). Then equation (6) can
be approximated as (applying Bessel approximation in
Equation (6))
Λ𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘|𝜏𝑘) ≈ exp (−𝑁𝐶𝑘Δ𝜏𝑘
2
2𝜎𝜂2) (9)
Page 6 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
In Equation (9), Δτk = τk − τk−, which means it is also a
function τk− . In this paper, such MLE of code phase is
based on L∞ norm discriminator (i.e., choosing the
maximum peak as code phase estimate), and this estimate
of code phase is defined as �̂�𝑘,𝑀𝐿 .
�̂�𝑘,𝑀𝐿 = 𝑎𝑟𝑔max𝜏𝑘
Λ𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘|𝜏𝑘) (10)
Comparing Equation (2) and Equation (10), they are
conveying the same piece of information. For example in
the latter, assuming the a priori is close to the truth, then
the peak correlator should be very close to the correlator
with a priori code phase, which means the differences
should be as small as possible.
After some manipulation of equations (7), (8),(9), and
(10)using MLE, the MAP code phase estimate can be
expressed as
�̂�𝑘,𝑀𝐴𝑃,𝑆𝑁𝐶 =
1𝜎𝜏𝑘
−2
1𝜎𝜏𝑘
−2 +
𝑁𝐶𝑘𝜎𝜂2
𝜏𝑘− +
𝑁𝐶𝑘𝜎𝜂2
1𝜎𝜏𝑘
−2 +
𝑁𝐶𝑘𝜎𝜂2
�̂�𝑘,𝑀𝐿 (11)
In Equation (11), one can see the filtering gain afforded
by the a priori information (first term) relative to the ML
estimate (second term) depending on the relative variance
of the two values (𝜎𝜏𝑘−2 and
𝜎𝜂2
𝑁𝐶𝑘 ). And this equation can
also be thought of as a channel filter which uses past
information to adjust NCO. This is the filtering equation
for the scalar receiver implementation.
The corresponding a posteriori likelihood ratio is then
(substitute results of Equation (11) to Equation (7))
Λ̂𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘)
=1
√1 + 𝑁𝐶𝑘𝜎𝜏𝑘−2
𝜎𝜂2
𝑒𝑥𝑝 (−𝑁𝐶𝑘
2𝜎𝜂2 �̂�𝑘,𝑀𝐿
2 −(𝐡𝑘𝜇𝛉)
2𝜎𝜂2
2
)
∗ 𝑒𝑥𝑝
(
(1 + 𝑁𝐶𝑘
𝜎𝜏𝑘−2
𝜎𝜂2)
−1
(𝐡𝑘𝜇𝛉 + 𝑁𝐶𝑘𝜎𝜏𝑘−2
𝜎𝜂2 �̂�𝑘,𝑀𝐿)
2
2𝜎𝜂2
)
(12)
In Equation (12), Λ̂𝑆𝑁𝐶,𝑘(𝑧𝑁𝐶,𝑘) indicates the a posteriori
probability ratio Pr(𝐻1|𝑧𝑁𝐶,𝑘) / Pr(𝐻0|𝑧𝑁𝐶,𝑘). And we call
Pr(𝐻1|𝑧𝑁𝐶,𝑘) the a posteriori detection rate if 𝐻1 is
actually true.
Once the a posteriori likelihood ratio is available
(Equation (12)), given the probabilities of each individual
hypothesis, the detection can be setup as
Λ̂𝑆𝑁𝐶,𝑘 =
{
≥𝑃0𝑃1→ 𝐻1
<𝑃0𝑃1→ 𝐻0
(13)
In Equation (13), P0 and P1 are the probability of
hypothesis H0 and H1 , and these two hypothesis are
defined in Equation (1). From Equation (12) and (13), one
can see if 𝐻1 is true, then the larger a posteriori likelihood
ratio is, the higher a posteriori detection rate is.
Previous paragraphs are only discussing the detection and
estimation of signals in the conventional or serial
approach. In the GNSS receivers there is one more
estimation module for navigation solution needs be
analyzed with MAP criterion. And in a block processing
vector receiver, each satellite’s code phase estimates are
used as measurements to estimate 𝛉 (position and clock as
in this case).
With some simple algebraic derivation, the MAP position
and clock estimate can be shown as (similar procedure
shown in Maybeck (1979) pp235, Eq. (5-77)),
�̂�𝑀𝐴𝑃,𝑆𝑁𝐶 = (𝐂𝛉−−1 + N𝐈𝐽)
−1(𝐂𝛉−
−1𝛉− + N𝐈𝐽�̂�𝑀𝐿,𝑆𝑁𝐶)
(14)
In equation (14), IJ is the Fisher information matrix taking
account of satellite geometry and C/N0values. This
equation denotes the navigation filtering, and when
projecting from solution to code phase and Doppler, then
it can be used to adjust the NCO for each individual
channel. Thus it can be considered as the filtering
equation for a vector receiver.
𝐇𝐶 = [√𝐶1𝐡1𝑇 ⋯ √𝐶𝐾𝐡𝐾
𝑇 ]𝑇= 𝐖𝐶𝐇
𝐈𝐽 = 𝐇𝐶𝑇𝐂𝛈
−1𝐇𝐶
𝐖𝐶 = 𝑑𝑖𝑎𝑔([√𝐶1 ⋯ √𝐶𝐾])
(15)
Also from Equation (14), �̂�𝑀𝐿,𝑆𝑁𝐶is the MLE of position
and clock in conventional approach due to invariance
property of MLE using ML code phase measurements
from equation (10). And it can be seen just as a simple
C/N0 weighted LSQs estimate in Equation (16).
�̂�𝑀𝐿,𝑆𝑁𝐶 = 𝛉− + 𝐈𝐽
−1𝐇𝐶𝑇𝐂𝛈
−1𝐖𝐶 �̂�𝑀𝐿 (16)
The MLE invariance property indicates that when the
transformation/mapping from code phase to
position/clock is relatively fixed (not disturbing much
with solution 𝛉 ), then the MLE property of 𝛉 will be
preserved. However, when some of the satellite signals
are relatively weak, getting a reliable estimate of all �̂�𝑀𝐿
in the conventional approach might not be easy, thus
�̂�𝑀𝐿,𝑆𝑁𝐶 can only be considered as MLE with some
information already lost (especially from weak signal
satellites). Secondly, the transformation/mapping also
relies on the signal power estimate (𝐶𝑘). When signal is
weak the signal power estimate suffers, which further
invalidates the invariance property. However, when all
satellite’s signals are relatively strong, MLE of 𝛉 be valid.
Page 7 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
Equations (10), (11),(14) and (16) are the update
equations for the signal parameter estimation ( 𝜏, code
phase) and solution estimation (𝛉,position/clock) in the
conventional receiver approach.
The navigation solution a posteriori detection
performance can also be derived by using a posteriori
likelihood ratio. The overall a posteriori likelihood ratio
of conventional approach can also be derived by using
equation (12) as
Λ̂𝑆𝑁𝐶 =∏Λ̂𝑆𝑁𝐶,𝑘
𝐾
𝑘=1
≈
(
∏1
√1 +𝑁𝐶𝑘𝜎𝜏𝑘−2
𝜎𝜂2
𝐾
𝑘=1
)
𝑒𝑥𝑝 (−1
2𝜇𝛉𝑇𝐂𝛉
−1𝜇𝛉) 𝑒𝑥𝑝 (−𝑁
2�̂�𝑀𝐿,𝑆𝑁𝐶𝑇 𝐈𝐽�̂�𝑀𝐿,𝑆𝑁𝐶)
∗ 𝑒𝑥𝑝(1
2(𝐂𝛉
−1𝛉− + N𝐈𝐽�̂�𝑀𝐿,𝑆𝑁𝐶)𝑇(𝐂𝛉
−1 + N𝐈𝐽)−1
(𝐂𝛉−1𝛉− + N𝐈𝐽�̂�𝑀𝐿,𝑆𝑁𝐶))
(17)
From Equation (17), one can see the overall a posteriori
likelihood ratio of a navigation solution is a function of
individual a posteriori likelihood ratios. It relies on both
the a priori information (θ−, , Cθ−) and current estimate
(θ̂ML,SNC,𝐈𝐽−1).
MAP Analysis of Joint Non-Coherent (JNC) Approach
The receiver architecture for a joint non-coherent
scalar/vector based high sensitivity receiver is shown in
Figure 3.
In the joint approach receiver with non-coherent
processing, the ‘detection and estimation’ refers directly
to the navigation solutions and it does not separate these
two components. The detection problem here can be
considered as a discrete parameter estimation problem. In
such case, the signal model will include an indicator
variable 𝑎𝑘 ∈ {0,1} which indicates the absence or
presence of signal. This is equivalent to specifying
whether the null or alternative hypothesis is considered
for each satellite. The new signal model is expressed as
𝐳 = [𝑎1 0 00 ⋱ 00 0 𝑎𝐾
] [𝑙1(𝒚1)⋮
𝑙𝐾(𝒚𝐾)] + [
𝜂1⋮𝜂𝐾] or
𝐳 = 𝐀�̃� + �̃� 𝐀 = 𝑑𝑖𝑎𝑔[𝑎1 ⋯ 𝑎𝐾], 𝑎𝑘 ∈ {0,1},
�̃� = [𝑙1(𝒚1) ⋯ 𝑙𝐾(𝒚𝐾)]𝑻,
𝑙𝑘(𝒚𝑘) = √𝐶𝑘Δ𝜏𝑘𝑒𝑗𝜑𝑘
(18)
In Equation (18), the tilde on the top of 𝐋 indicates, it is a
complex number and relies on phase information, and will
be eliminated in the later equations. The corresponding
conditional PDF can be shown as
𝑓𝐳|𝐀,𝛉 =1
(2𝜋)𝐾2(𝑑𝑒𝑡𝐂�̃�)
12
exp(−1
2(𝐳 − 𝐀�̃�)𝐻𝐂𝛈
−1(𝐳 − 𝐀�̃�)) (19)
In Equation (19), each element of L̃ is a function of 𝜏𝑘 ,
which is in turn a function the PVT parameter 𝛉 .
Assuming indicator variable 𝑎𝑘 is a discrete random
variable, its joint PDFcan be generally expressed as
𝑓𝐀 = 𝑓𝑎1𝑓𝑎2⋯𝑓𝑎𝐾 = (휀1𝛿(𝑎1) + 휀1̅𝛿(𝑎1 − 1))(휀2𝛿(𝑎2)
+ 휀2̅𝛿(𝑎2 − 1))⋯(휀𝐾𝛿(𝑎𝐾)
+ 휀�̅�𝛿(𝑎𝐾 − 1))
휀𝑘 = Pr(𝑎1 = 0) ; 휀�̅� = 1 − 휀𝑘 , 𝑘 = 1,2,… , 𝐾
(20)
In Equation (20), each indicator variable 𝑎𝑘 is modeled as
a binary random variable taking on the value of zero
(signal is absent) or one (signal is present). It should also
be noted that these random variables are independent of
each other due to the fact that the existence of one
satellite signal will not affect the existence of others.
Given the PDF of the indicator variables, the conditional
PDF of discriminator output test statistics, and PDF of a
priori estimate of θ , and by using the Bayes rule, the
MAP estimate ( �̂� ) will be the one maximizing the a
posteriori PDF of 𝑓𝐀,𝛉|𝐳(𝐀, θ|𝐳), which can be written as
𝑓𝐀,𝛉|𝐳(�̂�, �̂�|𝐳) =1
𝑓𝐳max𝐀,𝛉
𝑓𝐳|𝐀,𝛉 𝑓𝐀𝑓𝛉 =1
𝑓𝐳max𝐀,𝛉
𝑓𝐳,𝐀,𝛉 (21)
In the MAP equation (21), it can be seen when jointly
processing all the incoming signals, we are actually
‘searching’ over the parameter pair, (𝐀, 𝛉) in the entire
parameter space to achieve an estimate. In other words,
compared to the conventional approach, a soft decision is
used regarding the availability of a signal, until a final
pair of parameters (𝐀, 𝛉) is detected and estimated.
To illustrate, we consider the simplified case where all
satellites are absent or present. The two possible pairs are
obtained, namely, (𝐀𝑯𝟎, �̂�𝐀𝑯𝟎) and (𝐀𝑯𝟏, �̂�𝐀𝑯𝟏) . In real
situation, we could test different combination of indicator
variables to estimate corresponding solution..
Correspondingly, the decision depends on evaluation of
the ratio:
𝑓𝐀,𝛉,𝐳(�̂�, �̂�, 𝐳)|𝐀𝑯𝟏,�̂�𝐀𝑯𝟏𝑓𝐀,𝛉,𝐳(�̂�, �̂�, 𝐳)|𝐀𝑯𝟎,�̂�𝐀𝑯𝟎
{≥ 1 → (𝐀𝑯𝟏, �̂�𝐀𝑯𝟏)
< 1 → (𝐀𝑯𝟎, �̂�𝐀𝑯𝟎) (22)
In Equation (22), this point-wise- detection/estimation
mechanism is actually using complete information
contained in the correlators. This scheme also relies on
complete a priori information and the estimation process
shares complete information with detection process, thus
it is called soft decision. It is distinguished with
conventional hard decision, in which estimation (both
Page 8 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
code phase estimates and final solution estimates) only
has partial information coming from signal detection.
An alternative expression of the this MAP detector can be
formed as following, given the a priori probability for
each indicator variable, then the final a posteriori
likelihood ratio can be defined as
Λ̂𝐽𝑁𝐶 =
(𝑓𝐲|𝐀,𝛉
𝑓𝛉)(𝐀𝑯𝟏,�̂�𝐀𝑯𝟏)
(𝑓𝐲|𝐀,𝛉
𝑓𝛉)(𝐀𝑯𝟎,�̂�𝐀𝑯𝟎){
≥ 𝛾0,1=𝑃0
𝑃1→ (𝐀𝑯𝟏 , �̂�𝐀𝑯𝟏)
< 𝛾0,1=𝑃0
𝑃1→ (𝐀𝑯𝟎 , �̂�𝐀𝑯𝟎)
(23)
Equation (23) can be evaluated through numeric methods.
In the following paragraphs, the procedure how to
compute this is illustrated.
Similarly in the conventional approach, the conditional
likelihood ratio needs to integrate out the phase
dependency, because such information is not assumed
reliable in weak signal conditions. In order to
approximate the Bessel functions, it is assumed that the
tracking errors are relatively small, and it is achieved by
using maximum likelihood navigation solution searched
on small grids near the truth as shown in Equation (24)
and (25).
�̂�𝑀𝐿,𝐽𝑁𝐶 = 𝑎𝑟𝑔max𝛉{Λ𝐽𝑁𝐶(𝒛𝑁𝐶|𝛉)} (24)
Λ𝐽𝑁𝐶(𝐳𝑁𝐶|𝛉) ≈ exp (−𝑁
2�̃�𝑯𝐂𝛈−1�̃�) (25)
In Equation (24) and (25), one could see the ML estimate
of solution in the joint approach is based on all the
correlator information from all satellites, where all the
relevant information is kept till a solution is made. The
approximate term 𝑁
2�̃�𝑯𝐂𝛈−1�̃� is a function of a ‘guessed’
navigation solution. Given one such solution, this term
represents quadratic navigation solution errors, or
simultaneous discriminator errors among all satellites.
Since it is a maximum likelihood estimate of solution, or
equivalent as using a L∞ norm discriminator, this
quadratic error term also means finding a solution based
on maximum summed up correlator power across all
satellites that makes �̂�𝑀𝐿,𝐽𝑁𝐶 → 𝛉.
Then the solution update equations and a posteriori
likelihood ratio can then be computed by maximizing the
a posteriori likelihood ratio
�̂�𝑀𝐴𝑃,𝐽𝑁𝐶 = argmax𝛉[𝐸𝛉[Λ𝐽𝑁𝐶(𝐳𝑁𝐶|𝛉)]
= argmax𝛉[Λ𝐽𝑁𝐶,𝑘(𝐳𝑁𝐶)]]
(26)
With manipulation of Equation (25), the MAP estimate of
navigation solution has similar form in Equation (14) as
expected. The only difference is the maximum likelihood
estimate of the navigation solution, i.e. �̂�𝑀𝐿,𝐽𝑁𝐶 is used
instead of �̂�𝑀𝐿,𝑆𝑁𝐶. The final MAP estimation equation is
shown as follows.
�̂�𝑀𝐴𝑃,𝐽𝑁𝐶 = (𝐂𝛉−1 + N𝐈𝐽)
−1(𝐂𝛉
−1𝛉− + N𝐈𝐽�̂�𝑀𝐿,𝐽𝑁𝐶) (27)
When substituting the �̂�𝑀𝐴𝑃,𝐽𝑁𝐶 into likelihood ratio, we
get the a posteriori likelihood ratio for the joint processing.
Λ̂𝐽𝑁𝐶 = 𝐸𝛉[Λ𝐽𝑁𝐶(𝐳𝑁𝐶|𝛉)]𝜽=�̂�𝑴𝑨𝑷,𝑱𝑵𝑪
≈ 𝑒𝑥𝑝 (−1
2𝜇𝛉𝑇𝐂𝛉
−1𝜇𝛉) 𝑒𝑥𝑝 (−𝑁
2�̂�𝑀𝐿,𝐽𝑁𝐶𝑇 𝐈𝐽�̂�𝑀𝐿,𝐽𝑁𝐶) ∗
(28)
𝑒𝑥𝑝 (1
2(𝐂𝛉
−1𝛉− +N𝐈𝐽�̂�𝑀𝐿,𝐽𝑁𝐶)𝑇(𝐂𝛉
−1 +N𝐈𝐽)−1
(𝐂𝛉−1𝛉− +N𝐈𝐽�̂�𝑀𝐿,𝐽𝑁𝐶))
With the above analysis, some observations about the
overall performance are made in the next section.
Overall Performance Analysis
Based on the introduced the signal models and processing
methodologies in the previous section, the overall
detection performance as well as overall estimation
performance is briefly discussed below.
By comparing equation (17) and (28); (11), (14), (16) and
(27); the following observations can be made:
When all satellite signals are strong enough to be
detected and estimated, or equivalently
saying �̂�𝑀𝐿,𝑆𝑁𝐶 → �̂�𝑀𝐿,𝐽𝑁𝐶 , the difference between
the serial and joint a posteriori likelihood ratios
is only a multiplicative coefficient (given by the
first term in brackets in equation (17)). This
coefficient is smaller than one, and further
depends on the individual satellite signal power
and geometry.
The multiplicative coefficient in conventional
approach makes Λ̂JNC ≥ Λ̂SNC. The multiplicative
coefficient can be interpreted as a loss of
information when a hard decision is made at the
signal detection or ‘acquisition’ stage. At the
solution level, only one ‘sample point’ in the
whole solution space is kept and used. However,
in the joint approach, due to no information is
lost, there is no such coefficient, each parameter
pair can be tested freely.
Under strong signal conditions (i.e., �̂�𝑀𝐿,𝑆𝑁𝐶 →�̂�𝑀𝐿,𝐽𝑁𝐶), except for the multiplicative coefficient,
two methods share nearly the same mathematical
expression. This indicates that both methods
have same information as input, and output will
also be very similar.
When �̂�𝑀𝐿,𝑆𝑁𝐶 ≠ �̂�𝑀𝐿,𝐽𝑁𝐶 , the major difference is
that some information is lost when
computing �̂�𝑀𝐿,𝑆𝑁𝐶 , while �̂�𝑀𝐿,𝐽𝑁𝐶 uses all
Page 9 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
information to obtain MLE. This difference will
further make Λ̂JNC ≥ Λ̂SNC.
Given perfect a priori information, or
equivalently saying, we know which bin to
detect signal’s presence or absence, we
have 𝐂𝛉 = 𝟎 , and στk−2 = 0 and then we
have Λ̂JNC = Λ̂SNC. And 𝛉 is no longer a random
variable to be estimated. Both cases reduce to
simple binary hypothesis testing, which is the
same as most GNSS acquisition problems
reported in literature (Borio et al 2009).
Furthermore, in this case, performance of
‘collective detection’ should be very similar to
conventional approach if they are equally
compared. In our approach, Cθ ≠ 0, which is
the major difference from ‘collective detection’.
IMPLEMENTATION AND NAVIGATION
SOLUTION
The conventional block processing vector-based high
sensitivity receiver denoted as SNC or conventional block
processing approach. and joint approach high sensitivity
receiver (JNC-scalar and JNC-vector) were all
implemented in GSNRx, a multi-constellation, multi-
signal software receiver (O’Driscoll et al 2009; Curran et
al 2013). The solution filtering is based on Kalman filter.
Coarse-time Receiver Implementation
In joint approach coarse time software high sensitivity
receiver, when the program is launched, approximate time,
initial position and ephemeris are provided to initialize the
receiver. These are the only external assistance data used.
Once all the inputs are validated, the receiver begins
acquiring satellites in ‘warm start’ mode. The target C/N0
is set down to 20 dB-Hz with coherent integration of 7 ms
as well as additional 199 non-coherent summations.
Once a signal is confirmed as being acquired, it is then
tracked by ‘fine search’ trackers, which uses block
processing [Block processing needs to be discussed
earlier]. Two such fine search trackers are used; the first
one (‘FS1’) covers a larger range of code phase and
Doppler values, and acts as the pull-in tracker, while the
second one (‘FS2’) is used in steady state. The settings
are summarized in Table 1.
Table 1: Multiple Correlator Settings Property FS1 FS2
Coherent Integration
(s) 0.001 0.01
Additional # of Non-
coherent Integration 20 20
Code phase spacing
(chips) 0.1 0.1/0.01
Code phase bin total
number 30 30/40
In order to use the correlation values for the joint
processing, the coarse-time design matrix and observation
equation are required. The observation equation for the
coarse-time solution is shown as
∆𝜏𝑘 = [−𝒆𝑘 1 −𝒆𝑘𝑇𝑣𝑟
𝑘,𝑠] [∆𝒓
∆𝑐𝑑𝑡𝑐𝑙𝑘𝐵𝑖𝑎𝑠∆𝑡𝑐𝑜𝑎𝑟𝑠𝑒𝑇𝑖𝑚𝑒
] (28)
In equation (28), subscript indicates 𝑘𝑡ℎsatellite, 𝒆𝑘 is the
direction vector from satellite to the estimated user
position, 𝑣𝑟𝑘,𝑠
is the relative velocity between the satellite
and receiver, ∆𝒓 is the position offset, ∆𝑐𝑑𝑡𝑐𝑙𝑘𝐵𝑖𝑎𝑠 is the
clock bias offset in units of length (metres),
and ∆𝑡𝑐𝑜𝑎𝑟𝑠𝑒𝑇𝑖𝑚𝑒is the coarse time offset in units of time
(seconds).
Given the initial position r(0) , clock bias cdtclkBias(0) (zero as default), coarse time tcoarseTime(0) (zero as
default), and the search space settings, the corresponding
code phase values can be computed. After that, the
projection from the code phase domain to the position
domain across all satellite can be accomplished. The
solution domain search settings are summarized in Table
2.
Table 2: Initial Position Domain Search Settings Dimension Search Range Spacing
Horizontal
(east/north) [-125m,125m] 25m
Vertical [-75m, 75m] 25m
Clock bias [-150000m,
150000m] 30m
Coarse time [-0.5s,0.5s] 0.1s
It should also be noted that the direct five-state position
domain search needs a large enough range in order to
cover the true parameters. The default search range and
spacing are relatively large, after solution is converging
smaller values can be used which will further improve the
accuracy, the tracking mode position domain search
settings are summarized in Table 3.
Table 3: Tracking Mode Position Domain Search
Settings Dimension Search Range Spacing
Horizontal
(east/north) [-70m,70m] 10m
Vertical [-60m, 60m] 10m
Clock bias [-120m, 120m] 20m
Coarse time [-0.05s,0.05s] 0.01s
REAL DATA PROCESSING & FIELD TEST
Testing under good signal conditions (e.g., open sky) has
shown that the conventional approach and the proposed
Page 10 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
algorithm yield nearly the same solution. These results are
not shown here since the focus is instead on assessing the
relative performance in challenging indoor scenarios
where the conventional approach is not as reliable. In this
way, the main benefits of the joint approach can be
highlighted.
Data Collection
With this in mind, several real indoor data sets were
conducted. All of them give very similar performance,
and only one data set collected in the MacEwan Hall (on
the University of Calgary campus) is presented here for
the data analysis. Several other indoor environments such
as typical American bungalow house main floor
/basement as well as corridor with glass windows on the
sides have also been tested, and yield similar results. The
primary equipment for the data collection is SiGe v3
front-end. Mode 7 is chosen which logs real samples at a
sampling frequency of 5.456 MHz with intermediate
frequency (IF) of 1.364 MHz.
The raw IF data was captured starting in indoors. No bit
synchronization or ephemeris decoding was attempted
due to weak signal conditions. A base station was setup in
order to log ephemeris data. The timing assistance
information is obtained from the data logging laptop’s
time estimate, which was synchronized to GPS time with
an accuracy of about one second. Due to the search space
set in the previous section, the initial position is given to
be about 100 m away from the truth. The indoor scenario
is shown in Figure 5.
Figure 5: MacEwan Hall indoor data collection
scenarios; top left photo taken facing southwest; top
right photo taken looking up; bottom left photo taken
facing southeast; bottom right facing northwest
From Figure 5, it can be seen that this indoor environment
only has glass windows on the roof and to the south
entrance. All the other directions are surrounded by
concrete walls. Only the satellites near the zenith or in the
south sky will have the possibility to having a line-of-
sight signal received by the user.
The C/N0 profiles for all the available satellites are shown
in the Figure 6. Aside from PRN28, C/N0 estimates vary
between 15 dB-Hz and 30 dB-Hz with large fluctuations
and periodic drop-outs. The latter may be due to people
moving around the receiver inside the building.
Figure 6: MacEwan Hall indoor data C/N0 profiles
From Figure 6, one can also see PRN28 has very strong
C/N0 value for the whole time span. This is because it has
rather high elevation angles, which almost certainly
penetrate the glass roof.
The sky-plot of the all the available satellites are shown in
Figure 7. It can be observed that many satellites from the
south are also being tracked by receiver. This is very
likely due to the south facing glass windows. However,
most of them are low elevation satellites, such as PRN7,
PRN8, and PRN9. When comparing with Figure 6, these
satellites have significant fluctuations in C/N0. This is
consistent with fading phenomenon caused by pedestrians
walking near the antenna (which is near the south
entrance to the building).
Figure 7: Sky plots for the MacEwan Hall indoor data
set
Page 11 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
Results and Analysis
The solutions of three software receivers (SNC
(conventional block processing), JNC-vector, JNC-scalar)
are shown in Figure 8. The ‘Red Circle’ shown in the
figure is the approximate truth. The accuracy of the
‘reference’ should be about 10 m. The ‘Orange Star’ at
the top is the initial position given to the receiver. The red
triangles and lines are the solution from SNC, magenta
triangle and lines are the solution from JNC-scalar, and
blue triangle and lines are from JNC-vector. There are
also two large magenta and blue triangles, which indicate
the final solution of each receiver.
Figure 8: MacEwan Hall indoor positioning solutions
in Google Map
From Figure 8, one can observe that the solutions from
conventional approach (red trajectories) are far away from
the truth, and more spread-out than the joint approach.
When comparing the solutions from JNC-scalar and JNC-
vector, one could find the scalar receiver produces
solutions more scattered to the north. They are starting
from the same epoch, but in the end, they converge to
each other very closely.
The basic difference between these two receiver
architectures (JNC-scalar and JNC-vector) is that,
although the scalar receiver uses the same a priori
information as vector receiver, it only uses it for the first
epoch. In the succeeding epochs, each satellite in scalar
receiver tries to update its NCO by itself. And in this
implementation, the NCO is updated directly from ML
estimation. No loop filtering on signal satellite channel is
applied. That means former information is not effectively
used in the current and future estimate. In contrast, in the
vector receiver, the NCO of each channel is controlled by
the filtered joint solution, which uses all information from
the past and present. In this light, the results in JNC-scalar
are expected noisier than JNC-vector since the scalar
receiver should give a little noisier estimate but still
should be similar to the vector implementation.
The coarse-time estimates from three receivers are shown
in Figure 9. It can be seen that all three solutions have
very similar estimates at the beginning of the test.
However, after about 40 s, the conventional approach is
not able to compute a valid coarse-time navigation
solution anymore. This might due to erroneous feedback
degrading the tracking loops, and causing the receiver to
lose lock of the incoming signals. Of course, multipath
will also worsen the solution. In contrast, for the joint
approach, both scalar and vector are able to converge to a
similar estimate of coarse time.
Figure 9: Coarse-time estimates for MacEwan Hall
indoor data
The clock bias estimates from three receivers are also
shown here in Figure 10. The common linear trend has
been removed, and the linear trend is extracted from the
JNC-vector results. It is apparent that joint approach all
converges to some value while the SNC approach lost of
the solution at about 245280 s. And it also fluctuates more
significantly than the joint approach. Such fluctuations
will cause the solution to be erroneous (errors will be
leaked in other dimensions).
Figure 10: Clock bias estimates for the MacEwan Hall
indoor data (de-trend with a common linear growth
component from JNC-vector)
East, north errors as well as height estimates are shown in
Figure 11, Figure 12, and Figure 13 respectively. The
common trend is that conventional approach could only
report solution for about first 40 s, while the joint
approach not only continuously can report the solution,
245260 245270 245280 245290 245300 245310 245320 245330-0.6
-0.58
-0.56
-0.54
-0.52
-0.5
-0.48
-0.46
-0.44
-0.42
-0.4
GPS Time [s]
Co
ars
e T
ime [
s]
SNC
JNC-vector
JNC-scalar
245260 245280 245300 245320-400
-300
-200
-100
0
100
GPS Time [s]
Clk
Bia
s (
de
tre
nd
) [m
]
SNC
JNC-vector
JNC-scalar
Page 12 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
but also shows a trend of convergence, especially in the
height estimation.
Figure 11: East error for the MacEwan Hall indoor
data
Figure 12: North error for the MacEwan Hall indoor
data
Figure 13: Height estimates for the MacEwan Hall
indoor data
The overall RMS errors in all three receivers are
summarized in Table 4. These statistics are based on all
available epochs during the test.
Table 4: Position STD errors in indoor (MacEwan
Hall)
Strategy East (m) North (m) Up (m)
SNC 8.3 23.6 75.4
JNC-scalar 12.3 12.2 40.6
JNC-vector 12.0 9.1 38.0
Table 5: Position RMS errors in indoor (MacEwan
Hall)
Strategy East (m) North (m) Up (m)
SNC 31.4 62.5 76.4
JNC-scalar 25.7 16.5 43.6
JNC-vector 28.2 11.8 40.9
From Table 4, it is obvious that the JNC outperforms
SNC in the north and vertical. Regarding the east, due to
less fluctuation reported in SNC, its RMS value is smaller
than joint approach but still it is far away from the truth.
From all the above results, it indicates the joint approach
can make better use of information than the serial
approach. Regarding the scalar and vector receiver
architecture, they are based different implementation, and
vector receiver slightly outperforms the scalar receiver (in
terms of smoothness). From all the above results, it can be
seen that joint approaches show superior performance. It
confirms that with proper use of information from weak
signals, receivers are still able to give a better output.
CONCLUSIONS AND FUTURE WORK
In this paper, a joint approach to process weak GNSS
signal is formulated and compared to conventional (serial)
approach. MAP detection and estimation analysis are
setup, and some metrics such as a posteriori likelihood
ratio, and overall estimation variances are derived and
investigated. In the end, a real indoor experiment is
conducted, and performance of coarse-time software
receiver with conventional approach as well as joint
approach is demonstrated.
It has shown that:
In terms of a posteriori likelihood ratio, the joint
detection and estimation approach will give larger
values than the conventional approach, implies a
higher a posteriori detection rate. The benefits come
from the soft decision is used in the joint approach,
while conventional approach relies on hard decision,
and caused a loss of information when signal is weak.
Update equations for serial and joint processing
vector-based high sensitivity receiver are derived.
Under strong signal conditions, the estimator
performance will be very similar.
245260 245270 245280 245290 245300 245310 245320 245330-10
0
10
20
30
40
50
60
GPS Time [s]
Ea
st E
rror
[m]
SNC
JNC-vector
JNC-scalar
245260 245270 245280 245290 245300 245310 245320 245330-40
-20
0
20
40
60
80
100
GPS Time [s]
No
rth
Err
or
[m]
SNC
JNC-vector
JNC-scalar
245260 245270 245280 245290 245300 245310 245320 245330-150
-100
-50
0
50
100
GPS Time [s]
He
igh
t E
rror
[m]
SNC
JNC-vector
JNC-scalar
Page 13 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
In indoor environments, conventional vector-based
high sensitivity receiver may not give reliable
estimate of coarse-time solution as the joint approach
receiver, either based on scalar or vector
implementation.
With joint processing, the coarse time solution will
show a convergence trend in the indoor environment
considered herein.
The vector receiver implementation for joint
processing slightly outperforms the scalar
implementation. The scalar implementation needs
only slight changes in the existed receiver platforms,
since it only calls for passing grids of correlators to
the joint processor.
In this paper, the focus is only given to non-coherent
processing, and no simulation results are presented. In
another paper, the performance will be investigated more
in detail which includes both the coherent processing and
non-coherent processing.
REFERENCES
Axelrad, P., , B. K. Bradley, J. Donna, M. Mitchell, and S.
Mohiuddin (2011) Collective Detection and Direct
Positioning Using Multiple GNSS Satellites,
NAVIGATION, Vol. 58, No. 4, Winter 2011-2012, pp.
305-321
Ayaz, A.S., T. Pany, and B. Eissfeller (2010) Assessment
of GNSS Signal Acquisition Sensitivites for Indoor and
Urban Scenarios, 2010 IEEE 21st International Syposium
on Personal, Indoor and Mobile Radio Communications
Workshops, pp.223-227
Borio, D., O’Driscoll, C. and G. Lachapelle (2009)
Coherent, Noncoherent, and Differentially Coherent
Combining Techniques for Acquisition of New
Composite GNSS Signals, IEEE Transactions on
Aerospace and Electronic Systems, Vol. 45, No.3, pp.
1227-1240
Chen, Jianshu, Yue Zhao, Andrea Goldsmith, and H.
Vincent Poor (2013) Optimal joint detection and
estimation in linear models, Proc. 52nd IEEE Conference
on Decision and Control (CDC), 2013, Florence, Italy, pp.
4416-4421
Cheong, J.W., Wu, J. Dempster, A.G. and C. Rizos (2012)
Assisted-GPS-based Snap-shot GPS Receiver with FFT-
accelerated Collective Detection: Time Synchronization
and Search Space Analysis, ION GNSS 2012
Closas, P., Prades, C., and J. A. Rubio (2007) Maximum
Likelihood Estimation of Position in GNSS, IEEE Signal
Processing Letters, Vol. 14, No. 5
Curran, J.T., M. Petovello and G. Lachapelle (2013)
Design Paradigms for Multi-Constellation Multi-
Frequency Software GNSS Receivers, Proceedings of
China Satellite Navigation Conference, Springer, 13
pages
DiEsposti, R. (2007) GPS PRN Code Signal Processing
and Receiver Design for Simultaneous All-in-View
Coherent Signal Acquisition and Navigation Solution
Determination, Proceedings of the 2007 National
Technical Meeting of The Institute of Navigation, San
Diego, CA, January 2007, pp. 91-103.
Esteves, P., Sahmoudi, M. and L. Ries (2014) Collective
Detection of Multi-GNSS Signals, Working Paper
Column, inside GNSS Magazine, Volume 9, Number 3,
May/June 2014, pp. 54-65
Gaggero, P. O. and D. Borio (2008) Ultra-stable
Oscillators: Limits of GNSS Coherent Integration, ION
GNSS 2008, Savannah, GA, Sep. 16-19.
He, Z. (2013) Maximum Likelihood Vector Tracking,
GNSS Solutions Column, Inside GNSS Magazine,
Volume 8, Number 4 (July-August Issue), pp. 27-30.
He, Z., M. Petovello and G. Lachapelle (2012) Improved
Velocity Estimation with High-Sensitivity Receivers in
Indoor Environments. Proceedings of GNSS12 (Nashville,
TN, 18-21 Sep), The Institute of Navigation, 13 pages
Kunc, J. A. (1983) Exponential Approximation of the
Modified Bessel Function, Applied Optics, Vol. 22, No. 3,
Optical Society of America
Lashley, M. and D. Bevly (2011) Comparison in the
Performance of the Vector Delay/Frequency Lock Loop
and Equivalent Scalar Tracking Loops in the Dense
Foliage and Urban Canyon, Proceedings of the ION
ITM2011, Portland, Oregon
Lin, Tao, J. Curran, C. O’Driscoll and G. Lachapelle
(2011) Implementation of a Navigation Domain GNSS
Signal Tracking Loop. Proceedings of GNSS11 (Portland,
OR, 20-23 Sep), The Institute of Navigation, 8 pages
Maybeck, P. S. (1979) Statistic Models, Estimation and
Control, Volume 1, Academic Press, pp. 231-236
O’Driscoll, C., D. Borio, M.G. Petovello, T. Williams and
G. Lachapelle (2009) The Soft Approach: A Recipe for a
Multi-System, Multi-Frequency GNSS Receiver, Inside
GNSS Magazine, Volume 4, Number 5, pp. 46-51.
O'Keefe, K., G. Lachapelle, A. di Fazio, and D. Bettinelli
(2012) Receiver autonomous integrity monitoring in
Page 14 of 14
ION GNSS+ 2014, Session C6, Tampa, FL, September 8-12, 2014
urban vehicle navigation: The five satellite case. Journal
of Global Positioning Systems 10(2): 157-164
Olmo, G., E. Magli, and L. Lo Presti (2000) Joint
statistical signal detection and estimation Part I:
Theoretical aspects of the problem, Signal Processing,
Volume 80, Issue 1, January 2000, pp. 57-73, ISSN 0165-
1684
Pany, T., Riedl, B., Winkel, J., Worz, T. Schweikert, R.,
Niedermerier, H., Lagrasta, S., Lopez-brsueno, G., and D.
Jimenez-banos (2009) Coherent Integration Time: the
Longer, the Better, Working Papers Column, Inside
GNSS Magazine, Nov/Dec, 2009, pp.52-61
Pany, T. (2010) Navigation Signal Processing for GNSS
Software Receivers, Artech House, Chapter 8, pp217-239
Petovello, M.G., C. O'Driscoll and G. Lachapelle (2008)
Carrier Phase Tracking of Weak Signals Using Different
Receiver Architectures, Proceedings of ION NTM08 (San
Diego, 28-30 Jan, Session A4). The Institute of
Navigation, 11 pages
Townsend, B. R., Fenton, P. C. Van Dierendonck, K. J.
and van Nee, D. J. R. (1995) Performance Evaluation of
the Multipath Estimating Delay Lock Loop Navigation,
ION NTM 1995, Anaheim, CA, Jan. 18-20, pp.503-513
van Diggelen, F (2009), A-GPS Assisted GPS, GNSS and
SBAS, Artech House, 2009
Weill, L.R. (2010) A High Performance Code and Carrier
Tracking Architecture For Ground-Based Mobile GNSS
Receivers, Proceedings of the 23rd International
Technical Meeting of The Satellite Division of the
Institute of Navigation (ION GNSS 2010), Portland, OR,
September 2010, pp. 3054-3068.