Chap 3 Frame Synchronization Techniques 28
3.4 Proposed Frame Synchronization Techniques
3.4.1 Local Search Algorithm…
Consider the GS algorithm in 3.3.3, the accuracy of the GS algorithm heavily depends on the initial estimate, the reason is shown in 3.3.1. Assume that the estimate θm is incorrect but close the correct sample point. If we select the new sample point θm′ , which is different from θm , in [θm − R + ]θm R , where the variable R is an integer depending on the search range we want, then the probability that the correct sample point is selected will higher than that in GS algorithm.
Besides, Wm(θ will not tend to be a large value when the correct sample point is m) selected. Consequently, it takes a shorter time for the incorrect estimate to be replaced by the correct sample point than that in GS algorithm. This local search (LS) algorithm is given below in detail. Note that only the Step 1 of the LS algorithm is different from the GS algorithm.
Algorithm: Local Search (LS) Algorithm
Step 0. Select a starting point θ0∈Θ. Let W0(θ0)=1 and W0( )θ =0 for all θ0∈Θ, θ θ≠ 0. Let m=0 and θm* =θ0. Go to Step 1.
Step 1. Given the value of θ , generate a uniform random variable m θm′ independently of the past in [θm − R + ]θm R , where R is an integer, so that
for all θm′ ∈[θm−R + ], θm R θ θ≠ m, we have θm′ =θ with probability 1/ 2R.
As mentioned in 3.3.3, the GS algorithm, compared with the PP algorithm, saves up a lot of computation cost. Moreover, the accuracy of the GS algorithm heavily depends on the initial estimate. If the initial estimate is incorrect, then it is likely to take a long time to achieve accurate synchronization. This can be seen as follows.
Assume that the initial estimate θ0 is incorrect. Since a new sample point is selected randomly in each iteration, the probability that the correct sample point is selected is 1/(L+ −N 1), which implies the expected number of iterations to select the correct sample point is L+ −N 1. Besides, Wm(θ tends to be a large value when m) the correct sample point is selected. Consequently, it takes a long time for the incorrect estimate to be replaced by the correct sample point. This phenomenon may make the algorithm become unacceptable for time varying channels. In this subsection, we present a modified global search (MGS) algorithm that yields better performance than the PP algorithm and requires only slightly more computational cost.
The basic idea of MGS algorithm is to maintain a few good candidates, in addition to the current best estimate. A candidate becomes the best estimate if and
only if its correlation function is greater than or equal to that of the current best estimate at least K times in L windows. If more than one candidate satisfies the condition in the same iteration, then the one that has the largest correlation function in the current window becomes the best estimate. Let S denote the number of candidates maintained in the algorithm. To implement the K out of L algorithm, a register of L bits is associated to each maintained candidate. In addition to the current best estimate and the S maintained candidates, P other sample points are randomly selected at the beginning of each iteration. The correlation functions are evaluated and compared only for the randomly picked sample points, the current best estimate, and the maintained candidates. The steps for each iteration are described below.
Algorithm: Modified Global Search (MGS) Algorithm
Step 0. Select P sample points that are different from the current best estimate and the S maintained candidates. Go to Step 1.
Step 1. Evaluate the correlation functions for the current best estimate, maintained candidates, and the randomly picked sample points. Go to Step 2.
Step 2. Sort the correlation functions for the S maintained candidates and the P randomly picked sample points. Discard the P sample points with the P smallest correlation functions. Assume that R of the original S candidates are discarded. As a result, R of the P randomly picked sample points become new candidates. Reset and re-associate the registers that were associated to the discarded candidates to the new candidates. Go to Step 3.
Step 3. For each candidate, compare its correlation function with that of the current best estimate. Shift the associated register to the left by one bit. The bit inserted from the right is 1 if the correlation function of the candidate is larger than that of the current best estimate; otherwise, it is 0. Go to Step 4.
Step 4. Examine the shift register for each candidate. If there are K 1’s, then the candidate becomes the new current best estimate and the original best estimate becomes a candidate. If there is more than one candidate satisfying the condition to become the best estimate, then the one with the largest correlation function wins the competition. Reset all shift registers associated to the candidates if a new best estimate is generated. Go to Step 0.
Note that in MGS algorithm, no counters are needed to store the number of visits to each sample point. Instead, the algorithm needs S+1 registers to record the current best estimate and the maintained candidates as well as S L-bit shift registers. The number of complex multiplications required in each iteration is given by (P+ +S 1)L, assuming that the evaluated sample points are separated so that each one requires L complex multiplications. For iteration 0, one evaluates correlation functions for all the L+N sample points, chooses S+1 sample points with the largest S+1 correlation values, and sets the point that has the largest value to be the current best estimate and the others the candidates. It is clear that, after synchronization is lost, fast re-synchronization is possible because the exact synchronized point is a candidate with great probability. In the next chapter, we perform simulations for various values of P, S, K and L. Note that K = L means a candidate becomes the best estimate if and only if its correlation function is greater than that of the best estimate for consecutively K (or L) times. For this simple realization, the shift register becomes either a flag or a two-bit counter and therefore, hardware cost is very low.
The percentage reduction of computational cost EMGS of the MGS algorithm, compared to the PP algorithm, can be given as,
( ) ( 1) 1 ( )
Simulations and Performance Evaluation
This chapter is organized as follows. The fading channel model is described in Section 4.1. In Section 4.2, simulation results for several CP-based frame synchronization algorithms mentioned in Chapter 3 are given, and the performance of our proposed modified techniques will be compared with other CP-based algorithms presented before.
4.1 Description of Simulation Model
In wireless communications, the fading channel can be classified as either frequency-nonselective or frequency-selective. In frequency-nonselective fading channels, the transmission path without line-of-sight (LOS) introduces an uncorrelated Rayleigh fading distortion to the corresponding transmitted signal for the worst case.
The uncorrelated Rayleigh fading distortion is often modeled as a complex Gaussian fading process,
where σ is the average power of the faded carrier, and 2f f denotes the maximum d
Doppler shift of the fading signal caused by the mobile motion. In general, the normalized maximum Doppler shift f T is used as the measure for the fading rate of d the channel variation. The envelope and phase of the fading process possess Rayleigh distribution and uniform distribution, respectively. The autocorrelation function of the fading process can be calculated as
( ) 0(2 ) (5.3)
f f d
R τ =σ gJ π τf
Jakes’ Rayleigh fading channel model is often used to generate the fading signal in computer simulation for the frequency-nonselective fading channel.
In frequency-selective fading channel, the delay spread problem, which introduces ISI in the received signal, is caused by the channel dispersion. A P-ray multipath Rayleigh fading channel with P uncorrelated Rayleigh fading signals can be used to express the delay spread of the signal propagation paths. 
4.1.1 Rayleigh Fading Channel Model
In the Rayleigh fading channel without the LOS signal, the angle of the arrival signal in the horizontal plane is assumed to be uniformly distributed in the interval
[0, 2 )π . Jakes  modeled the Rayleigh fading channel by a bank of the oscillators
with frequencies equal to the maximum Doppler frequency f and its fractions. d The baseband simulator of Jakes’ channel model is illustrated in Figure 4.1. It contains N , which is must be large enough to satisfy the central limit theorem, 0 low-frequency oscillators with the frequencies equal to the Doppler shifts
cos(2 / )
wd πn N , for n=1,K,N0, plus one with the maximum Doppler frequency
d 2 d
w = π f . The amplitudes of all the components are equal to unity except that the one with maximum Doppler frequency is set to 1/ 2 . The phases α and β are n
chosen appropriately so that the pdf of the resultant phase will be very close to a
The Jakes’ deterministic fading model is an established method for simulating time-correlated Rayleigh fading waveforms. For simulation of frequency selective and diversity combined fading channels, the modified Jakes’ Model presented in 
can produce multiple uncorrelated fading waveforms. There are two modified models in  and we adopt the model II and the simulator is shown in Figure 4.2.
This model uses the same set of oscillators as suggested by Jakes but with adjusted initial phase shifts, β and n αj, the in-phase and quadrature components of jth path
Figure 4.1 Jakes’ Rayleigh fading channel model.
Figure 4.2 Modified Jakes’ Rayleigh fading channel model (the jth path).
In the following simulations, we use the Modified Jakes’ Rayleigh fading channel model with the following settings: maximum Doppler frequency wd =2π×100Hz, the number of oscillators N = 16, sample size = 1,000,000, sampling period T = 100 -5 sec. Then the normalized maximum Doppler shift f T =0.001, can be regard as d slow fading. Figure 4.3 shows an example of the envelope of our simulated output waveform within 0.1 second (10000 samples). The pdf and autocorrelation function of output waveforms are given in Figure 4.4 and Figure 4.5 for verification.
Figure 4.3 An example of the simulated output waveform envelope within 0.1 sec.
Carrier oscillator Offset oscillators
4.1.2 Multipath Channel Model
In P-ray multipath Rayleigh fading channel, there are one main path and P-1 delayed-paths in the propagation paths. We assume that the transmission signal is s(t), and then we have the received signal
Figure 4.4 Envelope, in-phase component and quadrature component pdfs of modified Jakes’ Rayleigh fading channel model output waveforms
Envelope (Rayleigh distribution)
Real Part (Gaussian distribution)
Imaginary Part (Gaussian distribution)
Theory () Simulated
Figure 4.5 Autocorrelation function of modified Jakes’ Rayleigh fading channel model output waveforms.
x = wd t
1 the propagation delay of the pth propagation path, respectively. The path with p = 0 is the main path, and the other paths with p > 0 are the delayed paths. In computer simulations, the f tp( ), uncorrelated with the fading signals of other propagation paths, is generated by the aforementioned Rayleigh fading model independently. A wireless channel model with frequency selective fading in AWGN is employed in the following simulations. The unfaded finite impulse response (FIR) channel model consisting of three paths is given as,
3 impulse response of a wireless channel in a warehouse-type indoor environment .
Each of the paths is multiplied by an independent Rayleigh fading function modeled in 4.1.1. The time domain delay profile and the corresponding frequency domain channel transfer function for 512 subcarriers are shown in Figure 4.6.
Figure 4.6 Time-dispersive wireless channel model for simulation. (a) unfaded impulse response. (b) unfaded frequency domain transfer function.
4.1.3 Simulation Platform and Parameters
A simplified OFDM system platform for simulations of frame synchronization techniques is shown in Figure 4.7. In a transmitter, data symbols are converted into parallel and fed to each port of IFFT. After adding the CP, the resultant OFDM signals are converted into serial and transmitted. In a receiver, the received OFDM signal is distorted into parallel and fed to FFT. The received signal is distorted by delayed signals due to multipath fading channel effect and AWGN. To demodulate the OFDM signal correctly, FFT should be started at the timing where the signal is not disturbed by the preceding symbol; the ideal timing is the end of GI.
Figure 4.7 Simplified OFDM system platform for simulation.
The number of subcarriers / FFT(IFFT) size 512
Guard interval (CP length) 64 samples
The number of total transmitted frame 50000 frames
Modulation scheme QPSK-OFDM
Delay profile of multipath fading channel As shown in Figure 4.6(a) Rayleigh fading channel model Modified Jakes’ model
Table 4.1 Common simulation parameters.
Table 4.1 shows the common parameters used in the following simulations.
Note that the settings of Modified Jake’s Rayleigh fading channel model are the same as we mentioned in Section 4.1.1. In the following Section 4.2, MATLAB simulations are performed to illustrate the synchronization accuracy of the proposed technique in terms of mean square error (MSE) of the frame timing and the histograms of frame timing estimation errors, the performance and complexity of the proposed algorithms are compared with other CP-based frame synchronization algorithms.
4.2 Simulation Results
Part I: The Correlation Functions G(n) and Gc
Figure 4.8 shows the correlation function G(n) defined in (3.13), which is used for PP / APP / GS algorithms. Figure 4.9 shows the complex-quantized correlation function Gc(n) defined in (3.25), which is used for CQ / ACQ algorithms. In these two figures, correlation functions for 5 consecutive OFDM symbols at different average channel SNR are plotted.
We can see that the correlation peak value occurs at each frame boundary, and we can use this property to estimate the frame timing. Note that the correlation peak may not occur at the frame boundaries when the channel is severely faded or the average channel SNR is low, this will cause the frame timing estimation error if we just pick the peaking timing of each frame (PP algorithm). Thus there are several algorithms presented to improve the accuracy of frame timing estimation, as described in Chapter 3. These algorithms are simulated and the results will be shown in the following parts of this section.
Figure 4.8 Simulated magnitude of G(n) for 5 consecutive OFDM symbols at average channel SNR = 0, 5, 10, 15 and 20 dB.
Figure 4.9 Simulated magnitude of Gc(n) for 5 consecutive OFDM symbols at average channel SNR = 0, 5, 10, 15 and 20 dB.
Part II: PP / APP / CQ / ACQ Algorithms
Figure 4.10 shows the MSE of the frame timing against the average channel SNR for PP algorithm and APP algorithm using M = 8, M = 16, M = 32, M = 64, M = 128 and M = 256, where M is the averaging window length defined in (3.16). Note that the PP algorithm can be considered as the APP algorithm with M = 1. We can see that the APP algorithm performs better than the PP algorithm in terms of frame timing accuracy.
Figure 4.11 shows the histograms of the frame timing estimation errors for PP algorithm and APP algorithm at SNR = 0 and SNR = 10. At high SNR, M = 8 yields roughly the same performance as other values of M. When SNR is low, the pdf of frame timing errors is more concentrated toward 0 as M increases.
Figure 4.10 MSE of frame timing error against the average channel SNR for PP algorithm and APP algorithm using M = 8, 16, 32, 64, 128 and 256.
Figure 4.11 Histograms of the frame timing error for PP algorithm and APP algorithm at (a) SNR = 0 and (b) SNR = 10.
SNR = 0 dB
SNR = 10 dB
Figure 4.12 shows the MSE of the frame timing against the average channel SNR for CQ algorithm and ACQ algorithm using M = 8, M = 16, M = 32, M = 64, M = 128 and M = 256, where M is the averaging window length defined in (3.26). Note that the CQ algorithm can be considered as the ACQ algorithm with M = 1. We can see that the complex-quantized correlation function also has the ability to find the frame timing. By using averaging method, the ACQ algorithm performs better than the CQ algorithm.
Figure 4.12 MSE of frame timing error against the average channel SNR for CQ and ACQ algorithm using M = 8, 16, 32, 64, 128 and 256.
Figure 4.13 shows the histograms of the frame timing estimation errors for CQ algorithm and ACQ algorithm at SNR = 0 and SNR = 10. At high SNR, M = 8 yields roughly the same performance as other values of M. When SNR is low, the pdf of frame timing errors is more concentrated toward 0 as M increases.
Figure 4.13 Histograms of the frame timing error for CQ algorithm and ACQ algorithm at (a) SNR = 0 and (b) SNR = 10.
SNR = 0 dB
SNR = 10 dB
Now we consider the PP / APP and CQ / ACQ algorithms together. Table 4.2 shows the MSE of the frame timing against the average channel SNR for PP / APP / CQ / ACQ algorithms. Compared with PP algorithm, CQ algorithm performs worse at low SNR but better at high SNR, because the sign bits of the received signal almost immune at high SNR. After averaging, ACQ algorithm's performance is better than APP’s when M = 8, 16, 32 and 64, especially at low SNR. If M is increased to 128 and 256, APP and ACQ performs almost the same, but ACQ has lower computational complexity because only the sign bits of the received signal are computed.
Average channel SNR (dB)
Table 4.2 MSE of the frame timing against the average channel SNR for PP / APP / CQ / ACQ algorithms.
Simulation results about the Smoothing-CQ algorithms (SMA, EWMA and EWA) are not given here, because the performance improvement from CQ to Smoothing-CQ is not remarkable in our simulation environment.
Part III: GS / LS / MGS Algorithms
In this part, we consider the GS algorithm and two proposed algorithms, LS and MGS algorithms, based on GS algorithm. Replacing L (=64) and N (=512) of our simulation settings into (3.33), the percentage reduction of computational cost of the GS algorithm, compared with the PP algorithm, is 77.78 %. The LS algorithm we proposed in Subsection 3.4.1 has almost the same computational complexity as GS algorithm, except the extra calculation for local searching range. From (3.34), the computational complexity of another proposed MGS algorithm is 8 ( ) 100%
9 P S
− + × ,
which depends on the values of S, the number of candidate points, and P, the number of randomly-chosen points. Simulation results for GS / LS / MGS algorithms are shown as follows.
Figure 4.14 shows the MSE of the frame timing against the average channel SNR for PP, APP (M = 8) and GS algorithm using iteration period MGS = 64, MGS = 128, and MGS = 256. We can see that although the performance of GS algorithm is much worse than APP algorithm even the M is only 8, it performs slightly better than the PP algorithm and the complexity is much lower than PP and APP algorithms.
The MSE of MGS = 64, 128, and 256 are roughly the same at high SNR, but when SNR is low, the GS estimator with larger MGS performs better than that with lower MGS.
Figure 4.15 shows the histograms of the frame timing estimation errors for PP, APP (M = 8) and GS algorithms at SNR = 0 and SNR = 10. We can see that when SNR is low, if the iteration period MGS is too small, the pdf of the estimated frame timing errors will disperse.
Figure 4.14 MSE of frame timing error against the average channel SNR for PP, APP (M = 8), and GS algorithm using MGS = 64, 128 and 256.
Figure 4.15(a) Histograms of the frame timing error for PP, APP (M = 8), and GS algorithm at SNR = 0.
SNR = 0 dB
Figure 4.15(b) Histograms of the frame timing error for PP, APP (M = 8), and GS algorithm at SNR = 10.
In the simulations about LS algorithm, we choose the searching range parameter R, which is defined in Subsection 3.4.1, as 5 and 10 to observe the estimation performance. Figure 4.16 illustrates the MSE of the frame timing against the average channel SNR for PP, APP (M = 8), GS and LS algorithm using R = 5 and R = 10. Note that the iteration period of GS algorithm, MGS, and LS algorithm, MLS, are all set to be 256. The figure shows that the LS algorithm performs almost the same with APP (M = 8) algorithm and much better than PP algorithm at high SNR, but the performance at low SNR is worse than the GS algorithm. This is because that when SNR is low, if the initial estimate is incorrect, the correct sample point may not within the searching range, thus it may takes a long time (even more than 256 iterations) to track the correct sample point. Figure 4.17 shows the histograms of the frame timing estimation errors for PP, APP (M = 8), GS algorithm and LS algorithm using R
= 5 and 10 at SNR = 0 and 10.
SNR = 10 dB
Figure 4.16 MSE of frame timing error against the average channel SNR for
Figure 4.16 MSE of frame timing error against the average channel SNR for