Global Positioning System Reference
In-Depth Information
This phenomenon actually occurs in a Motorola front end (Model M12
Oncore), as will be discussed further in Section 12.5. In this Motorola receiver the
nominal sampling frequency is 5456 MHz and the corresponding sampling time
is about 183 ns. This condition should call for 1 ms data to have 5456 points.
The measured sampling frequency, however, is about 5,455,656.85 Hz. One ms
contains about 5455.66 points of data. Since this value must be an integer, 5456
points are selected. Thus after 1 ms the mismatch between the input and the local
code is 0.34 sample, if the Doppler frequency is zero.
One obvious way of dealing with the problem is to generate the local C/A
code for a whole one second. The local C/A code can be generated every ms by
calculating the proper initial phase at the beginning of each ms. Then the locally
generated C/A code and the input signal will be closely matched. At every 20 ms
the navigation data transition will be determined. At the end of each second the
navigation data bits are stripped and the carrier frequency calculated. The early
and late codes can also be used to multiply with the input signal to find the fine
time at the one second interval. This fine time is included in generating the next
second of C/A code. The C/A code generated at the beginning of each second
is based on the previous C/A code, the carrier frequency measured, and the fine
time calculated in the last second.
Another approach uses a similar method, as discussed in the preceding section.
The C/A code is only generated once every second. At the end of each ms
the difference between the input and the local code is registered. For example,
assume that the sampling frequency is 5,455,660 Hz, and for each ms 5456 C/A
data points are generated. At the end of the first ms, the input and the local C/A
codes are mismatched by a 0.34 (5456 - 5455.66) sample interval. At the end of
the second ms, the mismatch becomes a 0.68 sample interval. Whenever the C/A
code in the input and the local C/A codes are mismatched by equal or more than
0.5 sample interval, the local code will be shifted one data sample to align with
the input. Therefore, at the end of the second ms, the mismatch becomes a
0.32
(0.68 - 1) sample interval with a one sample shift. At the end of the third ms, the
mismatch becomes a 0.02 (0.34 - 0.32) sample interval.
As the operation continues, the shift of one data point between the input and
the local code happens about once every 2 or 3 ms. At every ms the early and
late codes are also multiplied with the input signal. When the data are shifted
by one point, the peak correlations from the early and late codes are performed
accordingly. In every ms the initial C/A code of a certain satellite in the input
data is tracked by the data shifting. After 1 second the navigation data will be
determined at 20 ms intervals and stripped off. Then FFT is used to find the
carrier frequency, which has a resolution of about 1 Hz. The 1000 early and late
peak correlations accumulated will be used to find the fine time. The fine time
is obtained by accumulating the mismatches of all the 1000 peak correlations.
In actual operation 5456 points of input data are taken each time. These data
may contain signals from several satellites. In the tracking program, there is a
pointer and a mismatch accumulator associated with each satellite signal. The
pointer marks the initial phase of the C/A code. If the initial C/A code of a
Search WWH ::




Custom Search