discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] More Quadrature Demodulator Shenanigans


From: Joseph DiVerdi
Subject: [Discuss-gnuradio] More Quadrature Demodulator Shenanigans
Date: Mon, 1 Sep 2003 14:23:46 -0600

While working with the Quadrature Demodulator (QD) described in the Gnu Radio 
Wiki (http://comsec.com/wiki) some classic experimental difficulties have been 
encountered and are being addressed. The problem arises where the two 
quadrature channels are not exactly in quadrature and/or their respective 
values of gain are not equal. These issues are "classic" because they have 
existed and been described in scientific literature for at least 29 years (my 
earliest reference). These same issues have also been one of the motivations 
for developing "digital receiver" architectures in recent years.

A particularly clear explanation of the problem and an analytic solution to it 
is described in an article published in the Journal of Magnetic Resonance vol. 
22 pp 265-276 from 1976. I've followed the analysis presented there and am in 
the process of implementing the solution. I will summarize the story here.

The first of two steps is to recognize that if the two channels aren't in 
quadrature then some quantity of one channel (say Q) is present in the other 
channel (say I) and the problem is to determine exactly how much is present and 
to remove it. The second step is to adjust the amplitude of the Q channel to 
match the I channel. Fortunately, it is possible to measure both of these 
effects using a single tone test signal and develop the correction terms for 
later application to real signals. 

Considering a single tone signal (no zero frequency signal nor pairs of signals 
located symmetrically around zero frequency) emerging from a QD. If the two 
channels (I and Q) are truly in quadrature then the signals emerging from them 
are orthogonal, that is, the sum of the product of corresponding time points is 
zero. If there is a quadrature error then this sum will be non-zero. The exact 
measure of this non-ideality can be determined using the test signal and sums 
of products of the I and Q channel signals. Specifically:

   alpha = sum(I*Q) / sum(Q*Q)

then

   I' = alpha * I

The authors show how I' and Q are now truly orthogonal and thereby in 
quadrature.

Next the measure of the amplitude mismatch is given by the ratio of the RMS 
amplitudes of the two channels evaluated individually.

   gamma = sqrt(sum(Q*Q) / sum(I'*I'))

then

   I'' = gamma * I'

And that's it. Provided the detectors are stable with regard to time and 
environmental conditions, the coefficients alpha and gamma can be evaluated 
once and applied many times using the relationship:

   I'' = gamma * (I - alpha * Q)

Interestingly and because of the linearity of the Fourier Transform, this 
correction can be applied either in the time domain *or* equivalently in the 
frequency domain.

In a one-off analysis of my QD, I pushed a 5kHz off-carrier signal at 20% of 
full amplitude into the QD and captured the sound card outputs for a few 
seconds. Processing the data showed a so-called quadrature image at -5kHz and 
about 41dB down from the real signal. Not too bad for no adjustments but it 
could be better. Processing the data set as described above gave alpha = 
-1.8699e-3 and gamma = 1.0134. Applying the correction resulted in reduction of 
the quadrature image to about -86dB and new values alpha = -2.3266e-9 and gamma 
= 0.999999 demonstrating good correction.

I'm now working on a GR module to implement this correction. Whew!

Best regards,
Joseph
-- 
Joseph A. DiVerdi, Ph.D., M.B.A.
http://xtrsystems.com/           970.980.5868 (voice) 
PGP Key ID: 0xD50A9E33           KC0QPZ        




reply via email to

[Prev in Thread] Current Thread [Next in Thread]