BER is an observation, a count, not an estimation – it only makes sense
to talk about a Bit Error Rate (BER) after a complete physical layer
receiver, i.e. at the bit level. You can estimate the BER of a whole
system if you know how it reacts to noise – but that's typically not
what you do. Instead, you just simulate with various noise/distortion
levels, measure for each of these and write down the number of wrong
bits. A good receiver will make more of a noisy signal (lower BER) than
a bad receiver for the same modulation. So, BER depends on your receiver
implementation.

SNR, on the other hand, the Signal-to-noise-ratio, is not something that
depends on your implementation – it's really just the ratio of Signal
power to noise power. Since we're looking at a noise reception, one can
only write an estimator for these powers – and thus, SNR is a measure
relative to a mathematical model of your reception, and not something
that indicated demodulability. It's very important to say /where/ in the
signal chain you look at the SNR – is it directly at the antenna? After
mixing to baseband? After filtering to a channel bandwidth? It's equally
important to explicitly specify what you consider signal and what you
consider noise power – for example, one might say "OK, after my timing
recovery, I still have a bit of phase offset, but that's OK, I just
declare the difference between perfect constellation point and actual
recovered point "noise" and be done with it". That's a very practical
thing to look at – and, indeed, for the decider, which has to convert
complex numbers to bits, it just looks like a random addition to the
perfect signal, but that power didn't come in as noise power – it's just
an error we introduced by not being able to perfectly synchronize.

As another example, if you take any signal, and shift it in frequency,
then that doesn't change its power at all! So, a reception with a
terribly bad frequency offset still has the same SNR as a perfectly
synchronized one. UNLESS, that is, that you declare the phase offset
between recovered symbols and perfect constellation points "noise".

