Thanks for your reply, Martin. I can understand your point that the estimated SNR in the script corresponds to ES/N0, which should be twice of Eb/N0 in the case of qpsk.
You do raise a good question: why the BER is shown as 10^(-11)? I rechecked the script. The default bit rate is 250e3, which is far lower than the required number to generate a BER at the level shown. The main function associated with the BER is # Measure BER by the density of 0s in the stream self._ber = digital.probe_density_b(1.0/self._symbol_rate) I haven't checked the details of the above function, though. Anyone has any thoughts on this? Henry Date: Thu, 12 Dec 2013 09:26:48 +0100 From: "Martin Braun (CEL)" <martin.br...@kit.edu> On Wed, Dec 11, 2013 at 04:15:11PM -0700, Henry Jin wrote: > I tried to use digital_bert_tx.py and digital_bert_rx.py to test the BER > performance of different modulations. The command I use is ./digital_bert_tx.py > --tx-freq=5.1e9 --tx-gain=30 -S 8 --mod-code=gray -m bpsk. The results for BPSK > is good enough. When SNR is above 20, the BER is around 10^(-11). However, when > I change the modulation to QPSK, the BER is only around 0.167 although it says > SNR is still around 20. Surely there is something wrong. 16QAM has the same > problem. Just wonder if anyone has the same experience before. Am I missing > something in order to correctly use the test script? Henry, I believe you've run into the famous 'SNR' trap[1], where you're using the wrong definition of SNR for your purposes. I'd need to have a closer look at the blocks in question, but I believe your estimate is actually the E_S/N_0 (it might be something within a constant factor of this). The relevant quantity for predicting BER is E_b/N_0. If you increase the modulation (BPSK -> QPSK -> QAM), you're decreasing the latter (at constant 'SNR'). So, all is fine. I'm a bit surprised about the actual values. If you're measuring a BER of 10**-11, that means you're transmitting data on the order of 10**12 bits? I'm not 100% familiar with digital_bert_tx.py, but this seems weird. Note that there are formulas to derive the BER from EbN0. Remember they apply to the AWGN channel only. If you have synchronisation, equalization etc. BER will get worse. So, .167 is more than the theory says, but you'd expect more anyway. MB [1] Well, don't know if it's famous. It's a very common mistake, though. -- Karlsruhe Institute of Technology (KIT) Communications Engineering Lab (CEL) Dipl.-Ing. Martin Braun Research Associate Kaiserstra?e 12 Building 05.01 76131 Karlsruhe Phone: +49 721 608-43790 Fax: +49 721 608-46071 www.cel.kit.edu KIT -- University of the State of Baden-W?rttemberg and National Laboratory of the Helmholtz Association
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio