Open Access

Burst transmission symbol synchronization in the presence of cycle slip arising from different clock frequencies

EURASIP Journal on Advances in Signal Processing20182018:3

Received: 24 July 2017

Accepted: 22 December 2017

Published: 8 January 2018


In digital communication systems, different clock frequencies of transmitter and receiver usually are translated into cycle slips. Receivers and transmitters may experience different sampling frequencies due to manufacturing imperfection, Doppler effect introduced by channel or having error in estimation of symbol rate. Timing synchronization in presence of cycle slip for a burst sequence of received information leads to severe degradation in system’s performance. Therefore, the necessity of prior detection and elimination of cycle slip is obvious. Accordingly, the main idea introduced in this paper is to employ the Gardner detector (GaD) not only to recover a fixed timing offset, but also its output is processed such that timing drifts can be estimated and corrected. By deriving a two-step algorithm, first the cycle slips arising from symbol rate offset is eliminated, and then symbol’s timing offset is synchronized in an iterative manner. GaD structure is used in a feedforward structure with the additional benefit that convergence and stability problems, which are typical challenges of the systems with feedback, are avoided. The proposed algorithm is able to compensate considerable symbol rate offsets at the receiver side. Results in terms of BER confirm the algorithm’s proficiency.


Cyclic slipGardner detectorTiming recoveryBurst transmission

1 Introduction

Timing recovery as a process of sampling at the right time are critical in digital communication receivers. The problem is formulated through maximum likelihood (ML) [1]. In direct application of ML method, message symbols and timing offset are estimated jointly. However, this solution conveys the exhaustive search methods that imposes a lot of computations and it makes the solution impractical. To avoid the complexity due to the exhaustive search in ML problem, iterative solutions are introduced [24]. The general idea of iterative timing recovery scheme is to improve the timing estimation accuracy by multiple exploiting the timing information provided by a set of samples and application of this estimation to regenerate a new set of samples that iteratively approaches to the local maximum of the likelihood function. ML-based timing recovery methods usually ignore the time varying timing offsets and proceed under the assumption of fixed synchronization parameter estimation [57]. However in practice, the timing offset may vary with time, due to the different clock frequencies in transmitter and receiver, caused by fractional error in baud rate estimation, manufacturing imperfection, and etc [8].

Different clock frequencies in transmitter and receiver lead to linear increasing/decreasing of timing offset from symbol to symbol. While timing offset changes linearly for successive symbols, synchronizers may fail to track this time-varying delay. Getting far away from true value makes the estimator fall into the adjacent stable operating point and synchronizer starts to keep tracking this new stable operating point. Consequently, one symbol inserted into or erased from the sequence. This is called cycle slipping (CS). There is also another source of CS which is the large phase variance of voltage-controlled oscillators (VCOs) caused by low signal to noise ratio (SNR) that is not subjected in this paper. As long as cycle slips occur, system’s performance decreases dramatically due to the relative loss of synchronization caused by symbol insertion or omission in the sequence. In order to alleviate the adverse effect of CS, it has to be eliminated before applying timing synchronization.

Although, several studies have considered the analysis of cycle slipping in synchronizers [911], few authors have proposed the solution [1214]. Error tracking synchronizers, which are based on closed feedback loop, are more popular in low SNRs. While the good tracking performance of feedback schemes is not deniable, they require, in counterpart, relatively long acquisition time that makes them unsuitable for burst transmission schemes. In this sense, a feedforward structure based on extracting timing delay estimation from the statistics of received samples, and then adjusting the time by interpolation is more suitable. In this work, in order to utilize the bandwidth efficiency of non-data-aided (NDA) estimators and effective flexibility of interpolation, Gardner TED [15] and Farrow filter [1] are used in a feedforward structure.

In accordance with the above statements, this work is motivated by the objective of deriving a novel algorithm which employs GaD in a non-conventional manner so that not only the fixed timing offset is recovered, but also GaD’s output is processed in a way such that a considerable symbol rate offset can be estimated and corrected, which is not addressed in the literatures. At the first step of the proposed algorithm, CS is estimated and eliminated and then the remaining fixed timing offset is estimated and compensated. Simulation results shows that the performance of the proposed algorithm is very close to the theoretical lower bound (which is derived with the assumption of the perfect synchronization) even when there is a considerable symbol rate offset.

The general structure of this paper is as follows: in the next section, the problem of timing offset and CS are formulated, also the proposed algorithm to eliminate CS is derived in this section. Then Section 3 illustrates an iterative scheme for fixed timing offset synchronization after CS elimination. In Section 4, the BER performance of the proposed algorithm is derived using Monte-Carlo simulation and it is compared with alternative algorithms and theoretical lower bound. The final section is about the conclusion of the introduced algorithm.

