DSPRelated.com
Forums

Demodulating QPSK

Started by John E. Hadstate April 5, 2008
Is it possible forego the joys of the Costas loop and 
demodulate a scalar QPSK signal using a bandpass filter, a 
Hilbert transformer and the atan2(im,re) function?


On Apr 5, 7:38 pm, "John E. Hadstate" <jh113...@hotmail.com> wrote:
> Is it possible forego the joys of the Costas loop and > demodulate a scalar QPSK signal using a bandpass filter, a > Hilbert transformer and the atan2(im,re) function?
You still need to despin the constellation before making symbol decisions. John
John wrote:
> On Apr 5, 7:38 pm, "John E. Hadstate" <jh113...@hotmail.com> wrote: >> Is it possible forego the joys of the Costas loop and >> demodulate a scalar QPSK signal using a bandpass filter, a >> Hilbert transformer and the atan2(im,re) function? > > You still need to despin the constellation before making symbol > decisions. > > John
Not necessarily. If the QPSK is differentially encoded, which is very common, you don't actually need to despin the constellation. You will get improved performance if you do, but its not essential. Steve

John E. Hadstate wrote:
> Is it possible forego the joys of the Costas loop and demodulate a > scalar QPSK signal using a bandpass filter, a Hilbert transformer and > the atan2(im,re) function? >
Yes, of course. What you described is the generalization of the Costas loop. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
"Vladimir Vassilevsky" <antispam_bogus@hotmail.com> wrote in 
message news:Im5Kj.1450$GE1.244@nlpi061.nbdc.sbc.com...
> > > John E. Hadstate wrote: >> Is it possible forego the joys of the Costas loop and >> demodulate a scalar QPSK signal using a bandpass filter, a >> Hilbert transformer and the atan2(im,re) function? >> > > Yes, of course. What you described is the generalization of > the Costas loop. >
Maybe I wasn't clear enough. No feedback and no quadrature VFO. I need something more like "blind recognition" that doesn't require cooperation from the transmitter to get sync'ed.

John E. Hadstate wrote:
> "Vladimir Vassilevsky" <antispam_bogus@hotmail.com> wrote in message >> John E. Hadstate wrote: >> >>> Is it possible forego the joys of the Costas loop and demodulate a >>> scalar QPSK signal using a bandpass filter, a Hilbert transformer and >>> the atan2(im,re) function? >>> >> Yes, of course. What you described is the generalization of the Costas >> loop. >> > Maybe I wasn't clear enough. No feedback and no quadrature VFO.
So you are looking for the feed forward algorithm. The simplest approach is the differential demodulation; the better approach is to get the esimates of phase and frequency difference from the tentative decisions and rotate the signal accordingly.
> I need something more like "blind recognition" that doesn't require > cooperation from the transmitter to get sync'ed.
QPSK doesn't require a cooperation from the transmitter side except for resolving the phase ambiguity. Sooner or later the lock will be asquired from the arbitrary initial state. The loop can wander for a relatively long time though. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
On Sun, 6 Apr 2008 15:21:15 -0400, "John E. Hadstate"
<jh113355@hotmail.com> wrote:

