On 5 Mar 2020 at 17:01, Jacob Keller wrote: > On 3/5/2020 1:11 AM, Frantisek Rysanek wrote: > > And another sideways question is: in the i210 hardware, there's a > > register called SYSTIMR, supposedly holding the fraction of a > > nanosecond (= sub-nanosecond resolution). And this register is > > ignored by the igb driver in Linux - first and foremost because the > > internal timestamping infrastructure only supports nanosecond > > resolution. I know that a "ns fraction" field is present in the PTP > > frames, but everybody except the White Rabbit just leave that field > > empty (all zeroes). I'm wondering if this SYSTIMR register in the > > i210 hardware has some practical use, or is always zero, or what. > > Well for my practical purposes, the SYSTIMR does not get reflected in > > the two AUXSTMP registers - so I can probably just ignore SYSTIMR > > too. > > So, the SYSTIMR field is not "used" directly, but it holds and maintains > fractional nanoseconds. When you adjust the increment value slightly, > these get added to the SYSTIMR field of the system time. As that slowly > increments and eventually overflows, it will then increment the SYSTIML > register. > > Essentially we always round down by cutting off SYSTIMR. > Mr. Keller thanks for your polite explanation :-)
I have to say that the i210 is a very nice piece of silicon to play with :-) I'm aware that at 1 GHz / fractions of a ns, it takes some cunning design to make a synth with this kind of fine adjustment, immediate response and nanosecond resolution, with hardly any jitter/phase noise. It's a job well done. The fact that timestamping external events is granular at 8 ns ("only") does not offend me. I'm aware that it's difficult to run counters and atomic latches that fast. I've read something about WhiteRabbit's phase detector, called the DDMTD - which supposedly can measure phase differences down to the picosecond range. If I understand correctly, that comparator block depends on having isochronous clocks (the reference and the measured input) much faster than 1PPS and hinges on down-mixing those clocks, then phase comparison and statistics (filtering) to arrive at that fine-grained result. Hence also WhiteRabbit's dependence on SyncE, and the BC-only nature of their PTP-aware switches... I understand that this is what it takes to run time-sync over a WAN at ns/sub-ns level preecision... Frank Rysanek _______________________________________________ Linuxptp-devel mailing list Linuxptp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxptp-devel