Intel® High Level Synthesis Compiler Pro Edition: Reference Manual

ID 683349
Date 10/02/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

13.19. Intel® HLS Compiler Pro Edition Arbitrary Precision Data Types

Table 59.  Arbitrary Precision Data Types Supported by the Intel® HLS Compiler Pro Edition
Data Type Intel Header File Description
ac_int HLS/ac_int.h Arbitrary-width integer support
To learn more, review the following tutorials:
  • <quartus_installdir>/hls/examples/tutorials/ac_datatypes/ac_int_basic_ops
  • <quartus_installdir>/hls/examples/tutorials/ac_datatypes/ac_int_overflow
  • <quartus_installdir>/hls/examples/tutorials/best_practices/struct_interfaces
ac_fixed HLS/ac_fixed.h Arbitrary-precision fixed-point number support

To learn more, review the tutorial: <quartus_installdir>/hls/examples/tutorials/ac_datatypes/ac_fixed_constructor

HLS/ac_fixed_math.h Support for some nonstandard math functions for arbitrary-precision fixed-point data types

To learn more, review the tutorial: <quartus_installdir>/hls/examples/tutorials/ac_datatypes/ac_fixed_math_library

ac_complex HLS/ac_complex.h Complex number support
hls_float HLS/hls_float.h Arbitrary-precision floating-point number support
HLS/hls_float_math.h Support for commonly used exponential, logarithmic, power, and trigonometric functions.
To learn more, review the following tutorials:
  • <quartus_installdir>/hls/examples/tutorials/hls_float/1_reduced_doubl
  • <quartus_installdir>/hls/examples/tutorials/hls_float/2_explicit_arithmetic
  • <quartus_installdir>/hls/examples/tutorials/hls_float/3_conversions
Table 60.   Intel® HLS Compiler ac_int Debugging Tools Summary
Tool Description
DEBUG_AC_INT_WARNING Emits a warning for each detected overflow.
DEBUG_AC_INT_ERROR

Emits a message for the first overflow that is detected and then exits the component with an error.

DEBUG_AC_INT_WARNING ac_int Debugging Tool

Macro Syntax
#define DEBUG_AC_INT_WARNING

If you use this macro, declare it in your code before you declare #include HLS/ac_int.h.

i++ Command Option Syntax
-D DEBUG_AC_INT_WARNING
Description

Enables runtime tracking of ac_int data types during x86 emulation (the -march=x86-64 option, which the default option, of the i++ command).

This tool uses additional resources for tracking the overflow and empty constructors, and emits a warning for each detected overflow.

To learn more, review the tutorial: <quartus_installdir>/hls/examples/tutorials/ac_datatypes/ac_int_overflow.

DEBUG_AC_INT_ERROR ac_int Debugging Tool

Macro Syntax
#define DEBUG_AC_INT_ERROR

If you use this macro, declare it in your code before you declare #include HLS/ac_int.h.

i++ Command Option Syntax
-D DEBUG_AC_INT_ERROR
Description

Enables runtime tracking of ac_int data types during x86 emulation of your component (the -march=x86-64 option, which the default option, of the i++ command).

This tool uses additional resources to track the overflow and empty constructors, and emits a message for the first overflow that is detected and then exits the component with an error.

To learn more, review the tutorial: <quartus_installdir>/hls/examples/tutorials/ac_datatypes/ac_int_overflow