# An Efficient Carrier Synchronization Scheme for Demodulation Systems
## 3 Proposed Carrier Synchronization Algorithm
### Carrier Frequency Recovery Algorithm  
The data-aided CFO estimation algorithm is implemented based on pilot autocorrelation in the VM system. The commonly used data-aided CFO estimation algorithms are Kay, C&S, M&M, Jiang, Fitz, and L&R. Figure 4 shows the CFO estimation range of different algorithms using 36 pilot symbols. In [3], when the CFO estimation algorithm needs to satisfy the two conditions that the CFO can be tracked and locked to 20% of the symbol rate and the algorithm has high accuracy, only D&M, L&R, Fitz, M&M, and improved M&M algorithms can meet this need, but the complexity of D&M, M&M, and Fitz algorithms is higher compared with the L&R algorithm. Therefore, the L&R algorithm is more suitable for CFR. When \(N=2\), the L&R algorithm can track the locked CFO up to 33.2% of the symbol rate. \(z(k)\) is the de-modulated pilot signal, and the autocorrelation function \(R(m)\) is expressed as:  
\[R(m)=\frac{1}{L-m}\sum\limits_{k=m}^{L-1}z(k)z^{*}(k-m),1\leq m\leq L-1 \tag{4}\]  
where \(L\) represents the number of pilot symbols, \(L=36\). Figure 4: Estimation range of different CFO estimation algorithms. The expression of the L&R algorithm [7] is:  
\[\Delta\hat{f}=\frac{1}{\pi(N+1)T_{s}}\text{arg}\left[\sum_{m=1}^{N}R(m)\right],1 \leq m\leq N \tag{5}\]  
To simplify the complexity of the L&R algorithm implementation and to modularize each function, the RLR algorithm is proposed in this paper, in which the conjugate of \(z(i)\) is redefined as:  
\[z^{**}(i)= \begin{cases}z^{*}(i),&1\leq i\leq L\\ 0,&\text{others}\end{cases}  \tag{6}\]  
\(z^{*}(i)\) is the conjugate of \(z(i)\). Then, \(\sum\limits_{m=1}^{N}R(m)\) can be expressed as:  
\[ \begin{array}{ll}\sum\limits_{m=1}^{N}R(m)&=\sum\limits_{m=1}^{N}\sum \limits_{k=m}^{L-1}\frac{1}{L-m}z(k)z^{*}(k-m)\\ &=\sum\limits_{m=1}^{N}\sum\limits_{i=1}^{L-1}\frac{1}{L-m}z(i)z^{**}(i-m)\\ &=\sum\limits_{i=1}^{L-1}\sum\limits_{m=1}^{N}\frac{1}{L-m}z(i)z^{**}(i-m)\\ \end{array}  \tag{7}\]  
where \(1\leq i\leq L-1\) and \(0<m\leq N\). The \(i\)-th sub-autocorrelation function \(r_{i}(m)\), with \(m-interval\), can be written as:  
\[r_{i}(m)=\frac{1}{L-m}z(i)*z^{**}(i-m) \tag{8}\]  
The sum \(R_{i}(m)\) of different intervals' autocorrelation values of the \(i\)-th demodulated signal in the pilot block can be written as:  
\[R_{i}(m)=\sum\limits_{m=1}^{N}r_{i}(m),0<N\leq L \tag{9}\]  
Then:  
\[\sum\limits_{m=1}^{N}R(m)=\sum\limits_{i=1}^{L-1}R_{i}(m)=\sum\limits_{i=1}^{ L-1}\sum\limits_{m=1}^{N}r_{i}(m) \tag{10}\]  
Figure 5 shows the block diagram of function \(r_{i}(m)\). The \(valid_{m}\) signal can be used to indicate whether the \(m-interval\) sub-autocorrelation function module is in the operation. According to different conditions, the \(valid_{m}\) signal can be flexibly controlled in this algorithm to implement the RLR architecture under different parameters, N, in which \(r_{i}{{}^{\prime}}(m)\) can be defined as:  
\[r_{i}{{}^{\prime}}(m)= \begin{cases}r_{i}(m),&valid=1\\ 0,&valid=0\end{cases}  \tag{11}\]  
Figure 5: Sub-autocorrelation function module. The estimation accuracy of the algorithm can be improved by superimposing consecutive \(L_{0}\) pilot blocks. The frequency estimate value \(\Delta\hat{f}_{L0}\) of the RLR algorithm is:  
\[\Delta\hat{f}_{L0}=\frac{1}{\pi(N+1)T_{s}}\text{arg}\left[\sum\limits_{l=0}^{L_{ 0}-1}\sum\limits_{m=1}^{N}R_{l}(m)\right],1\leq m\leq N \tag{12}\]  
where \(R_{l}(m)\) is the autocorrelation function of the \(l\)-th pilot block. Then:  
\[\sum\limits_{l=0}^{L_{0}-1}\sum\limits_{m=1}^{N}R_{l}(m)=\sum\limits_{l=0}^{L_ {0}-1}\sum\limits_{i=1}^{L-1}R_{l_{i}}(m)=\sum\limits_{l=0}^{L_{0}-1}\sum \limits_{i=1}^{L-1}\sum\limits_{m=1}^{N}r_{l_{i}}(m) \tag{13}\]  
As shown in Figure 6, the structure of the CFO estimation algorithm is mainly composed of Unit1, Unit2, Unit3, Unit4, and Unit5.