Using Custom Data Types with Register Items, Memory Items, FIFOs, and Handshake Items (FPGA Module)

LabVIEW 2018 FPGA Module Help

Edition Date: March 2018
Part Number: 371599P-01
View Product Info

DOWNLOAD (Windows Only)

LabVIEW 2016 FPGA Module Help
LabVIEW 2017 FPGA Module Help
LabVIEW 2018 FPGA Module Help
LabVIEW 2019 FPGA Module Help
LabVIEW 2020 FPGA Module Help

You can create custom controls of supported data types and select these controls as data types for FPGA register items, memory items, FIFOs, and handshake items. The custom control you select as a data type in the Register Properties, Memory Properties, FIFO Properties, or Handshake Properties dialog boxes can be any control, type definition (typedef), or strict typedef created with supported data types. If the custom control is a typedef or strict typedef, LabVIEW disconnects the control from the typedef.

Using custom data types has the following advantages:

  • Simplifies block diagrams and can increase application throughput.
  • For some FPGA targets, breaks the 64-bit barrier by joining two small supported types into one larger data type. Refer to the specific FPGA target hardware documentation for more information about supported data types.
  • Keeps resources separate for each value in the FIFO or memory.
Note  DMA and peer-to-peer FIFOs do not support custom data types.

Combining Smaller Data Types While Keeping Resource Identities Separate

In the following example, the FIFO can transfer both address and data information in a single cluster element. Using a custom control, these values remain distinct so that you can split the values after reading the element from the FIFO.

Caveat when Using Custom Controls

Using large custom controls can affect the performance of an FPGA VI or waste FPGA resources.

Related Information

Creating Custom Controls, Indicators, and Type Definitions

Supported Data Types


Not Helpful