Real-Time Controller Crashes After Stopping LabVIEW FPGA Application

Updated Feb 12, 2018

Reported In

Software

  • LabVIEW Real-Time Module
  • LabVIEW FPGA Module

Driver

  • NI-RIO

Issue Details

My application contains a host VI that calls into an FPGA VI. When stopping my host VI, my RT controller crashes. Why is this happening, and how can I fix it?

Solution

Your Real-Time or Windows controller will crash if you attempt to close a single FPGA reference multiple times in your host VI.  Calling Close FPGA VI Reference more than once will result in an error because each call attempts to deallocate the same memory. 

To alleviate this issue, ensure that exactly one Close FPGA VI Reference VI is called for every Open FPGA VI Reference VI.  

If crash behavior is still occurring, change the properties of the Close FPGA VI Reference to Close instead of the default setting Close and Reset if Last Reference
  1. Right click on the Close FPGA VI Reference function.
  2. Select the Close option from the menu

Additional Information

  • You should not branch the FPGA VI Reference wire in your program.  If you must branch the wire, take extra precaution that the reference is not closed until the entire program has finished accessing the reference. 
  • You may see this behavior in NI-RIO version 2.1.4 and earlier. This does not occur in NI-RIO version 2.3 or later.

WAS THIS ARTICLE HELPFUL?

Not Helpful