Home > Support > NI Product Manuals > LabVIEW Communications System Design Suite 1.0 Manual

To complete this task, you'll need the top-level FPGA VI and the host VI you want to communicate between.

You can run FPGA code on the host computer to test the logic of the code without investing the time to compile it. Testing the communication between the host VI and the FPGA VI, on the host computer, saves time and makes it easier to repeat tests until you're ready to deploy to the FPGA.

What to Use

What to Do

Create the following diagram to communicate with the FPGA VI from a host VI.

Customize the gray sections for your unique programming goals.

To specify the FPGA VI you want the host VI to communicate with, complete the following steps:
  1. Select the Open FPGA VI Reference on the diagram.
  2. Select a build specification in the Properties group on the Configure tab.
When you run this host VI, LabVIEW opens a reference to the FPGA VI associated with the build specification you selected and runs it on the host rather than on the FPGA.
When testing communication between a host VI and the FPGA VI, use test code that mirrors the communication that you want to occur when you actually deploy the FPGA VI. Use the FPGA Host Interface nodes to communicate with code on an FPGA and in simulation on the host computer.

In the diagram above, one of the ways the host VI and the FPGA VI communicates is through a DMA FIFO using the Write DMA FIFO and Read DMA FIFO nodes. When this host VI runs, the host VI and the FPGA VI write data to and read data from a block of memory on the host that simulates a FIFO on the FPGA.


The host VI cannot simulate FPGA Host Interface nodes that perform hardware-specific functions, such as the Download FPGA VI node or the P2P Streaming nodes.

Close every reference created with the Open FPGA VI Reference node with the Close FPGA VI node. If you don't close the reference, the FPGA VI runs indefinitely until you click the Abort button in the FPGA VI.


If the Properties group of the Configure tab doesn't contain the build specification that corresponds to the FPGA VI you want to test, make sure the FPGA VI appears in the Files pane as part of the project and is marked as a top-level VI.


Search LabVIEW for the following installed examples: FPGA Host Interface.