[time-nuts] GPS Modulation and 10 MHz Delay Lock

Jim Lux jimlux at earthlink.net
Wed Oct 3 02:30:20 UTC 2012


On 10/2/12 3:39 PM, johncroos at aol.com wrote:
> Hello All -
>
> Here is a link that describes the GPS modulation. You do not need the
> 1 pps to lock the 10 MHz oscillator to the atomic clock in the satellites.
>
> http://www.kowoma.de/en/gps/signals.htm
>
> If you look at the block diagram you see PN code modulates the carrier at
> the 1.023 MHz chip rate. This is done by BPSK modulation of the carrier
> with the PN code. It can be done simply with a double balanced mixer.
>
> This spreads the signal with PSK at the chip( i.e. code clock) rate.
>
> Note also the modulo - 2 addition of the data to the code sequence. This
> called code inversion
> modulation. After de-spread of the code in the receiver - the signal is
> then simple BPSK and
> may be demodulated by a Costas or Squaring Loop to get at the data message.
>
> The obtain precision frequency needed I believe the T bolt simply locks
> to the chipping rate
> using some form of Delay Lock Loop. It is NOT at PLL. There is no need
> what ever to
> deal with the 1 pps using this method. The internal 10 MHz oscillator is
> controlled by this locking circuit and
> is part of the code correlation loop.

That's not quite how it works.. It would work for terrestrial links 
where there is no Doppler, but in the GPS case, there is significant 
Doppler shift on all the signals.  Since the carrier and the chips are 
generated from a common source on the spacecraft (the carrier frequency 
is a multiple of the chip rate, in fact), you can recover carrier and 
chips at the same time.

But.. most receivers these days don't actually have an analog tracking 
loop at all.  They digitize the input signal (1 bit quantizer) at a rate 
that makes the carrier alias down to something convenient (a few hundred 
kHz is typical.. you want it far enough away from zero that Doppler 
never makes it go negative).  In the experimental receiver in SCaN 
Testbed flying on ISS it's about 39 MHz sample rate.

Once you've got your one bit samples, you do some sort of combined 
Doppler/Code phase acquisition (these days, often using an FFT), then 
track both together digitally using some form of NCO.  The tracking 
loops for all the satellite signals aren't necessarily independent and 
might be part of a Kalman filter that estimates all the observables 
together.

Finally, from all that, you have an estimate of your local clock offset 
and timing offset, and from that you can generate your 1pps, typically 
with another NCO (with granularity of your clock rate).  Since it's 
unlikely that your clock is EXACTLY an even number of cycles per second, 
at each second, a bit of error accumulates, until you have an whole 
cycle's worth leading to the familiar sawtooth error.

That sawtooth error is predictable, of course, so you can generate a 
"time error" estimate for each 1pps pulse (or, even, control a variable 
delay to line it up).

The important thing is that in modern receivers, nowhere is there a 
signal at the GPS carrier frequency, nor is there a signal at the chip 
rate.  There *is* probably a signal (with low precision) at the code 
epoch (every millisecond), but it's different for each satellite signal, 
of course.




More information about the time-nuts mailing list