time-nuts@lists.febo.com

Discussion of precise time and frequency measurement

View all threads

GPS Modulation and 10 MHz Delay Lock

J
johncroos@aol.com
Tue, Oct 2, 2012 10:39 PM

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.

I am not going into a tutorial on this, the the block diagram is
essentially the same as a K band
microwave data and timing system I did for the military in 1976. It was
good for 7 nS for a
100 dB dynamic range - it was a terrestrial link with a 20 Watt TWT
transmitter among other
expensive goodies.-

For those interested -

Look up

"Direct Sequence Spread Spectrum Modulation"

"Delay Lock Loop"

and also see "Spread Spectrum Systems" by R. L. Dixon. The first
real book in the public domain on spread spectrum.

However there is a ton of info in the literature for those interested.

GPS receivers use the same ideas albeit in digital implementation.

-73 john k6iql

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. I am not going into a tutorial on this, the the block diagram is essentially the same as a K band microwave data and timing system I did for the military in 1976. It was good for 7 nS for a 100 dB dynamic range - it was a terrestrial link with a 20 Watt TWT transmitter among other expensive goodies.- For those interested - Look up "Direct Sequence Spread Spectrum Modulation" "Delay Lock Loop" and also see "Spread Spectrum Systems" by R. L. Dixon. The first real book in the public domain on spread spectrum. However there is a ton of info in the literature for those interested. GPS receivers use the same ideas albeit in digital implementation. -73 john k6iql
JL
Jim Lux
Wed, Oct 3, 2012 2:30 AM

On 10/2/12 3:39 PM, johncroos@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.

On 10/2/12 3:39 PM, johncroos@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.
PS
paul swed
Wed, Oct 3, 2012 1:38 PM

I think it was this thread.
But the actual chip rates derive from a 10.22999999543 clock.
We call it 1.023 Mhz but its not. In time-nuttery it matters.
Doesn't that make the use of the signal a bit messy?
Regards
Paul
WB8TSL

On Tue, Oct 2, 2012 at 10:30 PM, Jim Lux jimlux@earthlink.net wrote:

On 10/2/12 3:39 PM, johncroos@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.htmhttp://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.

_____________**
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/**
mailman/listinfo/time-nutshttps://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.

I think it was this thread. But the actual chip rates derive from a 10.22999999543 clock. We call it 1.023 Mhz but its not. In time-nuttery it matters. Doesn't that make the use of the signal a bit messy? Regards Paul WB8TSL On Tue, Oct 2, 2012 at 10:30 PM, Jim Lux <jimlux@earthlink.net> wrote: > On 10/2/12 3:39 PM, johncroos@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<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. > > > > ______________________________**_________________ > time-nuts mailing list -- time-nuts@febo.com > To unsubscribe, go to https://www.febo.com/cgi-bin/** > mailman/listinfo/time-nuts<https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts> > and follow the instructions there. >
MD
Magnus Danielson
Thu, Oct 4, 2012 12:17 AM

On 10/03/2012 03:38 PM, paul swed wrote:

I think it was this thread.
But the actual chip rates derive from a 10.22999999543 clock.
We call it 1.023 Mhz but its not. In time-nuttery it matters.
Doesn't that make the use of the signal a bit messy?

Nope. You missed the point of this off the mark is to compensate for the
relativistic frequency shift that is occuring so the GPS clock at launch
is at this rate, but when in orbit it will run a little faster, so this
rate will match up better. Then, the remaining error is corrected for in
the broadcast model so this first degree approximation will just get
that decently into range.

Check ICD GPS 200D.

Cheers,
Magnus

On 10/03/2012 03:38 PM, paul swed wrote: > I think it was this thread. > But the actual chip rates derive from a 10.22999999543 clock. > We call it 1.023 Mhz but its not. In time-nuttery it matters. > Doesn't that make the use of the signal a bit messy? Nope. You missed the point of this off the mark is to compensate for the relativistic frequency shift that is occuring so the GPS clock at launch is at this rate, but when in orbit it will run a little faster, so this rate will match up better. Then, the remaining error is corrected for in the broadcast model so this first degree approximation will just get that decently into range. Check ICD GPS 200D. Cheers, Magnus