Blind Estimation of the Phase and Carrier Frequency Offsets for LDPC-Coded Systems

,


Introduction
The past few years have seen an increasing demand for efficient and reliable digital communication systems.In order to protect the transmitted data from noise, errorcorrecting codes are introduced in the transmission scheme.Turbo codes and Low-Density Parity-Check (LDPC) codes have proven their efficiency in detecting and correcting errors, even at low signal-to-noise ratios (SNR) [1,2].However, a degradation in performance of these codes is expected when a phase offset and a Carrier Frequency Offset (CFO) are present in the system.The CFO is usually due to a possible carrier frequency mismatch or a relative motion between the transmitter and the receiver.
In the literature, two synchronization approaches are often used to blindly estimate the phase offset: the "Non-Data-Aided" (NDA) and the "Hard Decision Di-rected" (HDD) [3].These approaches assume that only the modulation type used for transmission is known by the receiver, which is generally the case.Recently, code-aided algorithms for phase offset estimation have been developed, as in [4,5].Another approach consists of joint phase recovery and decoding, as in [6].As for the frequency offset estimation, several techniques were proposed in the literature.In [7,8], the authors proposed frequency estimators for a single complex sinusoid.In the case of modulated signals, many blind frequency offset estimation methods were introduced.In [9], the authors presented a maximum likelihood frequency detector.Derived from this maximum likelihood principle, many algorithms of frequency estimation have been proposed in [10] for the Data-aided (DA), Decision Directed (DD) and Non-Data-Aided (NDA) cases.A new family of Non Linear Least Squares (NLLS) estimators was introduced in [11] for the joint estimation of the phase, the CFO and the Doppler for transmissions using MPSK (M-ary Phase Shift Keying) modulations.Performance of the NLLS estimator for low SNR was studied in [12].Although the NLLS estimator is very effective in the BPSK (Binary Phase Shift Keying) modulation case, its performance degrades for higher-order modulations.
In this paper, we present effective blind techniques for phase and frequency offsets estimation.The proposed algorithms are based on the calculation and minimization of functions of the syndrome elements of the error-correcting code used in the transmission scheme.These algorithms were inspired by a Maximum a Posteriori (MAP) based blind frame synchronization method previously proposed in [13,14] and applied to codes having a sparse parity check matrix.We showed that frame synchronization can be obtained by minimizing the Log-Likelihood Ratios (LLR) of the syndrome calculated at each position of a sliding window applied to the received sequence.In this paper, we consider perfect frame synchronization and we investigate the behavior of functions of the LLR of the syndrome when a phase offset or/and a CFO are present in the system.Synchronization is achieved by optimizing these functions.Note that synchronization techniques proposed in this paper are based on properties of the parity check matrix of the errorcorrecting code used during the transmission.However, the synchronization procedure is accomplished before applying the decoder and its performance is independent of the decoder efficiency.This explains the difference between our algorithms and the code-aided ones, which need information provided by the decoder to achieve synchronization.
The paper is organized as follows.In Section 2 we present the proposed phase offset estimation method for a BPSK modulation (Section 2.2) then for higher-order modulations (Section 2.3).Section 3 shows how to use similar criteria in order to estimate the CFO of the system.Simulation results are presented in Section 4 where we apply our algorithms to LDPC codes.Finally, Section 5 concludes the work.

