[ntp:questions] How do I validate my PPS clocks?
elliott.ch at verizon.net
Tue Feb 26 11:45:14 UTC 2013
I performed the same kind of test on a commercial real-time O/S at
the time sold by Intel, but since divested. I put code in a program to
output a digital pulse when the mock application program received
notification of the parallel port interrupt and measured the interrupt
service delay between generating the interrupt and sensing it with two
channels of an oscilloscope, which was HIGHLY variable, although I can't
recall the numbers.
You could do the same thing by patching NTPD to output a pulse when
the PPS signal was processed and then measuring the time difference between
the actual PPS signal and the digital pulse with an oscilloscope. Compared
to what I paid for one in the 1990s, oscilloscopes are dirt cheap now.
There are people who sell them on eBay too.
> -----Original Message-----
> From: questions-bounces+elliott.ch=verizon.net at lists.ntp.org
> [mailto:questions-bounces+elliott.ch=verizon.net at lists.ntp.org] On
> Behalf Of unruh
> Sent: Monday, February 25, 2013 3:33 PM
> To: questions at lists.ntp.org
> Subject: Re: [ntp:questions] How do I validate my PPS clocks?
> On 2013-02-25, Miroslav Lichvar <mlichvar at redhat.com> wrote:
> > On Mon, Feb 25, 2013 at 01:44:02PM +0100, Kasper Pedersen wrote:
> >> From the PPS arrives, and to the kernel timestamps it, is a very
> long time.
> >> I wrote this to measure it:
> >> http://n1.taur.dk/edgetest.c
> >> (you will need a linux machine, gcc, and kernel-headers to compile)
> > Very interesting, thanks! For my machine it shows that the interrupt
> > latency is around 12 us.
> > I'm wondering if the kernel module could have an option which would
> > enable a polling method to time stamp the PPS events.
> When I ran a test many years ago I used a program to put out a rising
> pulse onto one of the printer port output pins, and then connected that
> to the parallel port nack pin. I timestamped the time just before I put
> out the pulse, and the time at which the interrupt occured and got
> roughtly 1 to 2 microseconds delay. Ie, the interrupt service was of
> order of 1us. 12us seems really long. Now this might be a difference
> between the serial and parallel interrupts or a difference in the
> interrupt sevice routine, but 12us still seems a long time.
> questions mailing list
> questions at lists.ntp.org
More information about the questions