0
\$\begingroup\$

I used matlab to calculate the time Auto-correlation function for a polar return-to-zero waveform to make sure that it has an ergodic property . I implemented the following formula as a function in matlab Time ACF

I then got the following output Rxx(m) plotted versus the time shift (m or lags). I expected the output to be A^2 at n=0 according to analysis of polar RZ data shown here in page #10: https://homepages.wmich.edu/~bazuinb/ECE3800CMcG/Notes7_2.pdf

but in matlab it showed me the following output (with Rxx(m) = A^2/2 = 8 ). Notice that the vector has 100 bits ,each bit is sampled 8 times(Tb=8ms) , that is 1x800 vector . I plotted it vs lags in ms but it may not be clear in the graph below . enter image description here

so Can anyone explain this ?

\$\endgroup\$

1 Answer 1

1
\$\begingroup\$

The return-to-zero code spends half its time at zero volts, so half of the signal samples contribute nothing to the total of the autocorrelation integration. Therefore, if the pulse amplitude is ±A, then the autocorrelation peak will be \$\frac{A^2}{2}\$.

Page 10 in that paper is talking about the power spectral density, which is a different measure from the autocorrelation function.

\$\endgroup\$
1
  • \$\begingroup\$ okey but for the ensemble auto-correlation (which I will use to get the PSD in my analysis) shows almost the same graph ! however, when I calculate it I found it Rx(tau) = A^2(1-2|tau|/Tb) which gives A^2 at tau = 0 (tau is the lag) . although in MATLAB , it's A^2/2 too . So , Am I calculating the ensemble ACF incorrectly ? \$\endgroup\$ Commented Mar 23, 2020 at 19:45

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.