Now, depending on what you declare to be noise and what you declare to
be signal, you'd define different SNR estimators. I constantly repeat
this (I don't mind, someone has to):

*There's no single "right" SNR estimator. Everything depends on what you
define to be noise and what you define to be signal. One man's noise is
another man's signal.*

Coming back to your original question:

> How Is it possible to get a good estimation of the BER without a
costas loop?

It's not an estimate. If you get BER of 0, then your receiver did not
make a single bit error, if you get BER=0.5, then every second bit is
wrong. So, that estimator is pretty much perfect.

If you remove the phase synchronization (i.e. the costas loop) from your
receiver, you make it a worse receiver. Then, your BER increases, if
your receiver gets sufficiently bad.

I hope that answers your question!

If not, please don't hesitate to elaborate (in length!)

Best regards,

Marcus


On 07/04/2017 11:49 AM, Rafik ZITOUNI wrote:
> My question is: 
>
> How Is it possible to get a good estimation of the BER without a
> costas loop? 
>
>
>
>
> 2017-07-04 11:39 GMT+02:00 Marcus Müller <marcus.muel...@ettus.com
> <mailto:marcus.muel...@ettus.com>>:
>
>     You're still not explaining what your question is – I really don't
>     know what to answer.
>
>     What is wrong?
>
>
>     On 07/04/2017 11:31 AM, Rafik ZITOUNI wrote:
>>     Sorry I missed to add the flow graph. 
>>     Here is attached. 
>>
>>     2017-07-04 11:29 GMT+02:00 Rafik ZITOUNI <rzito...@gmail.com
>>     <mailto:rzito...@gmail.com>>:
>>
>>         Marcus, 
>>
>>         You find attached my flow graph with  Tx and Rx. I know that
>>         it is not recommended to have TX and RX in the same flow
>>         graph but i did it just to obtain one view for my Tx and Rx. 
>>
>>         Thanks,  
>>
>>         2017-07-04 11:23 GMT+02:00 Marcus Müller
>>         <marcus.muel...@ettus.com <mailto:marcus.muel...@ettus.com>>:
>>
>>             Dear Rafik,
>>
>>             I think we're approaching this from the wrong side: I
>>             don't think that I should be explaining why you get a
>>             good BER and SNR estimate, it is you who should explain
>>             why you're expecting something different, and then we can
>>             discuss! I'm not quite sure what I could be explaining at
>>             this point :)
>>
>>             Best regards,
>>
>>             Marcus
>>
>>
>>             On 07/04/2017 11:20 AM, Rafik ZITOUNI wrote:
>>>             Thank you Marcus for your answer !
>>>
>>>             My BER and SNR are calculated and obtained using MPSK
>>>             SNR Estimator Probe and Error Rate blocks. I obtained
>>>              two points, which rotate in the qt gui constellation
>>>             sink despite the BER and SNR have been obtained as
>>>             expected. Could you give me an explanation how it was
>>>             possible to obtain a good snr and ber with a wrong
>>>             constellation with  good SNR and BER?
>>>
>>>             I found the  presentation of Tom Rondeau useful, since
>>>             he explained the function of the costas loop
>>>             block.  
>>> https://static.squarespace.com/static/543ae9afe4b0c3b808d72acd/543aee1fe4b09162d08633fc/543aee1fe4b09162d0863402/1392309732018/mpsk.pdf
>>>             
>>> <https://static.squarespace.com/static/543ae9afe4b0c3b808d72acd/543aee1fe4b09162d08633fc/543aee1fe4b09162d0863402/1392309732018/mpsk.pdf>
>>>
>>>
>>>             This morning I add a Costas loop after a Polyphase Clock
>>>             Syncronisation block, and it s going well. You find
>>>             attached a screenshot of my constellation for a DBPSK of
>>>             my receiver/transmitter. I propose to add a grc to
>>>             gnuradio/gr-digital for MPSK since grc is more easy to
>>>             understand than python source code.
>>>
>>>
>>>             Now I am trying to send and receive data files such as
>>>             videos or images (bmp). Do you have an example with a
>>>             file exchange implemented in .py or grc?
>>>
>>>             Best,  
>>>
>>>
>>>             2017-07-04 9:44 GMT+02:00 Marcus Müller
>>>             <marcus.muel...@ettus.com
>>>             <mailto:marcus.muel...@ettus.com>>:
>>>
>>>                 Hi Rafik!
>>>
>>>                 So, what's wrong with the BER and the SNR estimate?
>>>
>>>                 Best regards,
>>>
>>>                 Marcus
>>>
>>>
>>>                 On 07/03/2017 11:29 PM, Rafik ZITOUNI wrote:
>>>>                 Dear all, 
>>>>
>>>>                 I translate the
>>>>                 /gr-digital/examples/narrowband/digital_bert_tx.py
>>>>                 and the
>>>>                 /gr-digital/examples/narrowband/digital_bert_rx.py
>>>>                 python source codes to GRC flow graphs. The
>>>>                 objective is to get more graphical possibilities
>>>>                 with a GRC.  My flow graph gives a fine result of
>>>>                 BER and SNR for DBPSK modulation. 
>>>>                 The problem is with the rotating points of my
>>>>                 constellation. I think that the rotation of my view
>>>>                 comes from a lack of frequency synchronization, but
>>>>                 why I obtained a correct BER and SNR?
>>>>
>>>>                 You find attached to this message a constellation
>>>>                 view obtained by my flow graph. 
>>>>
>>>>                 Please could you explain me this  result or give an
>>>>                 advice to improve the obtained result? 
>>>>
>>>>                 Regards, 
>>>>
>>>>
>>>>                 -- 
>>>>                 **<http://www.ece.fr/>Rafik
>>>>
>>>>
>>>>
>>>>                 _______________________________________________
>>>>                 Discuss-gnuradio mailing list
>>>>                 Discuss-gnuradio@gnu.org
>>>>                 <mailto:Discuss-gnuradio@gnu.org>
>>>>                 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>>                 <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio>
>>>                 _______________________________________________
>>>                 Discuss-gnuradio mailing list
>>>                 Discuss-gnuradio@gnu.org
>>>                 <mailto:Discuss-gnuradio@gnu.org>
>>>                 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>                 <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio>
>>>
>>>
>>>             -- 
>>>             **<http://www.ece.fr/>Rafik
>>
>>         -- 
>>         **<http://www.ece.fr/>Rafik
>>
>>     -- 
>>     **<http://www.ece.fr/>Rafik
>>
>>     _______________________________________________
>>     Discuss-gnuradio mailing list
>>     Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>>     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>     <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio>
>     _______________________________________________ Discuss-gnuradio
>     mailing list Discuss-gnuradio@gnu.org
>     <mailto:Discuss-gnuradio@gnu.org>
>     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio> 
>
> -- 
> **<http://www.ece.fr/>Rafik
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to