14
ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 1/14 Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello Position, Location And Navigation (PLAN) Group Department of Geomatics Engineering Schulich School of Engineering University of Calgary Chaminda Basnayake General Motors Warren, MI USA BIOGRAPHIES Tiantong Ren is a Ph.D. candidate in the Position, Location And Navigation (PLAN) group in the Department of Geomatics Engineering at the University of Calgary. In 2010 he completed a II Level Specializing Master on Navigation and Related Applications in Politecnico di Torino, Italy. In 2008 he completed a M.Sc. on Electronic Engineering in Beihang University, China. His research interest is GNSS signal processing and high- sensitivity GNSS receiver design in signal challenged environments. Dr. Mark Petovello is a professor in the Position, Location And Navigation (PLAN) group in the Department of Geomatics Engineering at the University of Calgary. He has been actively involved in the navigation community for over 15 years and has received several awards for his work. His current research focuses on software-based GNSS receiver development and integration of GNSS with a variety of other sensors. Dr. Chaminda Basnayake is a Senior Research Engineer at General Motors R&D and Planning where he is leading the GNSS-based vehicle navigation technology R&D efforts. His current research focuses on enabling ubiquitous positioning capability in land vehicles and using such capabilities in next generation automobile systems including communications-enabled applications. ABSTRACT In weak GNSS signal environments, extending integration time is paramount to improving the GNSS receiver’s sensitivity. Furthermore, sufficient coherent integration can help to mitigate multipath and cross-correlation false locks, and avoid squaring loss. In GNSS data channels, extending integration time requires the navigation message data bit wipe-off. The Maximum-Likelihood (ML) estimation method has been shown as the most effective way to estimate the navigation bit boundary locations (i.e., bit synchronization) and subsequently estimate the data bit values (i.e., bit decoding) in the presence of noise alone. However, the tracking threshold in conventional scalar-based GNSS receivers limits the performance of ML bit synchronization and decoding. In this paper, the benefits are analyzed and determined of using vector tracking in standalone mode to improve bit synchronization and decoding. In the context of GPS L1 C/A signals, results show that ML bit synchronization and bit decoding are valid for signals as low as 15 dB-Hz in vector tracking. The simulator test results show vector tracking can extend the validity of ML bit synchronization and decoding by 13 dB over scalar tracking. The field test results show that vector tracking can improve the successful decoding rate (SDR) by 3% 35% depending on the signal strength. The navigation results show that extended coherent integration can help to improve the navigation performance in signal challenged environments. The position and velocity accuracy has been improved about 50% after extending coherent integration time from 20 ms to 100 ms in the vehicular navigation test. Two newly proposed strategies have helped to overcome the high bit error rate (BER) problem using ML bit decoding for bit wipe-off. INTRODUCTION Global Navigation Satellite Systems (GNSS) such as the Global Positioning System (GPS) can provide users with accurate navigation and timing services worldwide. They are vital for applications such as aircraft auto-piloting, automobile en-route guidance, pedestrian positioning, etc. Recently, processing weak GNSS signals has been receiving growing attention because of the increased

Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

  • Upload
    others

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 1/14

Improving GNSS Bit Synchronization and

Decoding using Vector Tracking

Tiantong Ren and Mark G. Petovello

Position, Location And Navigation (PLAN) Group

Department of Geomatics Engineering

Schulich School of Engineering

University of Calgary

Chaminda Basnayake

General Motors

Warren, MI USA

BIOGRAPHIES

Tiantong Ren is a Ph.D. candidate in the Position,

Location And Navigation (PLAN) group in the

Department of Geomatics Engineering at the University

of Calgary. In 2010 he completed a II Level Specializing

Master on Navigation and Related Applications in

Politecnico di Torino, Italy. In 2008 he completed a M.Sc.

on Electronic Engineering in Beihang University, China.

His research interest is GNSS signal processing and high-

sensitivity GNSS receiver design in signal challenged

environments.

Dr. Mark Petovello is a professor in the Position,

Location And Navigation (PLAN) group in the

Department of Geomatics Engineering at the University

of Calgary. He has been actively involved in the

navigation community for over 15 years and has received

several awards for his work. His current research focuses

on software-based GNSS receiver development and

integration of GNSS with a variety of other sensors.

Dr. Chaminda Basnayake is a Senior Research Engineer

at General Motors R&D and Planning where he is leading

the GNSS-based vehicle navigation technology R&D

efforts. His current research focuses on enabling

ubiquitous positioning capability in land vehicles and

using such capabilities in next generation automobile

systems including communications-enabled applications.

ABSTRACT

In weak GNSS signal environments, extending integration

time is paramount to improving the GNSS receiver’s

sensitivity. Furthermore, sufficient coherent integration

can help to mitigate multipath and cross-correlation false

locks, and avoid squaring loss. In GNSS data channels,

extending integration time requires the navigation

message data bit wipe-off. The Maximum-Likelihood

(ML) estimation method has been shown as the most

effective way to estimate the navigation bit boundary

locations (i.e., bit synchronization) and subsequently

estimate the data bit values (i.e., bit decoding) in the

presence of noise alone. However, the tracking threshold

in conventional scalar-based GNSS receivers limits the

performance of ML bit synchronization and decoding. In

this paper, the benefits are analyzed and determined of

using vector tracking in standalone mode to improve bit

synchronization and decoding.

In the context of GPS L1 C/A signals, results show that

ML bit synchronization and bit decoding are valid for

signals as low as 15 dB-Hz in vector tracking. The

simulator test results show vector tracking can extend the

validity of ML bit synchronization and decoding by 13 dB

over scalar tracking. The field test results show that vector

tracking can improve the successful decoding rate (SDR)

by 3% – 35% depending on the signal strength. The

navigation results show that extended coherent integration

can help to improve the navigation performance in signal

