Additional Information
To setup a DMA FIFO to take fixed-point in LabVIEW 8.6 and later
- Create the FIFO, or edit its properties in the project by right-clicking on in and selecting Properties
- Then select fixed-point (FXP) as the data type for the FIFO
- This will allow you to pass fixed-point data through the FIFO unchanged
FPGA Conversion
- Convert the fixed-point number to an array of Booleans using the Number to Boolean Array VI
- Convert this array of booleans to an unsigned 32-bit integer using the Boolean Array to Number VI
- Wire the output of the Boolean Array to Number to the Element input of the FIFO Write VI
Host Conversion
- On the host side, read a number of elements from the DMA FIFO
- Convert each element one at a time to an array of Booleans using the Number to Boolean Array VI, inside of an auto-indexed for loop
- Place a Boolean Array to Number VI inside of the for loop and wire the Boolean array to the input
- Right click on the Boolean Array to Number VI and select Properties. Change the representation to fixed-point and fill in the Fixed-Point Configuration according to the properties of the fixed point data type on the FPGA

- Wire the fixed point data type out of the for loop into an auto-indexed terminal
- Note: It is required to know the settings of the fixed-point data on the FPGA in order to convert the number on the host
- Note: It is necessary to use the Binary Array to Number and override the output type under the properties of the VI. Using just the Binary Array to Number and then the To FXP VIs will also truncate the fractional part of the data.
Once the fixed point data is converted, you can use the numeric conversion VIs to convert the data to any representation that is needed on the host.