A Low-Complexity Feed-Forward I/Q Imbalance Compensation Algorithm
A Low-Complexity Feed-Forward I/Q Imbalance Compensation Algorithm
A Low-Complexity Feed-Forward I/Q Imbalance Compensation Algorithm
Compensation Algorithm
Niels A. Moseley and Cornelis H. Slump
University of Twente
Signals and Systems Group
Department of Electrical Engineering
Mathematics and Computer Sciences (EEMCS)
Enschede
The Netherlands
I. Introduction
Direct-conversion receivers [1] employing I/Q processing
have become popular in recent years. Figure I shows a
block diagram of an image-rejection direct-conversion re-
ceiver architecture. In the ideal case, these receivers have
an implementation advantage over superheterodyne [2] [1]
architectures because they do not require image filtering
[3] [1].
The receiver architecture depicted in Fig. I is able to
completely reject the image band when two conditions are
satisfied. First, the local oscillator (LO) must produce sig-
nals with a phase difference of exactly 90◦ degrees. Second,
Fig. 2. RF and baseband spectra in several stages of a low-IF receiver.
the gains and phase responses of the I and Q branches must
be matched.
Unfortunately, the requirements mentioned above are Figure I shows the signal spectra at three stages within
impossible to meet in practice. Mismatches in analog com- the receiver. In ’A’ the RF spectrum at the antenna is
ponents cause an imbalance in the gain and phase responses shown. An unwanted signal is present in the channel ad-
of the branches. Therefore, the image band can no longer jacent to the wanted signal. The receiver is operating in a
be rejected completely. low-IF mode. Therefore the adjacent channel is the image
band of the mixer.
In ’B’ the baseband spectrum after down-mixing is
shown. Due to the I/Q imbalance the image band, i.e.
the unwanted signal, is insufficiently suppressed causing
interference to the wanted signal.
After I/Q imbalance compensation the baseband spec-
trum looks like ’C’. The I/Q imbalance compensator in-
creases the image-rejection ratio of the receiver. Now,
the unwanted signal causes much less interference to the
wanted signal.
In this paper we describe a blind feed-forward I/Q im-
balance compensation algorithm. The benefit of a feed-
forward solution is that it does not have the stability prob-
lems associated with feedback systems [4]. Furthermore,
Fig. 1. A direct-conversion image-reject receiver architecture. the blind nature of the algorithm makes the algorithm suit-
158
able to add onto an already existing receiver design.
The paper is organized as follows. Section II describes
the I/Q imbalance model. In section III the structure of the
compensator is explained. Section IV details the estimation
of the model parameters after which section V discusses im-
plementation aspects. Section VI presents some simulation
results. Finally, section VII offers the conclusions.
|K1 |2 Ps
s(t) = K1 z(t) + K2 z ∗ (t) (1) SIR = (5)
|K2 |2 Pi
where * denotes complex conjugation. And where where Ps is the power in the RF signal band and Pi is the
power in the RF image band. The SIR describes the ratio
1 + ge−jφ between the power of the wanted signal and the power of
K1 = (2)
2 the interference.
1 − gejφ The minimum SIR needed to receive and decode a trans-
K2 = (3)
2 mission correctly depends on the transmission standard.
are the complex baseband weighting coefficients. III. I/Q imbalance compensation
In a perfectly balanced receiver g = 1 and φ = 0◦ . This
Compensation of the I/Q imbalance is performed by the
gives K1 = 1 and K2 = 0. Then, considering (1), s(t) =
digital baseband processor. The compensation scheme is
z(t) which shows that the baseband-equivalent signal at the
shown in Fig. 4. The complex baseband signal s(t) is used
antenna equals the received baseband signal in the digital
to estimate three imbalance parameters θ1 , θ2 and θ3 . In
baseband processor.
the proposed implementation this estimation process uses
Two important performance measures are the signal- a simple block-based approach which is explained further
to-interference ratio (SIR) and the image-rejection ratio in section V. The θ-parameters are used to calculate the
(IRR). The IRR describes the amount of attenuation of coefficients required by the I/Q imbalance compensation
structure.
To find the compensation structure, we start by splitting
(1) into a real and imaginary part. This gives the expres-
sion [5] shown in (6) and (7).
159
where
1
λ= θ1 = −E{sgn(zI ) sQ } (16)
g cos(φ)
θ2 = E{|zI |} (17)
is an amplitude correction factor present in both branches
and w(t) = wI (t) + jwQ (t) is the compensated baseband θ3 = E{|sQ |} = E{|c2 zQ − c1 zI |} (18)
signal.
Note that because the zI and sQ processes are gaussian
The gain factor λ is not taken into account in the com-
distributed, |zI | and |sQ | are chi distributed [6] with one
pensator shown in Fig. 5. In fact, it does not play a role
degree of freedom.
in the I/Q imbalance phenomenon. It is assumed that this
Now we will determine an analytical expression for each
gain factor will be compensated by the channel equalizer
θ-parameter.
at a later point in the receiver.
The compensator shown in Fig. 5 has two coefficients, A. Examining θ1
namely
The expectation operator in (16) is expanded into a dou-
c1 = g sin(φ) (10) ble integral.
and Z ∞Z ∞
c2 = g cos(φ). (11) θ1 = − sQ sgn(zI ) fsQ ,zI (sQ , zI ) dsQ dzI (19)
−∞ −∞
The compensation coefficients c1 and c2 are calculated where fsQ ,zI (sQ , zI ) is the joint probability density func-
from three estimates θ1...3 . The following section explains tion (pdf) of the random processes sQ and zI . The pdf is
the calculation and estimation procedure. a bivariate gaussian distribution [7]. See the Appendix for
a derivation of this joint pdf.
IV. Calculation of the compensator
coefficients
s2Q
2ρsQ zI zI2
In the following sections it is assumed that zI and zQ are 1 σ12
− σ1 σ2 + σ22
gaussian i.i.d random processes with variance σ 2 and zero fsQ ,zI (sQ , zI ) = p exp −
2πσ1 σ2 1 − ρ2 2(1 − ρ2 )
mean.
The determination of the compensator coefficients c1 and (20)
c2 is achieved by first estimating the parameters θ1...3 . where
These parameters are defined as follows
ρ = − sin(φ)
θ1 = −E{sgn(sI ) sQ } (12) σ1 = gσ
θ2 = E{sgn(sI ) sI } (13) σ2 = σ
θ3 = E{sgn(sQ ) sQ } (14) According to [7] the expression in (19) can be written as
(21) where the inner integral has been evaluated.
where sgn(x) is the sign function
Z µ ¶
ρ σσ12 ∞
−i2
−1 x<0 θ1 = − √ sgn(zI )zI exp dzI (21)
σ2 2π −∞ 2σ22
sgn(x) = 0 x=0 (15)
1 x>0 The integral in (21) together with part of the normal-
ization constant forms the equation for E{|zI |}. The ex-
By using (6) and (7) and (10) and (11) the parameters pectation of the absolute value of a zero mean gaussian
can rewritten as distributed process X can be expressed as (22) [7].
r
2
E{|X|} = σx (22)
π
By using (22) we arrive at (23).
σ1 √
θ1 = −ρ σ2 2π
σ
r 2
2
= g σ sin(φ)
π
r
2
= c1 σ (23)
Fig. 5. The I/Q imbalance compensator structure. π
160
B. Examining θ2 and θ3
An expression for θ2 is easily found through direct ap- N
plication of (22). 1 X
θ̂1 = − sgn(sI (n)) sQ (n) (34)
N n=1
N
1 X
θ2 = E{|zI |} (24) θ̂2 = sgn(sI (n)) sI (n) (35)
r N n=1
2
= σ (25) 1 X
N
π θ̂3 = sgn(sQ (n)) sQ (n) (36)
N n=1
The sQ process is related to the processes zI and zQ
through the coefficients c1 and c2 . Thus, the sQ process where N is the number of samples used by each estimator.
is zero mean gaussian distributed. The variance of the sQ
Figure 6 shows a block diagram of an estimator. The
process depends on the variances of the zI and zQ processes
sgn(.) operator extracts the sign-bit of the in1 input. The
as well as the covariance of zI and zQ .
resulting signal is 1 bit wide. A multiplier changes the sign
of the in2 signal depending on the output of the sgn(.)
operator. The result is accumulated in a unit delay shown
var(sQ ) = var(c2 zQ − c1 zI ) (26)
as z −1 by an adder.
= c22 var(zQ ) + c21 var(zI ) + 2 c2 c1 cov(zQ , zI ) In a VLSI realization the multiplier and adder are com-
= c22 var(zQ ) + c21 var(zI ) bined into a single adder/substractor where the sign bit
2 2 of the in1 signal instructs the adder/subtractor to add or
=g σ (27)
subtract the in2 signal. This implementation avoids the
direct implementation of a high-speed multiplier.
Using (27) with (28) gives (29).
After N accumulations, the content of the unit delay is
passed to the output. The unit delay is reset and the cycle
restarts. In effect, a new output is available from the es-
θ3 = E{|sQ |} (28)
r timator every N samples. This data-rate reduction means
2 var(sQ ) that the relatively complex calculations required to obtain
= the compensation coefficients c1 and c2 do not play a signif-
π
r icant role in the algorithm’s computational requirements.
2
=gσ (29) Figure 7 shows a block diagram of the algorithm’s im-
π
plementation. It uses three estimators from Fig 6. Each
C. Calculating the c-coefficients estimator is followed by a lowpass filter to smooth its out-
put. The smoothed outputs are used to calculate estimates
The compensator coefficients c1 and c2 are obtained from for c1 and c2 using (30), (31).
the θ-parameters using (30) and (31). Changing the cutoff frequency of the smoothing filter al-
lows a trade-off between convergence speed of the algorithm
θ1 and estimation accuracy.
c1 = (30)
θ
s2 VI. Simulation and Results
θ32 − θ12
c2 = (31) In this section, we evaluate the performance of the pro-
θ22
posed algorithm and its implementation using MATLAB
simulations by determining the signal-to-interference ratio
It is also possible to obtain the parameters g and φ from before and after I/Q imbalance compensation. The SIR
the θ-parameters by means of (32) and (33) respectively. before I/Q imbalance compensation is calculated by (5).
The SIR after I/Q imbalance compensation is determined
θ3 through (37).
g= (32)
θ2
θ1
φ = arcsin( ) (33)
θ3
161
µ ¶
|M1∗ K1 − M2 K2∗ |2 Ps 10
SIRpost = (37)
|M1∗ K2 − M2 K1∗ |2 Pi
0
where
−10
Magnitude [dB]
1³ ´
M1 = 1 + ĝ e−j φ̂ (38)
2 −20
1³ ´
M2 = 1 − ĝ ej φ̂ . (39)
2 −30
VII. Conclusions
We have presented a blind adaptive feed-forward I/Q
imbalance compensation algorithm that uses 1-bit quanti-
zation to avoid high-speed multipliers. The operating prin-
ciple was explained by mathematical analysis of the three
θ-parameters and the coefficients c1 and c2 .
The convergence speed and accuracy of the algorithm
are configurable by setting the cutoff frequency of the post-
Fig. 7. Block diagram of the I/Q imbalance algorithm implementa- estimator smoothing filters. Although the estimator block
tion. length N has negligible effect on the accuracy of the al-
162
gorithm it is a useful parameter because it directly sets References
the rate at which the baseband processor must update the [1] T.H. Meng W. Namgoong. Direct-conversion RF receiver design.
smoothing filters and the compensator coefficients. There- IEEE Transaction on Communications, 49(3):518–529, March
2001.
fore, it allows a trade-off between convergence speed and [2] A. Abidi. Direct-conversion radio transceivers for digital commu-
computational load. nications. IEEE J. Solid-State Circuits, 30:1399–1410, December
The algorithm’s performance was evaluated using 1995.
[3] B. Razavi. RF microelectronics. Prentice Hall, 1998.
MATLAB simulations. The simulations show that the algo- [4] B. Friedland. Advanced Control System Design. Prentice Hall,
rithm is capable of attaining an image-rejection ratio of up 1996.
to 65 [dB] under different I/Q imbalance conditions. Even [5] V. Koivunen M. Valkama, M. Renfors. Advanced methods for
I/Q imbalance compensation in communication receivers. IEEE
when the phase imbalance is 40◦ the IIR after imbalance Transactions on Signal Processing, 49(10):2335–2344, October
compensation is still above 50 [dB]. 2001.
[6] B. Peacock M. Evans, N. Hastings. Statistical Distributions.
Appendix Wiley-Interscience, 3rd. edition, 2000.
[7] A. Papoulis. Probability, Random variables, and Stochastic Pro-
[Joint probability density function derivation] We derive cesses. McGraw-Hill, 3rd edition, 1991.
[8] CENELEC. Characteristics of DAB receivers. EN 50248, 1999.
the joint probability density function fsQ ,sI (sQ , sI ) using
Bayes’ rule.
fsQ ,sI (sQ , sI ) = fsQ ,zI (x, y) = fsQ |zI (sQ , zI ) · fzI (zI ) (41)
The probability density function of zI , fzI (zI ), is simply
the gaussian distribution function
µ 2¶
1 −zI
fzI (zI ) = √ exp . (42)
σ 2π 2σ 2
The conditional pdf fsQ |zI (sQ , zI ) is derived using the
fact that the I-channel value is given and may be inter-
preted as the conditional mean of the sQ process, E{sQ |zI }.
As the sQ process is gaussian distributed, determining the
conditional variance, var{sQ |zI }, is sufficient to describe the
process.
Using (6) and (7), the conditional mean and variance are
µ ¶
1 −(sQ + βzI )2
fsQ |zI (sQ , zI ) = √ exp (45)
ασ 2π 2α2 σ 2
where
α = g cos(φ)
β = g sin(φ)
By multiplying (45) by (42), we arrive at an expression
for the joint pdf
à !
1 s2Q + 2βsQ zI + g 2 zI2
fsQ ,zI (sQ , zI ) = exp −
2πασ 2 2α2 σ 2
(46)
Now, (46) can be rewritten as (20).
Acknowledgment
This work was made possible by the WiCOMM project
which is part of the Dutch Freeband Communication pro-
gram.
163
200 200
150 150
SIR after correction [dB]
50 50
0 0
−50 −50
−100 −50 0 50 100 150 −100 −50 0 50 100 150
SIR before correction [dB] SIR before correction [dB]
Fig. 10. Signal-to-interference ratio after versus before I/Q imbalance compensation. The parameters are g = 1.2 and N = 256.
1.3 1.3
Estimated g
Estimated g
1.2 1.2
1.1 1.1
1 1
0 500 1000 1500 2000 0 500 1000 1500 2000
Time [blocks] Time [blocks]
40 40
Estimated φ [deg]
Estimated φ [deg]
30 30
20 20
10 10
0 0
0 500 1000 1500 2000 0 500 1000 1500 2000
Time [blocks] Time [blocks]
100 100
IRR [dB]
IRR [dB]
50 50
0 0
500 1000 1500 2000 500 1000 1500 2000
Time [blocks] Time [blocks]
Fig. 11. Tracking simulation results. The run starts with g = 1.2 φ = 10◦ . At time t=1000 blocks the I/Q imbalance parameters are changed
to g = 1.1 φ = 40◦ .
164