Context of Our Study.
We consider in this paper that the system we want to synchronize is using an LDPC code of rate ρ = (n c − n r )/n c .This code is defined by its parity check matrix H of size n r × n c , where n c represents the length of a codeword and n r the number of parity relations.In this section, we assume that an unknown phase offset is present in the system.Then, a received sample can be written as where b(k) is the kth coded, modulated and transmitted symbol and w(k) is a white complex Gaussian noise.We denote by θ 0 the phase offset of the channel.The proposed method of blind estimation of the phase offset is based on a MAP approach in the sense of maximizing the probability that a phase θ corresponds to the correct phase offset, given a number, say N, of received samples.
In other words, our target is to maximize the following a posteriori probability: where r = [r(1), . . ., r(N)] T .In order to guarantee identifiability, we should verify that in the noise-free case, once we correct the received samples by θ, the resultant blocks are valid codewords.The easiest way to check whether a block corresponds to a valid codeword or not is by calculating its syndrome which is obtained according to the parity check matrix H of the code [14].Each element of the syndrome is calculated using one parity check equation defined by one row of H.The resultant syndrome can be written as When θ = θ 0 , the probability of having a verified parity check equation is greater than when θ / = θ 0 .In the logarithmic domain, these probabilities can be expressed in terms of LLRs.
Let Λ be the LLR of the syndrome calculated for a phase θ.It is defined by We showed in [14] that for codes having a sparse parity check matrix, Λ( θ) can be approximated by where l(S(k)) is the LLR of a syndrome element and is defined by Note that in the noise-free case, if θ = θ 0 , all the S(k) k=1,...,nr are equal to zero, and hence L(θ 0 ) becomes minimum.
According to the decoding algorithm of LDPC codes [15], l(S(k)) is written as where is the LLR of the ith received sample and σ 2 is the total variance of the noise.The variables u k and k j represent the number of ones in the kth row of the parity check matrix of the code and the position of the jth nonzero element in this kth row, respectively.In this paper and for simplicity reasons, the value of u k is assumed to be even.
Inspired by [14,16], we approximate (7) by In this way, no a priori information about the Gaussian channel is required to calculate the LLR of a syndrome element [17].

Proposed Estimation Method for the BPSK Modulation
Case.Having defined the LLR of a syndrome and explained its importance in verifying whether a block corresponds to a valid codeword or not, we describe next our proposed algorithm of blind estimation of the phase offset.
In this section, we consider that the transmitter is sending a binary sequence of coded data and is using a BPSK modulation.Once a codeword is received, we rotate its samples by a phase θ.We get Then, by studying the real and imaginary parts of each of the resulting complex-valued samples, we obtain two expressions of the syndrome, one for each part.Therefore, we compute the functions L R ( θ) and L I ( θ), which are the statistical mean of approximations of the LLR of the syndrome obtained from the real and imaginary parts of the rotated received samples r θ (k), respectively.From (9), we express functions L R ( θ) and L I ( θ) as where E[•] denotes the statistical expectation operator.Note that ( 11) and ( 12) can be estimated by where K is the number of codewords used to calculate the statistical expectation of functions L R and L I .In the remaining of this paper and for simplicity reasons, we assume that K = 1.We plot in Figure 1 the variation of L R ( θ) and L I ( θ) in terms of the phase estimation error ( θ − θ 0 ), in a noise-free channel.The LDPC code used here has a length n c = 512 bits, rate R = 0.5 and u k = 4 nonzero elements in each row of its parity check matrix.For this simulation, we make θ vary from −π to π.We notice from Figure 1 that, for an estimation error equal to zero (i.e., θ = θ 0 ), L R ( θ) is minimum while L I ( θ) is maximal.Therefore, in order to estimate the phase offset of the channel, we define a new cost function given by The variation of J( θ) in terms of ( θ − θ 0 ) is shown in Figure 2 for the same LDPC code used before.As we can see, function  J( θ) is minimum at a phase θ = θ 0 (modulo π).Therefore, minimizing this function gives an estimation of the phase θ 0 with an ambiguity of π.In other words, the proposed estimation algorithm estimates the phase offset by It is clear from the shape of the curve in Figure 2 that J( θ) has only one minimum located at θ = θ 0 .Hence, the optimization problem is not that complicated and it can be solved using Gradient descent method [18].

Gradient Descent Method. When applied to a function h(x),
Gradient descent method takes the form of iterating until a stop criterion is reached.∂h(x i )/∂x i represents the partial derivative of h with respect to x i .i denotes the step of the descent procedure.A simple example of i is i = 1/Ki, where K is a constant that can be adjusted and i is the number of the current iteration.The x i reached at the final iteration of the Gradient descent algorithm is the solution of the optimization problem.
In our case, we want to minimize function J( θ).As shown in (16), the Gradient descent method requires the computation of the gradient of the function to minimize.According to (11) and ( 12), the gradients of functions L R ( θ) and L I ( θ) cannot be computed.However, these functions are approximations of the LLR of the syndrome obtained from (9).Using the exact expression of the LLR of a syndrome given in (7), we define L Re ( θ) and L Ie ( θ) are proportional to L R ( θ) and L I ( θ), respectively.Hence, Minimizing ( 14) is now equivalent to minimizing The variance of the noise σ 2 being unknown and for simplicity reasons, its value can be replaced by 1 in ( 17) and ( 18), as proposed in [19].The partial derivative of J e ( θ) is computed in Appendix A of this paper.

