LabVIEW provides estimation tools to help you determine the resources your algorithm requires of the FPGA, as well as the performance your algorithm can achieve.
If your algorithm has array inputs or outputs, standard mode provides performance and resource estimates for processing all array elements in one call of the FPGA IP VI.
On the VI tab, click FPGA Estimates to display the estimation options.
Specify a desired clock rate and throughput rate. Consider the processing capabilities of your FPGA target and at what frequency you want the algorithm to return outputs.
These rates are for estimation purposes only. Other parts of the application, such as a top-level VI, ignore the rates you specify within the VI Estimation dialog box.
Select Standard from the Input Mode and Output Mode pull-down menus.
Click FPGA Estimate to perform the estimation.
The estimation results display in the Algorithm Estimates pane. The following image displays a subset of the pane.
- Clock Rate—The highest estimated clock rate the FPGA IP VI can achieve.
- Throughput—The throughput is calculated by the following formula: Throughput = Requested Clock Rate/Initiation Interval. If the FPGA IP VI has an array input, the entire array is the sample.
- Latency—The number of clock cycles, in a steady state, that elapse between the FPGA IP VI accepting an input and producing the corresponding output.
- Initiation Interval (II)—The number of clock cycles that must elapse between calls to the FPGA IP VI.
If an FPGA IP VI has multiple loops, the output interval depends on the loops connected to the output and might not correlate to the initiation interval.
You can use the Advanced tab in the VI Estimation dialog box to access options that provide more precise control of FPGA resource utilization:
- Routing Margin—The routing margin affects how FPGA resources connect together. If you are having trouble achieving your target clock rate, you can increase the routing margin to achieve better results, but note that increasing the routing margin increases the number of flip-flops your algorithm requires.
- Resource Budget—Adjust the resource budget sliders to specify what percentage of the total FPGA resources is available for the circuit. By default LabVIEW makes all FPGA resources available in equal proportion. Disable Link resource budgets to specify individual budgets for each FPGA resource.