You can choose one of two modes in which to interface with your Optimized FPGA VI from other code. You should keep in mind the performance you want your Optimized FPGA VI to meet while considering the benefits and constraints of each mode.
- Standard Mode—This mode processes inputs and outputs in one call of the Optimized FPGA VI. Standard mode consumes inputs, including entire arrays, each time the Optimized FPGA VI is ready for new data, and produces outputs, including entire arrays, each time the Optimized FPGA VI signals a valid output. Standard mode is the default mode and provides performance advantages over element-by-element mode for processing most data sets, with the exception of large arrays.
- Element-by-Element Mode—This mode is available only when the Optimized FPGA VI contains array inputs or outputs. In element-by-element mode, the Optimized FPGA VI accepts one element each time input valid and ready for input are True. Element-by-element mode is well suited for Optimized FPGA VIs with large arrays, which require large amounts of buffering and thus lead to performance degradation in standard mode. Furthermore, element-by-element mode performs best when you connect array inputs and outputs to auto-indexing tunnels, as shown in the following image.