joint detection and estimation of weak gnss signals with ... · equally to other signals and...

14
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 detectionand maximum likelihood positioning. Both approaches investigated the potentials of this jointapproach 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 jointis 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 jointapproach 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.

Upload: others

Post on 15-Aug-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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: Joint Detection and Estimation of Weak GNSS Signals with ... · equally to other signals and systems. The ‘signal detection’ refers to a verification scheme based on block processing

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.