A software defined radio detects an amplitude modulated (AM) signal
contained within a received signal. This detection involves first
receiving a radio frequency (RF) signal that contains the AM signal
modulated about a carrier frequency (f.sub.c). The RF signal is
downconverted using a first local oscillator having a frequency f.sub.lo.
An in-phase (I) channel signal and a quadrature (Q) channel signal are
produced. From the I-channel signal, a relationship between the carrier
frequency and the frequency of the local oscillator is determined with a
frequency detector. The downconverted carrier signal of the I-channel
signal is used to create a second set of signals with proper phases and
frequencies that can be used to rotate the I-channel and Q-channel
signals to account for differences between the downconverted f.sub.c and
DC. From the I-channel and Q-channel signals, a phase difference between
the I-channel and Q-channel signals is determined so that the processed
I-channel and Q-channel signals can be properly combined. Properly
combining the processed (rotated) I-channel and Q-channel signals results
in a demodulated AM signal.