[ntp:questions] Realistic Performance Expectation for GPS PPS fed ntpd jitter

Charles Elliott elliott.ch at comcast.net
Mon Oct 19 13:03:23 UTC 2020


                The original question was what realistic performance can one
expect from GPS PPS. Based on some reading I did over the weekend here is a
definitive answer:


               The 2001 SPS (standard, civilian signal, GPS in the United
States) timing standard was 40 ns with 30 ns accuracy commonly observed. (M
& E, p. 49). 


                Time and distance are related with GPS (see M&E,  p. 23),
and good differential GPS (DGPS) is supposed to yield approximately 10 times
the distance accuracy of the above specification, which implies one should
be able to achieve 3-4 ns accuracy with GPS timing. The FAA's Wide Area
Augmentation System (WAAS) is supposed to produce 2 m accuracy throughout
the United States. This would imply approximately 8 ns to 6 ns time
accuracy. Of course, you need a recently manufactured chip to pick up DGPS
and WAAS. In addition, most GPS chips require that commands be sent to them
to activate the GPS and WAAS. These commands are available in recent NMEA
manuals published by chip manufacturers that you can find by googling for
them. The 15-year-old GPS chip that I own constantly slips into an out of
DGPS mode, which implies that the command to activate DGPS must be resent to
the GPS chip periodically.


                The equation that the GPS chip solves every second has four
unknowns: the receiver position in three dimensions and time. This implies
that to solve this equation definitively four satellites must be in view.
However if more than four satellites are in view the equation is
over-determined and the fix is obtained by least-squares regression, which
yields maximum likelihood predictors for the four variables. These
predictors are much, much more accurate than the simple solution of the
equation. A recent chip that picks up American GPS satellites, the Russian
GLONASS satellites, and the European Galileo satellites should produce far
better results than an older chip.  My $40 Alcatel model A503DL Android
phone commonly claims to have 19 or more satellites in view.


                The GPS fix changes as satellites slip into, or out of,
view. Consequently one can observe jumps in time either forward or backward.
Not to belabor the obvious, but time is monotonically increasing. So any
jumps in time of more or less than about a positive second should be


                The American GPS system has two new signals (L2C and L5)
which will greatly improve accuracy when they are fully operational. They
are being phased in as older satellites are replenished with new models.
L2C first began to appear in 2005 and L5 in 2010. Both are available now,
but in a pre-operational stage so that one uses them at their own risk. A
summary of the signals and their availability appears here:


                The best published work on GPS accuracy and NTPD was done by
David Taylor at www.satsignal.eu <http://www.satsignal.eu>  and appears
here: https://www.satsignal.eu/ntp/Raspberry-Pi-NTP.html
<https://www.satsignal.eu/ntp/Raspberry-Pi-NTP.html>  and elsewhere on the
satsignal.eu website. David has found one GPS chip that appears to produce
really remarkable results.


                M&E = Misra, P. and P. Enge (2012). Global Positioning
System: Signals, Measurements and Performance. Lincoln, Massachusetts, USA,
Ganga-Jamuna Press.


Charles Elliott



Original Message questions
[mailto:questions-bounces+elliott.ch=comcast.net at lists.ntp.org] On Behalf Of
Miroslav Lichvar
Sent: Monday, October 19, 2020 3:50 AM
To: questions at lists.ntp.org
Subject: Re: [ntp:questions] Realistic Performance Expectation for GPS PPS
fed ntpd jitter


On Thu, Oct 15, 2020 at 07:52:06AM +0200, Juergen Perlinger wrote:

> Another thing that gets into the way are the energy saving strategies 

> modern CPUs employ, like reducing the clock speed and distribute load 

> over cores. So unless you nail down the IRQ to a certain core and 

> prevent cores from going to full sleep, the interrupt rescheduling can 

> add another few usecs. IRQ processing was never a high speed thing on

> x86 platforms to start with, and it never kept up with speed boost all 

> other parts of the architecture got, AFAIK.


Setting the CPU to a fixed frequency (e.g. using the userspace

governor) can help a lot with the stability of timestamping, not just of the
PPS signal, but also received NTP packets.


> In short, your numbers look familiar, and I don't know how to improve 

> the much without dedicated hardware. I'm dreaming of some FPGA 

> hardware on a PCIe board at an affordable price...


Not an FPGA, but the Intel I210 costs about $50 and it has a nice hardware
clock with PPS input/output, which is well supported in Linux. It's a NIC,
so you can use the same clock for timestamping PPS and NTP packets, avoiding
any asymmetries on the PCIe bus between the PPS-timestamping hardware, CPU,
and the NIC, which allows you to make an NTP server accurate to few tens of



Miroslav Lichvar



questions mailing list

 <mailto:questions at lists.ntp.org> questions at lists.ntp.org


More information about the questions mailing list