PART2 » History » Version 12

COLIN, Tony, 03/14/2016 10:29 AM

1 1 COLIN, Tony
h1. PART 3 : Acquisition and Tracking.
2 1 COLIN, Tony
3 1 COLIN, Tony
{{>toc}}
4 1 COLIN, Tony
5 2 COLIN, Tony
h2. 1- Introduction.
6 1 COLIN, Tony
7 3 COLIN, Tony
h3. a- General overview of a GPS receiver using CDMA technique.
8 1 COLIN, Tony
9 5 COLIN, Tony
p=. !1.png!
10 12 COLIN, Tony
*Figure 3.1* : .
11 5 COLIN, Tony
12 3 COLIN, Tony
*[ See Kassas_Graphical_Approach_to_GPS_SDR II - GPS RECEIVED SIGNAL MODEL ]*
13 3 COLIN, Tony
At the output of the receiver front-end, after down-conversion to baseband, the signal x can be expressed as follows:
14 1 COLIN, Tony
15 5 COLIN, Tony
p=. !2.png!
16 12 COLIN, Tony
*Figure 3.2* : .
17 5 COLIN, Tony
18 3 COLIN, Tony
Where:
19 6 COLIN, Tony
*A* is the amplitude of the signal
20 6 COLIN, Tony
*τ_j* = jT is the sampling time
21 6 COLIN, Tony
*T* is the sampling period
22 9 COLIN, Tony
*t_d(τ_j)** is the time difference between the start time of the navigation sequence that is being sampled at τj and τj = phase of the incoming navigation data
23 9 COLIN, Tony
*t_s(τ_j)* is the time difference between the start time of the spreading sequence that is being sampled at τj and τj = phase of the incoming PRN sequence
24 7 COLIN, Tony
*θ* is the phase shift due to non-coherent down-conversion to baseband (Doppler shift)
25 6 COLIN, Tony
*n* is a white Gaussian noise
26 6 COLIN, Tony
27 5 COLIN, Tony
p=. !3.png!
28 12 COLIN, Tony
*Figure 3.3* : .
29 3 COLIN, Tony
30 6 COLIN, Tony
*T_d* is the symbol period
31 6 COLIN, Tony
*T_c* is the chip period
32 6 COLIN, Tony
*d_k* is a navigation symbol taking its values in ±1
33 6 COLIN, Tony
*c_k* is a chip symbol taking its values in ±1
34 6 COLIN, Tony
*π_Td* is the standard pulse function of width Td
35 6 COLIN, Tony
*π_Tc* is the standard pulse function of width Tc
36 6 COLIN, Tony
*N_c* is the number of chips in one spreading code
37 3 COLIN, Tony
38 3 COLIN, Tony
h3. b- List of the key parameters in the implementation of a GPS receiver.
39 3 COLIN, Tony
40 3 COLIN, Tony
To decode navigation data, one first needs to remove the incoming carrier from the signal *(insert ref here on the general overview of a GPS receiver using CDMA technique)*. To do so, the carrier frequency has to be known to generate a local carrier signal and down-convert the incoming signal to baseband. Nonetheless, this carrier frequency might deviate from the expected value. Indeed, the relative motion of the satellite with respect to the receiver induces a Doppler effect that shifts the frequency of the incoming carrier. If the GPS receiver is moving, it is reasonable to assume that the maximum Doppler shift for the L1 frequency is around ± 10 kHz. Otherwise, for a stationary GPS receiver, the maximum Doppler shift for the L1 frequency is around ± 5 kHz. This uncertainty regarding the carrier frequency will have to be dealt with in the implementation of the GPS receiver *(see part xx, insert ref scheme regarding acquisition and carrier tracking)*
41 3 COLIN, Tony
42 3 COLIN, Tony
Another key parameter is related to the PRN sequences that are used to spread the information. First of all, the satellites are differentiated by 32 different PRN sequences. Consequently, the GPS receiver has to search for the right PRN code among all the PRN sequences to remove the spreading code from the signal and decode the data. Still, knowing the right PRN code to despread the signal at the receiving side is not sufficient. Indeed, PRN codes have high correlation only for zero lag. As such, it is of prime concern to know the incoming code phase in order to generate a local PRN code that is perfectly aligned with the incoming one. The software-defined GPS receiver will have to address and overcome this issue *(insert ref, Acquisition and tracking)*.
43 1 COLIN, Tony
44 3 COLIN, Tony
Block diagram of a GPS receiver according to the previous key parameters that have been highlighted.
45 3 COLIN, Tony
46 5 COLIN, Tony
p=. !4.png!
47 12 COLIN, Tony
*Figure 3.4* : .
48 3 COLIN, Tony
49 1 COLIN, Tony
---
50 1 COLIN, Tony
51 1 COLIN, Tony
h2. 2- Acquisition.
52 3 COLIN, Tony
53 1 COLIN, Tony
In order to receive and efficiently decode navigation data, the receiver must know which satellites are initially visible. This can be achieved using two common methods referred to as warm start and cold start. In a warm start, the receiver uses the information it has stored from the previous results and is able to compute which satellites are visible. In a cold start, the receiver has no stored information and has to search for the visible satellites. This process is called acquisition and aims at determining the visible satellites as well as the coarse values of the carrier frequency and the code phase of the satellite signals (*insert ref, list of the key parameters in the implementation of a GPS receiver*). Acquisition is quite time-consuming as it has to search through all possible satellites (all PRN sequences), all possible carrier frequencies taking into account the Doppler shift and all possible code phases of a given PRN sequence. As a result, a 2-dimensional search in frequency (Doppler shift) and time (code phase) is carried out for each PRN sequence. This process can be performed using a serial search acquisition, a parallel frequency space search acquisition or a parallel code phase search acquisition. These three commons methods have different characteristics regarding the execution time, their complexities and their accuracies. They will be briefly depicted in the three following subsections.
54 1 COLIN, Tony
55 3 COLIN, Tony
h3. a- Serial Search Acquisition.
56 1 COLIN, Tony
57 5 COLIN, Tony
p=. !5.png!
58 12 COLIN, Tony
*Figure 3.5* : .
59 3 COLIN, Tony
60 3 COLIN, Tony
The serial search acquisition procedure is based on the C/A code correlation properties (*insert ref part xx*) according to which the cross correlation between two different C/A codes is really low and the autocorrelation is high only for zero lag. The algorithm is described just below.
61 3 COLIN, Tony
The incoming signal is multiplied by a given C/A code with a certain code phase between 0 and 1022 chips. Then, the signal is mixed with a locally generated carrier signal to remove the carrier wave of the received signal. This generates an in-phase signal I and a quadrature signal Q. As the C/A code is modulated onto the I signal, one should only take into consideration the I signal. Nevertheless, the down-conversion is non-coherent. This means that the locally generated carrier wave used to down-convert the incoming signal is not in phase with the incoming carrier wave. As a consequence, the signal of interest is divided on both I and Q signals after down-conversion. Thus, it is necessary that one should use both of the I and Q signals. These I and Q signals are integrated over 1 ms which correspond to the length of one C/A code. By doing so, one is correlating the incoming PRN sequence with the locally generated C/A code on both I and Q signals. The outputs of both I and Q signals are finally squared and added. The final result is compared to a threshold. If the threshold is exceeded, the frequency and code phase parameters used for the locally generated signals are correct for the PRN sequence that is considered. If the threshold is not exceeded, this could be due to several reasons that are listed just below:
62 3 COLIN, Tony
	- The locally generated PRN sequence is not the same as the one that is received, which means that the receiver is not configured to receive signals from the actually targeted satellite.
