LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How can I apply curve fitting to simple BER measurement data?

I am collecting simple BER data from a communications receiver for modulations such as PSK, CPM, etc. The data looks good but has the usual measurement noise, which I would like to spiffy-up for customer presentations.
 
I have tried virtually all of the vi's in the LV Fitting palette, with little or no success. One of the NI AE's provided me with a GP Fit approach, but it has problems when you introduce error. I have attached a vi which demonstrates this, and also shows an attempt on my part to use the Least squares vi, with various functional estimates of the erfc vi. The vi also includes sample data.
 
I see MatLab (and possibly Wolfram) has a function specifically for BER smoothing, but NI doesn't, as best I can tell. I feel certain that one or more of the LV fitting vi's can be coerced into working with the correct parameters - but so far I can't find them!
 
Has anyone tackled this problem with good results?
 
One other thing - has anyone else noticed that the formula used by the LV erfc (complementary error function) is *not* the standard model used for BER/radio communications applications?
 
Appendix B of Digital Communications by B. Sklar gives the conversion:
 
Q(x) = 1/2 erfc (x/sqrt(2)), where erfc (x) is the LabView vi block.
 
Thanks,
Mark
0 Kudos
Message 1 of 4
(4,031 Views)
Hi Mark,
Please elaborate on the problems you are encountering.  I was under the impression that BER (bit error rate) was a digital signal but you are also discussing fitting a line to a curve.  I believe you are correct that NI does not have any VIs that help with BER.  Also I would appreciate it if you could reattach your VI.
Eric A.
National Instruments
Distributed I/O Product Support Engineer
0 Kudos
Message 2 of 4
(3,995 Views)
Hi Eric,
 
Well, BER is just data measured at certain input levels to a receiver. For digital communications systems, we typically use Eb/No to specify the input signal strength, and measure the BER at that level. This is analagous to signal-to-noise ratio (SNR) measurements in the analog domain.
 
The BER values tend to run from between .01 and 10E-5, or even 10E-9 for high performance systems. As a result of the wide range of BER values, it is usually plotted on a logarithmic (y-axis) scale. Values of Eb/No are in the range of a few dB, up to perhaps 15~20 dB. So the x-axis is normally 'linear', although in dB.
 
I have attached the vi's again, and if you run the LS BER fit vi, you will see the data plotted. If you turn off the noise, you can see a very nice plot - the curve fit vi works fine. But if you add noise (which simulates what you would measure in a real system), and run it several times, you will see all kinds of responses - depending on the noise parameters. What I am looking for is something that gives me a nice smooth graph even with the noise turned on (which is what my real data looks like).
 
Thank you,
Mark
0 Kudos
Message 3 of 4
(3,973 Views)
Hi,
It sounds like you want to filter your data after you acquire it.  There are many filter functions you can use to smooth out your data.  I would start by checking out the examples in the LabVIEW example finder. Let me know if I am missing the question because my knowledge on BER is limited at best.  Also please ensure you are using the attachment and browse button at the bottom of the screen to attch your VI because it is not visable on the post.  I also might recommend calling or emailing if you have support so you could attach your VI to an email instead of posting it on the forum.
Eric A.
National Instruments
Distributed I/O Product Support Engineer
0 Kudos
Message 4 of 4
(3,936 Views)