2 Problem formulation

2.1 Signal model

Assume a traditional communication system, where the transmitted signal is corrupted by passing through AWGN channel which also imposes a timing delay, carrier frequency, and phase offset to the received signal, r(t), as follows:
$$ r\left(t \right) = {e^{j\left(2\pi \Delta ft + \theta\right) }} \sum\limits_{n = 0}^{N - 1} {a_{n}}h\left({t - nT - \tau} \right) + n\left(t \right) $$

Where a n denotes the zero mean unit variance, independently and identically distributed (i.i.d) symbols that might be taken from any linear modulation scheme. θ and Δf are phase and carrier frequency offset, respectively. h(t) is a pulse-shaping filter, n(t) is a complex zero-mean additive white Gaussian noise with two-sided power spectral density of N0/2. Moreover τ, T, and N are unknown timing delay, symbol duration, and the number of transmitted symbols, respectively.

At the receiver side, the signal in (1) should be matched filtered and the transmitted symbols should be regenerated by sampling r(t) at \(kT - \hat \tau \) time instants, where \(\hat \tau \) is timing delay estimation provided by synchronizer. In software-defined radio (SDR) scheme, matched filtering (MF) is also implemented in digital domain. In order to implement MF in digital mode, the received signal, r(t), is sampled at a very high rate than the symbol rate. It means that the samples per symbol parameter is very higher than one. Then, the output of MF is resampled to generate one or two samples per symbol. At the output of MF, one sample per symbol is enough for symbol detection, but two samples per symbol are necessary for the calculation of Gardner timing error as will be discussed in next paragraphs.

