Why Use LabVIEW FPGA?

By James McNally | Technologies

If you spend any time on National Instruments product pages, you will come across Field Programmable Gate Arrays (FPGAs) programmed with LabVIEW FPGA. What on earth do these have to do with measurement systems?

What Is An FPGA?

FPGA’s are an embedded computing platform which provides some unique capabilities:

  • They implement a hardware circuit giving very high-speed processing.
  • We can write code in software languages to define their behaviour. In our case, LabVIEW FPGA.
  • We can reprogram them to repurpose them for different applications as opposed to fixed function chips.

All of these allow National Instruments to provide a platform where we can program traditional PCs but also these hardware chips in their measurement hardware. This architecture allows us to change the behaviour of these hardware targets to create some powerful systems.

Why Use LabVIEW FPGA?

FPGAs in LabVIEW-based systems are a great asset because they are good at jobs that processor-based system aren’t. In particular, when dealing with dynamic signals there are key applications that they serve:

1. High data rates with little useful information

High rate sensors (e.g. acquisition in the MHz) on embedded systems can frequently pose challenges as the data rates are hard to capture and work with when using a CPU.

FPGAs are great for data reduction. For instance, you may want to capture extremely rapid pulse events. The speed of the pulses demands a high acquisition rate. However, the data can be reduced to a pulse time, shape and duration. The CPU doesn’t then have to deal with the full data rate.

2. Custom protocols

An extension of the above, communication protocols typically need data analysed point by point as it comes in, which is harder for a CPU to perform. 

Moreover, it could lead to reducing a 1 MBaud protocol to a few kB/s of useful data.

3. Low latency decision-making

Decisions may need to be made within micro or even nanoseconds of receiving an input – which is not feasible with a CPU. FPGAs, however, can run loop rates in the MHz allowing very fast stimulus-response loops. 

4. Using lower cost processors

Certain types of processing are very efficient on an FPGA (e.g. a simple filter of data on the way in). By using an FPGA, you can reduce the demand on the process and introduce smaller or less expensive systems.

Is LabVIEW FPGA The Same as LabVIEW

Yes and no…

Yes – If you open a LabVIEW FPGA application it uses the same structures and concepts as LabVIEW for a PC but…

No – The computer translates and executes the code quite differently which means you do need to understand new concepts in how LabVIEW works.

Integrating them into your system can be a little unnerving for many reasons:

  • The learning curve can be steep and time-consuming.
  • Issues can become compounded, costly and take longer to resolve without the right experience.
  • It can be hard to validate in advance whether the FPGA will perform exactly as you intended.

Need Help?

We can help you implement National Instruments FPGA systems without you having to invest the time to learn, develop and validate the solution yourself.

We are leading experts in using LabVIEW to program NI’s FPGA-based devices. As one of the first companies to have a Certified LabVIEW Embedded Developer in the UK, we’ve programmed every type of FPGA application available, from simple control systems to GB/s data processing systems.

We can do this in two ways for you:

  1. Via a ‘black box’ where we provide you with a LabVIEW library to access the hardware (saving you from buying LabVIEW FPGA and attending external courses);
  1. We can develop and document the initial FPGA application so that, once we’ve got you set up, your engineers can then take over the software development and progress at their own pace.

If you want to ask us questions or think we can help then contact us. Or read more about our LabVIEW services.

Follow

About the Author

I founded Wiresmith Technology to help engineers improve their systems and products with quality measurement systems. I'm a Certified LabVIEW Architect, Certified LabVIEW Embedded Developer and LabVIEW Champion.