The function iqcoef2imbal
is
a supporting function for the comm.IQImbalanceCompensator
System object™.
Given a scaling and rotation factor, G, compensator
coefficient, C, and received signal, x,
the compensated signal, y, has the form
In matrix form, this can be rewritten as
where X is a 2-by-1 vector
representing the imbalanced signal [XI, XQ]
and Y is a 2-by-1 vector representing
the compensator output [YI, YQ].
The matrix R is expressed as
For the compensator to perfectly remove the I/Q imbalance, R = K-1 because , where K is a 2-by-2 matrix whose values are determined
by the amplitude and phase imbalance and S is
the ideal signal. Define a matrix M with
the form
Both M and M-1 can
be thought of as scaling and rotation matrices that correspond to
the factor G. Because K = R-1, the product M-1 R K M is the identity matrix, where M-1 R represents the compensator output and K M represents
the I/Q imbalance. The coefficient α is chosen
such that
where L is a constant. From this form, we
can obtain Igain, Qgain, θI,
and θQ. For a given
phase imbalance, ΦImb,
the in-phase and quadrature angles can be expressed as
Hence, cos(θQ)
= sin(θI) and sin(θQ)
= cos(θI) so
that
The I/Q imbalance can be expressed as
Therefore,
The equation can be written as a quadratic equation to solve
for the variable α, that is D1α2 + D2α + D3 =
0, where
When |C| ≤ 1,
the quadratic equation has the following solution:
Otherwise, when |C| >
1, the solution has the following form:
Finally, the amplitude imbalance, AImb,
and the phase imbalance, ΦImb,
are obtained.
Note
If C is real and |C| ≤ 1, the phase imbalance is 0 and the amplitude
imbalance is 20log10((1–C)/(1+C))
If C is real and |C| > 1, the phase imbalance is 180° and the
amplitude imbalance is 20log10((C+1)/(C−1)).
If C is imaginary, AImb =
0.