Even if receiver has exact information about symbol rate, there still exist some fractional difference between transmitter and receiver clock frequencies due to the implementation imperfection. However, blind receivers have to estimate symbol rate that always conveys some estimation error. In this case, the regenerated symbols are located in \(kT' -\hat \tau \) time instants, where
$$ T' = T + \varepsilon $$
and ε is the difference between transmitter and receiver symbol duration and can be either positive value or negative one. In Gardner-based error recovery algorithms, the match-filtered signal must be sampled with sampling rate twice the symbol rate. Therefore, the samples are generated every T/2 s.
$$ {{} \begin{aligned} r\left(k \right) &\,=\,{e^{j\left({2\pi \Delta fkT'/2 + \theta} \right)}} \sum\limits_{n = 0}^{N - 1} \left({{a_{n}} \,+\, {w_{n}}} \right)g\left({kT'/2 \,-\, \hat \tau \,-\, nT \,+\, \tau} \right) \\ &={e^{j\left({2\pi \Delta fkT'/2 + \theta} \right)}} \sum\limits_{n = 0}^{N - 1} {A_{n}}g\left(kT/2 \,-\, nT + \left(\mu + k\varepsilon/2 \right) \right) \end{aligned}} $$

where \(g\left (t \right) =h\left (t \right)*{h^{*}}\left ({ - t} \right)= \smallint \limits _{- \infty }^{\infty } h\left ({\lambda } \right){h^{*}}\left (\lambda - t \right)d\lambda \) is the convolution of the pulse shape, h(t), with the matched filter with impulse response of h(−t), w n is an i.i.d. zero mean Gaussian distributed variable with variance σ2, A n is the nth noisy symbol, and μ stands for \(\tau - \hat \tau \).

Obviously, timing delay takes different values for different symbols of a received burst caused by the variable timing delay part which is increased linearly by k. Traditional approaches assume this variation is slow in comparison to the burst interval, and they approximate average timing delay over a number of symbol periods which it means that synchronization parameter can be considered as quasi-constant [16], however, ignoring this variation would degrade the performance as it will be well illustrated in simulation results.

2.2 Cycle slip in synchronization

Typically, Gardner’s timing error detection (TED) provides timing estimation to synchronize the received symbols using the samples at twice rate of the symbol rate, according to the following equation [15]:
$$ u\left(k \right) = \Re \left\{ {r^{*}}({2k + 1})\left[ {r({2k + 2}) - r(2k)} \right]\right\} $$
Here, u(k) is the timing error of the kth symbol, is the real part, and * denotes complex conjugation. Plugging (3) into (4) results:
$$ {{}\begin{aligned} u(k)& = \Re \left\{ {e^{- j\left({2\pi \Delta f \left({k + \frac{1}{2}}\right)T + \theta}\right)}} \sum\limits_{n = 0}^{N - 1} {A_{n}}^{*}{g^{*}}\right.\\ &\qquad\qquad \left(\left(k + 1/2\right)T - nT + \left(\mu + (k + 1/2)\varepsilon \right)\right) \\ & \quad\times \left[{e^{j \left({2\pi \Delta f({k + 1})T + \theta} \right)}} \sum \limits_{n^{\prime} = 0}^{N - 1} {A_{n^{\prime}}}g\left(({k + 1})T - n'T\right.\right.\\&\qquad\qquad +\left.\left(\mu + ({k + 1})\varepsilon\right)\right)\\ & \quad\left.\left.- {e^{j\left({2\pi \Delta fkT + \theta }\right)}} \sum \limits_{n^{\prime\prime} = 0}^{N - 1} {A_{n^{\prime\prime}}}g\left(kT \,-\, n^{\prime\prime}T +\! \left(\mu + k\varepsilon \right)\right)\right] \right\} \end{aligned}} $$

The obvious fact is that the phase offset does not play an influential role in Gardner’s timing delay estimation. Likewise, the impression of carrier frequency offset on timing delay estimation is negligible, considering an assumption that ΔfT1. Therefore, carrier and phase offset can be omitted as far as \(\frac {{\Delta f}}{{BW}} \ll 1\) and timing offset can be synchronized regardless of prior carrier and phase synchronization.

As long as μ+kε<|T/2|, TED is capable of tracking the timing delay. For any special value of k that μ+kε exceeds from this interval, the synchronizer starts to relate the timing delay to the adjacent symbol and CS happens. This non-uniform delay detection results in a quasi-periodic behavior of u(k), which is wrapped for particular coefficients of K that K|ε|=T. This fact, which leads to the periodic function of u(k), is proved in the following Lemma.

Lemma 1

u(k) is a periodic function with the period of T/ε.


for the sake of simplicity, transmitted signal supposed to be a burst sequence that alternatively changes between −1 and +1 and g(t) is time limited with no excess double-sided time extension of T. Also, delay offset for three successive samples involving in GaD estimation in (5) is assumed to be fixed and equals μ+kε. Doing some manipulation in order to discard ineffective terms in (5), a simplified version of (5) is obtained. As long as \(\left | {\mu + k\varepsilon } \right | \le \frac {T}{2}\), let u1(k) represents the timing offset estimation of the kth symbol. For any arbitrary positive value of δ that \(0 < \delta < \frac {T}{2}\) and \(\mu + k\varepsilon = \frac {T}{2} - \delta,{u_{1}}\left (k \right)\) is generated as follows:
$$ \begin{aligned} {u_{1}}(k)& =\left[ {{A_{k}}^{*}{g^{*}}({T - \delta}) + {A_{k + 1}}^{*}{g^{*}}({ - \delta})} \right]\\ &\quad\times \left[ {\left({{A_{k + 1}} \!\,-\,\! {A_{k}}} \right)g\left({\frac{T}{2} \,-\, \delta} \right) \,+\, \left({{A_{k + 2}} - {A_{k + 1}}} \right)g\left({ - \frac{T}{2} \!- \delta} \right)} \right] \end{aligned} $$
$$ {\begin{aligned} {u_{1}}\left(k \right) & = \left[ {{A_{k}}^{*}{g^{*}}\left({T - \delta} \right) + {A_{k + 1}}^{*}{g^{*}}\left({ - \delta} \right)} \right]\\ &\quad\times \left[{A_{k + 1}}\left({g\left({\frac{T}{2} - \delta} \right) - g\left({ - \frac{T}{2} - \delta} \right)} \right) \right.\\&\quad\left.+ \left({{A_{k + 2}}g\left({ - \frac{T}{2} - \delta} \right) - {A_{k}}g\left({\frac{T}{2} - \delta} \right)} \right) \right] \end{aligned}} $$
Evidently in typical pulse shapes such as raised cosine, g(t) is an even function and the maximum value of g(t) occurs at t = 0. Thus,
$$ g\left({T - \delta} \right) \le g\left(\delta \right), \qquad g\left({ - \frac{T}{2} - \delta} \right) \le g\left({\frac{T}{2} - \delta} \right) $$
The term \(\left ({{A_{k + 2}}g\left ({ - \frac {T}{2} - \delta } \right) - {A_{k}}g\left ({\frac {T}{2} - \delta } \right)} \right)\) can be ignored in (7), considering the fact that Ak+2 and A k are either +1 or −1, and consequently:
$$ {{sign}}\left({{u_{1}}\left(k \right)} \right) = {\left| {{{sign}}\left({{A_{k + 1}}} \right)} \right|^{2}} $$

Which is always positive irrespective to what A k and Ak+1 are, and it confirms that when the timing of the samples is late and less than T/2, then the Gardner error is positive.

Suppose that for all symbols with index k such that \(\mu + k\varepsilon > \left | {\frac {T}{2}} \right |\), u2(k) represents the relevant timing offset estimation. Similarly, assume δ is a positive value, \(0 < \delta < \frac {T}{2}\), that makes the delay exceeds from T/2, such that \(\mu + k\varepsilon = \frac {T}{2} + \delta \). Similarly, u2(k) can be achieved using the following equation
$$ {\begin{aligned} {u_{2}}\left(k \right) &= \left[ {{A_{k + 1}}^{*}{g^{*}}\left(\delta \right) + {A_{k + 2}}^{*}{g^{*}}\left({\delta - T} \right)} \right] \\ &\quad\times\left[ \left({{A_{k + 1}} - {A_{k}}} \right)g\left({\delta + \frac{T}{2}} \right) \right.\\&\quad+\left. \left({{A_{k + 2}} - {A_{k + 1}}} \right)g\left({\delta - \frac{T}{2}} \right) \right] \end{aligned}} $$
Regenerating of u1(k) for \(\mu + k\varepsilon = - \frac {T}{2} + \delta \) corresponds to
$$ \begin{aligned} {u_{1}}\left(k \right) &= \left[ {{A_{k}}^{*}{g^{*}}\left(\delta \right) + {A_{k + 1}}^{*}{g^{*}}\left({\delta - T} \right)} \right]\\ &\quad \times \left[\left({{A_{k}} - {A_{k - 1}}} \right)g\left({\delta + \frac{T}{2}} \right) \right.\\&\quad\left.+ \left({{A_{k + 1}} - {A_{k}}} \right)g\left({\delta - \frac{T}{2}} \right) \right] \end{aligned} $$
It is concluded from (9) and (10) that
$$ {u_{1}}\left({k + 1} \right) = {u_{2}}\left(k \right) $$
Or equivalently as long as timing delay is increasing, caused by kε, varies in [−T/2,T/2], synchronizer is able to track and detect the relative delay. Once timing delay exceeds from this span, TED will assign the error to the adjacent symbol periodically, so that delay values greater than T/2 would not be estimated correctly and consequently CS happens alternatively. This is shown in Fig. 1. Evidently, CS repeats every K symbols, where K=T/|ε| and u(k) are wrapped functions. Conventionally, variable timing delay offset is assumed to be negligible by restricting the number of k such that kK. However, this contribution is concerned about the problem that at least one cycle slip takes place during the received burst sequence which is the case of either long burst with small value of ε or short burst with significant value of ε. □
Fig. 1

Illustration of cycle slip in synchronizer

2.3 Cycle slip detection and correction

Let R s and \({\hat R_{s}}\) denote the symbol rate of the transmitted signal and respective estimation of symbol rate at the receiver, where
$$ {\hat R_{s}} = {R_{s}} +\eta {R_{s}} $$
and η(−1,1), is the normalized symbol rate offset (NSRO). Equivalently, the estimated symbol duration, T, can be
$$ T' = T - \frac{\eta }{{1 +\eta }}T $$
Considering (2), it is obvious that \(\varepsilon = \frac {-\eta }{{1 +\eta }}T\). Suppose K is the maximum number of symbols that synchronizer can track without cycle slipping. By a little manipulation, the following equation can be obtained:
$$ K = T/\left| \varepsilon \right|=\left|\frac{{1 +\eta }}{\eta }\right| $$
K can be interpreted as a period of u(k). Figure 2 represents a realization of u(k), plotted for a received burst signal with the length of 500 symbols, where η = 0.1. As it is demonstrated, although the mathematical expression of alternate cycle slip is straight forward, u(k) is a noisy version of a periodic signal. This is mainly due to the Gardner’s TED self-noise arising from data randomness [17] and the additive noise impairment of channel. Once the periodic term of u(k) is extracted, it can be utilized in order to detect and correct cycle slip. CS existence is determined by using discrete Fourier transform (DFT). Suppose u=[u(0),u(1),…u(k),…u(N−1)] represents a vector of GaD errors for all symbols of a burst and U=[U(0),U(1),…U(n),…U(N−1)], where \(~\mathbf {U} = {\mathcal {F}}\left \{ \mathbf {u} \right \}\) and \({\mathcal {F}}\left \{ {} \right \}\) stand for N point discrete Fourier transform and defined by \({\mathrm {U}}\left (n' \right) = \sum \limits _{k = 0}^{N - 1} u\left (k \right){e^{-j2\pi kn'/N'}}\). The index q is defined as the index of the element in vector U with maximum value:
Fig. 2

u(k) for a burst length of 500 symbols, modulation type = BPSK, η = 0.1, SNR = 10 dB. CS leads to burst of error occurrence due to the symbol insertion

$$ q = {{argma}}{x_{n' = 0, \ldots,N' - 1}}U\left(n' \right) $$
Figure 3 shows the DFT of depicted signal in Fig. 2. Clearly, the periodic term of u(k) which is an indication of CS happening, results in a dominant component at the frequency of 1/K. While, constant timing delay without CS, yields a prominent DC component at DFT of u(k). In other words,
$$q=\left\{ \begin{array}{l} {{zero}}\,\, \text{(no cycle slip)} \\ {{nonzero}}\,\, \text{(cycle slip)} \end{array}\right. $$
Fig. 3

4096 points DFT of u(k), burst length = 500 symbols, modulation type = BPSK, η = 0.1, SNR = 10 dB. CS is represented as a frequency in NSRO

However, in some cases it might be more practical to compare q with small threshold instead of absolute zero due to the noise existence. This threshold can be defined experimentally. Also, it is noteworthy that since Gardner error works based on the sign alternation of the adjacent symbols, replacing sign(r(2k+2))−sign(r(2k)) instead of r(2k+2)−r(2k) in (4) improves the GaD algorithm’s efficiency in CS detection. Obviously, when CS is recognized, DFT can be used to extract K by
$$ K = \frac{N'}{q} $$

In (16), K is approximated by N-point DFT where N>N and N is the length of u(k). It means that the vector u is zero padded by NN zeros and DFT is applied to achieve U. N can be assumed to be a power of 2, such that DFT operation can be done with low complexity fast Fourier transform (FFT). Finally, the index in which the absolute value of DFT is maximized, yields an approximation of K.

Once K was determined, new samples must be generated based on the new updated symbol rate, \(\hat {R}_{s}^{{{new}}}\). This is done in SRC block by the fractional interpolation of the samples. It is noteworthy that in the above mentioned algorithm K is a positive parameter, but η can be either positive or negative. Although there are some methods to determine the sign of η based on the phase of the U(q), it is simpler and more practical to test the positive and negative values of η.

Suppose the hypothesis of η>0, after determination of K, using (12) and (14), CS would be eliminated by correction the estimation of symbol rate at the receiver, according to the following equation:
$$ \hat{R}_{s}^{{new}} = \left({1 - \frac{1}{K}} \right){\hat R_{s}} $$
The estimated \(\hat {R}_{s}^{{{new}}}\) based on (17) is used to generate new samples. The new samples are exploited to calculate q(ρ+1) where q(ρ) is the dominant frequency of U in the ρth iteration. Obviously, q(ρ+1)<q(ρ) resembles that K, the period of CS, has been increased or in other words the R s estimation error has been decreased. If hypothesis of η>0 leads to q(ρ+1)>q(ρ), the procedure is repeated under the new assumption of η<0 and R s is modified based on the following equation
$$ \hat{R}_{s}^{{{new}}} = \left({1 + \frac{1}{K}} \right){\hat R_{s}} $$
Modification of the symbol rate estimation leads to CS correction and the periodic term removal in u. The block diagram of the CS correction algorithm has been shown in Fig. 5. As shown in this figure, the samples of the burst signal is buffered after the matched filtering. A sample rate conversion (SRC) is used to resample the buffered samples. This block is simply a fractional interpolator which will be discussed in next section. Using the SRC, the samples are regenerated using the corrected symbol rate of (17) or (18). The processes of CS estimation, R s correction, and resampling are performed iteratively. When the R s correction converges to a proper value near the real one, such that CS does not happen anymore, the index q in (15) goes to zero, Thus the stopping criteria can be assumed to be |q|<thr, where thr is a threshold that can be determined experimentally. Figure 4 shows the DFT of u, \(\mathbf {U} = {\mathcal {F}}\left \{ \mathbf {u} \right \}\), after CS correction.
Fig. 4

4096 points DFT of u(k) after CS correction, burst length = 500 symbols, modulation type = BPSK, SNR = 10 dB. Constant timing delay is represented as DC component

CS elimination is not sufficient for timing recovery, since it is not able to recover the constant timing delay μ, which is represented as a DC component after CS elimination. As shown in Fig. 5, after CS compensation when the stopping criteria, |q|<thr, is satisfied, a new loop is started to estimate the constant timing delay of μ. In the next section, this algorithm is discussed.
Fig. 5

Block diagram of CS correction proposed timing recovery algorithm for burst signal

3 Iterative timing recovery

In [18], an iterative timing recovery derivation from the maximum likelihood principle is proposed, where the timing information, extracted from Gardner’s TED, has been used iteratively to adjust sampling time. Here, this method is used in cooperation with digital filtering by interpolation in order to improve the sampling instants.

Suppose U(0) is the DC component of U
$$ U\left(0 \right) = \sum \limits_{k = 0}^{N - 1} u\left(k \right) $$
and μ would be approximated as the following:
$$ \mu = \frac{1}{N}U\left(0 \right) $$

In the other words, averaging the evaluated timing error by Gardner’s TED over all the symbols of a burst provides an estimation of the constant timing delay. This can be used for timing adjustment in interpolator.

In the cases that the fractional delay is sufficient to control the interpolator’s structure and there is no computational need to update the filter’s coefficients, Farrow structure of polynomial interpolation is preferred due to the implementation efficiency. The detailed explanation of Farrow structure can be found in [19]. Different polynomial orders can be considered to generate the outputs, however, applying Lagrange polynomial in Farrow structure when the polynomial order is assumed to be 3 results in the following equation for interpolation’s output.
$$\begin{array}{*{20}l} x(k) &= {\mu^{3}}\left({ - \frac{1}{6}{r_{- 1}} + \frac{1}{2}{r_{0}} - \frac{1}{2}{r_{1}} + \frac{1}{6}{r_{2}}} \right) \\ &\quad+ {\mu^{2}}\left({ - \frac{1}{2}{r_{- 1}} + 2{r_{0}} - \frac{5}{2}{r_{1}} + {r_{2}}} \right)\\ &\quad+ \mu \left({ - \frac{1}{3}{r_{- 1}} + \frac{3}{2}{r_{0}} - 3{r_{1}} + \frac{{11}}{6}{r_{2}}} \right) + {r_{2}} \end{array} $$
Where x(k) is the interpolated sample, r−1,r0,r1,r2 are shown in Fig. 6 and μ is the fractional delay. Note that in order to exploit the timing information by GaD, two samples are generated for each symbol’s timing interval. Once the new samples are obtained by interpolation, they are used to evaluate u(k), then applying (19) and (20) results in a new approximation of μ. If μ0, the generated samples are decimated by the factor of 2 and the selected samples are used to determine the final symbols, otherwise the timing delay is modified using (19) and this procedure is repeated. Iterative application of this algorithm leads to the timing recovery, and it adjusts the samples at the right timing positions.
Fig. 6

Illustration of interpolation

4 Results and discussion

To verify the efficiency of the proposed algorithm, simulation results are presented in this section. Simulations are carried out with BPSK- and QPSK-modulated signals which are shaped by a square root raised cosine filter with roll-off factor of 0.5 in transmitter, and they are passed through AWGN channel. In order to implement the matched filtering in digital domain, the received signal is sampled with the rate of 10 samples per symbol and a sample rate conversion (SRC) is used at the output of matched filter for conversion of the sample rate to 2 samples per symbol. The interpolation filter order in the timing recovery block is two. It means that a simple linear interpolation is used in SRC block. It is noteworthy that the higher interpolation filter order leads to more accurate results and compensates the lower sample per symbol ratio in ADC. However, in the following simulations, since sample per symbol ratio is set to 10, increasing the order of the filter does not make a considerable difference. Therefore, linear interpolation is used to avoid the complexity. After SRC block 2N samples are zero padded by 4096−2N zeros and a 4096 points DFT is used to estimate the period of CS based on (15).

In Fig. 7, system’s performance is evaluated in terms of BER for a BPSK signal. The proposed algorithm is referred as “CS corrected” while timing recovery without CS correction is referred as “CS uncorrected.” The burst length of the received signal is 300 symbols, and the NSRO, η, is set to 0.1. In the case that the CS is not corrected, traditional timing recovery is used in which the Gardner error is directly used to compensate the timing drifts. the output of TED block is averaged to calculate μ in each iteration, and then the SRC block recalculates the samples based on the estimated timing offset. As can be seen from Fig. 7, in this scenario, ignoring NSRO and using traditional timing recovery loop does not work and the BER tends to 1/2 regardless of SNR value. Unlike traditional timing recovery, the performance of our proposed algorithm is very close to the theoretical lower bound. The lower bound has been plotted with the assumption of perfect synchronization based on the well-known equations of BER=Q(2E b /N0).
Fig. 7

BER performance of demodulation of BPSK modulated burst signal, N = 300, N = 4096, η = 0.1

The main reason that the traditional timing recovery method does not work in the above mentioned scenario is the occurrence of the cycle slip. One approach that is usually used to overcome this problem is the segmentation of a long bust signal into some shorter segments with length L such that Lη<1. Then timing recovery is used independently in each segment. The timing delay is assumed to be piecewise constant in each segment interval and its variation can be ignored. This approach is called “segment by segment timing recovery.” Figure 8 compares the performance of the proposed algorithm with the segment by segment timing recovery approach for BPSK modulated signal with N = 300 symbols. As can be seen from this figure, performance of the segment by segment timing recovery method has a considerable degradation in comparison to the proposed algorithm and theoretical bound. It is noteworthy that for η = 0.05 the length of the segments has been chosen to be L = 5 symbols to satisfy the condition Lη<1. It means that in each segment Gardner error of only 5 symbols are averaged and is fedback for timing recovery. Averaging over this few number of symbols is not a good approximation for the expectation of the Gardner error over a segment. It is noteworthy that Gardner output estimates timing drift based on the variation of the sign of the consecutive symbols. When the length of the segments is low, there is not enough number of consecutive symbols with opposite signs. When NSRO is 0.005 the length of the segment is chosen as L = 50. In this case, the performance of the segment by segment algorithm becomes better in comparison to the case with NSRO = 0.05. Unlike segment by segment recovery method, performance of our proposed algorithm becomes better when NSRO increases. The reason is that when the number of burst symbols is fixed, the number of CS occurrences is increased by increasing of NSRO and the CS period can be estimated more precisely. It is noteworthy that the performance of the proposed method is very close to the theoretical lower bound. Simulations showed that the CS recovery loop converges after only two or three iterations.
Fig. 8

BER performance of typical approach and introduced algorithm for η = 0.05 and η = 0.005, N = 4096, N = 300, modulation type = BPSK

Figure 9 shows the results of similar simulations for the QPSK modulated burst signal. As can be seen, the proposed algorithm has better performance in comparison to the segment by segment timing recovery method and very close to the theoretical lower bound.
Fig. 9

BER performance of typical approach and introduced algorithm for η = 0.05 and η = 0.005, N = 4096, N = 300, modulation type=QPSK

Figure 10 displays BER of BPSK signal for different burst lengths where NSRO is set to 0.1. It is predictable that as the burst length increases the better result is achieved, since the longer bursts result in a better DFT resolution and more precise symbol rate modification in CS correction block.
Fig. 10

BER performance for different burst lengths N = 4096, η = 0.1

Figure 11 generates the BER results for NSRO = −0.05 in comparison to NSRO = 0.05 for QPSK modulation type with length of 300 symbols. As it is shown, the system’s performance is degraded. This is interpreted through overshoot probability in R s estimation when NSRO is negative. Actually, negative NSRO is translated as symbols deletion in a whole burst, this leads to assigning q to the greater value than its real value in DFT block, consequently the second estimation of R s which is based on q, conveys additive NSRO in contrast to its primer value. The algorithm is capable to distinguish positive and negative NSROs via the method introduced in CS detection and correction section.
Fig. 11

BER performance for η = −0.05 and η = 0.05, N = 300, modulation type = QPSK

5 Conclusions

A new algorithm for timing recovery by prior elimination of cycle slip is proposed. The GaD is used for symbol timing recovery in a non-conventional manner. This non-conventional use is as follows:
  • The GaD is not only employed to recover a fixed timing offset, but also its output is processed in a way such that timing drifts can be estimated and corrected.

  • Normally, GaD is used symbol by symbol in a feedback loop, whereas in this contribution it is suggested to apply it to a feedforward structure with the additional benefit that convergence and stability problems are avoided, as they are typical for feedback schemes.

It is shown that linearly increased timing delay causes alternate cycle slips in synchronizer. A burst sequence of timing error provided by GaD is used to indicate and eliminate CS. After CS correction, iterative timing recovery is applied to the sequence of burst samples. The satisfactory simulation results, evaluated in terms of BER and compared with theoretical and other approaches, confirm the performance of the proposed algorithm.



Not applicable.


Not applicable.

Availability of data and materials

Not applicable.

Authors’ contributions

All authors contributed to this work with equal contribution. Both authors read and approved the final manuscript.

Ethics approval and consent to participate

Not applicable.

Consent for publication

Not applicable.

Competing interests

The authors declare that they have no competing interests.

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Authors’ Affiliations

Electrical Engineering Department, IK International University, Qazvin, Iran
Electrical Engineering Department, Shahed University, Tehran, Iran


  1. H Meyr, M Moenecleay, SA Fechtel, Digital communication receivers, synchronization, channel estimation and signal processing (Wiley, New York, 1998).Google Scholar
  2. I Nasr, LN Attalah, S Cherif, B Geller, J Yang, in IEEE Communications and networking (ComNet), 2014 International Conference on: 19-22 March 2014; Tunisia. A soft maximum likelihood technique for time delay recovery (IEEE, 2014), pp. 1–5.Google Scholar
  3. C Herzet, H Wymeersch, M Moeneclaey, L Vandendorpe, On maximum-likelihood timing synchronization. IEEE Trans. Commun.55:, 1116–1119 (2007).View ArticleGoogle Scholar
  4. CN Georghiades, DL Snyder, The expectation maximization algorithm for symbol unsynchronized sequence detection. IEEE Trans. Commun.39:, 54–61 (1991).View ArticleGoogle Scholar
  5. A Masmoudi, F Bellili, S Affes, A Stephenne, A non-data-aided maximum likelihood time delay estimator using importance sampling. IEEE Trans. Signal Process.59:, 4505–4515 (2011).MathSciNetView ArticleGoogle Scholar
  6. Y Wu, E Serpedin, Design and analysis of feedforward symbol timing estimators based on conditional maximum likelihood principle. IEEE Trans. Signal Process. 53:, 1908–1918 (2005).MathSciNetView ArticleMATHGoogle Scholar
  7. J Riba, J Sala, G Vazquez, Conditional maximum likelihood timing recovery: estimators and bounds. IEEE Trans. Signal Process.49:, 835–850 (2001).View ArticleGoogle Scholar
  8. JR Barry, A Kavcic, SW Mclaughlin, A Nayak, W Zeng, Iterative timing recovery. IEEE Signal Proc. Mag.21:, 89–102 (2004).View ArticleGoogle Scholar
  9. M Moeneclaey, The influence of cycle slipping on the error probability of a PAM receiver. IEEE Trans. Commun.35:, 961–968 (1987).View ArticleGoogle Scholar
  10. G Asceid, H Meyr, Cycle slips in phase-locked loops: a tutorial survey. IEEE Trans. Commun.30:, 2228–2241 (1982).View ArticleGoogle Scholar
  11. D Ryter, H Meyr, Complete statistical description of the phase error process generated by correlative tracking systems. IEEE Trans. Inf. Theory. 23:, 194–202 (1977).View ArticleMATHGoogle Scholar
  12. SS Arslan, J Lee, T Goker, Cycle slip detection and correction through classification of modulation code failures. IIEEE Trans. Magn.49:, 4988–4998 (2013).View ArticleGoogle Scholar
  13. K Akino, T Kojima, K Millar, DS Parsons, K Miyata, Y Matsumoto, W Sugihara, T Mizuochi, in IEEE Optical Fiber Communications Conference and Exhibition (OFC): 9-13 March 2014; San Francisco. Cycle slip mitigating turbo demodulation in LDPC coded coherent optical communications (IEEE, 2014), pp. 1–3.Google Scholar
  14. X Jin, A Kavcic, Cycle slip detector aided iterative timing recovery. IEEE Trans. Magn. 38:, 2292–2294 (2002).View ArticleGoogle Scholar
  15. FM Gardner, A BPSK/QPSK timing-error detector for sampled receivers. IEEE Trans. Commun.34:, 423–429 (1986).View ArticleGoogle Scholar
  16. M Oerder, H Meyr, Digital filter and square timing recovery. IEEE Trans. Commun.36:, 605–612 (1988).View ArticleGoogle Scholar
  17. FM Gardner, Self noise in synchronizers. IEEE Trans. Commun.28:, 1159–1163 (1980).View ArticleGoogle Scholar
  18. S Bazin, MJ Emadi, MH Abbasi, in IEEE Electrical Engineering (ICEE), 2016 24th Iranian Conference on: 10-12 May 2016; Shiraz. Iterative symbol synchronization for bandwidth efficient burst transmission (IEEE, 2016), pp. 709–713.Google Scholar
  19. A Agarwal, L Bopana, K Kadali, in IEEE Region 10 Symposium, 2014 IEEE: 14-16 April 2014; Kuala Lumpur. Lagrange’s polynomial based Farrow filter implementation for SDR (IEEE, 2014), pp. 269–274.Google Scholar


© The Author(s) 2018