63 3 COLIN, Tony
	- The locally generated PRN sequence is the right one but its code phase does not match the incoming PRN sequence.
64 3 COLIN, Tony
	- The locally generated carrier wave does not have the same frequency as the incoming carrier wave because of the Doppler shift.
65 3 COLIN, Tony
The GPS receiver cannot know the cause that leads to low correlation. It will therefore proceed using a two-dimensional search in frequency and time for each PRN sequence in order to find the right frequency and the right code phase for the PRN sequence that is considered. Considering that the Doppler shift is around ± 10 kHz, it is reasonable to take a frequency step of 500 Hz resulting in 41 frequencies around the theoretical L1 frequency. For each frequency, 1023 different code phases are tried for the PRN sequence that is considered (recall that one C/A code contains 1023 chips). The output is computed for all the pairs “frequency/code phase” and can be plotted on a 3D graph as shown on *figures XX and XX*. Then, the maximum value from all the possibilities is computed. If this maximum does not exceed the threshold, the PRN sequence for which the search has been done corresponds to a satellite that is not visible to the receiver and the search has to be carried out for another PRN sequence. If the maximum exceeds the threshold, the satellite is acquired with coarse values of its carrier frequency and code phase.
66 1 COLIN, Tony
67 3 COLIN, Tony
h3. b- Parallel frequency space search acquisition.
68 3 COLIN, Tony
69 1 COLIN, Tony
The serial search acquisition implies to test every combination of frequency and code phase of a given PRN sequence before being able to tell if the acquisition is successful or not. This process is really time-consuming. If the search procedure of one of the two parameters could be implemented in parallel, this would drastically decrease the acquisition time. The parallel frequency space search acquisition aims at automatically giving a coarse value of the frequency carrier of the incoming signal once the right code phase has been found. It is implemented as follows:
70 3 COLIN, Tony
71 5 COLIN, Tony
p=. !6.png!
72 12 COLIN, Tony
*Figure 3.6* : .
73 3 COLIN, Tony
74 3 COLIN, Tony
The incoming signal is multiplied by a given PRN sequence which code phase varies between 0 and 1022 chips. A Fourier transform is then used to assess the previous result in the frequency domain. The Fourier transform gives a complex signal and the output is obtained by taking the squared magnitude of this signal. When the locally generated PRN sequence corresponds to the satellite that is targeted and when the phase of this locally generated PRN sequence perfectly matches the one of the PRN sequence from the incoming signal, the output of the multiplication is illustrated as follows *(insert ref, properties of CDMA techniques)*:
75 3 COLIN, Tony
76 5 COLIN, Tony
p=. !7.png!
77 12 COLIN, Tony
*Figure 3.7* : .
78 3 COLIN, Tony
79 3 COLIN, Tony
As such, the result corresponds to the carrier wave of the incoming signal. Consequently, the final output corresponds to the squared magnitude of the Fourier transform of a sine wave. In a nutshell, with a perfectly aligned PRN code of a visible satellite, the output displays a distinct peak in magnitude that corresponds to the real carrier frequency of the targeted satellite. This peak can be found using a threshold. When this threshold is exceeded, the satellite is acquired with coarse values of its carrier frequency and code phase. *(insert image p 82 of the book)*
80 3 COLIN, Tony
81 3 COLIN, Tony
h3. c- Parallel code phase search acquisition.
82 3 COLIN, Tony
83 3 COLIN, Tony
---
84 3 COLIN, Tony
85 3 COLIN, Tony
h2. 3- Tracking.
86 3 COLIN, Tony
87 3 COLIN, Tony
h3. a-
88 10 COLIN, Tony
89 11 COLIN, Tony
---
90 11 COLIN, Tony
91 10 COLIN, Tony
*References :* 
92 10 COLIN, Tony
*[1]* K. Borre, D. M. Akos, N. Bertelsen, P. Rinder, S. H. Jensen, A software-defined GPS and GALILEO receiver