On Wed, Feb 3, 2010 at 6:43 PM, alanluo <mortimer1...@gmail.com> wrote: > > Thanks Isaac for your kindly suggestion. I think i have to dive into python > now... > > > > idg101 wrote: >> >> Hi, >> I haven't looked at any of the QAM-related code in the GNU Radio >> baseline, but it should be possible to design a generic MQAM demodulator. >> >> In fact, you should be able to build a generic MQAM demodulator for a >> given constellation set. This, I've done before in Matlab. You start >> with an AGC, feed through an equalizer which is optimized for minimizing >> the phase error between recovered and truth symbols. Another way to look >> at it that for each symbol, find the symbol that matches closest to the >> constellation vector (thats your decode symbol) and then feed the error >> into the equalizer. >> >> I believe there is a way to form a generic carrier recovery and symbol >> recovery loops that can deal with generic MPSK style constellation of >> which MQAM is a part of. In fact, you could write a routine that can do >> anything from BPSK to 64QAM. >> >> my 2 cents, >> Isaac
You can look at gnuradio-core/src/python/gnuradio/blks2impl/qam*.py for a place to start. It doesn't really do proper synchronization, just the symbol mapping, but it should give you a way forward. Tom _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio