Logo der Uni Stuttgart
Gardner Timing Error Detection

Gardner [1] timing error detection for estimating and compensating timing error.

Gardner is widely used timing error detector due to its independence of the carrier phase. For the estimation it uses a two times upsampled $x_{i}(n) version of the received signal $x(n)$. The goal of the esitmator is to detect the roots of the signal. The timing error is calculated as follows $$ t_\mathrm{err} = \mathrm{Re}\left\{\sum_{n=0}^{N/2-1}\left[x_i(2n-1)-x_i(2n+1)\right]x_i^*(2n)\right\}, $$ where $N$ is the averaging length.

However, this does not work for Nyquist pulses (especially when roll-off $\rightarrow$ 0). In this case, a modified version of the Gardner algorithm is used. It uses the power of the incoming signal $p_i(n)$ as the input. $$ t_\mathrm{err} = \sum_{n=0}^{N/2-1}\left[p_i(2n-1)-p_i(2n+1)\right]p_i(2n). $$ This is commonly refered to as the fourth power [2].

It can also be applied in the frequency domain.
[1] F. Gardner, „A BPSK/QPSK Timing-Error Detector for Sampled Receivers“, IEEE Trans. Commun., Bd. 34, Nr. 5, S. 423–429, Mai 1986, doi: 10.1109/TCOM.1986.1096561.
[2] Md. S. Faruk und S. J. Savory, „Digital signal processing for coherent transceivers employing multilevel formats“, J. Lightwave Technol., Bd. 35, Nr. 5, S. 1125–1141, März 2017, doi: 10.1109/JLT.2017.2662319.