Avoiding Internal Scaling from FXP 20.5 to 16-bit Data Type in sbRIO-9627 FPGA Target

Updated Aug 30, 2024

Reported In

Hardware

  • sbRIO-9627

Software

  • LabVIEW FPGA Module

Issue Details

I have a sbRIO FPGA target and created a VI under FPGA Target. If I put AO FPGA I/O node on the block diagram, I see that it requires data type FXP 20.5. At a hardware level, after the FPGA target that data needs to be sent to the 16-bit DAC of the sbRIO. But 16-bit DAC requires 16-bit data type, so there should be an internal scaling that converts data types from FXP 20.5 to FXP 16 bit. Is there a way to avoid that scaling?

Data Type sbRIO AO.jpg

Solution

This number format has been chosen by NI in order to enable the user to directly send the desired output voltage in Volts to the analog output function. It is not possible to avoid internal scaling from FXP 20.5 (Fixed Point 20-bit ) to 16-bit, that process is implemented at the driver level of FPGA. It is also not possible to change the bitness of the fixed point for the FPGA I/O AO channels, because in the end it will be converted again to FXP 20.5.