|
From: | George Nychis |
Subject: | Re: [Discuss-gnuradio] Measure BER |
Date: | Fri, 18 Jan 2008 12:04:00 -0500 |
User-agent: | Thunderbird 2.0.0.6 (X11/20071022) |
Hi,BER is defined as the % of bits that have errors to the total number of bits. Therefore, you need to calculate the number of incorrect bits. To do this you would need to know the correct bits to compare your received bits to. You can then easily compute the number of incorrect bits.
Therefore, if the input to gr.vector_source_b() is your input data, you would compare it to the output of gr.vector_sink_b() and calculate the bit difference. If 1 bit out of 10^3 bits are different, your BER is 1/10^3. The more input, the more accurate your BER estimate is.
I don't think a BER calculator exists in GR, but it shouldn't be that difficult. The block would take two input streams, one being the correct data and the other being the decoded data. It could then compare the two.
Or you could compare the two outside of GNU Radio pretty easily.It's not clear to me if you're performing the modulation and demodulation on the same machine. If so you have easy access to both data sets. Otherwise, transfer the known data to the receiver in a 100% accurate method and then compare.
- George irene159 wrote:
Hi all, I'm currently working on a GSMK modem, and I would like to calculate the BER of the link. I send data using gr.vector_source_b( ) connected to a GMSK modulator/demodulator and receive the signal in gr.vector_sink_b( ). 1) How can I measure BER from the vector_source and vector_sink ? 2) Does a BER calculator recovering from clock shifting (bit lost by clock sliding) exist ? Thanks !
[Prev in Thread] | Current Thread | [Next in Thread] |