challenged environments. The position and velocity

accuracy has been improved about 50% after extending

coherent integration time from 20 ms to 100 ms in the

vehicular navigation test. Two newly proposed strategies

have helped to overcome the high bit error rate (BER)

problem using ML bit decoding for bit wipe-off.

INTRODUCTION

Global Navigation Satellite Systems (GNSS) such as the

Global Positioning System (GPS) can provide users with

accurate navigation and timing services worldwide. They

are vital for applications such as aircraft auto-piloting,

automobile en-route guidance, pedestrian positioning, etc.

Recently, processing weak GNSS signals has been

receiving growing attention because of the increased

Page 2: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 2/14

demand for navigation in indoors, under dense foliage

canopies and in urban canyons.

High-sensitivity GNSS receivers are capable of providing

satellite measurements for signals attenuated by up to

about 30 dB (Media Tek 2012, Fastrax 2012 and Ublox

2011). For high-sensitivity GNSS receivers, extending

integration time coherently is optimal for obtaining higher

sensitivity, mitigating multipath and cross-correlation

false locks, and avoiding squaring loss. However, longer

coherent integration time is limited by the navigation

message data bit, if present. For coherent integration

beyond the data bit period, navigation data bit wipe-off is

required to avoid energy loss that occurs due to bit

transitions. Furthermore, complete bit wipe-off requires

the knowledge of bit boundaries and bit values. The

process of determining the location of the bit boundaries

and extracting the bit values is herein called bit

synchronization and bit decoding respectively.

By using the navigation data bit aiding and frequency

aiding from an external source, Akos et al (2000) showed

that in acquisition stage signals with carrier to noise-

density ratios (C/N0) of 32, 22, 17, and 12 dB-Hz can be

detected requiring coherent integration time of at least 8,

200, 400, and 800 ms respectively. Similarly Van

Diggelen & Abraham (2001), Djuknic & Richton (2001)

and Di Esposti (2007) used aiding information from

wireless network broadcasting, and Akopian & Syrjarinne

(2002) mentioned that network assistance can be used for

bit synchronization by providing time and position

information. However, all of these methods need access to

external aiding sources, and the receiver will

correspondingly lose its autonomy which may not be

possible or desirable in all applications.

For detecting the location of the bit boundaries and

extracting the bit values without external aiding source,

the Maximum-Likelihood (ML) algorithms (i.e., ML bit

synchronization and ML bit decoding) have been shown

to outperform other algorithms for weak GNSS signals.

ML bit synchronization is first introduced in Kokkonen &

Pietila (2002), and a brief assessment showed it

performed better than the conventional Histogram method

(Van Dierendonck 1996) in weak GNSS signal

environments. ML bit decoding, introduced in Soloviev et

al (2009), is reported to excel other algorithms either in

performance or complexity. In Ren et al (2012), the

requirements of ML bit synchronization and bit decoding

algorithms were analyzed in terms of the number of data

bits required for bit synchronization and the number of

data bits that can be decoded at a time for bit decoding.

However, the performance of ML bit synchronization and

decoding highly relies on the signal tracking performance

(i.e., tracking threshold), like Gleason & Gebre-Egziabher

(2009) mentioned that a Costas phase-locked loop (PLL)

had difficulties following the signal at about 35 dB-Hz,

below which the process of bit synchronization and

decoding cannot be performed. Therefore, in order to

validate the bit synchronization and bit decoding in weak

signal environments, it is critical to find ways to extend

the tracking threshold.

Vector tracking is the process using the receiver’s

estimate of position and velocity to update updating the

GNSS channel estimates of the Doppler frequency and

code phase. In contrast to scalar tracking, the individual

tracking loops in vector tracking are eliminated and

replaced by the vector-based navigation filter. Pany &

Eissfeller (2006) showed that a 10 dB-Hz signal can be

detected and tracked in vector tracking, and signals above

a selectable threshold of 25 dB-Hz are satisfactory for the

positioning update. Petovello & Lachapelle (2006)

demonstrated vector tracking can obtain a sensitivity

improvement of about 7 dB over scalar tracking methods.

Lashley et al (2009) showed that the vector

delay/frequency lock loop can operate with 8 G

coordinated turns at a C/N0 ratio of 19 dB-Hz.

The objective of this paper is to determine the benefits of

using a vector tracking receiver in standalone mode to

improve bit synchronization and decoding. Furthermore,

the paper uses the estimated data bits to extend coherent

integration using bit wipe-off and then assesses the

accuracy of navigation solution.

The contributions of this paper are three-fold. First, it

assesses the performance of ML bit synchronization and

decoding in vector tracking. Second, it assesses the

navigation performance with extended coherent

integration time after bit wipe-off. Third, it gives two

strategies for extending coherent integration time in a

software-based GNSS receiver in weak signal

environments.

In the context of this work, the performance of bit

synchronization and bit decoding is assessed in terms of

the successful synchronization rate (SSR) with the

navigation data bit (i.e., correct identification of the bit

boundaries) and the successful decoding rate (SDR) of bit

values. The results are validated with multiple trials of

ML bit synchronization and decoding in a software-based

GNSS receiver, and various implementation schemes are

introduced and compared.

The paper begins with the ML bit synchronization and bit

decoding algorithms. Next the vector tracking and

different architectures of GNSS receivers used in this

paper are introduced. Then two strategies are provided for

extending coherent integration time appropriately. Later

two tests performed in this work are described. Finally the

test results are presented and analyzed.

Page 3: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 3/14

The proposed algorithms are derived for a generic binary

phase shift keying (BPSK) GNSS signal, but are assessed

using GPS L1 C/A signals only.

SIGNAL AND SYSTEM MODEL

This section gives a brief overview of the ML algorithms

for bit synchronization and decoding used in this paper.

Signal Model

The GNSS signal transmitted through an additive white

