[time-nuts] Crosscorrelation phase noise measurements

Magnus Danielson magnus at rubidium.dyndns.org
Thu Aug 2 20:55:47 UTC 2012

Hi Sylvain,

On 08/02/2012 09:56 PM, Sylvain Munaut wrote:
> Hi,
> I've heard and read some documents about using cross-correlation using
> two distinct reference oscillators when trying to measure the phase
> noise from a source to reduce the influence of the reference
> oscillators phase noise.
> Unfortunately, it's still not exactly clear to me how it works ...
> does anyone have a concrete example maybe with data and the exact math
> that was done on them to get the result ?

It's a combination of two techniques really, one is having two parallel 
input channels, being independent in oscillators etc. except for the 
input signal. These channels are typically exact replicas in design.

Out of these channels comes

CH1: N_DUT + N_CH1
CH2: N_DUT + N_CH2

Cross-correlation is then the mathematical tool to extract the signal 
that correlate between those channels, that of the DUT, and suppressing 
the noise of CH1 and CH2 which does not correlate, as they are 
independent noise sources.

The mathematical cross-correlation can be calculated by convolving 
CH1(t)*CH2(x-t)* where t sweeps over time (samples). This can be done 
more efficiently using FFT by FFT CH1 and CH2, then multiply CH1 
frequency components with the conjugate of the CH2 frequency components, 
and then do IFFT on the result. If you need the FFT of the cross 
correlation, skip the IFFT step.

The "propper" formulas isn't very ASCII friendly, but cross-correlation 
is found in DSP books and Wikipedia.

Doing cross-correlation with FFTW is trivial and efficient.

To achieve the cross-correlation gain, average over many 
cross-correlation spectrums. A single sweep gives you 3 dB gain.


More information about the Time-nuts_lists.febo.com mailing list