Proposed Estimation Method for the Higher-Order Modulation Case.
The algorithm proposed in the previous section is only valid for a BPSK modulation.We propose in this section a blind phase offset estimation technique for higherorder modulations, based on the same concept as the one previously proposed in this paper.The proposed algorithm, which is based on an iterative procedure, is described below.
At each iteration, we rotate the higher-order modulated samples by a phase θ, we get r θ (k).Then, inspired by an approximation given in [20], we propose to estimate the LLR of each bit of a rotated sample by where Q is the set of symbols of the higher-order modulation, γ is a possible symbol of Q, and γ i is the ith bit among the q bits constituting a symbol.The variable a θ (k) represents the kth coded bit obtained after rotating the received samples by θ.
Inspired by [14], we compute a new cost function given by Figure 3 shows the variation of J h ( θ) in terms of ( θ − θ 0 ), in a noise-free channel for the same LDPC code previously introduced but this time we consider the 16-state Quadrature Amplitude Modulation (16-QAM) case.It is clear that optimizing function J h ( θ), which is minimum at a phase θ = θ 0 , gives an estimate of the phase offset of the channel.Moreover, the periodicity of function J h ( θ) being equal to 2π, minimizing this function gives an exact estimate of the phase, without any ambiguity.
According to (20) and ( 21), function J h ( θ) is not differentiable.Hence, Gradient descent method cannot be applied to resolve the optimization problem in question.In this paper, we propose to use the Simulated Annealing algorithm [21,22] for minimizing function J h ( θ).Note that the phase θ 0 can be also estimated by a brute force search on function J h .Simulated Annealing Algorithm.In its original form, the Simulated Annealing algorithm is based on the analogy between the simulation of the annealing of solids and the problem of solving large combinatorial optimization problems.Annealing is the process of heating a solid and cooling it slowly in order to remove strain and crystal imperfections.During this process, the free energy of the solid is minimized.The initial heating is necessary to avoid becoming trapped in a local minimum.Every function can be viewed as the free energy of some system and therefore, studying and imitating this process should solve our optimization problem.
Let h be the function to be minimized.The iterative Simulated Annealing algorithm can be summarized as follows: Initialize: x, T 0 , and a, where x is the solution of the minimization problem, T 0 is the initial temperature and a is the temperature decrease coefficient.
Loop: beginning of the iterative procedure, generate a variable z following a uniform distribution.(i) if (h(z) − h(x) ≤ 0), then accept x = z (ii) else (iii) generate a variable u following a uniform distribution between 0 and 1, (iv) accept , where i is the current iteration number.
Exit: when the maximal number of iterations or a stop criterion is reached.

Proposed Blind Carrier Frequency Offset Estimation Method
3.1.Case I: No Phase Offset is Present in the System.We consider in this section that the phase offset θ 0 = 0 and an unknown CFO is present in the system.In this case, a received sample is equal to For the moment, a BPSK modulation is assumed to be used and our target is to estimate the CFO f 0 , which is assumed to be in the range of a few percents of the symbol rate 1/T s .
In this paper, we suppose that f 0 is uniformly distributed between −0.1/T s and 0.1/T s .The CFO estimation technique that we propose in this section is based on the same concept as the one we already proposed for phase estimation.First of all, we compensate the CFO of the system by a frequency candidate f .The resultant samples are then written as Then we compute our new cost function L R ( f ), which is the same as (11) but calculated this time from samples r f (k).This function is written as: We show in Appendix B that the cost function L R ( f ) is minimum for f = f 0 .Hence, the proposed technique estimates the CFO of the system by The proof presented in Appendix B can be verified by simulations.For this, we plot in Figure 4 function L R ( f ) versus ( f T s − f 0 T s ) in the case of a noise-free channel.This function was computed for a system using an LDPC code Let us make a zoom on a part of function L R ( f ).We can clearly observe that for f T s − f 0 T s / = 0, the curve of L R ( f ) contains many local minima that are not random fluctuations.Therefore, it is clear that the optimization problem that we have is not that simple to solve and not any minimization algorithm may work.The Simulated Annealing algorithm presented in the previous section might be a solution for our problem.However, due to the particular shape of function L R ( f ), the optimization problem can also be solved by a brute force search or by proceeding in two steps (coarse and fine steps) as proposed in [23].

