On 10/16/2012 06:28 PM, sh...@impsec.net wrote:
I'm a junior time-nut at best but it looks to me like jitter from the
USB Ethernet is acceptably low, based on ntpq -p anyway:

It's a minor problem at worst. There are many worse conflating factors and NTP adjusts very slowly anyway to deal with receiving time over the internet. Supporting a more precise protocol like PTP, or even better CERN's White Rabbit extensions to it, is another matter and at that point you're using all custom hardware including switches. Not good for the bank account.

That said, I have considered a project almost identical to what
George is describing -- a very simple Linux-powered board that consumes negligible power and whose sole purpose in life is to run a NTP server from GPS. My focus was on doing it from scratch as a single PCB (except the GPS module, for now), but it seems the choices for easily sourceable Linux-capable microprocessors that are in 1mm BGA, let alone non-BGA, can be counted on one hand. AM1707 was the chip that I would use for the "off the shelf microprocessor" approach.

It may actually be more effective -- and cool -- to use a FPGA and implement a microprocessor inside that instead! I have booted linux on a ORPSoC soft processor, but that was on a $300 dev board. Scaling it down to a cheap single-board computer would be challenging but not unthinkable. That particular SoC requires quite a lot of FPGA resources so something else would be required to avoid needing a $30 FPGA.

But my current plans, not fully baked nor on any sort of schedule, involve neither linux nor a conventional ntpd. I'm designing a low-cost GPSDO around an ARM microcontroller that keeps its own time and is capable of acting as a "dumb" NTP server -- it would respond to requests from clients but would not receive time from other nodes. The loop would be stabilized solely by GPS although the loop algorithms will probably be adopted from NTPns because they are quite similar to what the GPSDO itself needs to do. I was originally planning to only support an ovenized oscillator as the LO, but it would also be possible to use a tunable TXCO or perhaps a small OCXO that could reside on the board and not take up much space or power. Connect 3 of these to the network and you've got a great stratum 1 pool.

Right now I have a prototype GPSDO working although the loop algorithm is amateurish. I've been putting off working on it for a few weeks now, I need to sit down and study NTPns so I can implement a similar algorithm. The current one would be good enough for NTP but does not yet track time of day. The network components are not in the prototype, but I have written some sample code into another project that does have ethernet and it seems to work, so putting the two pieces together should result in a great NTP server.

Oh dear, now I've written quite a lot and probably raised some eyebrows. Better quit while I'm behind.

Happy ticking,
-- m. tharp

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

Reply via email to