Re: Phase noise/drift and the accuracy of measurements

Daniel Marks

I was thinking about what I said, and I think it may be even simpler to do what I suggested if you use Plancherel's theorem (  In LaTeX code

\int\limits_{t=\infty}^{\infty}{f(t) g(t)^* dt} = \frac{1}{2\pi} \int\limits_{\omega=-\infty}^{\infty}{F(\omega) G(\omega)^* d\omega}

Therefore you can do this calculation either in the frequency or time domain.  If you do it in the time domain and average, you cancel the common noise phase.  However, you should get the exact same result in the frequency domain because this is what Plancherel's theorem says.  Therefore to implement this, perhaps you should just instead of using only one bin, use the two or three adjacent bins, and multiply together F(omega) (the frequency domain sample of the first signal bin) with G(omega)^* (the complex conjugate of the frequency domain sample of the second signal bin) and just add the results from the bins together.  You need only do this for a narrow band around the center frequency enough to encompass the spreading of frequency due to phase noise.  Because it will only involve multiplying and adding a few more samples, this should add minimal overhead.

The reason I think this may be very helpful is I noticed when looking at the IF signal with a scope, there is definitely some jitter because of the frequency synthesis method of the SI5351A.  If I tried to demodulate the signal directly using a carrier (like using the FFT) there was definitely some error there.  When I trigger the sampling using the zero crossings of the IF signal, this noise pretty much disappeared.   I think you can probably effectively do the same thing in software, and the addition in computational cost will be minimal, especially if you use the Plancherel theorem trick.

Anyways I would be happy to explain more, but using the Plancherel theorem the FFT is already performing the cross-correlation that is needed to demodulate the signal.


On Mon, Aug 12, 2019 at 12:15 PM Yury Kuchura EU1KY <kuchura@...> wrote:
Hi Dan,

Interesting idea! I will try to model this approach in Python + numpy. But maybe not for this particular project:

This device is not a lab grade VNA. First of all it is just a good antenna analyzer used to finetune very unstable system which actual antenna is, considering that in real life it is exposed to extremely varying outside weather conditions which affect its parameters. I believe the provided precision is quite enough for such a system. Also, I don't think LO phase noise makes any significant influence while tuning real antennas, especially on short waves where the incoming signals are sometimes very strong comparing to this noise.

Let me clarify what is the math is under the hood.

Single precision floating point RFFT is used for phase and magnitude calculations. 512 samples used, with 48 kHz sampling rate, IF is 10031 Hz (bin 107), then Blackman windowing. I've found no improvements in precision when I used more samples, but the sampling and calculation time grows significantly.

Then the voltage magnitude ratio between channels is calculated as a root of the sum of powers in five bins where the most of the signal power is concentrated. Even if the IF is not exactly in the center of bin, this approach makes scalloping loss negligible. But even this is an overhead I think because I use the ratio of magtitudes for further calculations, it remains the same when both coherent signals are offset from the center. The phase difference is taken only from the central bins, modelling showed that it remains constant when frequency offsets up and down within the bin. With known magnitude ratio and phase difference, it is then easy to calculate the raw impedance of the DUT connected to the bridge. It is then easy to convert it to complex reflection coefficient for chosen Z0, and to apply OSL calibration.


Join to automatically receive all group messages.