> >"Vladimir Vassilevsky" <antispam_bogus@hotmail.com> wrote in >message news:Im5Kj.1450$GE1.244@nlpi061.nbdc.sbc.com... >> >> >> John E. Hadstate wrote: >>> Is it possible forego the joys of the Costas loop and >>> demodulate a scalar QPSK signal using a bandpass filter, a >>> Hilbert transformer and the atan2(im,re) function? >>> >> >> Yes, of course. What you described is the generalization of >> the Costas loop. >> > >Maybe I wasn't clear enough. No feedback and no quadrature >VFO. > >I need something more like "blind recognition" that doesn't >require cooperation from the transmitter to get sync'ed.
You can do the baseband mix and all the synchronization tasks digitally if the signal is sampled at some IF. In other words, having access to IF samples means that you can perform all of the demodulation steps in the traditional manner, just digitally. No feedback to the analog electronics or transmitter is required. Eric Jacobsen Minister of Algorithms Abineau Communications http://www.ericjacobsen.org
"Vladimir Vassilevsky" <antispam_bogus@hotmail.com> wrote in 
message news:fO9Kj.339$mB3.223@nlpi068.nbdc.sbc.com...
> > > John E. Hadstate wrote: >> "Vladimir Vassilevsky" <antispam_bogus@hotmail.com> wrote in >> message >>> John E. Hadstate wrote: >>> >>>> Is it possible forego the joys of the Costas loop and >>>> demodulate a scalar QPSK signal using a bandpass filter, a >>>> Hilbert transformer and the atan2(im,re) function? >>>> >>> Yes, of course. What you described is the generalization of >>> the Costas loop. >>> >> Maybe I wasn't clear enough. No feedback and no quadrature >> VFO. > > So you are looking for the feed forward algorithm. The > simplest approach is the differential demodulation;
Thanks. Google search for "differential demodulation" eventually led to "noncoherent demodulation" which is where I think I want to go.
John E. Hadstate wrote:
> > "Vladimir Vassilevsky" <antispam_bogus@hotmail.com> wrote in message > news:Im5Kj.1450$GE1.244@nlpi061.nbdc.sbc.com... >> >> >> John E. Hadstate wrote: >>> Is it possible forego the joys of the Costas loop and demodulate a >>> scalar QPSK signal using a bandpass filter, a Hilbert transformer and >>> the atan2(im,re) function? >>> >> >> Yes, of course. What you described is the generalization of the Costas >> loop. >> > > Maybe I wasn't clear enough. No feedback and no quadrature VFO. > > I need something more like "blind recognition" that doesn't require > cooperation from the transmitter to get sync'ed.
Most symbol sync schemes work blind. Carrier recovery can be made to work blindly without much trouble. Only equalisation requires tricky approaches to work blindly. Steve
"Eric Jacobsen" <eric.jacobsen@ieee.org> wrote in message 
news:hufiv39in3a2ivkg2cb0a3ian1vdmcl042@4ax.com...
> On Sun, 6 Apr 2008 15:21:15 -0400, "John E. Hadstate" > <jh113355@hotmail.com> wrote: > >> >>"Vladimir Vassilevsky" <antispam_bogus@hotmail.com> wrote in >>message news:Im5Kj.1450$GE1.244@nlpi061.nbdc.sbc.com... >>> >>> >>> John E. Hadstate wrote: >>>> Is it possible forego the joys of the Costas loop and >>>> demodulate a scalar QPSK signal using a bandpass filter, a >>>> Hilbert transformer and the atan2(im,re) function? >>>> >>> >>> Yes, of course. What you described is the generalization of >>> the Costas loop. >>> >> >>Maybe I wasn't clear enough. No feedback and no quadrature >>VFO. >> >>I need something more like "blind recognition" that doesn't >>require cooperation from the transmitter to get sync'ed. > > You can do the baseband mix and all the synchronization tasks > digitally if the signal is sampled at some IF. In other > words, having > access to IF samples means that you can perform all of the > demodulation steps in the traditional manner, just digitally. > No > feedback to the analog electronics or transmitter is > required. >
Yes, thanks. All I have is sampled data and no feedback to analog is possible. So far, my trials with Costas Loop implementations have not resulted in anything useful. Based on my experiences with a software PLL, I'm afraid that once I do get it working, a Costas Loop probably won't lock fast enough to demodulate the first few baud of a packet, and those baud carry some critical information. Also, Costas Loop, unlike my PLL, is sensitive to variations in input signal level. I've more or less ruled-out remodulators for the same reasons. I am also considering an architecture in which the signal is locked by a Costas Loop, and then the complex VFO output from the loop is multiplied by a delayed version of the signal to resolve the phase. I haven't seen this architecture in the literature, however, so I'm not sure it's plausible. I've found a lot of material on the web over the weekend that I need to codgertate on (codgertate == activity performed by codgers when all else fails ;-).