discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] M&M impl, its parameters, and why does it work fo


From: Bob McGwier
Subject: Re: [Discuss-gnuradio] M&M impl, its parameters, and why does it work for GMSK?
Date: Fri, 11 Apr 2008 13:45:24 -0400
User-agent: Thunderbird 2.0.0.12 (Windows/20080213)

George Nychis wrote:
Thanks for the response.

You're correct, it can work with complex or real input. GMSK and the MSK implementation are both using the real input, passed on from gr_quadrature_demod_cf. Here is the MSK impl: https://moo.cmcl.cs.cmu.edu/trac/cmu_sdrg/browser/phys/802.15.4/trunk/src/python/ieee802_15_4.py#L84

I'm not sure if I and Q are meant to be de-staggered before hand or not.

- George


George, Jeffrey:

You are discovering by inference in the M&M research work what most communications professionals know because someone told them (usually Matlab) ;-).

Staggered QAM and MSK minimize envelope variation and as such, the nonlinearity in M&M generates a much weaker clock tone. At the risk of bringing up sore topics, Matlab uses M&M where it is appropriate. For MSK and GMSK, they use a fourth order nonlinearity to generate the clock tone.

I use them and their large R&D shop as "proof by intimidation" rather than going through all of the arguments why this should be so but they start from the small envelope variation I mentioned.

google search Matlab MSK-type signal timing recovery. They have my favorite timing author ever (Umberto Mengali) referenced.

Long before M&M wrote, Umberto Mengali wrote a paper on the asymptotic maximum likelihood clock recovery method. After you approximate the hyperbolic tangent with the simplest first order approximation and use two tap differentiator, VOILA, M&M pops out.

--
AMSAT Director and VP Engineering. Member: ARRL, AMSAT-DL,
TAPR, Packrats, NJQRP, QRP ARCI, QCWA, FRC. ARRL SDR WG Chair
"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by
definition, not smart enough to debug it." - Brian W. Kernighan




reply via email to

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