ArticlePDF Available

Multichannel dual frequency GLONASS software receiver

Authors:

Abstract and Figures

Global Navigation Satellite System (GNSS) technology is rapidly evolving. With the recent revitalization of the Russian GLONASS system, with a current constellation of 16 satellites and the promise of 24 satellites by 2010 (Revnivykh 2007), it is worthwhile to concentrate on GLONASS as a method of GPS augmentation to achieve more reliable and accurate navigation solutions. This paper presents a software receiver that can acquire and track both L1 and L2 GLONASS civil signals for an unlimited number of GLONASS satellites. The paper presents the key differences between the GPS and GLONASS signals and highlights the corresponding software receiver changes needed to accommodate these differences. Acquisition, tracking and navigation data demodulation and extraction are discussed. Results show that the receiver is able to successfully track the L1 and L2 civil signals and that the corresponding navigation solutions are commensurate with those of a commercial GLONASS-enabled receiver.
Content may be subject to copyright.
ION GNSS 2008, Session B4, Savannah, GA, 1
16-19 September 2008
Multichannel Dual Frequency GLONASS
Software Receiver
S. Abbasian Nik and M.G. Petovello
Position, Location And Navigation (PLAN) Group
Department of Geomatics Engineering
Schulich School of Engineering
University of Calgary
BIOGRAPHY
Saloomeh Abbasian Nik is a Master candidate in the
Position, Location, And Navigation (PLAN) group in the
Department of Geomatics Engineering at the University
of Calgary, Canada. She obtained a B.Sc. degree from
Electrical Engineering Department at KNT University of
technology, Tehran, Iran. Her research interest is
software receiver development and testing, with a focus
on the GLONASS signals. She expects to finish her
Masters in December 2008.
Dr. Mark Petovello is an Assistant Professor in the
Position, Location And Navigation (PLAN) group in the
Department of Geomatics Engineering at the University
of Calgary. Since 1998, he has been involved in various
navigation research areas including software receiver
development, satellite-based navigation, inertial
navigation, reliability analysis and dead-reckoning sensor
integration.
ABSTRACT
Global Navigation Satellite System (GNSS) technology is
rapidly evolving. With the recent revitalization of the
Russian GLONASS system, with a current constellation
of 16 satellites and the promise of 24 satellites by 2010
(Revnivykh 2007), it is worthwhile to concentrate on
GLONASS as a method of GPS augmentation to achieve
more reliable and accurate navigation solutions. This
paper presents a software receiver that can acquire and
track both L1 and L2 GLONASS civil signals for an
unlimited number of GLONASS satellites.
The paper presents the key differences between the GPS
and GLONASS signals and highlights the corresponding
software receiver changes needed to accommodate these
differences. Acquisition, tracking and navigation data
demodulation and extraction are discussed. Results show
that the receiver is able to successfully track the L1 and
L2 civil signals and that the corresponding navigation
solutions are commensurate with those of a commercial
GLONASS-enabled receiver.
INTRODUCTION
Because of the limited number of GPS satellites, locations
with restricted satellite visibility have problems acquiring
and tracking the GPS signal. However, with the
availability of combined GPS and GLONASS receivers,
users will eventually have access to a 48-satellite
constellation and the performance in these places will
improve accordingly (e.g., Lachapelle et al 1997; Ryan et
al 1998). Moreover, there are some errors that may have
significant effects on the measured pseudorange. The
ionosphere in particular can affect the pseudorange to up
to 30 metres in nominal conditions (Lachapelle 2007).
Dual-frequency receivers can be used to effectively
mitigate this effect (Skone 1998).
With this in mind, software receivers provide an easy way
to acquire and track new GNSS signals. In fact, once
developed, software receivers are cost effective and easy
to modify to accommodate new signals and systems.
Therefore, there has been an effort to convert all or some
parts of hardware of a GNSS receiver to software.
Originally conceived by Akos and Braasch (1996) for
GPS applications, the use of software receivers for GPS
tracking has expanded considerably in the past decade.
Besides some software receivers developed for GPS, there
is considerable research on other GNSS such as Galileo.
Heinrichs et al (2007) developed the first interactive
GPS/Galileo L1/E1 software receiver. Macchi and
Petovello (2007) presented the development of a one-
channel Galileo L1 software receiver and tested the
software using real data. Ledvina et al (2006) developed
and tested a real-time interoperable GPS and Galileo L1
software receiver. Moreover, Normark and Ståhlberg
(2005) describes a fully software hybrid GNSS receiver
capable of real time acquisition and tracking of GPS C/A
and Galileo BOC(1,1) data and pilot channel.
Furthermore, some software developments have been
done on new GPS signals. For example, Muthuraman et al
(2007) evaluated different data/pilot tracking algorithms
for GPS L2C signals using a software receiver. Ledvina et
ION GNSS 2008, Session B4, Savannah, GA, 2
16-19 September 2008
al (2005) presented a real time software receiver for GPS
L2 civilian signal using a hardware simulator.
Some software receivers are programmable on a
microprocessor, a Field-Programmable Gate Array
(FPGA) or Digital Signal Processor (DSP). Itaca (Tomatis
et al 2007) is a scientific GNSS software receiver, which
is developed for innovation creation and testing and is a
valuable tool for the analysis of the next generation of
GNSS signals. Namuru is the name given to the open
GNSS receiver research platform developed at the
University of New South Wales, Australia (Mumford at al
2006). A real-time GPS L1 C/A-code software receiver
has been implemented on a Digital Signal Processor
(DSP) by Humphreys et al (2006). Kovar et al (2005)
presented a software receiver for combined GLONASS
and GPS signals. A powerful FPGA called Virtex-II Pro
from Xilinx is used to integrate all digital processing
parts. Spelat et al (2006) utilized FPGA and DSP for
combined GPS and Galileo software receiver. Won et al
(2006) presented an efficient and practical way of general
purpose high performance signal tracking software for a
multi-frequency GNSS receiver by using a Maximum
likelihood Estimation (MLE) technique. The Purdue
Software Receiver (PSR) is a real time software GPS
receiver defined at the University of Purdue (Heckler and
Garrison 2004). The PLAN (Position, Location And
Navigation) Group in the Department of Geomatics
Engineering at the University of Calgary developed its
first software receiver (GNSS_SoftRx™) in 2003 (Ma et
al 2004). The second version of the software was
developed in 2005. In this version, real-time operation
capability was achieved by using optimized algorithm to
perform Doppler removal and code correlation
(Charkhandeh et al 2006). Petovello and O’Driscoll
(2007) completed the software receiver in a modular
design, written entirely in C++, and called it GSNRx™.
This software operates in post–mission mode and
generates pseudorange, Doppler and carrier phase
observation for further processing and generate stand
alone Position, Velocity and Time (PVT) solution.
Despite the large amount of activity in the area of
software receivers, little work has been dedicated to a
GLONASS-capable software receiver. Furthermore, to
the authors’ knowledge, a dual frequency GLONASS
software receiver has not been implemented. With this in
mind, this paper presents a multichannel dual frequency
GLONASS software receiver. The GSNRx™ software
(Petovello and O’Driscoll 2007) is the basis for the
tracking part of GLONASS software receiver. The
objective of this paper is to present the methods used for
acquisition, tracking and navigation data demodulation of
GLONASS civilian L1 and L2 signals. The positioning
capability of the L1 and L2 signals is also demonstrated.
This paper begins with a short review of GLONASS L1
and L2 signals structure. The recent status of GLONASS
constellation is then briefly presented. Then the main
differences between GPS and GLONASS system are
highlighted. The paper continues with a review of GNSS
receivers. GLONASS signal acquisition and tracking
methods are discussed in detail and results are shown.
Finally, a general overview of GLONASS navigation data
structure is presented along with navigation solution
results and analysis, including a comparison with a
commercial receiver.
GLONASS SIGNAL STRUCTURE
GLONASS system was designed and developed to
provide three-dimensional position and velocity, and
timing for any user in the world or near-earth space in all
weather conditions (GLONASS ICD 2002). The
GLONASS constellation is nominally composed of 24
satellites in three orbital planes with ascending nodes
120° apart. In each plane there are eight satellites which
are in circular 19,100 km orbits at an inclination of 64.8°.
Each satellite completes the orbit in approximately 11
hours and 15 minutes (GLONASS ICD 2002).
GLONASS signals are transmitted in the L1 and L2
Radio Frequency (RF) sub-bands. All satellites broadcast
the civilian L1 signal. However, only the newer
GLONASS-M satellites broadcast the civilian signal on
L2 which is the focus of this work (i.e., the L2 high
accuracy signal is not considered) (GLONASS ICD
2002). With this in mind, the term “L2” is herein used to
refer only to the civilian L2 signal. The carrier of L1 and
L2 signals are modulated by the Modulo-2 addition of a
Pseudo Random (PR) ranging code, digital data of a
navigation message, and an auxiliary 100 Hz meander
sequence. GLONASS uses Frequency Division Multiple
Access (FDMA) techniques in both L1 and L2 sub-bands
such that each GLONASS satellite transmits the same PR
ranging code on separate carrier frequencies in each band
(as described below). Two types of ranging codes are
transmitted by the satellite: standard accuracy and high
accuracy. Only the standard accuracy is designed for civil
users and is a sequence of maximum length of a nine-
stage shift register with period of one millisecond and bit
rate of 0.511 MHz.
Moreover, the power level of the received RF signal from
GLONASS satellites at the output of a 3 dBi linearly
polarized antenna is defined to be not less than -161 dBW
for L1 sub-band and not less than -167 dBW (with the
subsequent increasing to a level not less than -161 dBW)
for L2 sub-band provided that the satellite is observed at
an angle of 5° or more (GLONASS ICD 2002).
The nominal values of L1 and L2 carrier frequencies are
defined by the following expressions:
ION GNSS 2008, Session B4, Savannah, GA, 3
16-19 September 2008
f
k1
= f
01
+ Kf
1
f
k2
= f
02
+ Kf
2
(1)
where K is the frequency number of the signals
transmitted by the GLONASS satellites in range of -7 to
+6, and
f
01
= 1602 MHz; f
1
= 562.5 kHz, for L1 sub-band
f
02
= 1246 MHz; f
2
= 437.5 kHz, for L2 sub-band
The channel number, K, for any GLONASS satellite is
provided in the almanac (GLONASS ICD 2002).
GLONASS STATUS
At the time of writing (August 2008), there were 16
GLONASS satellites in the constellation (Information-
Analytical Centre 2008). Among these 16 satellites, 13
satellites were GLONASS-M type satellites (University of
New Brunswick website 2008).
Three more GLONASS-M satellites are scheduled to be
launched in September 2008 with another three scheduled
for launch in December 2008 (GPS World 2008). As
such, assuming the launch schedule remains fixed, there
will be six new satellites in the constellation before the
end of 2008.
DIFFERENCES BETWEEN GPS AND GLONASS
This section aims to highlight the key differences between
the GLONASS and GPS signals. These differences are
summarized in Table 1.
Table 1 Main differences between GPS and
GLONASS
Item GPS GLONASS
Multiplexing CDMA FDMA
Ranging Code Type Gold Code M-Length
Received Navigation
Data Bit Period
20 ms 10 ms
One of the main differences between the GPS and
GLONASS systems is the technique used for
multiplexing. GPS uses Code Division Multiple Access
(CDMA), but GLONASS uses Frequency Division
Multiple Access (FDMA). This affects the multichannel
GLONASS signal implementation in the software
receiver by requiring that a specific intermediate
frequency is dedicated to each GLONASS satellite. In
turn, this prohibits (or at least limits) the use/benefit of
some computational efficiencies (e.g., Ledvina et al 2003;
Petovello & Lachapelle 2008).
Also, GLONASS ranging code is M-length sequence with
an order of nine; however GPS ranging code is a Gold
code. This affects the acquisition and tracking process in
generating the replica code.
The navigation message received from a GLONASS
satellite is a Modulo-2 addition of meander code (100 Hz)
signal and the original navigation message (20 ms) signal.
This affects the bit synchronization and C/N
0
estimation
parts of the software receiver and requires one additional
step to remove the effect of this meander code from
navigation message. Also, the way GLONASS navigation
message data bits are generated is totally different from
GPS. This will be discussed more in this paper in the
context of the navigation message structure and is
important for navigation message synchronization.
Moreover, GLONASS ephemeris and almanac are
specific to GLONASS constellation and time, which only
affects the navigation solution (it has no impact on
acquisition or tracking).
GENERAL VIEW OF GNSS RECEIVER
The final goal of a GNSS receiver is to generate a
navigation solution. To achieve this goal, it is necessary
that the received signal from the antenna be acquired and
tracked. When tacking is complete, useful information is
extracted and can be used to generate some
measurements. These measurements help in providing a
navigation solution. Figure 1 shows a view of a general
GNSS receiver.
Figure 1 A general view of a GNSS receiver (Petovello
and O’Driscoll 2007)
As the figure shows, the received data from the antenna is
down-converted to the desired intermediate frequency and
is sampled at the desired sampling rate. Samples are sent
to each tracking channel in parallel. Each tracking
channel consists of tracking loop, navigation message
extraction and measurement generation block.
Measurements from different channels are used for
navigation solution.
Down-
Conversion
and Sampling
Trackin
g
Loo
p
Navigation
Message
Extraction
Navigation
Solution
Measurement
Generation
Measurements
from other channels
i-th Channel
ION GNSS 2008, Session B4, Savannah, GA, 4
16-19 September 2008
DATA COLLECTION SET UP
This section describes a data collection used to evaluate
the various stages of the receiver development. Unless
stated otherwise, the results shown in the following
sections were obtained using the data set described below.
On August 12, 2008 at 6:30 pm local time, real data was
collected under open-sky conditions on the roof of a
building on the University of Calgary campus.
Figure 2 shows the data collection set up. In this data
collection, synchronized GLONASS L1 and L2 signals
were logged with a 12.5 MSps rate for about five minutes.
A NovAtel GPS-702GG antenna was used which is able
to receive L1 and L2 signals from GPS and GLONASS
(NovAtel website 2008). The Low Noise Amplifier
(LNA) gave 30 dB gain to the received signal. The splitter
divided the received signal and sent them to two channels
of the front-end. This front-end down-converts both L1
and L2 signals to 4 MHz prior to sampling. One bit
quantization was chosen in the front-end.
Figure 2 Data collection set up on August 12, 2008
GLONASS L1 AND L2 ACQUISTION
For convenience, the initial GLONASS signal acquisition
process was performed in Matlab using methods similar
to those for GPS. The Doppler frequency was tested over
a range of ±5 kHz around the carrier frequency. The
carrier frequency is calculated as follows:
1or2
f×K+IF=
Carrier
f (2)
where IF is the intermediate frequency and is computed
from the settings of the front-end and K is the channel
number of the GLONASS satellite on which acquisition is
performed. If the acquisition is for L1 signal, the channel
number must be multiplied by
1
f
and by
2
f
for L2.
This Carrier frequency is used for carrier wipe off during
the acquisition.
For code wipe off, a Fast Fourier Transform (FFT)
method is used (Bao and Tsui 2000). Figure 3 shows a
block-diagram of the acquisition method.
In coherent integration, the correlation values are
algebraically added:
...+QP+QP+QP+QP=QP
...+IP+IP+IP+IP=IP
4321Coherent
4321Coherent
(3)
where the number of IPs and QPs (the coherently
integrated in-phase and quadra-phase samples,
respectively) to be used can be set at the beginning of the
acquisition software.
Non-coherent integration is performed to help acquire
weak signals especially signals from low elevation angle
satellites and the L2 signals which are weaker than L1. In
non-coherent integration, the absolute correlation values
of coherent integration are added (Ray 2007a):
54321
2
20191817
2
20191817
=Cohnon5
2
4321
2
4321
=Cohnon1
P+P+P+P+P=P
)QP+QP+QP+QP(+)IP+IP+IP+IP(
P
)QP+QP+QP+QP(+)IP+IP+IP+IP(
P
(4)
Figure 4 and Figure 5 show the GLONASS acquisition
results for channel number zero in slot number 11 for L1
and L2, respectively. As can be clearly seen, the
acquisition peak is very evident, as should be expected
given the open sky environment in which the data was
collected.
The acquisition process was run on every visible
GLONASS satellite during the data collection. Table 2
summarizes the acquisition results. In this case, L2 signal
for GLONASS at orbital slot number 04 is not acquired
because this satellite is not GLONASS-M type satellite
and thus does not have the civilian code on L2.
Table 2 Acquired GLONASS signals
Orbital
Slot
Channel
No
L1 Acquired L2 Acquired
04 06 Yes No
10 04 Yes Yes
11 00 Yes Yes
19 03 Yes Yes
20 02 Yes Yes
Low noise
Amplifier
(LNA)
Splitter
L1
L2
Fron
t
-end
ION GNSS 2008, Session B4, Savannah, GA, 5
16-19 September 2008
Figure 3 Block-diagram of acquisition method
Figure 4 Acquisition result for GLONASS channel
number 0/ orbital slot 11, L1 signal
Figure 5 Acquisition result for GLONASS channel
number 0/ orbital Slot 11, L2 signal
GLONASS L1 AND L2 TRACKING
GSNRx™ (GNSS Software Navigation Receiver) is a
C++ class-based GNSS software receiver program
developed by the Position, Location And Navigation
(PLAN) Group at the University of Calgary. This
software was originally developed to acquire and track
GPS L1 C/A code signals and to generate navigation
solution and output measurements in post mission
(Petovello and O’Driscoll 2007). GLONASS L1 and L2
signal tracking was developed based on this software. As
such, those aspects of the receiver that are common with
GPS are discussed only briefly with references are
provided for the interested reader. Instead, the focus is
given to those aspects of the GLONASS receiver that
differ from GPS.
The phase discriminator implemented in the software is
the two quadrant arctangent. The discriminator is chosen
from the Costas discriminators to be insensitive to the
Read input signal
1. Initialization
2. Set the number of coherent
and non-coherent time
Frequency
range?
Generate local carrier
Carrier wipe off
Non-coherent
time reached?
Coherent
time
r
eached?
Calculate
non-coherent
No
Yes
Output
code offset
and
Doppler
frequency
Compute
correlation
value and
store it
Take 1 ms incoming signal
and 1 ms local code
Calculate
IP Coherent
QP Coherent
Generate local code
Perform correlation in
frequency domain
(FFT)
No
Yes
Yes
No
A
A
ION GNSS 2008, Session B4, Savannah, GA, 6
16-19 September 2008
effect of navigation data bit transitions. The output is the
phase offset (Ward et al 2006).
=
k
k
k
I
Q
1
tan
ˆ
ϕδ
(5)
where Q
k
and I
k
are the correlator outputs.
The frequency discriminator implemented in the software
is the decision-directed discriminator. The frequency error
is calculated according to the following equation (Ward et
al 2006)
coh
kk
k
T
CDSign
f
=
)(
ˆ
δ
(6)
where T
coh
is the coherent integration time and D
k
and C
k
are dot and cross product of two consecutive correlator
outputs respectively. Once synchronization with the
navigation data bits is achieved (see below) the coherent
integration time is chosen as 10 ms for GLONASS.
For code discriminator the non-coherent early minus late
envelop is used (Ward et al 2006)
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
)1(
ˆ
kLkLkEkE
kLkLkEkE
rk
QIQI
QIQI
+++
++
=
τδ
(7)
where E and L subscripts represent early and late
correlators and
r
is the offset of the early and late
correlator from the prompt correlator in unit of chips (half
of a chip throughout this paper).
To limit the effect of noise on the discriminator output,
loop filters are used. Loop filters are defined by their
noise bandwidth and their order (Misra and Enge 2001).
The bandwidth is desired to be as small as possible for
filtering the noise but still wide enough to allow true
signal dynamics to pass. This is a critical situation in
deciding the bandwidth of loop filter. By aiding the
tacking loop externally, the tracking loop only tracks the
remaining error in the signal. In GSNRx™, tracking loop
aiding is used to aid the PLL with FLL (FLL-Assisted
PLL) and also to aid DLL with carrier lock loop (CLL) in
which Doppler information from CLL is scaled to proper
units and then is used to aid DLL. Moreover, in the
GSNRx™ software, the bandwidth of DLL, PLL and FLL
can be initialized by the user to set it for different
applications. For GLONASS signal tracking loop, these
values are assigned 2, 15, and 8 Hz respectively. The
assisted DLL bandwidth is set 0.05 Hz.
The loop order defines the filter’s sensitivity to dynamics.
PLL and DLL have the second order loop filter and
therefore are robust to range rate but still produce an error
in the presence of range acceleration.
Figure 6 shows the correlator output for GLONASS L1
and L2 signals received from GLONASS satellite at
orbital slot 11 with channel number 0. The figure shows
that before achieving PLL state (at approximately 0.2 s
and 0.1 s for L1 and L2 respectively), power is divided
between I and Q arms. However, once the PLL is
initialized, the power is almost entirely in I channel. This
shows that tracking is successful with the phase error
being approximately zero.
0 1 2 3 4 5
-2
0
2
I&Q
(Scaled)
Correlator Output for CH#0 / Orbital Slot 11
L1 Signal
0 1 2 3 4 5
-2
0
2
L2 Signal
Time (Second)
I&Q
(Scaled)
I
Q
I
Q
Figure 6 I and Q values for L1 and L2 GLONASS
satellite at orbital slot 11 with channel number 0
Figure 7 shows the Doppler frequency for L1 and L2
GLONASS signals corresponding to Figure 6. This figure
shows that before the PLL tracking state is reached the
Doppler frequency values are converging but after
achieving PLL, the Doppler frequency is found and
tracked continuously. The Doppler frequency is noisier
after PLL is reached because the bandwidth of the PLL is
wider than FLL, as mentioned earlier.
0 0.5 1 1.5 2
1200
1300
1400
1500
1600
1700
Doppler for CH#0 / Orbital Slot 11
Doppler (Hz)
Time (Second)
L1
L2
Figure 7 Doppler frequencies for L1 and L2
GLONASS satellite at orbital slot 11 with channel
number 0
To estimate carrier to noise-density (C/N
0
), the Power
Ratio Method (PRM) was implemented (Van
Dierendonck 1995) using a maximum of ten 1-ms
ION GNSS 2008, Session B4, Savannah, GA, 7
16-19 September 2008
coherent integration intervals (i.e., M = 10) and an
average of 50 intervals (i.e., K = 50).
Figure 8 shows C/N
0
values for L1 and L2 signals of a
GLONASS satellite at orbital slot 11 with channel
number 0. As expected, the L1 estimates are higher than
the L2 estimates because of the increased signal power on
L1. Similar results were obtained for other satellites, as
summarized in Table 3. It is interesting to note that the
difference between the L1 and L2 C/N
0
estimates
decreases with decreasing C/N
0
. No definitive reason for
this has been found, but it may be an artifact of the front-
end.
0 2 4 6 8 10
0
20
40
60
C/N
0
for Ch#0 / Orbital Slot 11 L1 Signal
C/N
0
(dB-Hz)
0 2 4 6 8 10
0
20
40
60
L2 Signal
C/N
0
(dB-Hz)
Time (Second)
Figure 8 C/N
0
for L1 and L2 GLONASS satellite at
orbital slot 11 with channel number 0
Table 3 Mean C/N
0
values for GLONASS L1 and L2
signal of different satellites
Satellite C/N
0
for L1
(dB-Hz)
C/N
0
for L2
(dB-Hz)
Ch No 0 / Orbital Slot 11 51.1 46.0
Ch No 2 / Orbital Slot 20 48.6 45.9
Ch No 3 / Orbital Slot 19 40.0 39.7
Ch No 4 / Orbital Slot 10 39.3 35.13
GLONASS NAVIGATION MESSAGE DECODING
According to GLONASS ICD (2002), the GLONASS
navigation message is generated as a pattern of
continuously repeating “strings”, each with a duration of
two seconds. During the first 1.7 seconds of each two
second interval (at the beginning of each string), 85 bits
of navigation data are transmitted. During the last 0.3
seconds (at the end of each string) the time mark is
transmitted.
Figure 9 shows a simplified block-diagram of data
sequence generation. As can be seen, the data sequence,
which are those immediate and non-immediate navigation
data bits, are encoded using a Hamming code. The
Hamming code has a length of 4 (b
1
…b
n
). The coded
sequence of data and check bits are then transformed into
relative code. At the next step, the meander sequence is
Modulo-2 added to the transformed data bits yielding a
1.7 s code. The time mark, which separates data of one
string from the data of adjacent strings, is then appended.
At this point, the data bit duration is 10 ms. Finally, the
ranging code is added prior to modulating the carrier.
Figure 9 Simplified block-diagram of data sequence
generation (GLONASS ICD 2002)
Overall, 15 strings create one frame. Therefore a frame is
30 seconds in duration. Each five frames create a super-
frame with a duration of 2.5 minutes. Within each frame
all the immediate data for the given satellite and a part of
the non-immediate data are transmitted. Table 4 shows a
comparison between GPS and GLONASS navigation data
structure.
Table 4 Comparison between GPS and GLONASS
navigation data structure
GPS Duration GLONASS Duration
Super-frame 12.5 min
Page 30 s Super-frame 2.5 min
Sub-frame 6 s Frame 30 s
Word 600 ms String 2 s
For decoding the navigation message from the received
signal, the following steps were implemented:
1)
bit synchronization
2)
navigation message synchronization
3)
navigation message decoding
Bit synchronization is determining the location of the bit
transition in the navigation data. The method used is the
histogram method. In the histogram method, each
navigation data bit is divided into shorter bins (for
GLONASS into 10 1-ms bins) and the goal is to find the
transition between two successive bins. Every time a
transition is detected, a counter value is incremented. This
process continues until one bin count exceeds an upper
threshold or two bin counts exceed a lower threshold or
there is a loss of lock. The values of upper and lower
ION GNSS 2008, Session B4, Savannah, GA, 8
16-19 September 2008
threshold are generally a function of the carrier to noise
density ratio (Van Dierendonck 1995).
After bit synchronization, it is important to find the
location of the bits within the navigation message. The
algorithm which is used for navigations synchronization
is presented in Figure 10. The time mark pattern (which is
roughly equivalent to the GPS preamble sequence) is
equal to 0x3e375096 and its complement is 0xc1c8af69.
The complement must be checked because there is an
uncertainty in the polarity of the locally generated carrier
phase (i.e., a half cycle lock ambiguity). If the
complement is found then all navigation bits must be
converted to their complement value. If time mark or its
complement is found, the received data after 2 seconds is
checked again to see if the pattern repeats (which it
should if the correct location of time mark is identified).
If the correct time mark is found, the receiver converts the
data bits from 10 ms data bits to 20 ms data bits by
removing the meander code. By removing time mark at
this step, all that remains are the data bits and the
checking bits, but still it is necessary to remove the effect
of the transformation to relative code. After
transformation from relative code, the data bits and check
bits are revealed. The check bits are used to verify the
proper receipt of the data bits. The data verification
algorithm is explained in GLONASS ICD 2002 in detail.
This process is in fact the reverse process of the process
shown in Figure 9. If the data verification is passed,
navigation data synchronization is achieved otherwise
false data reception is reported and the process restarts.
When the location of the current bit in the navigation data
is clear, the ephemeris data related to that GLONASS
satellite and also the almanac data can be extracted. The
software for navigation decoding is designed in such a
way that first of all it looks for the first string in the
frame. The string number can be extracted from the
received bits. From the first four strings, ephemeris can be
extracted. Strings 6 to 15 contain a part of almanac for the
current GLONASS constellation. Data contained in 5th
string of each frame is the same for each super-fame and
relates to the almanac. As mentioned before, these 15
strings create a frame. Frame 1, 2, 3, and 4 contains
almanac for 20 satellites (each frame contains data for 5
satellites). Last frame (frame 5) contains almanac for the
remaining satellites in the constellation (i.e., four in the
nominal case). Ephemeris data repeats within one super-
frame (GLONASS ICD 2002).
NAVIGATION SOLTUTION
Following successful implementation and testing of the
signal acquisition and tracking algorithms described
above, a new data set was collected to assess the
navigation solution. This data was collected on
September 7, 2008 with the same conditions discussed in
previous data collection. Figure 11 shows the data
collection and processing set up. A commercial receiver,
namely NovAtel OEMV2, is used for navigation solution
validation.
Figure 10 Navigation data synchronization method
block diagram
Time Mark
( 0x3e375096) or
it’s complement
(
0x01c8af69
)
Add New Bit
Time Mark
After 2
Seconds
Start
End
Remove
the Data
Report False
Data Bits
Navigation Synchronization
Achieved
Data Bits
Verification
Transformation from Relative code to
Se
q
uence of Data and Chec
k
Bits
Yes
Remove Time Mark from the String
Convert the String from 10 ms data to
20 ms data bits (meander code effect)
NO
NO
Yes
Yes
NO
ION GNSS 2008, Session B4, Savannah, GA, 9
16-19 September 2008
Data received from the antenna is sent to a splitter. One of
the signals is sent to the NovAtel receiver which was
configured to log the raw measurement data. The other
signal from the splitter is sent to yet another splitter. The
outputs of this second splitter are defined as L1 and L2
signal and sent to the front-end. GSNRx™ processes the
output samples of the front-end. The output files of
GSNRx™ are observation and ephemeris for both L1 and
L2.
Table 5 shows the GLONASS satellites which their L1
and L2 signals are acquired. GLONASS L2 signal for the
satellite at orbital slot 7 was not acquired because it was
in a low elevation angle.
Table 5 Acquired GLONASS signals for the second
data set
Orbital
Slot
Channel
No
L1 Acquired L2 Acquired
07 05 Yes No
13 -2 Yes Yes
15 0 Yes Yes
23 03 Yes Yes
24 02 Yes Yes
As a final step, observation files from GSNRx™ and the
NovAtel receiver are sent to C
3
NAVG
2
™. This software
was developed in the PLAN group at the University of
Calgary and is able to process GPS and/or GLONASS
pseudorange (optionally carrier smoothed) using
standalone or differential techniques. The C
3
NAVG
2
software was run twice; once using the L1 pseudorange
data and once using the L2 pseudorange data. Position
solution results for L1 and L2 from GSNRx™ are shown
in Figure 12.
Table 6 shows a comparison between NovAtel and
GSNRx™ receiver root means square (RMS) position
errors for L1 using the same satellite constellation. Also
shown are the GSNRx™ position errors for L1 and L2,
again using the same satellite constellation (which differs
from the L1 only solution; see Table 5). Two things are
worth noting from these results. First, from the L1
solutions, the GSRNx™ solution is very similar to the
NovAtel solution. This confirms that the software receiver
appears to be working well. The cause of the large bias in
the east direction is not yet known, but is likely the result
of poor satellite geometry. Second, the L2 solution is
approximately the same as the L1 solution, as should be
expected under the low ionospheric conditions of the data
set. Also of note is that removing one satellite (when
going from the L1 to L2 solutions) further degrades
navigation solution, particularly in the easterly direction,
again suggesting that the bias is related to the satellite
geometry.
Figure 11 Data collection set up on September 7, 2008
8.87 8.88 8.89 8.9 8.91 8.92 8.93
x 10
4
-50
0
50
North Error (m)
Errors
L1
L2
8.87 8.88 8.89 8.9 8.91 8.92 8.93
x 10
4
0
20
40
East Error (m)
L1
L2
88700 88760 88820 88880 88940 89000 89060 89120 89180 89240 89300
-50
0
50
Height Error (m)
18:38 18:39 18:40 18:41 18:42 18:43 18:44 18:45 18:46 18:47 18:48
GPS time
(
sec
)
and Local time
(
HH:MM
)
L1
L2
Figure 12 Position error comparison of L1 and L2
Table 6 Root Means Square (RMS) Position Errors for
Various Solutions
Solution North East Vertical
5 Satellites
GSNRx™ (L1) 3.3 m 13.3 m 6.4 m
NovAtel (L1) 2.5 m 12.2 m 12.0 m
4 Satellites
GSNRx™ (L1) 6.7 m 20.6 m 7.3 m
GSNRx™ (L2) 5.3 m 19.6 m 13.0 m
CONCLUSIONS
This paper described the development of dual frequency
GLONASS software receiver. The software is a
combination of Matlab code for acquisition and C++ code
(based on GSNRx™ a previously developed GPS-only
receiver) for tracking. GLONASS bit and navigation
message synchronization is described and shown to be
successful. Navigation solutions for L1 and L2 were
compared and showed similar results. Also the L1
solution was found to be very similar to that obtained
Splitter
C
3
NAVG
2™
+12 v / DC
L1
OEMV2
NovAtel Receiver
Antenna
Splitter
COM1
L2
GSNRx™
Observations
Observations
GSNRx™ Solution
Front-end
C
3
NAVG
2™
NovAtel Solution
ION GNSS 2008, Session B4, Savannah, GA, 10
16-19 September 2008
from a commercial receiver suggesting the GLONASS
software receiver is working well.
Future work will focus on combining the GLONASS
tracking with GPS L1 C/A tracking. The benefits of the
dual frequency measurements from the GLONASS
system on the positioning accuracy will also be assessed.
REFERENCES
Akos, D. and M. Braasch (1996) “A Software Radio
Approach to Global Navigation Satellite System Receiver
Design,” in
Proceedings of ION Annual Meeting, Institute
of Navigation, pp.455-463.
Bao, J. and Y. Tsui (2000)
Fundamentals of Global
Positioning System Receivers: a Software Approach ,
John Wiley & Sons, Inc., pp. 137
Charkhandeh, S., M.G. Petovello and G. Lachapelle
(2006) “Performance Testing of a Real-Time Software-
Based GPS Receiver for x86 Processors,” in
Proceedings
of ION GNSS, 26-29 September, Forth Worth TX,
pp2313- 2320, U.S. Institute of Navigation, Fairfax VA
GLONASS ICD Ver.5 (2002), http://www.GLONASS-
ianc.rsa.ru , last accessed 3 February, 2008
GPS World (2008)
ION 2008 NEWS COVERAGE,
http://www.gpsworld.com/gpsworld/static/staticHtml.jsp?
id=548453, last access 26 September, 2008
Guo, J., W. Wang and B. Chao (2007) “A New GNSS
Software Receiver Signal Acquisition Method Research
Based on Ambiguity Function,” in
Proceedings of ION
GNSS , 25-28September, Fort Worth TX, pp. 231-235,
U.S. Institute of Navigation, Fairfax VA
Heckler, G.W. and J. L. Garrison (2004) “Architecture of
a Reconfigurable Software Receiver,” in
Proceedings of
ION GPS 2004,
21-24 September, Long Beach CA, pp.
947-955, U.S. Institute of Navigation, Fairfax VA
Heinrichs, G., M. Restle, C. Dreischer and T. Pany (2007)
“NavX®-NSR – A Novel Galileo/GPS Navigation
Software Receiver,” in
Proceedings of ION GNSS, 25-28
September, Fort Worth TX, pp. 231-235, U.S. Institute of
Navigation, Fairfax VA
Humphreys, T.D, M. L. Psiaki, P. M. Kintner, Jr. and B.
M. Ledvina (2006) “GNSS Receiver Implementation on a
DSP:Status, Challenges, and Prospects,” in
Proceedings
of ION GNSS,
26-29September, Fort Worth TX, pp. 2370-
2382, U.S. Institute of Navigation, Fairfax VA
Information-Analytical Centre website (2008) GLONASS
Constellation Status, http://www.glonass-ianc.rsa.ru, last
accessed August 20, 2008
Kovar, P, F.Vejrazka, L.seidl and P.Lacmarik (2004)
“Implementation of the GLONASS Signal-Processing
Algorithm to the Experimental GNSS Receiver” in
The
European Navigation Conference Proceedings, 16-19
May 2004, Rotterdam The Netherlands
Lachapelle, G., S. Ryan, M. Petovello and J. Stephen
(1997) “Augmentation of GPS/GLONASS for Vehicular
Navigation under Signal Masking,” in
Proceedings of the
ION GPS-97, Kansas City, MO, September 16-19, pp.
1511-1519.
Lachapelle, G. (2007) Advanced GNSS Theory, ENGO
625 Lecture Notes. Department of Geomatics
Engineering, The University of Calgary
Ledvina, B.M, S.P. Powell, P.M. Kintner and M.L. Psiaki
(2003) “A 12-Channel Real-Time GPS L1 Software
Receiver,” in
Proceedins of ION National Technical
Meeting
, Anaheim, CA, Institute of Navigation, pp.767-
782.
Ledvina, B.M., M. Psiaki, T. E. Humphreys, S.P. Powel,
and P.N Kintner (2005) “A Real-Time Software Receiver
Tracking of GPS L2 Civilian Signals using a Hardware
Simulator,” in
Proceeding of ION GPS 2005, 13-16
September, Long beach CA, pp.1598-1610, U.S. Institute
of Navigation, Fairfax VA
Ledvina, B.M., M. Psiaki, T. E. Humphreys, S.P. Powel
and P.N Kintner (2006) “A Real-Time Software Receiver
for the GPS and Galileo L1 Signal,” in
Proceedings of
ION GPS/GNSS , 26-29 September 2006, Forth Worth
TX, pp. 2321-2333, U.S. Institute of Navigation, Fairfax
VA
Ma, C., G. Lachapelle and M.E. Cannon (2004),
“Implementation of a Software Receiver,” in
Proceedings
of ION GNSS
, 21-24 September, Long Beach CA,
pp.882-893, U.S. Institute of Navigation, Fairfax VA
Macchi, F. and M.G. Petovello (2007) “Development of a
One Channel Galileo L1 Software Receiver and Testing
Using Real Data,” in
Proceedings of ION GNSS, 25-28
September, Fort Worth TX, pp. 2256-2296, U.S. Institute
of Navigation, Fairfax VA
Misra, P. and P. Enge (2001)
Global Positioning System
Signals, Measurement and Performance,
Lincoln, MA,
Ganga-Jamuna Press
Mongredien, C., G. Lachapelle and M.E. Cannon (2006)
“Testing GPS L5 Acquisition and Tracking Algorithms
Using a Hardware Simulator,” in
Proceedings of ION
GNSS 2006
, Fort Worth, TX, Institute of Navigation, pp.
2901-2913
ION GNSS 2008, Session B4, Savannah, GA, 11
16-19 September 2008
Mumford, P.J, K. Parkinson and A. Dempster (2006)
“The Namuru Open GNSS Research Receiver,” in
Proceedings of ION GNSS,
26-29 September, Fort Worth
TX, pp. 2847-2855, U.S. Institute of Navigation, Fairfax
VA
Muthuraman, K., S. K. Shanmugam and G. Lachapelle
(2007) “Evaluation of Data/Pilot Tracking Algorithms for
GPS L2C Signals Using Software Receiver,” in
Proceedings of ION GNSS, 25-28 September, Fort Worth
TX, pp. 2499-2509, U.S. Institute of Navigation, Fairfax
VA
Normark, P.L. and C. Ståhlberg (2005) “Hybrid
GPS/Galileo Real Time Software Receiver,” in
Proceedings of ION GPS 2005, 13-16 September, Long
beach CA, pp.1906-1613, U.S. Institute of Navigation,
Fairfax VA
NovAtel website (2008)
GPS-701/702-GG,
http://www.novatel.com/products/gps_701_702GG.htm,
last accessed August 20, 2008
Petovello, M.G. and C. O’Driscoll (2007)
GSNRx™
Algorithm design Document, Position, Location And
Navigation (PLAN) Group, Department of Geomatics
Engineering, University of Calgary, Canada.
Petovello, M.G. and G. Lachapelle (2008) “Centimeter-
Level Positioning Using an Efficient New Baseband
Mixing and De-Spreading Method for Software GNSS
Receivers”,
Journal on Advances in Signal Processing
(JASP)
Ray, J. K. (2007a)
Advanced GNSS Receiver Technology,
ENGO 638 Course Notes, Department of Geomatics
Engineering, University of Calgary, Canada, pp. 72-76
Ray, J. K. (2007b)
Advanced GNSS Receiver Technology,
ENGO 638 Course Notes, Department of Geomatics
Engineering, University of Calgary, Canada, pp. 17
Revnivykh, S.G. (2007) “GLONASS Status,
Development and Application,”
International Committee
on Global Navigation Satellite System (ICG) Second
meeting
, September 4-7, 2007, Bangalore, India
Ryan, S., M. Petovello and G. Lachapelle (1998)
“Augmentation of GPS for Ship Navigation in
Constricted Water Ways,” in
Proceedings of the National
Technical Meeting, Long Beach, CA., January 21-23, pp.
459-467.
Sharawi, M.S. and O.V. Korniyenko (2007) “Software
Defined Radios: A Software GPS Receiver Example,” in
IEEE/ACS International Conference on Computer
Systems and Applications
, 13-16 May 2007, Amman
Jordan ,pp.562 – 565
Skone, S. (1998)
Wide Area Ionospheric Grid Modeling
in the Auroral Region, PhD Thesis, Department of
Geomatics Engineering, The University of Calgary,
Canada, (Available at http://plan.geomatics.ucalgary.ca
)
Spelat, M., F. Dovis, G. Girau and P. Mulassano (2006)
“A Flexible FPGA/DSP Board for GNSS Receivers
Design ”, appears in
Research in Microelectronics and
Electronics 2006 Ph. D
., Otranto, pp.77-80
Tomatis, A., F. Dovis, M. Pini and M. Fantino (2007)
“ITACA: a Scientific GNSS Software Receiver for
Innovation Creation and Testing,” in
Proceedings of ION
GNSS,
25-28 September, Fort Worth TX, pp. 2723-2730,
U.S. Institute of Navigation, Fairfax VA
University of New Brunswick website (2008)
Geodesy
and Geomatics Engineering, GLONASS Status,
http://gge.unb.ca/Resources, last accessed August 20,
2008
Van Dierendonck, A.J. (1995) GPS Receivers, Global
Positioning System: Theory and Application,
B.W.
Parkinson and J.J. Spilker, Jr., American Institute of
Aeronautics and Astronautics, Inc. I, pp. 329-407
Ward, P.W., J.W. Betz and C.J. Hegarty (2006)
Satellite
Signal Acquisition, Tracking, and Data Demodulation,
Understanding GPS Principles and Applications
, E. D.
Kaplan and C.J. Hegarty, Norwood, MA, Artech House,
Inc., pp 153-241
Won, J., P. Thomas and B. Eissfeller (2006) “Design of a
Unified MLE Tracking for GPS/Galileo Software
Receivers,” in
Proceedings of ION GNSS, 26-29
September, Fort Worth TX, pp. 2396-2406, U.S. Institute
of Navigation, Fairfax VA
w.novatel.com/products/gps_701_702GG.htm
... Category (3) offers more flexible environments, as it can use more generic programming skills and optimized libraries in the form of application programming interfaces (APIs) such as fast Fourier transforms (FFTs), [32], [35], [38], [39], [41], [43]. Many accelerators in this category are C/C++-based and exploit multicore abilities for parallelism [59], MT [33]- [35], [38], [41], [43], [45], single-input multiple-data (SIMD) instructions [33], [34], [39]- [41], [43], [45], OpenMP APIs to schedule CPU multicore resources with noticeable speedups on correlators [38], [41], [43], [59], GPU-based APIs for parallel arithmetic operations [33], [34], [39]- [41], [43], real-time (RT) Linux OS [36], [37], [45], among others (see Table I). Category (3) can be associated with the Fully SW option mentioned in [55]. ...
... Category (3) offers more flexible environments, as it can use more generic programming skills and optimized libraries in the form of application programming interfaces (APIs) such as fast Fourier transforms (FFTs), [32], [35], [38], [39], [41], [43]. Many accelerators in this category are C/C++-based and exploit multicore abilities for parallelism [59], MT [33]- [35], [38], [41], [43], [45], single-input multiple-data (SIMD) instructions [33], [34], [39]- [41], [43], [45], OpenMP APIs to schedule CPU multicore resources with noticeable speedups on correlators [38], [41], [43], [59], GPU-based APIs for parallel arithmetic operations [33], [34], [39]- [41], [43], real-time (RT) Linux OS [36], [37], [45], among others (see Table I). Category (3) can be associated with the Fully SW option mentioned in [55]. ...
... Category (3) offers more flexible environments, as it can use more generic programming skills and optimized libraries in the form of application programming interfaces (APIs) such as fast Fourier transforms (FFTs), [32], [35], [38], [39], [41], [43]. Many accelerators in this category are C/C++-based and exploit multicore abilities for parallelism [59], MT [33]- [35], [38], [41], [43], [45], single-input multiple-data (SIMD) instructions [33], [34], [39]- [41], [43], [45], OpenMP APIs to schedule CPU multicore resources with noticeable speedups on correlators [38], [41], [43], [59], GPU-based APIs for parallel arithmetic operations [33], [34], [39]- [41], [43], real-time (RT) Linux OS [36], [37], [45], among others (see Table I). Category (3) can be associated with the Fully SW option mentioned in [55]. ...
Article
Full-text available
Recently, several global navigation satellite systems (GNSS) emerged following the transformative technology impact of the first GNSS--U.S. global positioning system (GPS). The power level of GNSS signals as measured at earth's surface is below the noise floor and is consequently vulnerable against interference. Spoofers are smart GNSS-like interferers, which mislead the receivers into generating false position and time information. While many spoofing mitigation techniques exist, spoofers are continually evolving, producing a cycle of new spoofing attacks and counter-measures against them. Thus, upgradability of receivers becomes an important advantage for maintaining their immunity against spoofing. Software-defined radio implementations of a GPS receiver address such flexibility but are challenged by demanding computational requirements of both GNSS signal processing and spoofing mitigation. Therefore, this paper reviews reported SDRs in the context of instrumentation capabilities for both conventional and spoofing mitigation modes. This separation is necessitated by significantly increased computational loads when in spoofing domain. This is demonstrated by a case study budget analysis.
... There has been substantial effort in the last decade to analyze the joint performance of two or more GNSS. GPS-Glonass mass-market combinations have been studied in [1][2] [15][36] [56]. The conclusion in [1] was that the combined GPS-Glonass receiver offers a similar positioning performance as the stand-alone GPS receiver and much better performance than the stand-alone Glonass receiver. ...
... GPS-Glonass mass-market combinations have been studied in [1][2] [15][36] [56]. The conclusion in [1] was that the combined GPS-Glonass receiver offers a similar positioning performance as the stand-alone GPS receiver and much better performance than the stand-alone Glonass receiver. The purpose in [15] was to show that GPS-Glonass solutions with only four visible satellites in total are also feasible solutions and the performance deterioration with respect to foursatellites stand-alone GPS or Glonass is not huge. ...
... As seen so far, the multi-system joint performance analysis in GNSS is still hard to find and measurement-based analyses are limited by the availability of multiple front-end antennas and specific to a certain measurement environment. It is therefore of high interest to be able to estimate in a faster, theoretical way, the ACCURACY LIMITS IN MULTI-GNSS Elena Simona Lohan 1 , Senior Member, IEEE, Kai Borre 2 , 1 Tampere University of Technology, 2 Samara National Research University M performance of joint multi-GNSS, and to use this estimate as the initial step in further system design. It is our goal to bridge this existing gap in the literature and to provide a simplified and generic theoretical framework for the performance bounds analysis of multi-GNSS. ...
Article
Full-text available
Satellite navigation is quickly becoming a multidimensional complex challenge, with four Global Navigation Satellite Systems (GNSS) fully or partially deployed, more than 90 GNSS satellites currently in the sky, and 12 open-service GNSS signal types available to the end-user. Research papers about GNSS performance typically focus on single or dual GNSS solutions, and there are still very few papers addressing jointly the four existing GNSS together. It is the goal of our paper to present a unified, fast, modular, and simple-to-program theoretical analysis of the four GNSS, focusing on performance limits in terms of spectral characteristics, tracking, multipath robustness, and positioning accuracy. A unified new compact approach for dealing with all the modulations employed in GNSS is also included.We show a unified generic framework for analyzing the multi-GNSS signals in a fast and simple-to-implement manner, without the need of simulating constellations or gathering measurement data. Our approach is also validated with Spectracom-based constellation data. Our analysis can be used as the starting point in further design process or system analysis.
... Referring to Abbasiannik (2009)  the x-axis is parallel to the direction of the Earth's equator for the epoch 1900 -1905, with the XOZ plane being parallel to the average zero meridian, defining the position of the origin of the adopted longitude system. ...
... The high level architecture of a GNSS receiver is illustrated in Figure Down-conversion in the front-end is the process of taking the RF signal down to some lower frequency (either an intermediate frequency, or directly to baseband) where it is easier to process (Kaplan & Hegarty 2006). The common form of the down-conversion is a mixer which multiplies the RF signal by a locally generated sinusoid and filters the output to remove double-frequency terms (Abbasiannik 2009), as shown in Figure 3 So far the above only describes single RF front-end which amplifies, filters, downconverts and digitalizes a narrow-band signal from a single band in the RF spectrum. ...
... The delay and multiplication method is faster than the FFT method but in the case of weak signals, it has a lower performance. Therefore, there is a trade-off between speed and sensitivity (Abbasiannik 2009). In the case of a strong received signal (i.e. ...
Thesis
Full-text available
This thesis presents a comprehensive study on the advantages of using combined processing of the Global Positioning System (GPS) and the Global Navigation Satellite System (GLONASS) for receivers in comparison with a GPS-only receiver in degraded signal environments. Existing commercial High Sensitivity (HS) GPS receivers suffer significant degradations in many environments such as in indoor environments and urban canyons due to restricted visibility of available satellites. Even if a sufficient number of satellites are available, the geometric Dilution of Precision (DOP), the noise and multipath can often be large, leading to large errors in position. Currently there are more than twenty-four active GLONASS satellites in orbit. It is therefore advantageous to concentrate on combining the GPS and GLONASS measurements to achieve more reliable and accurate navigation solutions. In this research, data was collected in an indoor environment and in urban canyons. A software receiver, namely GSNRx™, was used to process the data in both standard and high sensitivity modes. The analysis studies the benefits of combined HS GPS/GLONASS processing in terms of measurement availability, pseudorange degradation, signal power degradation, navigation solution availability, residual analysis, positioning accuracy and DOP. The combined use of GLONASS and GPS provides significant improvement in all of the above performance measures. Recommendations for future work are made for improvements.
... Since the U.S. Global Positioning System (GPS) has been the only fully operational GNSS, we focus here on how additional measurements are used to improve GPS performance in particular. To this end, the Russian GLONASS system has been successfully used to improve positioning when integrated with GPS (Lachapelle et al 1997, Abbasian Nik & Petovello 2008, Ong et al 2009. In particular, Ong et al (2009) showed the benefit of integrating GPS and GLONASS for high accuracy applications. ...
... In order to do this, two main modifications have to be made. First, the "single channel" boxes shown in the figure have to be updated to account for different frequencies, ranging codes, navigation message, etc. associated with GLONASS (Abbasian Nik & Petovello 2008). Second, the navigation solution has to be modified to accept GLONASS measurements. ...
... The GPS-only standard receiver architecture, as well as the GPS-only ultra-tight receiver architecture were previously implemented in the University of Calgary's GSNRx™ (GNSS Software Navigation Receiver), and GSNRx-ut™ software receiver, respectively (Petovello et al 2008c). Furthermore, initial GLONASS capability was already present (Abbasian Nik & Petovello 2008). Fortunately, due to the modular and flexible nature of the software, the modifications needed to implement the GPS/GLONASS/INS navigation solution were relatively easy to complete and mostly required implementing the GPS/GLONASS navigation solution discussed above. ...
Conference Paper
Full-text available
Whereas there has been much interest in ultra-tight GPS/INS integration in the last number of years, there has been little, if any, work done on expanding this application to the revitalized GLONASS system. Herein, ultra-tight integration of GPS and GLONASS with an Inertial Measurement Unit (IMU) is investigated to assess the impact on carrier phase tracking in degraded environments. Results support previous findings that ultra-tight integration offers signal tracking improvements relative to standard receiver architectures. However, it is found that the inclusion of GLONASS in the ultra-tight approach does not provide an appreciable improvement over using GPS alone.
... For the latter, global industrialization provides an awesomely wide range of hardware keeping costs low. The downside of industrialized technology is the fact that, in the last years, it has somehow constrained academic research raising legal and economic barriers; this results in GNSS receivers being seen as black Abbasiannik (2009) and Kang et al. (2002) have developed a combined GPS and GLONASS software receiver capable of providing a position solution. Lin et al. (2011) proposed a vector-based high sensitivity software receiver and its ultratight version. ...
Article
Full-text available
In recent years, we have witnessed a growing demand for GNSS receiver customization in terms of modification of signal acquisition, tracking, and processing strategies. Such demands may be addressed by software-defined receivers (SDRs) which refers to an ensemble of hardware and software technologies and allows re-configurable radio communication architectures. The crux of the SDRs is the replacement of the hardware components through software modules. In this paper, we assess the quality of GNSS observables acquired by SDR against the selected u-blox low-cost receiver. In the following, we investigate the performance level of single point positioning that may be reached with an ultra-low-cost SDR and compare it to that of the low-cost GNSS receiver. The signal quality assessment revealed a comparable performance in terms of carrier-to-noise density ratio and a significant out-performance of the u-blox over SDR in terms of code pseudorange noise. The experimentation in the positioning domain proved that software-defined receivers may offer a position solution with three-dimensional standard deviation error at the level of 5.2 m in a single point positioning mode that is noticeably poorer accuracy as compared to the low-cost receiver. Such results demonstrate that there is still room for SDR positioning accuracy improvement.
... The irst generation of GLONASS satellites (Uragan) was launched in 1982. Each satellite weighed approximately 1250 kg and was equipped with a basic propulsion system enabling it to relocate within its orbit [26]. Initially, GLONASS's main role was to control the formulation of the navigation signal and obtain the satellite ephemeris and almanac data. ...
Chapter
Full-text available
This chapter describes Global Navigation Satellite Systems (GNSSs) and their signal characteristics, beginning with an overview of Global Positioning System (GPS) architecture and describing its three primary segments: control, space, and user segments. After that, it addresses the GPS modernization program including the new civilian and military signals and their signiicance. It continues by outlining the GPS signal characteristics and the sources of GPS measurement error. GPS receivers as well are briely described. Then, it gives an overview of the GLONASS and describes its modernization program. Additionally, it delves into many aspects the GLONASS, including GLONASS signal characteristics, the GLONASS radio frequency (RF) plan, pseudorandom (PR) ranging codes, and the intra-system interference navigation message. Finally, GPS and GLONASS are compared to highlight the advantages of combined GPS and GLONASS measurements over the GPS-only measurements.
... The results show that the addition of GLONASS measurements to GPS satellites slightly increases the accuracy of positioning. GLONASS production errors and limited number of available GLONASS satellites are main reasons of slight effect of combining GPS and GLONASS signals [8][9][10][11]. ...
Article
Full-text available
In this paper, combined GPS and GLONASS positioning systems are discussed and some solutions have been proposed to improve the accuracy of navigation. Global Satellite Navigation System (GNSS) is able to provide position, velocity and time with respect to coordinated universal time. GNSS positioning is based on received satellite signals, so its performance is highly dependent on the quality of these received signals. The effect of noise and multi-path can often be large enough to produce significant errors in positioning. Satellite navigation is difficult in this situation. In such circumstances, GPS or GLONASS alone are often not able to ensure consistency and accuracy in positioning due to the absence (or low quality) of signals. The combination of these two systems is an appropriate solution to improve the situation. In positioning a receiver, one of the ways that is often used to reduce the error due to observation noise and calculation errors is Kalman Filter (KF) estimation. In this paper, some changes in the structure of the KF is applied to improve the accuracy of positioning. Process of updating KF's gain, is done in fuzzy form based on the parameters available in RINEX files, including the P code pseudo-range used as an input of the proposed fuzzy system. Simulation results show that applying a fuzzy KF based on P code pseudo-range on the available data sets, in terms of noise and blocking condition, reduces the positioning error respectively from 24 to 14 meters and 90 to 25 meters. © 2016, Iran University of Science and Technology. All rights reserved.
... All of the above represents, in the authors' opinion, a very well-founded motivation that led the application of the SDR paradigm to the design of GNSS receivers ( [10,[19][20][21][22][23][24][25]). To this respect, this tutorial intends to provide an overview of the typical techniques used to implement GNSS SDR receivers. ...
Article
Full-text available
The field of satellite navigation has witnessed the advent of a number of new systems and technologies: after the landmark design and development of the Global Positioning System (GPS), a number of new independent Global Navigation Satellite Systems (GNSSs) were or are being developed all over the world: Russia's GLONASS, Europe's GALILEO, and China's BEIDOU-2, to mention a few. In this ever-changing context, the availability of reliable and flexible receivers is becoming a priority for a host of applications, including research, commercial, civil, and military. Flexible means here both easily upgradeable for future needs and/or on-the-fly reprogrammable to adapt to different signal formats. An effective approach to meet these design goals is the software-defined radio (SDR) paradigm. In the last few years, the availability of new processors with high computational power enabled the development of (fully) software receivers whose performance is comparable to or better than that of conventional hardware devices, while providing all the advantages of a flexible and fully configurable architecture. The aim of this tutorial paper is surveying the issue of the general architecture and design rules of a GNSS software receiver, through a comprehensive discussion of some techniques and algorithms, typically applied in simple PC-based receiver implementations.
... As a final example, the GSNRx™ software has been used to track signals from the Russian GLONASS system. More specifically, algorithms have been developed to track the civilian signal on both L1 and L2 (Abbasian Nik & Petovello 2008). Table 5 shows the position error statistics for the L1 and L2 position solutions. ...
Article
Full-text available
The ever increasing demand for navigation and location services has fostered the need for higher performance Global Navigation Satellite Systems (GNSSs). The GPS L5 signal, part of the US effort to modernize GPS, was designed to respond to the above demand in terms of measurement accuracy, tracking robustness and tracking sensitivity. These improvements were achieved through the design of a more efficient signal structure. However, in order to fully exploit these improvements, new architectures have to be designed for the acquisition, tracking and data demodulation processes. This paper focuses on acquisition and tracking. First, a cascaded acquisition algorithm is proposed. The first step, referred to as coarse acquisition, is used to estimate the Doppler frequency and PRN code delay of all the visible satellites. The second step, referred to as fine acquisition, is then used to estimate the NH code delay and refine the Doppler frequency estimate. In order to do so, an intermediate tracking step, meant to remove the residual Doppler frequency prior to NH code alignment, is introduced. An innovative data/pilot combined tracking algorithm is then introduced. This algorithm coherently recombines the data and pilot correlators' output prior to the implementation of a common discriminator and loop filter. This implementation enables optimal noise mitigation (as the noise samples are independent and combined prior to any non-linear operation) and alleviates the problem of half-cycle slips occurrence on the data channel.
Article
Full-text available
With the recent or upcoming availability of several new signals from GPS, Galileo, GLONASS and Compass, the beginning of a new era in the field of GNSS has arrived. The recent development and launching of the first Galileo satellite GIOVE-A, part of the Galileo System Test Bed as well as the still on-ground testing satellite GIOVE-B is the start of this new age. Therefore, with such an improvement in the number of signals available to the user and the geometry offered by the combination of the various constellations, the current capabilities but also complexities of the receivers will be increased. One challenge is of course the acquisition and tracking of Galileo signals, especially using the actual data transmitted by the current orbiting satellite GIOVE-A. Due to the properties of the new L1 Galileo signal, novel acquisition techniques need to be developed. Beginning with the common zero padding technique, four new techniques of acquisition are described and implemented. The four acquisition methods (two for each the pilot and data channel) are then tested and compared in terms of processing time and acquisition sensitivity. Then, a tracking algorithm is presented using common strategies and the parameters of the filters are studied. All these tests are realized using real data from the current Galileo satellite.
Article
Full-text available
Given the demanding computational requirements of software-based GPS receivers, high data processing efficiency is required to obtain real-time performance. There are two basic approaches to accomplish this: reducing the number of computations required, or improving the efficiency with which the computations are carried out. This paper takes the latter approach, primarily by using the MMX technology available on x86-compatible processors. The interface between hardware and software, fast acquisition through FFT methods, Doppler removal and code correlation are the focus of this paper. The real-time performance of the receiver in static mode is also reviewed in this paper.. It is demonstrated that FFT acquisition can deliver a fast acquisition method suitable for software receivers. Initial results indicate a reasonable tracking performance of the receiver while tracking up to eight channels in real-time. The single-point position and velocity accuracies are at the meter and decimeter per second level, respectively when using a 1 ms coherent integration time.
Article
This paper presents an efficient and practical way of general purpose high performance signal tracking software for a multi-frequency GNSS receiver by using a MLE technique. The cost function of the MLE for estimating signal parameters such as code phase, carrier phase and Doppler frequency is used to derive a discriminator function to create error signals from incoming and reference signals. Assuming a code-free signal and a white additive Gaussian noise, the cost function of MLE is expanded to a simple form of quadratic cost function only for Doppler frequency, which makes it possible to generalize the MLE equation for arbitrary spreading codes and modulation schemes. In order to save computational time, an iterative solution algorithm is modified to a non-iterative feed-forward solution algorithm by using an assumption of no coupling between signal parameters, where the non-iterative solution algorithm uses the gradients of MLE cost functions for creating input error signals in signal tracking block diagram. The use of the block diagram approach for signal tracking makes it possible to provide a well-engineered partitioning of the required computations and to decrease the required processing time by forcing the tracking module to process without any iteration. The designed signal tracking algorithm is incorporated with a 4th order Kalman filter, which has code phase, carrier phase, Doppler frequency and Doppler frequency rate as its state variables, to reduce noise effect on the signal parameter estimates. Finally, a unified approach is also adopted to implement the signal tracking software for tracking a various kind of multi-frequency GNSS signals using the same lines of source code with different configuration setting, i.e., the architectural design method which uses a set of abstract base classes serving as a basis to build a specific receiver implementation is used for maximum reusage of source code.
Article
A new method for GNSS software receiver signal acquisition is presented in this article. It is based on narrow-band ambiguity function. By using this method, the C/A code phase time delay and carrier wave Doppler frequency shift can be estimated at the same time during the researching of GNSS software receiver signal acquisition. Some characteristics of the narrow-band ambiguity function signal acquisition method are deduced. And it completes the traditional two-dimensional signal acquisition scheme.
Article
A real-time GPS L1 C/A-code software receiver has been implemented on a Digital Signal Processor (DSP). The receiver exploits FFT-based techniques to perform autonomous acquisition down to a threshold of C/No = 33 dB-Hz. Efficient correlation algorithms and robust tracking loops enable the receiver to track an equivalent of 43 L1 C/A-code channels in real time with a tracking threshold of 25 dB-Hz. This accomplishment represents a milestone in an ongoing effort to develop a low-cost, flexible, and capable GNSS receiver for use as a scientific instrument and for GNSS receiver technology development. This paper reports on the current design and capability of the DSP-based receiver, provides an overview of the challenges that are particular to embedded GNSS software receiver design, and discusses the prospects of DSP-based GNSS software receivers in relation to the multiple frequencies and higher bandwidths offered by modernized GNSS.
Article
Dual frequency GPS receivers enable the estimation of absolute ionospheric delay and total electron content (TEC) along the signal path. By using a number of reference stations, each equipped with a dual frequency receiver, it is possible to estimate values of the vertical ionospheric delay at a set of designated grid points (in latitude and longitude) on an ionosphere shell. This type of ionosphere delay modelling is employed in wide area differential GPS (WADGPS) networks, where grid accuracies generally depend on the temporal/spatial correlations of TEC. These models can suffer degraded performance in regions, such as the high latitude auroral zone, where spatial gradients and temporal variations of electron density may differ significantly from assumptions. Given that future extensions of WADGPS applications include implementation of safety-critical systems to support air navigation in auroral regions, such as the wide area augmentation system (WAAS - FAA[1994]), it is important to establish the impact of auroral effects on such GPS networks. In the research presented here, a detailed study of auroral effects on GPS is conducted, and performance of the ionosphere grid model is investigated in the auroral region. The development of a Canadian wide area network in 1996, by Natural Resources Canada (NRCan) [Caissy et al., 1996], allowed compilation of an extensive GPS data set from the auroral region. In this thesis, periods of enhanced auroral activity (over Canada) are identified from ground-based magnetometer signatures, using the Canadian Space Agency's CANOPUS MARIA array. Signatures of auroral TEC associated with these disturbances are established using corresponding GPS observations from the NRCan network. A wide area ionosphere grid model is developed, and degraded grid accuracies associated with the auroral features are estimated, under various modelling assumptions. It is observed that grid accuracies are degraded by a factor of 2--5, relative to typical accuracies, during periods of enhanced auroral activity. In order to mitigate these effects, a modified grid algorithm is developed in which auroral disturbances are detected from time series of TEC observations. Model parameters are adjusted, consistent with local ionospheric processes, which allows improvements in the grid performance of 15--25 percent. Detailed analysis of a substorm event is conducted, where the largest degradations in grid accuracies are observed during the substorm expansive phase. The potential of monitoring auroral phenomena using GPS observations from a wide area network is explored briefly.
Article
Description These two-volumes explain the technology, performance, and applications of the Global Positioning System (GPS). The books are the only of their kind to present the history of GPS development, the basic concepts and theory of GPS, and the recent developments and numerous applications of GPS. Each chapter is authored by an individual or group of individuals who are recognized as leaders in their area of GPS. These various viewpoints promote a thorough understanding of the system and make Global Positioning System: Theory and Applications the standard reference source for the GPS. The two volumes are intended to be complementary. Volume I concentrates on fundamentals and Volume II on applications. They are recommended for university engineering students, practicing GPS engineers, applications engineers, and managers who wish to improve their understanding of the system. These two-volumes explain the technology, performance, and applications of the Global Positioning System (GPS). The books are the only of their kind to present the history of GPS development, the basic concepts and theory of GPS, and the recent developments and numerous applications of GPS. Each chapter is authored by an individual or group of individuals who are recognized as leaders in their area of GPS. These various viewpoints promote a thorough understanding of the system and make Global Positioning System: Theory and Applications the standard reference source for the GPS. The two volumes are intended to be complementary. Volume I concentrates on fundamentals and Volume II on applications. They are recommended for university engineering students, practicing GPS engineers, applications engineers, and managers who wish to improve their understanding of the system.