|
AI Engine-ML Intrinsics User Guide (v2024.2)
|
Loading...
Searching...
No Matches
Emulated Multiply-accumulate of Complex 32b x Complex 32b datatypes
Matrix multiplications in which matrix A has data elements of complex 32 bit and matrix B has data elements of complex 32 bit. These operations are emulated on top of Multiply-accumulate of 32b x 16b complex integer datatypes and might not have optimal performance. More...
Overview
Matrix multiplications in which matrix A has data elements of complex 32 bit and matrix B has data elements of complex 32 bit. These operations are emulated on top of Multiply-accumulate of 32b x 16b complex integer datatypes and might not have optimal performance.
For an explanation how these operations works see Multiply Accumulate.
Emulated Multiplication of Channel by channel complex multiplication of (1x1) with (1x1) | |
| v8cacc64 | mul_elem_8 (v8cint32 a, v8cint32 b) |
| v8cacc64 | negmul_elem_8 (v8cint32 a, v8cint32 b) |
| v8cacc64 | mac_elem_8 (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
| v8cacc64 | msc_elem_8 (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
Emulated Multiplication of Channel by channel complex multiplication of (1x1) with (1x1) with dynamic negation of multiplication result | |
| v8cacc64 | mul_elem_8_conf (v8cint32 a, v8cint32 b, int sub_mul) |
| v8cacc64 | negmul_elem_8_conf (v8cint32 a, v8cint32 b, int sub_mul) |
Emulated Multiplication of Channel by channel complex multiplication of (1x1) with (1x1) with dynamic negation of multiplication result, negation of acc1 | |
| v8cacc64 | mac_elem_8_conf (v8cint32 a, v8cint32 b, v8cacc64 acc1, int sub_mul, int sub_acc1) |
| v8cacc64 | msc_elem_8_conf (v8cint32 a, v8cint32 b, v8cacc64 acc1, int sub_mul, int sub_acc1) |
Emulated Multiplication of Channel by channel complex multiplication of (1x1) with (1x1) with dynamic negation of multiplication result, negation of acc1, and zeroing of acc1 | |
| v8cacc64 | mac_elem_8_conf (v8cint32 a, v8cint32 b, v8cacc64 acc1, int zero_acc1, int sub_mask, int sub_mul, int sub_acc1) |
| v8cacc64 | msc_elem_8_conf (v8cint32 a, v8cint32 b, v8cacc64 acc1, int zero_acc1, int sub_mask, int sub_mul, int sub_acc1) |
Emulated Multiplication of Channel by channel complex multiplication of (1x2) with (2x1) with a & b conjugate | |
| v8cacc64 | mul_elem_8_cc (v8cint32 a, v8cint32 b) |
| v8cacc64 | negmul_elem_8_cc (v8cint32 a, v8cint32 b) |
| v8cacc64 | mac_elem_8_cc (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
| v8cacc64 | msc_elem_8_cc (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
| v8cacc64 | mul_elem_8_cn (v8cint32 a, v8cint32 b) |
| v8cacc64 | negmul_elem_8_cn (v8cint32 a, v8cint32 b) |
| v8cacc64 | mac_elem_8_cn (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
| v8cacc64 | msc_elem_8_cn (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
| v8cacc64 | mul_elem_8_nc (v8cint32 a, v8cint32 b) |
| v8cacc64 | negmul_elem_8_nc (v8cint32 a, v8cint32 b) |
| v8cacc64 | mac_elem_8_nc (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
| v8cacc64 | msc_elem_8_nc (v8cint32 a, v8cint32 b, v8cacc64 acc1) |
Function Documentation
◆ mac_elem_8()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ mac_elem_8_cc()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ mac_elem_8_cn()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ mac_elem_8_conf() [1/2]
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input sub_mul Negation mask of multiplication result sub_acc1 Negation mask of acc1
- Returns
- Result of operation
◆ mac_elem_8_conf() [2/2]
| v8cacc64 mac_elem_8_conf | ( | v8cint32 | a, |
| v8cint32 | b, | ||
| v8cacc64 | acc1, | ||
| int | zero_acc1, | ||
| int | sub_mask, | ||
| int | sub_mul, | ||
| int | sub_acc1 | ||
| ) |
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input zero_acc1 Zeroing mask for acc1 sub_mask Negation mask of complex multiplication sub_mul Negation mask of multiplication result sub_acc1 Negation mask of acc1
- Returns
- Result of operation
◆ mac_elem_8_nc()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ msc_elem_8()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ msc_elem_8_cc()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ msc_elem_8_cn()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ msc_elem_8_conf() [1/2]
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input sub_mul Negation mask of multiplication result sub_acc1 Negation mask of acc1
- Returns
- Result of operation
◆ msc_elem_8_conf() [2/2]
| v8cacc64 msc_elem_8_conf | ( | v8cint32 | a, |
| v8cint32 | b, | ||
| v8cacc64 | acc1, | ||
| int | zero_acc1, | ||
| int | sub_mask, | ||
| int | sub_mul, | ||
| int | sub_acc1 | ||
| ) |
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input zero_acc1 Zeroing mask for acc1 sub_mask Negation mask of complex multiplication sub_mul Negation mask of multiplication result sub_acc1 Negation mask of acc1
- Returns
- Result of operation
◆ msc_elem_8_nc()
- Parameters
-
a Matrix A b Matrix B acc1 Accumulator 1 input
- Returns
- Result of operation
◆ mul_elem_8()
- Parameters
-
a Matrix A b Matrix B
- Returns
- Result of operation
◆ mul_elem_8_cc()
- Parameters
-
a Matrix A b Matrix B
- Returns
- Result of operation
◆ mul_elem_8_cn()
- Parameters
-
a Matrix A b Matrix B
- Returns
- Result of operation
◆ mul_elem_8_conf()
- Parameters
-
a Matrix A b Matrix B sub_mul Negation mask for multiplication result
- Returns
- Result of operation
◆ mul_elem_8_nc()
- Parameters
-
a Matrix A b Matrix B
- Returns
- Result of operation
◆ negmul_elem_8()
- Parameters
-
a Matrix A b Matrix B
- Returns
- Result of operation
◆ negmul_elem_8_cc()
- Parameters
-
a Matrix A b Matrix B
- Returns
- Result of operation
◆ negmul_elem_8_cn()
- Parameters
-
a Matrix A b Matrix B
- Returns
- Result of operation
◆ negmul_elem_8_conf()
- Parameters
-
a Matrix A b Matrix B sub_mul Negation mask for multiplication result. If a bit of sub_mul is set the corresponding vector lane of the output accumulator will be negated.
- Returns
- Result of operation