Design Time Sync System and Write TimeServ for TESLA

As the developer of the MPB, programmer for the IRIG-B decoder, and designer of the synchronization logic in the FPGA, I had originally documented the way that the time synchronization was to work.  It was implemented by our DSP programmer, Bob Jackson, and the X86 programmer, Michael Miller.

Later, during the shift from QNX 2 to QNX 4 (now POSIX-compliant), Michael Miller, now my manager, asked me to revisit the time sync design, update the documentation, and implement a “time tag” system for maintaining accurate representation of time in the buffers and on disk, in the presence of time changes, discontinuities, and disagreements between processors.

I documented the plan, identifying the method of arbitration of time, then wrote TimeServ in its entirety.  It’s still in use.