AI Engine API User Guide (AIE) 2023.2
|
Loading...
Searching...
No Matches
Floating-point Conversion
Overview
Functions | |
template<typename TR = cint32> requires (Utils::is_one_of_v<TR, cint16, cint32>) | |
auto | aie::to_fixed (cfloat a, int shift=0) |
Convert a floating point value into a fixed-point value. | |
template<typename TR = int32, unsigned Elems> requires (arch::is(arch::AIE_ML)) | |
auto | aie::to_fixed (const vector< bfloat16, Elems > &v, int shift=0) -> vector< TR, Elems > |
Convert the elements in a bfloat16 vector into fixed-point values. | |
template<typename TR = cint32, unsigned Elems> requires ((arch::is(arch::AIE) || (arch::is(arch::AIE_ML) && __AIE_API_COMPLEX_FP32_EMULATION__ == 1)) && Utils::is_one_of_v<TR, cint16, cint32>) | |
auto | aie::to_fixed (const vector< cfloat, Elems > &v, int shift=0) -> vector< TR, Elems > |
Convert the elements in a floating point vector into fixed-point values. | |
template<typename TR = int32, unsigned Elems> requires (Utils::is_one_of_v<TR, int16, int32>) | |
auto | aie::to_fixed (const vector< float, Elems > &v, int shift=0) -> vector< TR, Elems > |
Convert the elements in a floating point vector into fixed-point values. | |
template<typename TR = int32> requires (Utils::is_one_of_v<TR, int8, int16, int32>) | |
auto | aie::to_fixed (float a, int shift=0) |
Convert a floating point value into a fixed-point value. | |
template<typename TR = float, typename T , unsigned Elems> requires (Utils::is_one_of_v<T, int16, int32>) | |
auto | aie::to_float (const vector< T, Elems > &v, int shift=0) -> vector< TR, Elems > |
Convert the elements in a real fixed-point vector into floating point values. | |
template<typename TR = float> | |
auto | aie::to_float (int a, int shift=0) |
Convert a fixed-point value into a floating point value. | |
template<typename TR = cfloat, typename T > requires (Utils::is_one_of_v<T, cint16, cint32>) | |
auto | aie::to_float (T a, int shift=0) |
Convert a complex fixed-point value into a floating point value. | |
Function Documentation
◆ to_fixed() [1/5]
template<typename TR = cint32>
requires (Utils::is_one_of_v<TR, cint16, cint32>)
requires (Utils::is_one_of_v<TR, cint16, cint32>)
auto aie::to_fixed | ( | cfloat | a, |
int | shift = 0 |
||
) |
Convert a floating point value into a fixed-point value.
- Parameters
-
a Input value. shift Position of the point in the output value.
- Template Parameters
-
TR Type of the returned fixed-point value.
◆ to_fixed() [2/5]
template<typename TR = int32, unsigned Elems>
requires (arch::is(arch::AIE_ML))
requires (arch::is(arch::AIE_ML))
auto aie::to_fixed | ( | const vector< bfloat16, Elems > & | v, |
int | shift = 0 |
||
) | -> vector<TR, Elems> |
Convert the elements in a bfloat16 vector into fixed-point values.
- Note
- This conversion performs floor rounding, regardless of the rounding_mode configured by the user.
- Parameters
-
v Input vector. shift Position of the point in the output values.
- Template Parameters
-
TR Type of the returned fixed-point values.
◆ to_fixed() [3/5]
template<typename TR = cint32, unsigned Elems>
requires ((arch::is(arch::AIE) || (arch::is(arch::AIE_ML) && __AIE_API_COMPLEX_FP32_EMULATION__ == 1)) && Utils::is_one_of_v<TR, cint16, cint32>)
requires ((arch::is(arch::AIE) || (arch::is(arch::AIE_ML) && __AIE_API_COMPLEX_FP32_EMULATION__ == 1)) && Utils::is_one_of_v<TR, cint16, cint32>)
auto aie::to_fixed | ( | const vector< cfloat, Elems > & | v, |
int | shift = 0 |
||
) | -> vector<TR, Elems> |
Convert the elements in a floating point vector into fixed-point values.
- Parameters
-
v Input vector. shift Position of the point in the output values.
- Template Parameters
-
TR Type of the returned fixed-point values.
◆ to_fixed() [4/5]
template<typename TR = int32, unsigned Elems>
requires (Utils::is_one_of_v<TR, int16, int32>)
requires (Utils::is_one_of_v<TR, int16, int32>)
auto aie::to_fixed | ( | const vector< float, Elems > & | v, |
int | shift = 0 |
||
) | -> vector<TR, Elems> |
Convert the elements in a floating point vector into fixed-point values.
- Parameters
-
v Input vector. shift Position of the point in the output values.
- Template Parameters
-
TR Type of the returned fixed-point values.
◆ to_fixed() [5/5]
template<typename TR = int32>
requires (Utils::is_one_of_v<TR, int8, int16, int32>)
requires (Utils::is_one_of_v<TR, int8, int16, int32>)
auto aie::to_fixed | ( | float | a, |
int | shift = 0 |
||
) |
Convert a floating point value into a fixed-point value.
- Parameters
-
a Input value. shift Position of the point in the output value.
- Template Parameters
-
TR Type of the returned fixed-point value.
◆ to_float() [1/3]
template<typename TR = float, typename T , unsigned Elems>
requires (Utils::is_one_of_v<T, int16, int32>)
requires (Utils::is_one_of_v<T, int16, int32>)
auto aie::to_float | ( | const vector< T, Elems > & | v, |
int | shift = 0 |
||
) | -> vector<TR, Elems> |
Convert the elements in a real fixed-point vector into floating point values.
- Parameters
-
v Input vector. shift Position of the point in the input values.
◆ to_float() [2/3]
template<typename TR = float>
auto aie::to_float | ( | int | a, |
int | shift = 0 |
||
) |
Convert a fixed-point value into a floating point value.
- Parameters
-
a Input value. shift Position of the point in the input value.
◆ to_float() [3/3]
template<typename TR = cfloat, typename T >
requires (Utils::is_one_of_v<T, cint16, cint32>)
requires (Utils::is_one_of_v<T, cint16, cint32>)
auto aie::to_float | ( | T | a, |
int | shift = 0 |
||
) |
Convert a complex fixed-point value into a floating point value.
- Parameters
-
a Input value. shift Position of the point in the input value.