Hi,
I want to calculate the minimum power (Eb/N0) required to be transmitted to get a bit-error rate of less than 0.001. The modulation and coding scenario is as follows.
1. Convolutional coding with rate 0.5 (using the class "Convolutional_code")
2. QAM 16 modulation (using the class "QAM")
3. OFDM with FFT size 64 and cyclic prefix length 7 (using the class "OFDM")
4. channel AWGN defined as "AWGN_Channel channel(0.5)"
I know that a system involving only an AWGN channel does not benefit from OFDM, but I have checked the output without OFDM and in that case, the QAM scheme does not give ber<0.001 for any SNR for any rate convolutional coding. With OFDM, QAM scheme is not able to give ber<0.001 only for rate 0.5 convolutional coding. Also, I want to extend this system to the one with a multitap channel where OFDM will be almost indispensable.
I am using the "demodulate_soft_bits()" function defined in the file "modulator.cpp" to demodulate the QAM modulated signal.
There is an example of convolutional coding with BPSK+(conv code with rate 1/3) here. Here, the BPSK demodulation is actually skipped and the received symbols are fed directly to convolutional decoder. This is fine in case of BPSK. But, with QAM 16, since the modulated symbols are complex, the received symbols cannot be fed directly to the convolutional decoder. So, in general, what is the correct method to use the "decode()" function from the "Convolutional_Code" class? Can anybody throw some light on this matter?
Can anybody, please, tell me a solution to this problem? Am I wrong in the theory somewhere? Is it possible to get ber<0.001 in this scenario? If yes, some debugging direction also will be quite helpful.
Thanks in advance,
Pushkaraj
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I want to calculate the minimum power (Eb/N0) required to be transmitted to get a bit-error rate of less than 0.001. The modulation and coding scenario is as follows.
1. Convolutional coding with rate 0.5 (using the class "Convolutional_code")
2. QAM 16 modulation (using the class "QAM")
3. OFDM with FFT size 64 and cyclic prefix length 7 (using the class "OFDM")
4. channel AWGN defined as "AWGN_Channel channel(0.5)"
I know that a system involving only an AWGN channel does not benefit from OFDM, but I have checked the output without OFDM and in that case, the QAM scheme does not give ber<0.001 for any SNR for any rate convolutional coding. With OFDM, QAM scheme is not able to give ber<0.001 only for rate 0.5 convolutional coding. Also, I want to extend this system to the one with a multitap channel where OFDM will be almost indispensable.
I am using the "demodulate_soft_bits()" function defined in the file "modulator.cpp" to demodulate the QAM modulated signal.
There is an example of convolutional coding with BPSK+(conv code with rate 1/3) here. Here, the BPSK demodulation is actually skipped and the received symbols are fed directly to convolutional decoder. This is fine in case of BPSK. But, with QAM 16, since the modulated symbols are complex, the received symbols cannot be fed directly to the convolutional decoder. So, in general, what is the correct method to use the "decode()" function from the "Convolutional_Code" class? Can anybody throw some light on this matter?
Can anybody, please, tell me a solution to this problem? Am I wrong in the theory somewhere? Is it possible to get ber<0.001 in this scenario? If yes, some debugging direction also will be quite helpful.
Thanks in advance,
Pushkaraj