Gaussian noise (AWGN) channel and received at the

antenna of a GNSS receiver in the radio frequency (RF)

band is represented by

,

1

( ) ( ) ( )svN

RF RF i RF

i

y t r t n t

(1)

Specifically, it is the sum of svN line-of-sight (LOS)

signals (, ( )RF ir t ) from svN satellites in view, plus a noise

term ( )RFn t . In general, the Signal in Space (SIS) at the

input of a GNSS receiver from the thi satellite has the

following structure

,

, ,

( ) ( ) ( )

cos 2

RF i i i i i i

RF d i RF i

r t Ab t c t

f f t

(2)

where iA is the amplitude of the signal; ( )i ib t is the

navigation message where each binary unit is called a bit;

( )i ic t is the ranging code; i is the code phase delay

introduced by the transmission channel; RFf is the GNSS

carrier frequency; ,d if is the Doppler frequency shift and

,RF i is the initial carrier phase offset.

After being down-converted in the receiver’s front-end,

signals from different satellites are approximately

orthogonal so that i index can be dropped and each signal

can be written separately as

( ) ( ) ( )

( ) ( )cos 2 ( )IF d

y t r t n t

Ab t c t f f t n t

(3)

where IFf is the nominal intermediate frequency (IF) of

the down-converted signal.

At this stage, the purpose of a GNSS receiver is to

estimate and df , thus allowing for the determination of

the pseudorange and pseudorange range to each satellite,

which is then used to calculate the receiver’s position,

velocity and time (PVT) parameters. To accomplish this,

each and df is estimated from a cross ambiguity

function (CAF), which is the cross-correlation between

the received signal and the locally generated signal, and is

given by

0

0

( , ) ( ) ( )

( ) ( )cos 2

c

c

T

d

t

T

IF d

t

R f y t r t

y t c t f f t

(4)

where ( )r t is the locally generated signal; , df and are

the corresponding locally-generated signal parameters

used to generate ( )r t ; cT is the ranging code period,

which is herein assumed to equal the coherent integration

time for cross-correlation. The form of ( , )dR f can be

different if using non-coherent integration though it is not

considered in this paper. Finally, the ML estimate of

and df is given by

,

ˆˆ, arg max ( , )d

d df

f R f

(5)

Effect of Modulated Data Bits

Bit sign transition affects the CAF evaluation especially

when the coherent integration time is longer than the bit

period ( bT ). In particular, bit sign transitions modify the

shape of the CAF envelope and may divide the central

peak of CAF in frequency domain into two split side

lobes (Sun & Lo Presti 2010; Ren et al 2012). So before

extending the coherent integration time, two necessary

steps are required. First, use bit synchronization to locate

the bit boundaries; second, use bit decoding to wipe off

the bits modulated on the carrier.

ML Bit Synchronization

As input, the ML bit synchronization algorithms uses

several cross-correlation outputs, each computed using a

coherent integration time equal to the ranging code

period. After obtaining the ML estimate of and df , the

locally generated signal and relative parameters can be

represented as ˆ( ) ( )r t r t , ˆ and ˆd df f . If there is

an error in and ˆdf compared to authentic and df , i.e.,

and ˆd d df f f , the thk cross-correlation

output of cT is given by

Page 4: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 4/14

( 1)

, , ,

,

ˆˆ ˆ( , ) ( ) ( )

( ) sinc( )

exp 2

c

c

b

kT

k d

t k T

R k C k l k d c

d c I Q

R f y t r t

A R b f T

j f kT n

(6)

which is the cross-correlation output from the signal

period of ( 1) ck T to ckT . Since the right hand side of the

above equation is only a function of and df , we

adopt the following shorthand notation to make this more

explicit

ˆˆ( , ) ( , ) ( , )k d k d kR f R f f R f (7)

,R kA is the amplitude of the cross-correlation output;

, ( )C kR is the normalized ranging code correlation

function with the code phase error of , which results

in a triangle shape attenuation in the cross-correlation

amplitude; ,bl kb is the modulated bit with the boundary

located at bl , which means each bit transition occurs at

b cl T relative to the start of the processing period, which is

itself equal to bT ; df is the Doppler frequency error,

which results in a sinc-shaped attenuation in the cross-correlation amplitude and a rotating carrier phase; is

the initial carrier phase error, and; N is the number of

bits. A diagram of the modulated bits in correlator outputs is shown in Figure 1.

Figure 1 - Demonstration of modulated bits in

correlator output

The recovery of carrier phase information usually

performed in a PLL or a Kalman filter tracking loop

(Petovello et al 2008), is used for coherent bit

synchronization and the coherent bit decoding and for

high precise positioning. Coherent bit synchronization

and the coherent bit decoding only use the in phase ( I )

channel of a cross-correlation output, assuming the signal

energy in the quadrature ( Q ) is approximately zero (and

only contains noise). In contrast, non-coherent bit

synchronization and the non-coherent bit decoding use

both I and Q .

ML bit synchronization is the process of detecting bit

boundary locations using a likelihood function. Since the

bit period and ranging code period are not necessarily

same but are known to be synchronized with each other

(i.e., bit transitions always occur at ranging code

rollovers), there are b cT T possible bit locations ( bl ) of

the bit boundary that needs to be searched. A window

function, which has a total length of bT is given by

1,( 1,2,..., / )k b cW k T T (8)

The matched filter output which is the cross-correlation

between ( , )k dR f in (7), and kW is given by

,

( )1

( , )

( , ) , ( 0,1,..., 1)

b

b c

b

dl n

NT T

k d k nM lk

C f

R f W n N

(9)

where bl is the shift of the window function relative to the

start of the current data bit.

The ML estimate of the bit boundary locations can be

found by selecting the bit boundary location that

maximizes the sum (over time) of the absolute values of

cross-correlation from the previous step. The sum of the

