[time-nuts] Question about frequency counter testing
Oleg Skydan
olegskydan at gmail.com
Sun May 13 03:31:42 EDT 2018
Hi Magnus!
From: "Magnus Danielson" <magnus at rubidium.dyndns.org>
>> The leftmost tau values are skipped and they "stay" inside the counter.
>> If I setup counter to generate lets say 1s stamps (ADEV starts at 1s) it
>> will generate internally 1/8sec averaged measurements, but export
>> combined data for 1s stamps. The result will be strictly speaking
>> different, but the difference should be insignificant.
>
> What is your motivation for doing this?
My counter can operate in usual Pi mode - I got 2.5ns resolution. I am
primary interested in high frequency signals (not one shoot events), and HW
is able to collect and process some millions of timestamps continuously. So
in Delta or Omega mode I can improve the resolution in theory down to
several ps (for 1s measurement interval). In reality the limit will be
somewhat higher.
So I can compute the classical ADEV (using Pi mode) with a lot of counter
noise at low tau (it will probably not be very useful due to the counter
noise dominance in the leftmost part of ADEV plot), or MDEV (using Delta
mode) with the counter noise much lower.
I would like to try to use the excessive data I have to increase counter
resolution in a manner that ADEV calculation with such preprocessing is
still possible with acceptable accuracy. After Bob's explanations and some
additional reading I was almost sure it is not possible (and it is so in
general case), but then I saw the presentation
http://www.rubiola.org/pdf-slides/2012T-IFCS-Counters.pdf (E. Rubiola, High
resolution time and frequency counters, updated version) and saw inferences
on p.54. They looks reasonable and it is just what I wanted to do.
> The mistake is easy to make. Back in the days, it was given that you
> should always give the system bandwidth alongside a ADEV plot, a
> practice that later got lost. Many people does not know what bandwidth
> they have, and the effect it has on the plot. I've even heard
> distinguished and knowledgeable person in the field admit of doing it
> incorrect.
That makes sense.
We can view at the problem in the frequency domain. We have a DUT, reference
and instrument (counter) noise. In most cases we are interested in
suppressing instrument and reference noise and leaving the DUT noise. The
reference and DUT has more or less the same nature of noise, so it should
not be possible to filter out reference noise without affecting DUT noise
(with the simple HW). The counter noise (in my case) will look like white
noise (at least the noise associated with the absence of the HW
interpolator). When we process timestamps by Omega or Delta data processing
we apply filter, so the correctness of the resulting data will depend of the
DUT noise characteristics and filter shape. The ADEV calculation at tau >
tau0 will also apply some sort of filter during decimation, it also should
be counted for (cause we actually decimate the high rate timestamp stream
making the points data for the following postprocessing). Am I right?
Here is a good illustration how averaging affects ADEV
http://www.leapsecond.com/pages/adev-avg/ . If we drop the leftmost part of
the ADEV affected by averaging, the resulting averaging effects on the ADEV
are minimized. Also they can be minimized by the optimal averaging strategy.
The question is optimal averaging strategy and well defined restrictions
when such preprocessing can be applied.
If it works I would like to add such mode for the compatibility with the
widely spread post processing SW (TimeLab is a good example). Of cause I can
do calculations inside the counter without such limitations, but that will
be another data processing option(s) (which might not be always suitable).
> I'm not saying you are necessarilly incorrect, but it would be
> interesting to hear your motivation.
The end goal is to have a counter mode when the counter produces data
suitable for post processing for ADEV and other similar statistics with
resolution better (or counter noise lower) that one shoot one (Pi counter).
I understand that, if it will be possible, the counter resolution will be
degraded compared to usual Omega or Delta mode, also there will be some
limitations for the DUT noise when such processing can be applied.
> Cross talk exists for sure, but there is a similar effect too which is
> not due to cross-talk but due to how the counter is able to interpolate
> certain frequencies.
I have no HW interpolator. The similar problem in the firmware was discussed
earlier and now it is fixed.
>>> If fact, you can do a Omega-style counter you can use for PDEV, you just
>>> need to use the right approach to be able to decimate the data. Oh,
>>> there's a draft paper on that:
>>>
>>> https://arxiv.org/abs/1604.01004
>>
>> Thanks for the document. It needs some time to study and maybe I will
>> add the features to the counter to calculate correct PDEV.
>
> It suggest a very practical method for FPGA based counters, so that you
> can make use of the high rate of samples that you have and reduce it in
> HW before handing of to SW. As you want to decimate data, you do not
> want to lose the Least Square property, and this is a practical method
> of achieving it.
I have no FPGA also :) All processing is in the FW, I will see how it fits
the used HW architecture.
Doing it all in FPGA has many benefits, but the HW will be more complicated
and pricier with minimal benefits for my main goals.
> You do not want to mix pre-filtering and ADEV that way. We can do things
> better.
Are you talking about PDEV?
>> Here is another question - how to correctly calculate averaging length
>> in Delta counter? I have 5e6 timestamps in one second, so Pi and Omega
>> counters process 5e6 samples totally and one measurement have also 5e6
>> samples, but the Delta one processes 10e6 totally with each of the
>> averaged measurement having 5e6 samples. Delta counter actually used two
>> times more data. What should be equal when comparing different counter
>> types - the number of samples in one measurement (gating time) or the
>> total number of samples processed?
>
> How does you get so different event-rates?
>
> If you have 5 MHz, the rising edge gives you 5E6 events, and which type
> of processing you do, Pi (none), Delta or Omega, is just different types
> of post-processing on the raw phase data-set.
So, if I want to compare "apples to apples" (comparing Delta and Omega/Pi
processing) the single measurement of the Delta counter should use a half of
the events (2.5E6) and the same number(2.5e6) of measurements should be
averaged, is that right? The counter in Delta mode currently calculates
results with 50% overlapping, it gives 10e6 stamps for the 1s output data
rate (the counter averages 2 seconds of data).
All the best!
Oleg
More information about the time-nuts
mailing list