Upload
phamngoc
View
224
Download
3
Embed Size (px)
Citation preview
University of Colorado
A Software-Defined
GPS and Galileo Receiver:
Single-Frequency Approach
A Software-Defined
GPS and Galileo Receiver:
Single-Frequency Approach
15-Sept-2005
ION-GNSS-2005Session C4: GNSS Software Receiver Systems 2
K. Borre; Aalborg UniversityD. Akos; University of Colorado
University of Colorado
Presentation OverviewPresentation Overview
� Motivation
� Software GNSS Receiver Architectures
� Front End Design & Signal Conditioning– Sample GPS Data Set
� Signal Acquisition
� Code & Carrier Tracking
� Navigation Data Decoding & Position Solution
� Future Work
University of Colorado
MotivationMotivation
� Develop a software GNSS receiver to process both GPS and Galileo narrowband L1 components
� Develop accompanying textbook for teaching/educational aspects of GNSS software receivers
� Provide an open source (GPL) fully functional GNSS software receiver basis for further development and refinement by the research community
University of Colorado
AnalogFront-end
(possible ASIC)
DigitalBasebandProcessing
(typically ASIC)user
interface
Antenna
Micro/SignalProcessor
User Computer & Display
userapplication
Acq/TrackingNavigation
General purposemicroprocessor
Serial C
omm
unication Link
Core GNSS Receiver
AnalogFront-end
(possible ASIC)
DigitalBasebandProcessing
(typically ASIC)user
interface
Antenna
Micro/SignalProcessor
User Computer & Display
userapplication
Acq/TrackingNavigation
General purposemicroprocessor
Serial C
omm
unication Link
Core GNSS Receiver
� A generic GNSS receiver block diagram is depicted below:
� The core GNSS receiver components are:– Antenna– Front end for analog signal conditioning, filtering, and digitization– High speed correlation ASIC (application specific integrated circuit)– Embedded programmable micro/signal processor
� Hardware (ASIC-based) receivers provide minimal flexibility and little support for GNSS additions and/or research
Traditional GNSS Receiver Architecture
University of Colorado
GNSS Software Receiver ArchitectureGNSS Software Receiver Architecture
AnalogFront-end
(possible ASIC)
DigitalBasebandProcessing
(typically ASIC)user
interface
Micro/SignalProcessor
User Computer & Display
userapplication
Acq/TrackingNavigation
General purposemicroprocessor
Serial C
omm
unication Link
AnalogFront-end
(possible ASIC)
DigitalBasebandProcessing
userinterface
Antenna
Micro/SignalProcessor
User Computer & Display
userapplication
Acq/TrackingNavigation
General purposemicroprocessor
Serial C
omm
unication Link
Core GNSS Receiver
Programmable Processor
� The modification to a “software” GNSS receiver architecture is subtle
� Now all the signal processing (spread spectrum) after the analog-to-digital converter (ADC) is accomplished within a programmable processor
University of Colorado
Signal Conditioning or Front End Design
for GPS Data Collection
Signal Conditioning or Front End Design
for GPS Data Collection
ADCBPF
Active AntennaGain ≈≈≈≈ 30 dB
Noise Figure ≈≈≈≈ 2.5 dB
BPF BPFBandpass Filter
FCENTER = 1575.42 MHz3db BW ≈≈≈≈ 50 MHz
Bandpass FilterFCENTER : 47.74 MHz3db BW ≈≈≈≈ 18 MHz
Amplifier(s)Gain ≈≈≈≈ 50 dB
Noise Figure ≈≈≈≈ 4.0 dB
PLL
Bandpass FilterFC : 47.74 MHz
3db BW ≈≈≈≈ 6.0 MHz
Amplifier(s)Gain: ≈≈≈≈ 50 dB
Noise Figure ≈≈≈≈ 4.0 dB
PLL Output1527.68 MHz
@ 7 dBm
Analog-to-DigitalConverter
FSAMPLING ≈≈≈≈ 38.192 MHz4 Bit Samples
Rooftop CableLoss ≈≈≈≈ 8.0 dB
TCXOF = 10.00MHz
÷ 40Sampling
Clock
� Above front end design provided a raw digitized sampled signal for algorithm
development & processing
� Data set is included with the software algorithms
sampled signal to be processed
University of Colorado
Collected Data SetCollected Data Set
0 0.005 0.01 0.015 0.02 0.025-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1Time Domain: First 1000 Samples of GPS Data
time (usec)
norm
aliz
ed a
mpl
itude
(V
)
0 0.005 0.01 0.015 0.02 0.025-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1Time Domain: First 1000 Samples of GPS Data
time (usec)
norm
aliz
ed a
mpl
itude
(V
)
0 2 4 6 8 10 12 14 16 18-15
-10
-5
0
5
10
15
20
Frequency (MHz)
Pow
er S
pect
rum
Mag
nitu
de (
dB)
Frequency Domain: Power Spectral Density of First 1048576 Samples of GPS Data
0 2 4 6 8 10 12 14 16 18-15
-10
-5
0
5
10
15
20
Frequency (MHz)
Pow
er S
pect
rum
Mag
nitu
de (
dB)
Frequency Domain: Power Spectral Density of First 1048576 Samples of GPS Data
-8 -6 -4 -2 0 2 4 6 80
2
4
6
8
10
12
14
16
18x 10
4
Sample Bin
Num
ber
with
in B
in
Histogram of First 1048576 Samples of GPS Data
-8 -6 -4 -2 0 2 4 6 80
2
4
6
8
10
12
14
16
18x 10
4
Sample Bin
Num
ber
with
in B
in
Histogram of First 1048576 Samples of GPS Data•• Collected data set is multiple minutes of dataCollected data set is multiple minutes of data
•• Algorithms have been tested with other front Algorithms have been tested with other front
ends (sampling and intermediate frequenciesends (sampling and intermediate frequencies
•• Software GNSS RX architecture utilizes Software GNSS RX architecture utilizes
traditional processing of the datatraditional processing of the data
•• Acquisition, Code & Carrier Tracking, Acquisition, Code & Carrier Tracking,
Navigation Data Decoding & Position SolutionNavigation Data Decoding & Position Solution
University of Colorado
GNSS Software RX Flow DiagramGNSS Software RX Flow Diagram
Start with over Start with over
view of complete view of complete
software GNSS RX software GNSS RX
architecturearchitecture
University of Colorado
GNSS Signal Acquisition – Parallel Code
Phase Search
GNSS Signal Acquisition – Parallel Code
Phase Search
� Algorithm tests all possible code phases via an FFT/IFFT computation– FFT/IFFT computation time is the key to the algorithm
� Provides an exhaustive testing of all possible code phases
� Potential for very rapid acquisition times
incoming
signal
I
Q
Local
Oscillator
LPF
LPF
Fourier
Transform
PRN Code
Generator
Inv Fourier
Transform
Decision
Logic
Control
Logic
| |2
magnitude
Conjugate
Frequency-domain circular convolution technique
Fourier
Transform
University of Colorado
Flow Diagram of
Software GPS RX
Acquisition
Flow Diagram of
Software GPS RX
Acquisition
� Perform acquisition on sample
collected data set
� Need to know the sampling
frequency and resulting
intermediate frequency (IF)
to enable processing
� Result should return visible
satellites, their code phase
and carrier frequency
estimate
University of Colorado
Complete Tracking BlockComplete Tracking Block
� Combined code and carrier tracking loops
Incomingsignal
Integrate& Dump
PRN CodeGenerator
Integrate& Dump
Integrate& Dump
E
P
L
I
IE
IP
IL
Integrate& Dump
Integrate& Dump
Integrate& Dump
E
P
L
Q
QL
QP
QE
Code LoopDiscriminator
NCO CarrierGenerator
Carrier LoopFilter
Carrier LoopDiscriminator
90°
University of Colorado
Flow Diagram of
Software GPS RX Tracking
Flow Diagram of
Software GPS RX Tracking
University of Colorado
Navigation Data Decoding Navigation Data Decoding
� The final signal processing function of the receiver is to decode the
50 Hz navigation data stream
� The bits are clearly visible in the inphase channel of the Costas loop
� Processing proceeds as follows:
– Bit synch – determine the start/stop of each bit
– Frame synch – determine the start/stop of the navigation data frames
– Data decode – extract the necessary parameters from the transmitted
‘1’s and ‘0’s in the first three subframes (required for position solution)
� The ICD-200 and GPS signal specification are outstanding references
and describe in detail the structure of the navigation data message
University of Colorado
Calculating PseudorangesCalculating Pseudoranges
� Timestamp the start of each subframe
University of Colorado
Pseudoranges
Flow Diagram
Pseudoranges
Flow Diagram
University of Colorado
Position Solution Flow Diagram
Position Solution Flow Diagram
University of Colorado
Receiver Position ComputationReceiver Position Computation
-8 -6 -4 -2 0 2 4 6 8 10
-6
-4
-2
0
2
4
6
Measurement plot in UTM system
East (m)
No
rth
(m
)
� Position solutions generated at 1 Hz rate for 38.192 MHz data set
� Shown are the results for the first 30 second block of data
University of Colorado
Receiver/Code CommentsReceiver/Code Comments
� Post-processing MATLAB version– Focus is on algorithm research and development– Provide non-real time processing yet not excessively slow • Computation speed approximately 6-12 times real-time
(sampling frequency dependent)
– ~500 lines of code
� Goal is to augment the knowledge concerning
signals and algorithms
University of Colorado
Summary & ConclusionsSummary & Conclusions
� Book will be available early 2006– Should provide basis for software GNSS receiver courses
� Current receiver developments– Support for Galileo signals– Support for EGNOS signals
� Will make available a reference textbook &
complete GPS/Galileo GPL Matlab framework to
be used for algorithm development and testing