Case II: An Unknown Phase Offset Is Present in the System.
In this section, we assume that, in addition to the unknown CFO f 0 , an unknown phase offset θ 0 is present in the system.In these conditions, a received sample can be written as: and our target is to estimate the frequency f 0 independently of the unknown phase θ 0 .When an unknown phase offset θ 0 is present in the system, optimizing function L R ( f ) doest not guarantee anymore an estimation of the CFO f 0 .In order to solve this problem, we propose to use function L I ( f ), which is the same as L R ( f ) but calculated from the imaginary parts of the received samples: The main idea of the proposed estimation method is to combine L R ( f ) and L I ( f ).For CFO estimation, we propose to use The rationale behind the use of the above cost function is described as follows.In the absence of noise, when f = f 0 , and since the u k 's are assumed even and the b(k)'s are realvalued, we have that Hence, since θ 0 is unknown and L R ( f 0 ) may be zero when θ 0 = π/2, estimating the CFO using L R ( f ) alone may fail.
Choosing the cost function in (28) overcomes this problem since L R and L I cannot be both zero, regardless of θ 0 .Further, in the presence of noise, considering both L R and L I reduces the effects of noise.Thus, the proposed estimate of the CFO of the system is given by Note that the shape of function L( f ) is similar to the one of L R ( f ) plotted in Figure 4. Once again, the optimization problem that we have cannot be solved by a Gradient descent method.We simply propose here to optimize function L( f ) using the Simulated Annealing algorithm.

