Archived:Incorrect Synthesis of Imported VHDL by Xilinx Compilation Tool for Vivado 2015.4

Updated Jun 28, 2023

NI does not actively maintain this document.

This content provides support for older products and technology, so you may notice outdated links or obsolete information about operating systems or other relevant products.

Reported In

Software

  • FPGA Xilinx Compilation Tools

Issue Details

I am importing my own VHDL into a LabVIEW 2016 FPGA design. During hardware validation testing I noticed that one of my case statements is not implemented but there were no errors during compilation. Why is this statement not implemented in the final design?

Solution

This issue is specific to the Xilinx Compilation Tool for Vivado 2015.4 included with LabVIEW 2016 FPGA Module. During synthesis, Vivado 2015.4 may incorrectly optimize out statements such as if not (variableX = variableY) in any external VHDL code. This could lead to an incorrect implementation on the FPGA hardware. 

To address this, change those particular statements to read if variableX /= variableY then in the VHDL code. Make sure the updated files get added to your LabVIEW FPGA code and recompile.