Intel® High Level Synthesis Compiler Pro Edition: Reference Manual

ID 683349
Date 4/01/2024
Public
Document Table of Contents

12.1. Hardware Implementation Control for Math Functions

For math functions performed on certain data types, you can control whether the function is implemented in hardware using DSP blocks or soft logic (ALMs).

You can review the math function hardware implementation by reviewing the details of the instruction nodes for the math function in System Viewer of the High-Level Design Reports (report.html).

For an example of controlling the hardware implementation of math functions, refer to the following tutorial:
<quartus_installdir>/hls/examples/tutorials/best_practices/control_of_dsp_usage

Supported Data Types and Math Functions

Refer to Math Function Hardware Implementation Summary.

Global-Scope Control

You can control the hardware implementation of supported math functions at a global scope for your design by specifying the --dsp-mode option of the i++ command.

If you use both global-scope control and local-scope control, any local-scope controls defined in your component or tasks override the global-scope control setting.

For details, refer to The --dsp-mode Command Option.

Local-Scope Control

You can control the hardware implementation of supported math functions at a local scope with the ihc::math_dsp_control function. This function is defined in the HLS/math_dsp_control.h header file.

If you use both local-scope control and global-scope control, any local-scope controls defined in your component or tasks override the global-scope control setting.

For details, refer to The ihc::math_dsp_control Function.