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?

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
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to