LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

FPGA Programing

I need to do some extensive math on the data where I need to do that on FPGA or in the controller?
 
Thanks,
Mudda.
0 Kudos
Message 1 of 2
(3,259 Views)
Hello Mudda,
 
The short answer to your question is that it depends on what kind of processing you need to perform.  The FPGA side is ideal for extremely fast processing of discrete data, for example running a discrete PID control loop with hard real-time performance.  The controller side is best for floating-point operations or calculations that require a large number of array operations, as well as any processing that doesn't require the utmost in speed.  Since the FPGA is a hardware implementation of your algorithm, it can run exceddingly fast and deterministically, but is not appropriate for file operations (it has no hard drive or file system on which to store the data), nor is it designed for non-integer math operations.  Any operation that requires floating poitn operations should be handled by the controller.
 
In practice, the choice of which target to perform your processing will depend on the functions required by the processing - since the controller side gives you a wider range of processing and analysis functions, you may find that the functions you require can only run on the controller side.  If you have a choice between FPGA and controller for the same functionality, put it on the FPGA for the best performance, bearing in mind that the FPGA has a limited amount of gates available to you.
Cheers,

Matt Pollock
National Instruments
Message 2 of 2
(3,237 Views)