How Do I Create an Executable out of My LabVIEW FPGA VI?

Updated Aug 3, 2023

Environment

Software

  • LabVIEW FPGA Module
  • LabVIEW Application Builder Module
  • LabVIEW Runtime

I have a VI that has been written in LabVIEW FPGA. Is it possible to distribute this VI?

FPGA VIs can be distributed, however, it cannot directly be compiled into an executable. 

There are two ways to distribute FPGA code. 

  • Method 1: ​Distribute the bitfile, which is created when compiling the FPGA, so the user can create their own Host VI. For this, a LabVIEW Development License and NI-RIO  driver are needed on the executing machine.
  • Method 2: Distribute using the Host VI where you will only need the LabVIEW Run-time Engine and the NI-RIO driver on the executing machine.


To distribute an FPGA VI using Method 2, follow these steps:

  1. Create the FPGA VI with front panel objects that can be manipulated by the end user. Compile and run it on the target to generate the bitstream for the FPGA code.
  2. Create a Host VI on the PXI or cRIO system to communicate with the FPGA VI . Use the FPGA interface palette to Open FPGA Reference, read/write data to/from the FPGA, and Close FPGA Reference.
  3. Right-click on Open FPGA Reference VI and choose Select Target VI/Select Bit File and pick your FPGA VI/Bit File .
  4. Now using the Application Builder, build the Host VI into an executable.

Keep in mind that neither the FPGA VI nor the Bit files will be included explicitly in the support files for the project. They are implicitly a part of the Real-Time or host executable and will be deployed on the FPGA target once the executable is called on the Real-Time Target or host.

Additional Information

Distributing the bitfile gives more flexibility to the users for interfacing with the FPGA VI, since the user can adequate its use to the needs of their Host VI.
A LabVIEW FPGA bitfile is an XML file and can be compressed to small sizes when included in the host executable.