A Reduced Complexity CFO Estimation Algorithm.
We will see in the Simulation Section that the proposed algorithms of CFO estimation provide very good results.However, their main disadvantage is in the optimization part.In order to reduce the complexity of the proposed methods, our goal is now to decrease the computation time of the optimization algorithm.Therefore, before applying the proposed CFO estimation technique, we propose to run first of all an existing algorithm that estimates the frequency offset by [10] in the case of a BPSK modulation.Note that N designates the number of samples used to estimate the frequency offset and D is a coefficient to be set.In the remaining of this paper, we consider that N = n c , where n c is the length of a codeword, and we choose D to be equal to 1.The output frequency f est obtained by (31) serves as the first input frequency for the optimization algorithm (the Simulated Annealing, e.g.) used in the proposed frequency offset estimation technique.Moreover, as the number of iterations of the optimization algorithm increases with the size of the search interval of f 0 , we propose to reduce this search interval from [−0.1/T s , 0.
where σ 2 est is the theoretical variance of the frequency offset estimation of the existing algorithm.In [24], the authors compute an approximate expression of σ 2 est by assuming the frequency offset to be null.Their expression is also valid for small values of f 0 T s .In this paper, we derive a new expression of σ 2 est without making the assumption of a null frequency offset.For large values of N, we show that (see Appendix C) where σ 2 e is the variance of each part of the complex additive white Gaussian noise.
The CFO estimation algorithms presented above are applied in the BPSK modulation case.However, one can apply the same procedure presented in Section 2.3 and adapt it so that it can be used to estimate the CFO for higher-order modulations.

Simulation Results
We present in this section our simulated results to analyze the performance of the proposed blind phase offset and CFO estimation techniques when applied to LDPC codes.The plotted curves were obtained by Monte Carlo simulations.

Phase Offset Estimation.
We consider first of all the problem of estimating the phase offset of the channel when no CFO is present in the system.In order to evaluate the effectiveness of the proposed technique, we compared it to three different techniques of blind phase offset estimation.The first one is the HDD generally used as a reference for many phase recovery algorithms [3].The HDD algorithm estimates the phase offset of the channel by where { d(k)} k=1,...,N are the hard decision estimations for N transmitted symbols obtained from the received samples {r(k)} k=1,...,N .( * ) designates the conjugate of a complex number.The second algorithm to which the proposed method was compared is a classical phase offset estimation algorithm that was presented in [25] for MPSK modulations and in [26] for other types of modulations.This algorithm estimates the phase offset of the channel by For a MPSK modulation, the variable P in the above equation is equal to M. As for QAM modulations, it was shown in [26] that the optimal phase estimator is obtained by setting P = 4. Without loss of generality, we assume that which corresponds to a constellation with an average energy equal to unity.For both algorithms described in ( 33) and (34), we chose N = n c in our simulations.
The proposed method was also compared to a technique that was recently proposed in [27].Using ( 11) and ( 12), this technique estimates the phase offset of the channel by Let us consider first of all a system using a BPSK modulation.
Figure 5 shows the MSE curves versus E b /N 0 once the proposed and existing phase offset estimation techniques are applied to a system that is using an LDPC code of length n c = 512 bits, rate R = 0.5 and having u k = 4 nonzero elements in each row of its parity check matrix.For the Gradient descent algorithm, we chose a step i = 1/30i and we fixed the number of iterations to 50.Note that we could also compute an optimal step and decrease the number of required iterations.It is clearly seen from Figure 5 that the phase offset estimation algorithm proposed in this paper is the most powerful algorithm among all the studied techniques.An MSE of around 4.10 −3 is reached at an E b /N 0 equal to 3 dB.In order to evaluate the robustness of the proposed phase offset estimation technique, we plotted in Figure 6 the Bit Error Rate (BER) curves obtained by decoding the previous LDPC code using the Belief Propagation (BP) decoder, which was applied after achieving the estimation procedure.Eight iterations of the BP algorithm were realized and the tested LDPC code was the same as the one previously used.From Figure 6, it is clear that applying the classical algorithm of (34) yields a big degradation in the BP performance.However, when we apply the proposed phase estimation technique, we obtain a curve that is very close to the one of the coherent detection case.For a BER equal to 10 −3 , the gap between the two curves is lower than 0.2 dB.
Let us now analyze the performance of the blind phase estimation technique proposed in Section 2.3 of this paper for higher-order modulations.For this, we consider a system using a 16-QAM and the same LDPC code previously used.In the QAM case, the classical estimation algorithm of (34) becomes where r(k) in this case are the received QAM-modulated symbols.The MSE curves obtained after synchronization are plotted in Figure 7. Once again, it is seen that the proposed technique presents very good performance.For only 100 iterations of the Simulated Annealing algorithm, an MSE of around 5•10 −3 is obtained at a E b /N 0 equal to 4 dB.Note also that for the QAM case, the classical algorithm of (37) gives an estimation of the phase with an ambiguity of π/2.However, as shown in Figure 3, the proposed technique calculates an exact estimation of the phase, without any ambiguity.Algorithm of (A.2) Figure 7: MSE of the phase offset estimation for a 16-QAM.

Carrier Frequency Offset Estimation.
We consider now the problem of CFO estimation when an unknown phase offset is present in the system.For each run of Monte Carlo simulations, a CFO between −0.1/T s and 0.1/T s and a phase offset between −π/2 and π/2 were randomly chosen.Figure 8 shows the Mean Squared Error (MSE) curves of the proposed and existing methods when applied to an LDPC code of length n c = 512 bits, rate R = 0.5 and having u k = 4 nonzero elements in each row of its parity check matrix.It is clear that when we increase the number of iterations of the Simulated Annealing (SA) algorithm, the performance of the proposed frequency estimation technique is improved.Moreover, applying an exhaustive search to find the minimum of (28) instead of using a Simulated Annealing gives very good results.The proposed method clearly outperforms the classical one summarized by (31).An MSE of around 5•10 −8 is reached for an E b /N 0 equal to only 2.5 dB.
In order to reduce the number of iterations of the Simulated Annealing algorithm, we initialized the frequency input by the one estimated with the classical algorithm, as described in Section 2.1 of this paper.The corresponding curve is also plotted in Figure 8.As we can see, initializing the input frequency to f est and reducing the search interval as proposed (algorithm denoted by "class + prop." in Figure 8), yields better results for a fixed number of iterations.For only 700 iterations of the Simulated Annealing, we can now reach an MSE of 7 • 10 −8 for an E b /N 0 equal to 3 dB.
We also plotted in Figure 8 the performance of the NLLS algorithm, which estimates the CFO of the system by maximizing the periodogram of r(k) P as follows [11]: It is clear that for a BPSK modulation, the NLLS algorithm is very effective and it outperforms the proposed estimation technique.However, this is not the case for higher-order modulations.We plotted in Figure 9 the MSE curves of CFO estimation for a system using a 16-QAM.As we can see in this figure, the proposed technique is more robust than the NLLS for higher-order modulations.Note also that the proposed algorithm uses only one codeword (512 bits) to estimate the CFO while for the NLLS, N = 256 samples (1024 bits) were not enough to achieve the estimation.
After having estimated the CFO using the method proposed in Section 2.1, we correct the rotation of the received samples then apply the proposed algorithm of phase offset estimation introduced in Section 3.2.The corresponding MSE curve is plotted in Figure 10 where we also plotted the MSE curves of (33), (34) and (36).From this figure, we can observe the huge gap that exists between the performance of the proposed method and the existing algorithms.Hence, even in a presence of a CFO, the proposed technique of phase offset estimation is very powerful.

Complexity Study.
We computed the complexity of each estimation technique presented in this paper and the results are shown in Table 1.As we can see, the synchronization algorithms that we proposed have a computational complexity that varies in O(n r u k n iter ), where n r denotes the number of rows in the parity check matrix of the code, u k is the number of nonzero elements in the kth row of the parity check matrix and n iter is the number of iterations of the optimization algorithm used during the estimation procedure.
The HDD algorithm, the phase estimation technique of (34) and the classical CFO estimation technique of (31) present each a computational complexity dominated by O(N), where N is the number of samples used for the estimation.On the other hand, the algorithm summarized by (36) has a complexity that varies in O(n r u k ) while the complexity of the NLLS algorithm is dominated by O(Nn iter ).Let us take the example of phase offset estimation and discuss the results and parameters of Figure 5.In this figure, the MSE curves of the HDD and the algorithm of (34) were obtained for N = n c = 512 samples (one received codeword).We considered an LDPC code having a length n c = 512 bits, n r = 256 and u k = 4.As for the Gradient descent algorithm used in the proposed estimation technique, n iter = 50 were enough to have an effective estimation of the phase offset.Although the proposed technique has a computational complexity that is greater than the other algorithms, its performance is considerably better.At E b /N 0 = 4 dB, the MSE obtained by the algorithm of (34) was equal to 8 • 10 −2 while we reached an MSE less than 3•10 −3 with the proposed algorithm.Note that, in order to have such an MSE with the algorithm of (34), 150 codewords are needed, which means N = 150 × 512 = 76800 bits, while the proposed technique is able to have an effective estimate of the phase offset with only one codeword.In order to evaluate the complexity of the proposed and existing algorithms, we measured the time taken by both algorithms to estimate the phase.Indeed, as we do not optimize or parallelize our programs, the simulation time is directly correlated to the complexity.For an MSE equal to 3 • 10 −3 we found that the algorithm of (34) takes 4.13 milliseconds to estimate the phase (using the 150 codewords), while the proposed algorithm needs 72.7 milliseconds to make the estimation using one codeword.As we can see for this example, the complexity of the proposed technique is 18 times larger than the one of the existing algorithm.However, in order to achieve the same precision, our technique needs an observation window that is 150 times smaller than the classical approach.Note also that during the transmission, the phase (and/or CFO) may varry from a codeword to another.Therefore, we are usually interested in achieving synchronization using the smallest possible number of received codewords.

Conclusion
We have proposed in this paper blind phase and carrier frequency estimation methods based on the minimization of functions of the LLR of the syndrome.The estimation techniques have been first proposed for a BPSK modulation then generalized for higher-order modulations.When applied to codes having a sparse parity check matrix such as LDPC codes, simulated results have shown that the proposed phase offset estimation techniques clearly outperforms many existing methods of phase estimation.The BER curves obtained after synchronization and decoding are almost the same as those obtained in the coherent detection case.For the frequency offset estimation, we have proposed to use another LLR function computed from the same components as the ones used for the phase estimation problem, and the results were also very satisfactory.

A. Calculation of the Partial Derivative of J e ( θ)
In order to find we have to compute the partial derivative of L Re ( θ) and L Ie ( θ).According to (17) and by using K = 1 codeword to estimate the means of the LLRs, we have where W denotes uk i=1,i / = j tanh(R((r(k j )/σ 2 )e − j θ )), and we have that: Equation (A.4) cannot be calculated due to the number of unknown variables involved in it.However, this equation can be approximated by The above approximation becomes exact in the absence of noise.Substituting (A.3) and (A.5) into (A.2),we obtain: where Q denotes (−R(r(k j )) sin( θ) + I(r(k j )) cos( θ))/ σ 2 (cosh(R((r(k j )/σ 2 )e − j θ ))) 2 .A similar procedure is done to compute the derivative of L Ie ( θ).Hence (A.1) is equal to where L denotes (−I(r(k j )) sin( θ) + R(r(k j )) cos( θ))/ σ 2 (cosh(I((r(k j )/σ 2 )e − j θ ))) 2 .For a system using a BPSK modulation and by assuming that u k is constant and even, (24)  Remember that we are still in the case of a BPSK modulation.Considering now a noise-free transmission channel, (B.5) becomes:

B. Proof That Function
Hence, in a noise-free channel, function L R ( f ) is bounded below by −n r and it reaches this minimum value for f = f 0 .We recall that n r is the number of rows in the parity check matrix H of the code.Note that in the case of a noisy channel, function L R ( f ) remains minimum at f = f 0 but its value depends on the level of the noise in the channel.

C. Calculation of the Theoretical Expression of the Variance σ 2 est
The received symbol of ( 1) is statistically equivalent to r(k) For the existing frequency offset estimation method, we introduce the two variables: According to [28], the variance of the frequency offset is approximately equal to

Figure 4 :
Figure 4: L R ( f ) versus the frequency offset estimation error ( f T s − f 0 T s ).

Figure 5 :Figure 6 :
Figure 5: MSE of the phase offset estimation when no CFO is present in the system-BPSK modulation.

=
L R ( f ) Is Minimum for f = f 0In order to justify the choice of the estimation criterion in(25), let us compute the minimum value of L R ( f ).First of all, notice that the received sample of (22) is statistically equivalent (s.e) to r(k) s.e = (b(k) + w(k))e j2πk f0Ts .(b(k) + w(k))e j(2πk( f0− f )Ts) .(B.2)

(B. 4 )
where P denotes cos(2πk j ( f 0 − f )T s ) − w 2 (k j ) sin (2πk j ( f 0 − f )T s ), and w 1 (k) and w 2 (k) represent the real and imaginary components of the noise w(k), respectively.Notice now thatE j + w 1 k j cos 2πk j f 0 − f T s − w 2 k j sin 2πk j f 0 − f T s .min j=1,...,uk b k j + w 1 k j cos 2πk j f 0 − f T s − w 2 k j sin 2πk j f 0 − f T s ⎤ ⎦ ≤ E min j=1,...,uk b k j + w 1 k j cos 2πk j f 0 − f T s − w 2 k j sin 2πk j f 0 − f T s ≤ E min j=1,...,uk b k j + w 1 k j + w 2 k j sin 2πk j f 0 − f T s .By substituting (B.4) in (B.3), we obtain:L R f ≥ −n r E min j=1,...,uk b k j + w 1 k j + w 2 k j sin 2πk j f 0 − f T s .(B.5)A necessary condition for L R ( f ) to reach its minimum is f = f 0 .This condition becomes sufficient when w 1 (k) does not change the sign of b(k).

Table 1 :
Complexity in terms of number of multiplications for different algorithms presented in this paper.
e is the variance of each part of the complex additive white Gaussian noise.For large values of N, (C.7) is approximately equal to