absolute values of cross-correlation is given by

1

,0

1( ) ( )

b b

N

d dl l nn

S f C fN

(10)

and the ML estimate of bit boundaries is correspondingly

obtained as

[1: ]

ˆ arg max ( )b

b

b dll M

l S f

(11)

ML Bit Decoding Algorithm

Bit decoding is the process of determining bit values after

the bit synchronization has completed. The likelihood

function used in the ML bit decoding algorithm is the

inner product between a cross-correlation output vector

starting from a bit boundary (so as to avoid integrating

over a boundary) and locally generated bit combinations.

The cross-correlation output vector with N bits is given

by

,1 ,2 ,

( , )

( , ), ( , ),..., ( , )b b b

d

T d T d T N d

f

R f R f R f

NR (12)

where , ( , )bT k dR f is the discrete form similar to (7)

but with integration period of bT instead of cT .

Page 5: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 5/14

If trying to decode N bits at a time, the number of

possible bit combinations is equal to 12N, and the correct

bit combination is supposed to have the maximum energy.

It is noted that the energy based ML bit decoding method

detects the bit transitions, not the actual bit values (i.e.,

there is a sign ambiguity), but this is sufficient for bit

wipe-off in order to extend coherent integration time.

The bit value combination matrix B ( 12N N ) is defined

as

1 1 ... 1

1 1 ... 1

... ... ... ...

1 1 ... 1

B (13)

For an N bit sequence, the inner product between

( , )df NR and the vector mb from the -thm row of B

is given by

1( , ) ( , ) ( 1,2,...2 )N

m d dI f f m N mR b (14)

The ML estimate of bit values can be found by

maximizing the energy of the inner product.

Mathematically, this is given as

2

[ 1,..., 1]

ˆ arg max , ;m dI f

m

mb

b b (15)

GNSS RECEIVERS AND VECTOR TRACKING

The above algorithms have been assessed in a software-

based GNSS receiver platform called GSNRxTM

, which is

developed in C++ by the PLAN Group at the University

of Calgary. This section describes the different versions

of the software used for processing.

There are three GNSS receiver architectures used in this

work. The first, shown in Figure 2, is the scalar-based

GNSS receiver, which contains independent local

tracking loops/channels dedicated to providing

independent pseudorange and/or pseudorange rate

measurements for PVT calculations.

Figure 2 - Architecture of a scalar-based GNSS

receiver

The second architecture is shown in Figure 3 and is a

vector-based GNSS receiver called GSNRx-vb™. The

difference between a scalar-based GNSS receiver and a

vector-based GNSS receiver is that the latter sets the

numerically controlled oscillators (NCOs) – inside the

local signal generator – from navigation filter outputs

rather than from local channel filter outputs. Sometimes,

the local channel feedback is maintained for tracking the

carrier phase as the dash line shown in Figure 3, though

this is not necessary. In addition, a vector-based GNSS

receiver requires knowledge about ephemeris data when

updating the channel parameters. To this end, long term

ephemeris (e.g., Garrison and Eichel 2006) could be used

in order to remain consistent with the motivation of this

people which is to maintain as much independence of the

receiver as possible from external data sources.

Figure 3 - Architecture of a vector-based GNSS

receiver, GSNRx-vbTM

Figure 4 shows the high-sensitivity GNSS receiver

architecture implemented in the GSNRx-hsTM

version of

the softwate. This architecture uses similar NCOs

feedback scheme as in the vector-based receiver, but

omits the carrier tracking because it is usually vulnerable

in signal challenged environments. Another advantage of

GSNRx-hsTM

is that it contains an open-loop tracking

structure, which can avoid the stability problem caused by

long coherent integration in normal closed-loop tracking

Page 6: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 6/14

(Ward et al 2006). This is preferred for building the

correlator output measurements with long coherent

integration. The detailed benefits of open-loop tracking

can be found in van Graas et al (2005). It is noted that the

original version of GSNRx-hsTM

extends the coherent

integration time by “bit aiding” method (O’Driscoll et al

2010), which requires an external network. As such, a

modified version was developed for this work that uses

ML bit decoding to extend integration time. This is

shown in Figure 5. This modified version can be

considered as a standalone high-sensitivity GNSS

receiver.

Figure 4 - Architecture of a conventional GSNRx-hs

TM

receiver with external bit aiding

Figure 5 - Architecture of a new GSNRx-hs

TM receiver

with ML bit decoding

STRATEGIES FOR EXTENDING COHERENT

INTEGRATION TIME

The benefits of extending coherent integration time have

been mentioned in Introduction. However, if the signal

power – as determined by the carrier to noise-density

(C/N0) – is low, the bit error rate (BER, which equals to

“1 - SDR”) of ML bit decoding will increase when

extending integration time. Specifically, bit wipe-off with

non-zero BER will attenuate the power of correlator

outputs, and a high BER may split the peak in the

frequency domain. The effect of the latter is similar to the

impact of falsely detecting the bit boundaries. Soloviev et

al (2009) proposed using the data bit repeatability in the

navigation message to decrease the BER. However, for

the case of the GPS L1 C/A signal, data bits repeat no

sooner than every 30 s, which is considered too long for

real time applications.

In order to handle the high BER problem, this work

proposes two strategies for selecting suitable correlator

outputs for input into the ML bit decoding algorithm.

Strategy I is to selected correlators based on a satellite’s

elevation angle. The idea is that in areas such as under

dense foliage, the signals from low elevation angle

satellites are more attenuated than high elevation angle

satellites because of signal shadowing and multipath

fading. By setting an angle mask threshold and ignoring

those satellites below, the impact of high BER is expected

to be greatly reduced. It is noticed that this strategy can

only be used in signal challenged environment containing

blockage from ground to a certain elevation, e.g., dense

foliage and urban canyon, but is not suitable for indoor

