Referring to Figure 1, the proposed scheme consists of three steps, including forming a cosine estimator for CFO which is free of I/Q mismatch interference, estimating I/Q mismatch using the estimated cosine value, and forming a sine estimator for CFO by removing I/Q mismatch in the received signal using the estimated I/Q mismatch parameters. The CFO is then estimated by combining the sine and cosine estimator. In the process, both CFO and I/Q mismatch are estimated in the presence of minimum interference from each other, introduced by the residual estimation error due to the noise.

### 3.1. Cosine Estimator Free of I/Q Mismatch Interference

Denote the number of samples in each training symbol as , and let . From (6), in I- branch, we have

where the sum and difference formulas of sine and cosine functions are used.

Then can be estimated by

To reduce the noise effect, final estimate needs to be averaged over a number of samples. The general approach is to use a maximal ratio combining (MRC). Denote the number of total samples in the training sequence as . For I-branch, the estimate of based on MRC is given by

The formulation of (12) is similar to [10], where the estimator is derived based on mixed signals from I/Q branches. As an alternative to the MRC approach we propose a lower complexity combiner. For I-branch, the estimator is given by

where for real and . The combiner is similar to an equal gain combiner (EGC), with the function ensuring samples to be combined in a constructive way. This combiner, which will be called as EGC hereafter, only requires one division, plus additions.

The EGC estimator even promises better performance than MRC when the number of training symbols is large and the CFO is small. The reason is that the MRC is the best one only when (1) signal and noise are independent and (2) noise samples are uncorrelated. However, when more than three training symbols are used in averaging, each noise samples could appear several times in combining. These repeated noise samples are scaled by , and in EGC, some of the items have opposite phases and a noise cancellation effect can be achieved when approaches . Thus the total noise can be partially cancelled due to the noise correlation in the EGC estimator when is approaching .

For Q-branch, we can form a similar estimator. By combining I- and Q- branches, the final cosine estimator using EGC is given by(14)

The corresponding CFO estimate is given by

There are two problems with this estimator though it is robust to I/Q mismatch. One is the phase ambiguity problem as the range for in the estimator needs to be limited to . The other is, when is small, the estimation error of increases rapidly even with varying slightly. This is because the gradient of is large in this case. The effect can be observed from Figure 2, where the variances of the estimation errors for and obtained from are plotted against the normalized CFO. The results are obtained by using the general CFO estimation scheme in (14) in an IEEE802.11a system without introducing I/Q mismatch.

To eliminate the phase ambiguity and reduce the estimation error for small , a complementary sine estimator is generally needed. Such a sine estimator free of I/Q mismatch cannot be constructed directly. In [10], a sine estimator is proposed based on special training symbols, which are created by taking the original training sequences and superimposing an artificial CFO to generate point-wise -degree phase rotation. In [15], we introduce an approximated sine estimator, which can work without changing the training symbols for the cosine estimator. However the estimator in [15] sees interference from I/Q mismatch, particularly when the mismatch is large. It is thus natural to consider the approach of forming a sine estimator free of I/Q mismatch after estimating and compensating it.

### 3.2. Estimation of I/Q Mismatch Parameters

As can be seen from Figure 2, when is small, the estimate of is much more robust to noise than . Next we develop an algorithm to estimate the I/Q mismatch parameters based on the estimate of instead of . This approach can estimate mismatch parameters more accurately, particularly when is small.

From (8), the I/Q mismatch can be compensated as

Since I/Q mismatch is generally fixed during one transmission, is a fixed constant, and it will not contribute to the CFO estimation and can be absorbed in channel coefficients for I/Q mismatch compensation. Thus we only need to know to compensate the I/Q mismatch for the moment. The value of can be computed via , which can be estimated from . The formulation of estimating from is shown in the appendix, and the result is given by

where denotes the real part of .

From the estimate , can be computed by finding its phase and magnitude separately. The phase of is obtained by

To find the magnitude of , we use

Solving the equation, we get

Note that we have dropped another solution which is impractically large. Since and in general systems the I/Q mismatch is not very large, we have . Applying Taylor series to (20), the amplitude of can be approximated by

Thus the estimate of can be calculated as

As pointed out in the appendix, the estimation accuracy of becomes low when CFO is small and is approaching zero. This is the common drawback of general I/Q mismatch estimation schemes based on the periodicity of the training sequence. To improve the performance of the proposed schemes, further processing can be applied. For example, a threshold can be set to initiate a frequency domain least square estimator or a joint estimator for I/Q mismatch and channel response [6] when the estimated CFO from is smaller than the threshold. This threshold can be set as according to our simulation results. The detailed discussion is beyond the scope of this paper.

### 3.3. CFO Estimation after I/Q Mismatch Compensation

#### 3.3.1. Autocorrelation-Based CFO Estimation

When I/Q mismatch parameters are known, a general approach is to compensate the signal in time domain, and then apply conventional autocorrelation-based CFO estimation given in [3]. With estimated given in (22), I/Q mismatch can be compensated via (16), generating samples

An autocorrelation-based CFO estimator can then be applied to the compensated samples, generating CFO estimates

The performance of this estimator depends on the accuracy of the estimated I/Q mismatch parameters.

#### 3.3.2. Sine Estimator

The estimator given by (24) depends on the estimation of I/Q mismatch, and estimation error of I/Q mismatch affects both the and parts of the CFO estimate. Alternatively, we can form a complementary sine estimator to exploit the cosine estimator developed in Section 3.1 which is free of I/Q mismatch. With estimated I/Q mismatch parameters, a sine estimator can be formed as follows.

It is easy to verify that

where denotes the imaginary part of . Then can be estimated as

or

Combining them together and incorporating MRC over a group of samples, the final estimate of is given as follows:

Combining and , the CFO is given by

The complexity of this scheme is approximately half of the autocorrelation-based one as only needs to be estimated. Its performance, however, could be better than the latter because of the use of the interference-free cosine estimator.

### 3.4. CFO and I/Q Mismatch Compensation

With all the parameters estimated, CFO and I/Q mismatch can be compensated in time domain by

where we note that the term will be absorbed in the channel coefficients and does not need to be known and compensated here.

### 3.5. Implementation Issues

Although the proposed schemes are divided into three steps, they can be implemented in a parallel manner. Thus very little memory is required in the hardware and the processing delay is very small. As can be seen from (12), (13), (17), (24), and (28), all the sums can be implemented in parallel because the CFO and I/Q imbalance parameters in these equations are fixed and independent of the received signal samples. Parameters can be estimated based on the final sums.

Figure 3 shows the implementation structure of the proposed algorithms. The input signals at the I and Q branches are first passed through register banks to generate the delayed signal and . Then they are added up in the first accumulator bank consisting of 4 accumulators to get the summations required for the cosine estimator. In the meantime, products between , , , , , and are generated by the multipliers. Then these products are summed up in other accumulator banks consisting of 9 accumulators. After all the training symbols are received, during the reception of the guarding intervals of the next OFDM block, estimation and compensation of the CFO and I/Q imbalance can be processed. The cosine estimator provides an estimate of based on the summation. Then the mismatch estimator calculates the term using the estimated and the results of the accumulators. After obtaining , the sine estimator calculates using the estimated mismatch parameters and the outputs of the accumulators. Compensation is then performed using the estimates of CFO and for the following OFDM blocks. When the guarding interval is long enough, in most cases over 16 samples, estimation can be completed within this interval and will not cause delay in processing data symbols.