On Feb 26, 2006, at 6:24 PM, Paul Boven wrote:

Hi everyone,

Poul-Henning Kamp wrote:

You don't even need 32bits for that:

        http://phk.freebsd.dk/pubs/timecounter.pdf

And doing it in hardware would be more expensive than in software, hardware
access is much slower than memory access.

How about taking one of the bigger FPGA's, that can hold a complete
stand-alone microcontoller, running a Unix-like OS? You could implement several fast, wide synchronous counter/latches in the same FPGA fabric,
so there would be no need to bother with things like PCI busses. Does
FreeBSD run on any of these chips?

With a serial (for NMEA) and PPS input, and ethernet output, you'd have
an NTP-server-on-a-chip. Add a D/A-converter to discipline a TCXO, and
you're all set. An FPGA with relatively few pins, hence no BGA, would
suffice. Building such a device would be within the capabilities of some
of the more dedicated timenuts in here.

I'm going to echo the previous comments about complexity: Egads, why? NTP is relatively coarse-grained because of unpredictable delays in ethernet buffering and packet interrupt latency. It doesn't require the precision you could get with custom hardware. Accuracy within a microsecond or so is more than good enough. As Paul's own experiments showed, a Soekris box with a replacement XO can internally track GPS far better than any NTP slave will be able to synchronize to it. It's cheap (~$220), nearly off-the-shelf, accurate to better than half a microsecond, and runs FreeBSD and Linux out of the box.

And there are some sexy new versions of the 4801 shipping soon with more memory, so you can keep an even bigger list of NTP peers. :)

  -Dave


Attachment: PGP.sig
Description: This is a digitally signed message part

_______________________________________________
time-nuts mailing list
time-nuts@febo.com
https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts

Reply via email to