07-28-2014 08:07 AM
I am implementing online estimation of statistics (mean , kurtosis) using FPGA , CRIO, and NI 9234 recursively. I am getting stream of data in using FPGA. i want to calculate statistics using streaming data in real time. i am new in FPGA and Labview. Can you please help how i can implement the same. I am thinking of shift register but it will take only few data points.
Thanks
Guru prakash
Solved! Go to Solution.
07-29-2014 08:04 AM
Programming in FPGA is very different from programming in LabVIEW, but if you are a new user the best place to start is to read the following tutorials:
Getting Started With LabVIEW FPGA
http://www.ni.com/tutorial/14532/en/
LabVIEW FPGA Online tutorial
http://www.ni.com/swf/presentation/us/labview/lvfpga/default.htm
To be completely honest, I would suggest to consider signing up for some of the online classes, especially:
LabVIEW CORE 1 and 2
LabVIEW Real-Time 1
LabVIEW FGPA
07-29-2014 04:54 PM
In terms of coding this type of iterative function (not recursive), I'd recommend starting by looking at the Point-By-Point VIs - in this case, especially Moment about Mean PtByPt. This does however use floating-point numbers, so you may be better to construct a more specific solution using only integer or fixed-point numbers (depending on your input). This particular VI also computes the Moment fully at each iteration, where you may be better to maintain a running mean and 4th power, and to unroll or explicitly calculate each of those. The method by which it maintains an array of numbers (look in the "Finite Horizon" case) seems like it will work fine on FPGA, as Rotate Array with constant n takes no clock cycles.
As the previous commenter said, FPGA programming is quite different, so it's worth taking the time to fully understand your algorithm first.