discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] OFDM Benchmark Change Modulation


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] OFDM Benchmark Change Modulation
Date: Thu, 13 Jan 2011 18:01:24 -0500

On Tue, Jan 4, 2011 at 8:49 AM, You Lizhao <address@hidden> wrote:
> Hi all,
>
> Recently I want to implement a OFDM based multi-rate system, and I am using
> benchmark_ofdm_tx/benchmark_ofdm_rx programs in ofdm directory. I know I can
> use unlock/lock mechnism to disconenct/connect the exising blocks to change
> modulation block, and it indeed works. However, I also notice that the
> difference between all modulation, i.e. BPSK, QPSK, QAM16, QAM64, is
> rotated_const paramter in gr.ofdm_mapper_bcv block. So I write a new block
> howto.ofdm_mapper_bcv which can change rotated_const  (d_constellation in
> gr_ofdm_mapper_bcv.h/.cc) with a defined function call. But it does not
> work. When I change BPSK to QPSK by altering rotated_const, I can receive
> nothing but TIMEOUT in QPSK demodulator. If I still use BPSK demodulator, it
> works in compromised performance with some packets failed to pass CRC check.
> Why does it happen, since I already change rotated_const? Is there any
> misunderstanding on this ofdm benchmark program?

You shouldn't have to stop and start the flow graph to change
modulations. Instead, add a function to gr_ofdm_mapper_bcv and
gr_ofdm_frame_sink that allows you to change the modulation
constellation.

As to why you may not be receiving anything, it's because the OFDM
code is not very robust for different channel conditions, so you're
physical setup and channel may not work well. At this point in the
code, you just have to do a lot of hand tunning to get various levels
of modulation to work. To do better, you'll need to get into the guts
of the algorithms and try to improve them.

> Furthermore, I also find that if I use QAM16, it seems that the packet
> reception simuation is very bad, about 50% PRR or even lower. When
> using QAM64, PRR~0%, almost all packets failed CRC check. I think if I use
> channel coding, the situation will be better. I am wondering how to add
> channel coding block to existing architecture. Is there any possible
> examples?
>
> Any comments are welcomed! Thank you very much!
>
> Regards,
> -Lizhao

There are a few codes available in GNU Radio right now, including
reed-solomon, convolutional, and trellis coding. It will take some
work to add any of them to the OFDM code, though.

Tom



reply via email to

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