environment.

Strategy II is to choose suitable candidates based on the

estimated C/N0 values. This method is suitable for all

environments but relies on C/N0 estimate algorithms. In

this work, the C/N0 estimation was implemented by

separately calculating the signal power and noise power

spectral density and then computing their ratio. In

addition, the open-loop tracking structure can mitigate the

multipath impacts in navigation solutions by

distinguishing a LOS signal and non-line-of-sight (NLOS)

signals in frequency domain (Xie & Petovello 2011), and

this also mitigates the multipath fading in C/N0

estimation.

TEST DESCRIPTION

In order to assess the performance of ML bit

synchronization and decoding in vector tracking, two tests

are used. In both cases, only the GPS L1 C/A code signal

was used.

The first test is a static dataset with various signal power

levels generated from a Spirent GS7700 GNSS hardware

simulator. The GNSS simulator was configured to provide

about one hour of data with various power levels; in order

to emulate real environments where weak signal and

strong signal are usually mixed, each satellite was

assigned a unique and specific power value which ranges

from 15 dB-Hz to 40 dB-Hz. There are 12 satellites in

view in this test. The observations from six satellites set

with relatively strong signals (C/N0 ranging from 28 dB-

Hz to 40 dB-Hz) were chosen for updating the navigation

filter. The correlator outputs from other five satellites

with weak signals (C/N0 ranging from 15 dB-Hz to 25

Page 7: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 7/14

dB-Hz) are used to generate the ML bit synchronization

and decoding results. Although somewhat contrived, this

scenario, which contains mixed weak signal and strong

signal, approximates the case under dense foliage or in an

urban canyon. In this case, vector tracking should reduce

the search space for weak signal detection and then help

to improve the weak signal tracking and bit

synchronization and decoding. Since no multipath was

simulated, this test assesses the ML bit synchronization

and decoding algorithms in the presence of white noise

only.

The vector-based GSNRx-vbTM

was used for processing

the simulator data. All of the bit synchronization

outcomes (i.e., success or failure) are recorded. Using

one hour of data, there are about 500 and 1,000 bit

synchronization attempts when using 100 bits (two

seconds) and 200 bits (four seconds) of data, respectively.

In contrast, for a data bit period of 20 ms, there are

approximately 180,000 bits that can be used for bit

decoding. In order to generate statistics of bit

synchronization performance, the receiver was configured

to restart the bit synchronization process as soon as it

completed its previous attempt.

Results from the scalar-based GSNRxTM

software receiver

are also included for comparison. This receiver uses a

Kalman filter as the loop filter.

In addition, Monte Carlo simulations based on the signal

model in (6) and with 10,000 trials are performed to

generate the ideal results for comparison. The Monte

Carlo simulations assume no tracking errors in the

correlator outputs (i.e., 0, 0df ), and that the bit

transition happens with a probability equals 50%. The

Monte Carlo simulation results are treated as the upper

bound of ML bit synchronization and decoding.

The second test is a vehicular field test conducted in a

signal challenged environment, namely under dense

foliage in an area near the University of Calgary. Images

captured along the test trajectory are shown in Figure 6

and Figure 7. As can be seen, there are portions of the test

where sky visibility is highly restricted. The vector-based

GSNRx-hsTM

and the scalar-based GSNRxTM

were used

for processing the field data. The C/N0 values estimated

by GSNRx-hsTM

of all satellites in view in the dense

foliage test are shown in Figure 8, in which the signal

power values fluctuate markedly (a cumulative histogram

is also shown in Figure 17). Some attenuations of C/N0

are higher than 25 dB. The statistics of bit decoding as a

function of C/N0 are calculated using bins with a width of

5 dB. The reference data bits (i.e., bit aiding source) are

obtained from an antenna located on the roof of the CCIT

building at the University of Calgary, and the BER of

signals in this open sky environment (e.g., 45 dB-Hz) is

negligible.

Figure 6 - Dense foliage environment in the field test

Figure 7 - Dense foliage environment facing vertically

upwards

Figure 8 - C/N0 of all satellites in view in the dense

foliage test estimated by GSNRx-hsTM

A reference system consisting of a NovAtel SPAN SE™

units (which contains a NovAtel OEMV receiver and a,

LCI tactical-grade inertial measurement unit (IMU)

(“LCI”) was used to provide the reference trajectory and

dynamics. The estimated 1 accuracy of the reference

Page 8: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 8/14

system (per axis) is 0.2 m for position and 0.02 m/s for

velocity. The land vehicle with a NovAtel GPS-702-GG

antenna and a LCI IMU on top and a National Instruments

PXI-5600 front-end inside is shown in Figure 9.

Figure 9 - The land vehicle with navigation systems for

field data collection. The upper-left picture shows a

NovAtel GPS-702-GG antenna and a LCI IMU on top

of the vehicle. The upper-right picture shows a

National Instruments PXI-5600 front-end inside the

vehicle. The lower picture shows the land vehicle.

In both tests, the data were collected using the National

Instruments PXI-5600 front-end which includes an oven

controlled crystal oscillator (OCXO). The front-end

parameters are shown in Table 1. The front-end has a 16

bit quantization level, although for the data collected

typically only 3-4 bits are necessary (i.e., are non-zero).

The data were processed by and all algorithms were

implemented in the GSNRxTM

software receiver suites as

introduced in GNSS receivers and vector tracking.

Table 1 - Front-end parameters used for collecting

GNSS data in two tests

Parameter

Value (MHz)

GNSS

Simulator

Dense Foliage

Test

Centre Frequency 1575.0 1575.0

Sampling Rate (I/Q) 3.0 10.0

Bandwidth 2.5 5.0

RESULTS AND ANALYSIS

Test I: Processing Data from a Hardware GNSS

Simulator

Test I directly assesses the benefits of a vector tracking

structure for ML bit synchronization and bit decoding. By

processing the static simulator dataset, the scalar-based

receiver is able to track the signal down to 28 dB-Hz with

a coherent integration time of 1 ms (before or during bit

synchronization) and 25 dB-Hz with coherent integration

time of 20 ms (after bit synchronization). As shown in

Figure 10, the SSRs decrease to around 0% in the scalar-

based receiver if the C/N0 is lower than 28 dB-Hz, which

corresponds to when loss of lock is declared. In contrast,

the SSRs can maintain a level (close to ideal results from

the Monte Carlo simulation (MC simulation in the

following figures)) in the vector-based receiver, even

when the C/N0 is close to 15 dB-Hz. This means the

vector-based receiver can extend the tracking threshold as

low as 15 dB-Hz and still performs ML bit

synchronization.

Furthermore, in vector tracking, the SSR is close to 100%

with 200 bits for a signal of 20 dB-Hz. With a higher

number of bits (i.e., 200 vs 100 in this work) both the

Monte Carlo simulation results and vector tracking results

show that the SSRs are improved for weak signals. The

SSR can even be improved for signals with C/N0 lower

than 20 dB-Hz if the number of bits is more than 200 (not

shown). Compared with the Monte Carlo results, the

difference in SSR between vector tracking and Monte

Carlo simulations is due to the absence of bit transitions

in the simulator data for some of the data periods used for

bit synchronization. A method of detecting no bit

transition (not implemented here) can be found in

Kokkonen & Pietila (2002).

Figure 10 - Performance of ML bit synchronization in

scalar tracking and vector tracking as a function of

signal strength for different navigation data bit

numbers in the hardware GNSS simulator test

The ML bit decoding results in vector tracking are shown

in Figure 11. The number of bits to be decoded here is

two (i.e., 2N ), which is the optimal number compared

for tolerating Doppler errors (Ren et al 2012). As shown,

in scalar tracking, the SDRs decrease to around 50% in

the scalar-based receiver if the C/N0 is lower than 25 dB-

Hz when the signals are in the lost-lock status. This is

Page 9: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 9/14

because, in a random process, with bit transitions

happening with a probability of 50%, the expectation of

the SDR is 50% even when the signal has lost lock.

In contrast, the ML bit decoding in vector-tracking can

maintain a SDR markedly higher than 50% even the C/N0

is close to 15 dB-Hz. The performance of ML bit

decoding in vector tracking is very close to the Monte

Carlo results (upper bound). Furthermore, Figure 12

shows vector tracking may provide a better estimation of

Doppler compared with scalar tracking, this is another

benefit because both ML bit synchronization and ML bit

decoding are sensitive to Doppler errors, as mentioned in

Ren et al (2012). Overall, this test has shown vector

tracking can extend the validity of ML bit synchronization

and decoding by 13 dB and 10 dB over scalar tracking.

However, these results are optimistic since they are

primarily affected by noise only and a large number of

strong satellites are still being tracked. Nevertheless, they

provide a benchmark against which results from the field

tests can be compared.

Figure 11 - Performance of ML bit decoding in scalar

tracking and vector tracking as a function of signal

strength in the hardware GNSS simulator test

Figure 12 - Doppler measurement errors in scalar and

vector tracking as a function of signal strength in the

hardware GNSS simulator test

Test II: A Vehicular Navigation in a Dense Foliage

Environment

Test II assesses the benefits of a vector tracking structure

for ML bit decoding with field data. It uses the estimated

data bits to extend coherent integration using bit wipe-off

and then assesses the accuracy of navigation solution.

First of all, a comparison of estimated C/N0 from the

scalar-based receiver and the vector-based receiver is

shown in Figure 13. PRN 14 is selected for comparison

purpose and the results are typical for other satellites. It is

noticed that the signal can be tracked using vector-

tracking although the signal power is quite low (between

about 15 dB-Hz and 35 dB-Hz). In scalar tracking,

however, during most of time the signal is not tracked

(indicated by a C/N0 value equal to zero).

Figure 13 - C/N0 of PRN 14 in scalar tracking and

vector tracking in the dense foliage test

Page 10: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 10/14

The SDRs of ML bit decoding as a function of signal

strength in the scalar-based receiver and the vector-based

receiver are shown in Figure 14. Compared to the results

in scalar tracking, a marked performance improvement of

ML bit decoding in the vector tracking is noticed. This

shows the benefits of vector tracking for ML bit decoding,

which improves the SDR by 3% – 35% depending on the

signal strength. It can be observed that in scalar tracking,

the SDR is close to 50% at about 25 dB-Hz, and this

shows the scalar-based receiver lost signal lock there.

Compared with the Monte Carlo results, the difference in

SDR between vector tracking and Monte Carlo

simulations is due to the non-white noise factor existed in

field tests, e.g., multipath.

Figure 14 - Performance of ML bit decoding as a

function of signal strength in scalar tracking and

vector tracking in the dense foliage test

Figure 15 shows the SDR from each satellite in the entire

field test. Compared to scalar tracking, the improvement

of the SDR resulting from vector-tracking ranges from

2% (PRN 04) to 40% (PRN 14). By comparing the C/N0

of PRN 04 (the strongest) and the C/N0 of PRN 14 (the

weakest) in Figure 8, it can be concluded that vector

tracking improves the ML bit decoding of weak signals

more significantly.

Figure 15 - Performance of ML bit decoding in scalar

tracking and vector tracking in the dense foliage test

After estimating the data bits, bit wipe-off can be

performed in order to extend the coherent integration

time. In the following, the performance of this approach is

evaluated in the navigation domain. Specifically, a

comparison of navigation results (position and velocity)

using coherent integration times of 20 ms (the period of

one bit, no bit wipe-off needed), 100 ms (the period of

five bits) using bit aiding and 100 ms from ML bit

decoding is performed. The bit aiding method contains no

bit errors, so it is expected that it gives the best results.

The performance of the navigation solution using 100 ms

from ML bit decoding is expected to fall between the

20 ms case and the case with 100 ms with bit aiding.

Root mean square (RMS) position and velocity errors in

different directions obtained with Strategy I are shown in

Figure 16. By employing the elevation angle mask of 15

degrees, the results using extended coherent integration

time with ML bit decoding are very close to those with bit

aiding. In contrary, the 100 ms results with ML bit

decoding without any preselecting strategy are shown

even worse (in position) than the 20 ms results. This

shows the feasibility of ML bit decoding and Strategy I.

In addition, the fact that the 100 ms results with either bit

aiding or Strategy I are better than the 20 ms results

eludes to the effectiveness of the method for extending

coherent integration in real applications. Overall, the

position and velocity accuracy has been improved about

50% after extending coherent integration time from 20 ms

to 100 ms in this case.

Page 11: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 11/14

Figure 16 - RMS position and velocity errors in

different directions by using Strategy I in the dense

foliage test

The validity of Strategy I can be further confirmed by

viewing the cumulative C/N0 plots of all satellites in the

dense foliage test, which is shown in Figure 17. There are

three satellites (dashed lines) below 15 degrees of

elevation whose signal C/N0 are noticeably weaker than

those satellites above 15 degrees (solid lines). This

“elevation angle mask” strategy helps ML bit decoding

distinguish the “good” and “bad” candidates. It is noticed

that the value of the elevation angle mask – 15 degrees in

this paper – should vary according to different field

environments. Usually it is a trade-off between the

number of observations and the tolerance of BER values.

Further testing is needed to verify the veracity of this

approach.

Figure 17 - Cumulative C/N0 plots of all satellites in

the dense foliage test

In Strategy II, the coherent integration time is extended to

100 ms if the current C/N0 exceeds the threshold (denoted

as “Th” in the following figures), and the coherent

integration time stays at 20 ms if the C/N0 is below the

threshold. The corresponding RMS position and velocity

errors are shown in Figure 18. Four different threshold

values were chosen for comparison, namely 25, 30, 35, 40

dB-Hz. This coincides with the remarks in Introduction,

that the high BER measurements may corrupt the Doppler

estimation and then affect the accuracy of navigation

solution. By setting C/N0 threshold, most results of 100

ms from ML bit decoding fall between those obtained

using 20 ms and 100 ms using bit aiding. In addition, the

results can be used to evaluate different thresholds, and in

this case, the position results with a threshold of

30 dB-Hz are the best in the horizontal channels. The

optimal threshold is an empirical value obtained from this

field test. Of course, this value is highly reliant on the

local environment, and more tests are needed to confirm

its validity for other operating areas.

Page 12: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 12/14

Figure 18 - RMS position and velocity errors in

different directions by using Strategy II in the dense

foliage test

Finally, by setting the threshold as 30 dB-Hz, the

trajectory results from the vector-based GSNRx-hsTM

software receiver are shown in Figure 19. The reference

trajectory and the result from the scalar-based GSNRxTM

software receiver are included for comparison. The results

confirm the validity of extended coherent integration time

and Strategy II, with which the navigation solution from

the standalone GSNRx-hsTM

using 100 ms coherent

integration time is very close to the reference trajectory in

the dense foliage test.

Figure 19 - Trajectory results by using Strategy II in

the dense foliage test

CONCLUSIONS AND FUTURE WORK

This paper assesses the performance of ML bit

synchronization and decoding in vector tracking, presents

an analysis of the navigation performance with extended

coherent integration time after bit wipe-off, and gives two

strategies for extending coherent integration time in a

standalone software-based GNSS receiver in weak signal

environments.

The performance of ML bit synchronization and decoding

in vector tracking is assessed in terms of SSR and SDR

respectively, and estimated as a function of the number of

data bits and received signal power. In the context of GPS

L1 C/A signals, the results show that ML bit

synchronization and bit decoding are valid for the signals

as low as 15 dB-Hz in vector tracking. The simulator test

results show vector tracking can extend the validity of

ML bit synchronization and decoding by 13 dB and 10 dB

over scalar tracking. In vector tracking, the SSR is close

to 100% with 200 bits for the signal of 20 dB-Hz in ML

bit synchronization. The SDR is close to 100% for the

signal of 25 dB-Hz in ML bit decoding.

The field test results show vector tracking can improve

the SDR by 3% – 35% depending on the signal strength.

The navigation results show that extended coherent

integration can help to improve the navigation

performance in signal challenged environments. The

position and velocity accuracy has been improved about

50% after extending coherent integration time from 20 ms

to 100 ms in the vehicular navigation test.

Two newly proposed strategies have helped to overcome

the high BER problem using ML bit decoding for bit

wipe-off. It is shown that after implementing the either

strategy, the navigation results with extended coherent

integration time from ML bit decoding are close to those

from bit aiding, and the latter are considered as containing

no bit errors and expected giving the best results.

Future work will use more field tests under different

environments to find an adaptive scheme setting the

threshold parameters presented in the both strategies.

ACKNOWLEDGMENTS

The research presented in this paper was conducted as

part of a collaborative research and development grant

between the University of Calgary, General Motors of

Canada, and Natural Sciences and Engineering Research

Council of Canada.

REFERENCES

Akos, D. M., P. L. Normark, J. T. Lee, K. G. Gromov, J.

B.Y. Tsui and J. Schamus (2000) “Low Power Global

Navigation Satellite System (GNSS) Signal Detection

and Processing,” Proceedings of the 13th International

Reference trajectory

GSNRx-hsTM, 100 ms, Th = 30 dB-Hz

GSNRxTM, 20 ms, scalar tracking

Page 13: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 13/14

Technical Meeting of the Satellite Division of The

Institute of Navigation (ION GPS 2000), Salt Lake City,

UT, pp. 784-791, September 2000.

Akopian, D. and J. Syrjarinne (2002) “A network aided

iterated LS method for GPS positioning and time

recovery without navigation message decoding,”

Position Location and Navigation Symposium, 2002

IEEE, vol., no., pp. 77- 84.

Di Esposti, 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.

Djuknic, G. M. and R. E. Richton (2001) “Geolocation

and assisted GPS,” Computer, vol.34, no.2, pp.123-125,

Feb 2001.

Fastrax (2012), IT600 OEM GPS Receiver Module,

Fastrax Ltd. IT600 Data Sheet rev.1.6. 2012.

Garrison, J.L. and B.E. Eichel (2006) “An Extended

Propagation Ephemeris for GNSS,” NAVIGATION,

Vol. 53, No. 3, Fall 2006, pp. 167-179.

Gleason, S. and D., Gebre-Egziabher (2009) “GNSS

Applications and Methods,” Artech House: Norwood,

MA, USA, 2009.

Lashley, M., D.M. Bevly and J.Y. Hung (2009)

“Performance Analysis of Vector Tracking Algorithms

for Weak GPS Signals in High Dynamics,” Selected

Topics in Signal Processing, IEEE Journal of , vol.3,

no.4, pp.661-673, Aug. 2009

Sun, K. and L. Lo Presti (2010) “A differential post

detection technique for two steps GNSS signal

acquisition algorithm,” Position Location and

Navigation Symposium (PLANS), 2010 IEEE/ION ,

vol., no., pp.752,764, 4-6 May 2010

Kokkonen, M. and S. Pietila (2002) “A New Bit

Synchronization Method for a GPS Receiver”. Porc. of

the IEEE Position Location and Navigation Symposium,

April 2002. Palm Springs, CA, pp. 85–90.

MediaTek (2012), MT3336, MediaTek Inc. Product

summary. 2012.

O’Driscoll, C., M.E. Tamazin, D. Borio and G.

Lachapelle (2010) “Investigation of the Benefits of

Combined GPS/GLONASS for High Sensitivity

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. 2840-2851.

Pany, T. and B. Eissfeller (2006) “Use of a Vector Delay

Lock Loop Receiver for GNSS Signal Power Analysis

in Bad Signal Conditions”, in ION Annual

Meeting/IEEE PLANS, San Diego, CA.

Petovello, M., and G. Lachapelle (2006) “Comparison of

Vector-Based Software Receiver Implementations with

Application to Ultra-Tight GPS/INS Integration,” in

Proceedings of ION GNSS 2006, 26-29 Sept., Fort

Worth TX, pp.2977-2989, U.S. Institute of Navigation,

Fairfax VA

Petovello, M., C. O’Driscoll and G. Lachapelle (2008)

“Weak Signal Carrier Tracking of Weak Using

Extended Coherent Integration with an Ultra-Tight

GNSS/IMU Receiver.” Proceedings of European

Navigation Conference (Toulouse, 23-25 April), 11

pages.

Psiaki, M. L. and H. Jung (2002) “Extended Kalman filter

methods for tracking weak GPS signals,” In

Proceedings of the ION GPS-2002, Sept. 2002.

Ren, T., M.G. Petovello and C. Basnayake (2012)

“Requirements analysis for bit synchronization and

decoding in a standalone high-sensitivity GNSS

receiver,” Ubiquitous Positioning, Indoor Navigation,

and Location Based Service (UPINLBS), 2012 , vol.,

no., pp.1,9, 3-4 Oct. 2012

Soloviev, A., F. Van Grass and S. Gunawardena (2009)

“Decoding Navigation Data Messages from Weak GPS

Signals,” IEEE Transactions On Aerospace And

Electronic Systems Vol. 45, No. 2 April 2009.

Ublox (2011), UBX-G6010, UBX-G6000, ublox ag.

Product summary. 2011.

Van Diggelen, F. and C. Abraham (2001) “Indoor GPS

Technology,” Presented at CTIA Wireless-Agenda,

Dallas, 2001.

Van Dierendonck, A. J. (1996) “GPS Receivers,” in

Global Positioning System: Theory and Applications,

Vol.I, B. W. Parkinson and J.J. Jr. Spilker eds.,

American Institute of Aeronautics and Astronautics,

Washington, 1996, pp. 329-407.

Van Graas,F., A. Soloviev, M. U. Haag, S. Gunawardena

and M. Braasch (2005) “Comparison of Two

Approaches for GNSS Receiver Algorithms: Batch

Processing and Sequential Processing

Considerations”,in ION GNSS 18th International

Page 14: Improving GNSS Bit Synchronization and Decoding using ... · Improving GNSS Bit Synchronization and Decoding using Vector Tracking Tiantong Ren and Mark G. Petovello ... validate

ION GNSS+ 2013, Session B1, Nashville, TN, 16-20 September 2013 Page 14/14

Technical Meeting of the Satellite Division, 13-16

September 2005, Long Beach, CA

Ward, P.W., J.W. Betz and C. J. Hegarty (2006) “Satellite

signal acquisition, tracking, and data demodulation,” in

Understanding GPS (E. D. Kaplan and C. J. Hegarty,

eds.)

Xie, P. and M.G. Petovello (2011) “Multipath Signal

Assessment in the High Sensitivity Receivers for

Vehicular Applications,” Proceedings of ION GNSS

2011, The Institute of Navigation, 13 pages.

Zeidan, N. I. and J. L. Garrison (2003) “Bit

synchronization and Doppler frequency removal at very

low carrier to noise ratio using a combination of the

Viterbi algorithm with an extended Kalman filter,” In

Proceedings of the ION GPS/GNSS-2003, Sept. 2003.