[time-nuts] And, for my next trick, 50Hz

Steve Rooke sar10538 at gmail.com
Fri Oct 3 16:52:03 UTC 2008


Tom,

2008/10/3 Tom Van Baak <tvb at leapsecond.com>:
> Ah, if you are a time-nut of course you will bite the bullet and
> get a GPSDO. But you should also not give up on the PC idea.
> If it works it will be a great gift to many people (OK, maybe not
> the pico- and nanosecond crowd, but to regular millisecond
> kind of folks).

Well, that's the way I plan to go now but as you say there is indeed
some merit in continuing with the idea of using NTP to check the
frequency of an oscillator as per my original idea. Certainly I
believe that figures in the milisecond area are probably achievable
without too much trouble.

> And, I no longer think long sample times are required.
>
> Consider the following. Assume you can get NTP to give you
> ms or sub-millisecond accurate time-stamps. Also assume you
> divide down your UUT to something like 1 kHz and feed that
> into one channel of your sound card (and as Bruce pointed
> out, maybe the slower the rise time the better in this case).
>
> Now, collect 16-bits of waveform data at 44.1 kHz. First, note
> that it's not exactly 44.100000 kHz -- but over time, as your
> circular input buffers fill up, you can use NTP time-stamps to
> calculate what the sampling rate precisely was/is.

This would produce a lot of data and be quite intensive in processor
time. Sampling the input waveform is easy as it's done in hardware on
the sound card but if we are time-stamping each sample with an
accurate wall time value that is going to be a lot of system calls and
I wonder if this may come out of sync at times.

> Then, looking at your highly oversampled waveform data, you
> can calculate the phase of your UUT frequency relative to the
> now precisely known sound card sampling rate. Over time you
> will see the phase drift, which then directly gives you the UUT
> frequency error.

It's a very interesting idea and I may have a go at this one.

> So what you end up doing is using the sound card like a high
> resolution vernier between NTP timekeeping on the inside and
> your UUT on the outside. I bet you a Thunderbolt that you can
> measure to 1 ppm within ten seconds.

Lets see, phase shift of 1ppm in 10 seconds at a sampling rate of
44KHz. So our error is 10^-6 so over 10 seconds becomes a 10^-5
change. Now 44KHz is a rate of 4.4x10^4 or 0.44x10^5. So that looks
like we would come up a bit short on data to verify the 1ppm
difference, IE. only 0.44 sample to indicate the error which would not
show up. at 10ppm we would have 4.4 samples to show the difference
which would be more workable. Is my logic wrong here or when do I get
my Thunderbolt?

> p.s. For extra credit, tee your UUT into both channels, do twice
> the math, and see if you can measure both differential phase,
> and differential phase drift between them.

This would really just check the phase difference between samples for
the two channels of the sound card and I would expect that to remain
fairly constant. It's an interesting point though, I wonder if both
channels are sampled simultaneously or in a serial fashion. If that
was the case, and assuming that the samples were equally spaced
between the two channels, you may get the equivalent of an 88KHz
sampling rate which would just push the ability of this system to
measure a 1ppm difference. I guess it depends on if the sound card
uses two A2D converter or just one and switches this between channels.
I think that switching it between channels may be a bit of a messy
affair due to the settling time needed before the sample is taken on
each channel.

So do I get two Thunderbolts now.

73, Steve
-- 
Steve Rooke - ZL3TUV & G8KVD
Omnium finis imminet



More information about the time-nuts mailing list