Suppose I want to average a signal $s(t)$ which consists of several spectral components without any DC offset. I sample $M$ points in the time domain. I am interested in the power spectrum which I get from an FFT (so far). Because my SNR per single measurement is $<< 1$, I have average $N$ runs together. Typically, the SNR is around 0.005 for one trace. This works as expected if the signal is coherent from run to run (further down $\xi=0 \,\forall\, \mathrm{runs}$) and if I average > 200'000 measurements. The reason for the small SNR is coming from discretization (between 0 and 1) (thing e.g. of photon counting).

Now I encounter the situation that between single measurements a sign flip of the signal that I want to measure can occur. I don’t have the information when this occurs. However, I know it is only a sign flip. Besides this, the signal is "coherent" (a little bit like BPSK), thus \begin{equation} s(t) = A(t) \cos(\omega_\mathrm{RF} t + \phi + \xi\, \pi) + \mathrm{noise} \qquad \mathrm{with}\; \xi \in \{0,1\}. \end{equation} If possible, it would be also great to recover ($\phi \mod \pi$).

If I average in the time domain, I get obviously no signal. To solve this, I can average incoherently meaning I average the power spectra or magnitude spectra instead of the time domain data. However, this will lead to a scaling of $\mathrm{SNR}\propto N^{1/4}$ instead of $\mathrm{SNR}\propto N^{1/2}$. $A(t)$ is expected to be a slowly varying and decaying function e.g. an exponential decay $A(t)=\hat{A}e^{-t/\tau}$.

In the real signal, I have multiple spectral components at different frequencies $\omega_{\mathrm{RF},i}$, thus e.g. \begin{equation} s(t) = \hat{A}_1 \ \cos(\omega_1 t + \phi_1 + \xi_1\, \pi) + \hat{A}_2 \ \cos(\omega_2 t + \phi_2 + \xi_2\, \pi) + ... +\mathrm{noise} \qquad \mathrm{with}\; \xi_i \in \{0,1\}. \end{equation} The sign flips occur without any correlation between the spectral components thus $\xi_1$ and $\xi_2$ are independent.

Can I do better or is this a fundamental limit? Is there a way to get a more favorable SNR scaling compared to the $N^{1/4}$? It seems like I don’t use the information, that only a sign flip can occur.




1 Answer 1


One approach if the SNR for any given reading is high enough, is to double the frequency by squaring the signal -- doing this removes any +/-1 modulation similar to carrier recovery approaches with BPSK. From this you can phase lock to the doubled signal (which will now have a clear component at $2\omega_{RF}$ to create a "recovered carrier" at $\omega_{RF}$. Multiplying the recovered carrier $cos(\omega_{RF}t)$ by the original signal can then demodulate the phase modulation such that coherent averaging can be accomplished. I simulated this with a test case using an SNR of 0.03125 (-15 dB), where the noise in this case was the total white noise power spread evenly across the sampling bandwidth and the BPSK modulation consisted of a symbol duration of 200 samples. As depicted below at this condition it would still be feasible to lock to the $2\omega_{RF}$ signal.

To note, the "SNR" of the equivalent BPSK signal if we consider the noise component within the bandwidth of the modulated signal itself would be much higher. Increasing the noise further prohibits detection of the doubled carrier signal. If the OP can increase the duration of a single capture long enough to achieve this threshold SNR condition, then this could be a feasible approach for further coherent averaging.

Simulation Result

Zooming in on BPSK modulated waveform in noise:

bpsk modulated waveform in noise

Zooming in on recovered 2x carrier:

recovered 2x carrier

  • $\begingroup$ thank you very much again for the detailed answer and an interesting idea for the squaring. One problem that I see with squaring is that this will produce mixing products if I have multiple spectral components with different $\omega_\mathrm{RF}$. This would not occur when I average the mangitude or power spectrum. $\endgroup$
    – P. Egli
    Dec 20, 2021 at 12:12
  • $\begingroup$ @P.Egli yes, indeed- this approach would only work with a single tone and quite complicated I think to have to PLL clean-up as well to avoid the additional noise enhancement. Would your question be better phrased as multiplying a WSS signal by a random +/-1 that occurs with a constant rate? If you can update your question I’ll delete my answer to invite a better one that either shows it can be done or proves that it can’t. It’s an interesting problem. $\endgroup$ Dec 20, 2021 at 12:40
  • $\begingroup$ And certainly if the SNR is significantly less than 1 it would seem that it can’t be done without some other way of detecting if the capture is +1 or -1 but if the SNR for any given tone within the spectrum was higher then that could be a possible approach of detecting that phase. Can you clarify that as well in your question— is the entire spectral density below the noise level or is it possible certain components would be stronger and what is the maximum assured SNR in any reading as a density (/Hz) for any component? $\endgroup$ Dec 20, 2021 at 12:44
  • $\begingroup$ Okay, updated the question $\endgroup$
    – P. Egli
    Dec 21, 2021 at 11:37
  • $\begingroup$ @P Nice- So before I completely delete my answer; is it possible we could track one of those carriers with higher SNR? (And can you provide what the minimum possible SNR would be in terms of a /Hz density rather than total power across the Nyquist band and what the maximum duration of signal capture you would allow?) $\endgroup$ Dec 21, 2021 at 11:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.