Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Vector Absolute Value
[Basic Math Functions]
Computes the absolute value of a vector on an element-by-element basis. More...
Functions | |
void | arm_abs_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Floating-point vector absolute value. | |
void | arm_abs_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Q15 vector absolute value. | |
void | arm_abs_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Q31 vector absolute value. | |
void | arm_abs_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize) |
Q7 vector absolute value. |
Detailed Description
Computes the absolute value of a vector on an element-by-element basis.
pDst[n] = abs(pSrc[n]), 0 <= n < blockSize.
The functions support in-place computation allowing the source and destination pointers to reference the same memory buffer. There are separate functions for floating-point, Q7, Q15, and Q31 data types.
Function Documentation
void arm_abs_f32 | ( | float32_t * | pSrc, |
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Floating-point vector absolute value.
- Parameters:
-
[in] *pSrc points to the input buffer [out] *pDst points to the output buffer [in] blockSize number of samples in each vector
- Returns:
- none.
Definition at line 75 of file arm_abs_f32.c.
void arm_abs_q15 | ( | q15_t * | pSrc, |
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Q15 vector absolute value.
- Parameters:
-
[in] *pSrc points to the input buffer [out] *pDst points to the output buffer [in] blockSize number of samples in each vector
- Returns:
- none.
Scaling and Overflow Behavior:
- The function uses saturating arithmetic. The Q15 value -1 (0x8000) will be saturated to the maximum allowable positive value 0x7FFF.
Definition at line 65 of file arm_abs_q15.c.
void arm_abs_q31 | ( | q31_t * | pSrc, |
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Q31 vector absolute value.
- Parameters:
-
[in] *pSrc points to the input buffer [out] *pDst points to the output buffer [in] blockSize number of samples in each vector
- Returns:
- none.
Scaling and Overflow Behavior:
- The function uses saturating arithmetic. The Q31 value -1 (0x80000000) will be saturated to the maximum allowable positive value 0x7FFFFFFF.
Definition at line 66 of file arm_abs_q31.c.
void arm_abs_q7 | ( | q7_t * | pSrc, |
q7_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Q7 vector absolute value.
- Parameters:
-
[in] *pSrc points to the input buffer [out] *pDst points to the output buffer [in] blockSize number of samples in each vector
- Returns:
- none.
- Conditions for optimum performance
- Input and output buffers should be aligned by 32-bit
Scaling and Overflow Behavior:
- The function uses saturating arithmetic. The Q7 value -1 (0x80) will be saturated to the maximum allowable positive value 0x7F.
Definition at line 69 of file arm_abs_q7.c.
Generated on Tue Jul 12 2022 12:22:37 by
