CMSIS2000
0.0.7
|
Go to the source code of this file.
Data Structures | |
struct | arm_bilinear_interp_instance_f32 |
Instance structure for the floating-point bilinear interpolation function. More... | |
struct | arm_bilinear_interp_instance_q15 |
Instance structure for the Q15 bilinear interpolation function. More... | |
struct | arm_bilinear_interp_instance_q31 |
Instance structure for the Q31 bilinear interpolation function. More... | |
struct | arm_bilinear_interp_instance_q7 |
Instance structure for the Q15 bilinear interpolation function. More... | |
struct | arm_biquad_cas_df1_32x64_ins_q31 |
Instance structure for the high precision Q31 Biquad cascade filter. More... | |
struct | arm_biquad_cascade_df2T_instance_f32 |
Instance structure for the floating-point transposed direct form II Biquad cascade filter. More... | |
struct | arm_biquad_casd_df1_inst_f32 |
Instance structure for the floating-point Biquad cascade filter. More... | |
struct | arm_biquad_casd_df1_inst_q15 |
Instance structure for the Q15 Biquad cascade filter. More... | |
struct | arm_biquad_casd_df1_inst_q31 |
Instance structure for the Q31 Biquad cascade filter. More... | |
struct | arm_cfft_radix2_instance_f32 |
Instance structure for the floating-point CFFT/CIFFT function. More... | |
struct | arm_cfft_radix2_instance_q15 |
Instance structure for the Q15 CFFT/CIFFT function. More... | |
struct | arm_cfft_radix2_instance_q31 |
Instance structure for the Radix-2 Q31 CFFT/CIFFT function. More... | |
struct | arm_cfft_radix4_instance_f32 |
Instance structure for the floating-point CFFT/CIFFT function. More... | |
struct | arm_cfft_radix4_instance_q15 |
Instance structure for the Q15 CFFT/CIFFT function. More... | |
struct | arm_cfft_radix4_instance_q31 |
Instance structure for the Q31 CFFT/CIFFT function. More... | |
struct | arm_dct4_instance_f32 |
Instance structure for the floating-point DCT4/IDCT4 function. More... | |
struct | arm_dct4_instance_q15 |
Instance structure for the Q15 DCT4/IDCT4 function. More... | |
struct | arm_dct4_instance_q31 |
Instance structure for the Q31 DCT4/IDCT4 function. More... | |
struct | arm_fir_decimate_instance_f32 |
Instance structure for the floating-point FIR decimator. More... | |
struct | arm_fir_decimate_instance_q15 |
Instance structure for the Q15 FIR decimator. More... | |
struct | arm_fir_decimate_instance_q31 |
Instance structure for the Q31 FIR decimator. More... | |
struct | arm_fir_instance_f32 |
Instance structure for the floating-point FIR filter. More... | |
struct | arm_fir_instance_q15 |
Instance structure for the Q15 FIR filter. More... | |
struct | arm_fir_instance_q31 |
Instance structure for the Q31 FIR filter. More... | |
struct | arm_fir_instance_q7 |
Instance structure for the Q7 FIR filter. More... | |
struct | arm_fir_interpolate_instance_f32 |
Instance structure for the floating-point FIR interpolator. More... | |
struct | arm_fir_interpolate_instance_q15 |
Instance structure for the Q15 FIR interpolator. More... | |
struct | arm_fir_interpolate_instance_q31 |
Instance structure for the Q31 FIR interpolator. More... | |
struct | arm_fir_lattice_instance_f32 |
Instance structure for the floating-point FIR lattice filter. More... | |
struct | arm_fir_lattice_instance_q15 |
Instance structure for the Q15 FIR lattice filter. More... | |
struct | arm_fir_lattice_instance_q31 |
Instance structure for the Q31 FIR lattice filter. More... | |
struct | arm_fir_sparse_instance_f32 |
Instance structure for the floating-point sparse FIR filter. More... | |
struct | arm_fir_sparse_instance_q15 |
Instance structure for the Q15 sparse FIR filter. More... | |
struct | arm_fir_sparse_instance_q31 |
Instance structure for the Q31 sparse FIR filter. More... | |
struct | arm_fir_sparse_instance_q7 |
Instance structure for the Q7 sparse FIR filter. More... | |
struct | arm_iir_lattice_instance_f32 |
Instance structure for the floating-point IIR lattice filter. More... | |
struct | arm_iir_lattice_instance_q15 |
Instance structure for the Q15 IIR lattice filter. More... | |
struct | arm_iir_lattice_instance_q31 |
Instance structure for the Q31 IIR lattice filter. More... | |
struct | arm_linear_interp_instance_f32 |
Instance structure for the floating-point Linear Interpolate function. More... | |
struct | arm_lms_instance_f32 |
Instance structure for the floating-point LMS filter. More... | |
struct | arm_lms_instance_q15 |
Instance structure for the Q15 LMS filter. More... | |
struct | arm_lms_instance_q31 |
Instance structure for the Q31 LMS filter. More... | |
struct | arm_lms_norm_instance_f32 |
Instance structure for the floating-point normalized LMS filter. More... | |
struct | arm_lms_norm_instance_q15 |
Instance structure for the Q15 normalized LMS filter. More... | |
struct | arm_lms_norm_instance_q31 |
Instance structure for the Q31 normalized LMS filter. More... | |
struct | arm_matrix_instance_f32 |
Instance structure for the floating-point matrix structure. More... | |
struct | arm_matrix_instance_q15 |
Instance structure for the Q15 matrix structure. More... | |
struct | arm_matrix_instance_q31 |
Instance structure for the Q31 matrix structure. More... | |
struct | arm_pid_instance_f32 |
Instance structure for the floating-point PID Control. More... | |
struct | arm_pid_instance_q15 |
Instance structure for the Q15 PID Control. More... | |
struct | arm_pid_instance_q31 |
Instance structure for the Q31 PID Control. More... | |
struct | arm_rfft_instance_f32 |
Instance structure for the floating-point RFFT/RIFFT function. More... | |
struct | arm_rfft_instance_q15 |
Instance structure for the Q15 RFFT/RIFFT function. More... | |
struct | arm_rfft_instance_q31 |
Instance structure for the Q31 RFFT/RIFFT function. More... |
Macros | |
#define | __CMSIS_GENERIC /* disable NVIC and Systick functions */ |
#define | __PACKq7(v0, v1, v2, v3) |
definition to pack four 8 bit values. | |
#define | __SIMD32(addr) (*(__packed int32_t **) & (addr)) |
definition to read/write two 16 bit values. | |
#define | __SIMD64(addr) (*(int64_t **) & (addr)) |
#define | _SIMD32_OFFSET(addr) (*(__packed int32_t * ) (addr)) |
#define | ALIGN4 |
Macro for Unaligned Support. | |
#define | DELTA_Q15 0x5 |
#define | DELTA_Q31 (0x100) |
Macros required for reciprocal calculation in Normalized LMS. | |
#define | INDEX_MASK 0x0000003F |
#define | INPUT_SPACING 0xB60B61 |
Macros required for SINE and COSINE Controller functions. | |
#define | PI 3.14159265358979f |
#define | TABLE_SIZE 256 |
Macros required for SINE and COSINE Fast math approximations. | |
#define | TABLE_SPACING_Q15 0x80 |
#define | TABLE_SPACING_Q31 0x800000 |
Typedefs | |
typedef float | float32_t |
32-bit floating-point type definition. | |
typedef double | float64_t |
64-bit floating-point type definition. | |
typedef int16_t | q15_t |
16-bit fractional data type in 1.15 format. | |
typedef int32_t | q31_t |
32-bit fractional data type in 1.31 format. | |
typedef int64_t | q63_t |
64-bit fractional data type in 1.63 format. | |
typedef int8_t | q7_t |
8-bit fractional data type in 1.7 format. |
Enumerations | |
enum | arm_status { ARM_MATH_SUCCESS = 0, ARM_MATH_ARGUMENT_ERROR = -1, ARM_MATH_LENGTH_ERROR = -2, ARM_MATH_SIZE_MISMATCH = -3, ARM_MATH_NANINF = -4, ARM_MATH_SINGULAR = -5, ARM_MATH_TEST_FAILURE = -6 } |
Error status returned by some functions in the library. 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. | |
void | arm_add_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize) |
Floating-point vector addition. | |
void | arm_add_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize) |
Q15 vector addition. | |
void | arm_add_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize) |
Q31 vector addition. | |
void | arm_add_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize) |
Q7 vector addition. | |
__STATIC_INLINE float32_t | arm_bilinear_interp_f32 (const arm_bilinear_interp_instance_f32 *S, float32_t X, float32_t Y) |
Floating-point bilinear interpolation. | |
__STATIC_INLINE q15_t | arm_bilinear_interp_q15 (arm_bilinear_interp_instance_q15 *S, q31_t X, q31_t Y) |
Q15 bilinear interpolation. | |
__STATIC_INLINE q31_t | arm_bilinear_interp_q31 (arm_bilinear_interp_instance_q31 *S, q31_t X, q31_t Y) |
Q31 bilinear interpolation. | |
__STATIC_INLINE q7_t | arm_bilinear_interp_q7 (arm_bilinear_interp_instance_q7 *S, q31_t X, q31_t Y) |
Q7 bilinear interpolation. | |
void | arm_biquad_cas_df1_32x64_init_q31 (arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift) |
void | arm_biquad_cas_df1_32x64_q31 (const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
void | arm_biquad_cascade_df1_f32 (const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Processing function for the floating-point Biquad cascade filter. | |
void | arm_biquad_cascade_df1_fast_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Fast but less precise processing function for the Q15 Biquad cascade filter for Cortex-M3 and Cortex-M4. | |
void | arm_biquad_cascade_df1_fast_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Fast but less precise processing function for the Q31 Biquad cascade filter for Cortex-M3 and Cortex-M4. | |
void | arm_biquad_cascade_df1_init_f32 (arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState) |
Initialization function for the floating-point Biquad cascade filter. | |
void | arm_biquad_cascade_df1_init_q15 (arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift) |
Initialization function for the Q15 Biquad cascade filter. | |
void | arm_biquad_cascade_df1_init_q31 (arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift) |
Initialization function for the Q31 Biquad cascade filter. | |
void | arm_biquad_cascade_df1_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the Q15 Biquad cascade filter. | |
void | arm_biquad_cascade_df1_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the Q31 Biquad cascade filter. | |
void | arm_biquad_cascade_df2T_f32 (const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Processing function for the floating-point transposed direct form II Biquad cascade filter. | |
void | arm_biquad_cascade_df2T_init_f32 (arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState) |
Initialization function for the floating-point transposed direct form II Biquad cascade filter. | |
void | arm_bitreversal_f32 (float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab) |
In-place bit reversal function. | |
void | arm_bitreversal_q15 (q15_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab) |
In-place bit reversal function. | |
void | arm_bitreversal_q31 (q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab) |
In-place bit reversal function. | |
void | arm_cfft_radix2_f32 (const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc) |
Processing function for the floating-point CFFT/CIFFT. | |
arm_status | arm_cfft_radix2_init_f32 (arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag) |
Initialization function for the floating-point CFFT/CIFFT. | |
arm_status | arm_cfft_radix2_init_q15 (arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag) |
Initialization function for the Q15 CFFT/CIFFT. | |
arm_status | arm_cfft_radix2_init_q31 (arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag) |
Initialization function for the Radix-2 Q31 CFFT/CIFFT. | |
void | arm_cfft_radix2_q15 (const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc) |
Processing function for the Q15 CFFT/CIFFT. | |
void | arm_cfft_radix2_q31 (const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc) |
Processing function for the Radix-2 Q31 CFFT/CIFFT. | |
void | arm_cfft_radix4_f32 (const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc) |
Processing function for the floating-point CFFT/CIFFT. | |
arm_status | arm_cfft_radix4_init_f32 (arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag) |
Initialization function for the floating-point CFFT/CIFFT. | |
arm_status | arm_cfft_radix4_init_q15 (arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag) |
Initialization function for the Q15 CFFT/CIFFT. | |
arm_status | arm_cfft_radix4_init_q31 (arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag) |
Initialization function for the Q31 CFFT/CIFFT. | |
void | arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc) |
Processing function for the Q15 CFFT/CIFFT. | |
void | arm_cfft_radix4_q31 (const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc) |
Processing function for the Q31 CFFT/CIFFT. | |
__STATIC_INLINE void | arm_circularRead_f32 (int32_t *circBuffer, int32_t L, int32_t *readOffset, int32_t bufferInc, int32_t *dst, int32_t *dst_base, int32_t dst_length, int32_t dstInc, uint32_t blockSize) |
floating-point Circular Read function. | |
__STATIC_INLINE void | arm_circularRead_q15 (q15_t *circBuffer, int32_t L, int32_t *readOffset, int32_t bufferInc, q15_t *dst, q15_t *dst_base, int32_t dst_length, int32_t dstInc, uint32_t blockSize) |
Q15 Circular Read function. | |
__STATIC_INLINE void | arm_circularRead_q7 (q7_t *circBuffer, int32_t L, int32_t *readOffset, int32_t bufferInc, q7_t *dst, q7_t *dst_base, int32_t dst_length, int32_t dstInc, uint32_t blockSize) |
Q7 Circular Read function. | |
__STATIC_INLINE void | arm_circularWrite_f32 (int32_t *circBuffer, int32_t L, uint16_t *writeOffset, int32_t bufferInc, const int32_t *src, int32_t srcInc, uint32_t blockSize) |
end of SQRT group | |
__STATIC_INLINE void | arm_circularWrite_q15 (q15_t *circBuffer, int32_t L, uint16_t *writeOffset, int32_t bufferInc, const q15_t *src, int32_t srcInc, uint32_t blockSize) |
Q15 Circular write function. | |
__STATIC_INLINE void | arm_circularWrite_q7 (q7_t *circBuffer, int32_t L, uint16_t *writeOffset, int32_t bufferInc, const q7_t *src, int32_t srcInc, uint32_t blockSize) |
Q7 Circular write function. | |
__STATIC_INLINE void | arm_clarke_f32 (float32_t Ia, float32_t Ib, float32_t *pIalpha, float32_t *pIbeta) |
Floating-point Clarke transform. | |
__STATIC_INLINE void | arm_clarke_q31 (q31_t Ia, q31_t Ib, q31_t *pIalpha, q31_t *pIbeta) |
Clarke transform for Q31 version. | |
void | arm_cmplx_conj_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples) |
Floating-point complex conjugate. | |
void | arm_cmplx_conj_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples) |
Q15 complex conjugate. | |
void | arm_cmplx_conj_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples) |
Q31 complex conjugate. | |
void | arm_cmplx_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult) |
Floating-point complex dot product. | |
void | arm_cmplx_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult) |
Q15 complex dot product. | |
void | arm_cmplx_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult) |
Q31 complex dot product. | |
void | arm_cmplx_mag_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples) |
Floating-point complex magnitude. | |
void | arm_cmplx_mag_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples) |
Q15 complex magnitude. | |
void | arm_cmplx_mag_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples) |
Q31 complex magnitude. | |
void | arm_cmplx_mag_squared_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples) |
Floating-point complex magnitude squared. | |
void | arm_cmplx_mag_squared_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples) |
Q15 complex magnitude squared. | |
void | arm_cmplx_mag_squared_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples) |
Q31 complex magnitude squared. | |
void | arm_cmplx_mult_cmplx_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples) |
Floating-point complex-by-complex multiplication. | |
void | arm_cmplx_mult_cmplx_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples) |
Q15 complex-by-complex multiplication. | |
void | arm_cmplx_mult_cmplx_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples) |
Q31 complex-by-complex multiplication. | |
void | arm_cmplx_mult_real_f32 (float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples) |
Floating-point complex-by-real multiplication. | |
void | arm_cmplx_mult_real_q15 (q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples) |
Q15 complex-by-real multiplication. | |
void | arm_cmplx_mult_real_q31 (q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples) |
Q31 complex-by-real multiplication. | |
void | arm_conv_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst) |
Convolution of floating-point sequences. | |
void | arm_conv_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2) |
Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
void | arm_conv_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst) |
Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
void | arm_conv_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst) |
Convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
void | arm_conv_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2) |
Convolution of Q15 sequences. | |
void | arm_conv_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2) |
Convolution of Q7 sequences. | |
arm_status | arm_conv_partial_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints) |
Partial convolution of floating-point sequences. | |
arm_status | arm_conv_partial_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2) |
Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
arm_status | arm_conv_partial_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints) |
Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
arm_status | arm_conv_partial_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints) |
Partial convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
arm_status | arm_conv_partial_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2) |
Partial convolution of Q15 sequences. | |
arm_status | arm_conv_partial_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2) |
Partial convolution of Q7 sequences. | |
arm_status | arm_conv_partial_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints) |
Partial convolution of Q15 sequences. | |
arm_status | arm_conv_partial_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints) |
Partial convolution of Q31 sequences. | |
arm_status | arm_conv_partial_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints) |
Partial convolution of Q7 sequences. | |
void | arm_conv_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst) |
Convolution of Q15 sequences. | |
void | arm_conv_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst) |
Convolution of Q31 sequences. | |
void | arm_conv_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst) |
Convolution of Q7 sequences. | |
void | arm_copy_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Copies the elements of a floating-point vector. | |
void | arm_copy_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Copies the elements of a Q15 vector. | |
void | arm_copy_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Copies the elements of a Q31 vector. | |
void | arm_copy_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize) |
Copies the elements of a Q7 vector. | |
void | arm_correlate_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst) |
Correlation of floating-point sequences. | |
void | arm_correlate_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch) |
Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
void | arm_correlate_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst) |
Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
void | arm_correlate_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst) |
Correlation of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4. | |
void | arm_correlate_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch) |
Correlation of Q15 sequences. | |
void | arm_correlate_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2) |
Correlation of Q7 sequences. | |
void | arm_correlate_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst) |
Correlation of Q15 sequences. | |
void | arm_correlate_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst) |
Correlation of Q31 sequences. | |
void | arm_correlate_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst) |
Correlation of Q7 sequences. | |
float32_t | arm_cos_f32 (float32_t x) |
Fast approximation to the trigonometric cosine function for floating-point data. | |
q15_t | arm_cos_q15 (q15_t x) |
Fast approximation to the trigonometric cosine function for Q15 data. | |
q31_t | arm_cos_q31 (q31_t x) |
Fast approximation to the trigonometric cosine function for Q31 data. | |
void | arm_dct4_f32 (const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer) |
Processing function for the floating-point DCT4/IDCT4. | |
arm_status | arm_dct4_init_f32 (arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize) |
Initialization function for the floating-point DCT4/IDCT4. | |
arm_status | arm_dct4_init_q15 (arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize) |
Initialization function for the Q15 DCT4/IDCT4. | |
arm_status | arm_dct4_init_q31 (arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize) |
Initialization function for the Q31 DCT4/IDCT4. | |
void | arm_dct4_q15 (const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer) |
Processing function for the Q15 DCT4/IDCT4. | |
void | arm_dct4_q31 (const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer) |
Processing function for the Q31 DCT4/IDCT4. | |
void | arm_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result) |
Dot product of floating-point vectors. | |
void | arm_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result) |
Dot product of Q15 vectors. | |
void | arm_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result) |
Dot product of Q31 vectors. | |
void | arm_dot_prod_q7 (q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result) |
Dot product of Q7 vectors. | |
void | arm_fill_f32 (float32_t value, float32_t *pDst, uint32_t blockSize) |
Fills a constant value into a floating-point vector. | |
void | arm_fill_q15 (q15_t value, q15_t *pDst, uint32_t blockSize) |
Fills a constant value into a Q15 vector. | |
void | arm_fill_q31 (q31_t value, q31_t *pDst, uint32_t blockSize) |
Fills a constant value into a Q31 vector. | |
void | arm_fill_q7 (q7_t value, q7_t *pDst, uint32_t blockSize) |
Fills a constant value into a Q7 vector. | |
void | arm_fir_decimate_f32 (const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Processing function for the floating-point FIR decimator. | |
void | arm_fir_decimate_fast_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the Q15 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4. | |
void | arm_fir_decimate_fast_q31 (arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the Q31 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4. | |
arm_status | arm_fir_decimate_init_f32 (arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize) |
Initialization function for the floating-point FIR decimator. | |
arm_status | arm_fir_decimate_init_q15 (arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize) |
Initialization function for the Q15 FIR decimator. | |
arm_status | arm_fir_decimate_init_q31 (arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize) |
Initialization function for the Q31 FIR decimator. | |
void | arm_fir_decimate_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the Q15 FIR decimator. | |
void | arm_fir_decimate_q31 (const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the Q31 FIR decimator. | |
void | arm_fir_f32 (const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Processing function for the floating-point FIR filter. | |
void | arm_fir_fast_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the fast Q15 FIR filter for Cortex-M3 and Cortex-M4. | |
void | arm_fir_fast_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the fast Q31 FIR filter for Cortex-M3 and Cortex-M4. | |
void | arm_fir_init_f32 (arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize) |
Initialization function for the floating-point FIR filter. | |
arm_status | arm_fir_init_q15 (arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize) |
Initialization function for the Q15 FIR filter. | |
void | arm_fir_init_q31 (arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize) |
Initialization function for the Q31 FIR filter. | |
void | arm_fir_init_q7 (arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize) |
Initialization function for the Q7 FIR filter. | |
void | arm_fir_interpolate_f32 (const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Processing function for the floating-point FIR interpolator. | |
arm_status | arm_fir_interpolate_init_f32 (arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize) |
Initialization function for the floating-point FIR interpolator. | |
arm_status | arm_fir_interpolate_init_q15 (arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize) |
Initialization function for the Q15 FIR interpolator. | |
arm_status | arm_fir_interpolate_init_q31 (arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize) |
Initialization function for the Q31 FIR interpolator. | |
void | arm_fir_interpolate_q15 (const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the Q15 FIR interpolator. | |
void | arm_fir_interpolate_q31 (const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the Q31 FIR interpolator. | |
void | arm_fir_lattice_f32 (const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Processing function for the floating-point FIR lattice filter. | |
void | arm_fir_lattice_init_f32 (arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState) |
Initialization function for the floating-point FIR lattice filter. | |
void | arm_fir_lattice_init_q15 (arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState) |
Initialization function for the Q15 FIR lattice filter. | |
void | arm_fir_lattice_init_q31 (arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState) |
Initialization function for the Q31 FIR lattice filter. | |
void | arm_fir_lattice_q15 (const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the Q15 FIR lattice filter. | |
void | arm_fir_lattice_q31 (const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the Q31 FIR lattice filter. | |
void | arm_fir_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the Q15 FIR filter. | |
void | arm_fir_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the Q31 FIR filter. | |
void | arm_fir_q7 (const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize) |
Processing function for the Q7 FIR filter. | |
void | arm_fir_sparse_f32 (arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize) |
Processing function for the floating-point sparse FIR filter. | |
void | arm_fir_sparse_init_f32 (arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize) |
Initialization function for the floating-point sparse FIR filter. | |
void | arm_fir_sparse_init_q15 (arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize) |
Initialization function for the Q15 sparse FIR filter. | |
void | arm_fir_sparse_init_q31 (arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize) |
Initialization function for the Q31 sparse FIR filter. | |
void | arm_fir_sparse_init_q7 (arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize) |
Initialization function for the Q7 sparse FIR filter. | |
void | arm_fir_sparse_q15 (arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize) |
Processing function for the Q15 sparse FIR filter. | |
void | arm_fir_sparse_q31 (arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize) |
Processing function for the Q31 sparse FIR filter. | |
void | arm_fir_sparse_q7 (arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize) |
Processing function for the Q7 sparse FIR filter. | |
void | arm_float_to_q15 (float32_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Converts the elements of the floating-point vector to Q15 vector. | |
void | arm_float_to_q31 (float32_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Converts the elements of the floating-point vector to Q31 vector. | |
void | arm_float_to_q7 (float32_t *pSrc, q7_t *pDst, uint32_t blockSize) |
Converts the elements of the floating-point vector to Q7 vector. | |
void | arm_iir_lattice_f32 (const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Processing function for the floating-point IIR lattice filter. | |
void | arm_iir_lattice_init_f32 (arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize) |
Initialization function for the floating-point IIR lattice filter. | |
void | arm_iir_lattice_init_q15 (arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize) |
Initialization function for the Q15 IIR lattice filter. | |
void | arm_iir_lattice_init_q31 (arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize) |
Initialization function for the Q31 IIR lattice filter. | |
void | arm_iir_lattice_q15 (const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Processing function for the Q15 IIR lattice filter. | |
void | arm_iir_lattice_q31 (const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Processing function for the Q31 IIR lattice filter. | |
__STATIC_INLINE void | arm_inv_clarke_f32 (float32_t Ialpha, float32_t Ibeta, float32_t *pIa, float32_t *pIb) |
Floating-point Inverse Clarke transform. | |
__STATIC_INLINE void | arm_inv_clarke_q31 (q31_t Ialpha, q31_t Ibeta, q31_t *pIa, q31_t *pIb) |
Inverse Clarke transform for Q31 version. | |
__STATIC_INLINE void | arm_inv_park_f32 (float32_t Id, float32_t Iq, float32_t *pIalpha, float32_t *pIbeta, float32_t sinVal, float32_t cosVal) |
Floating-point Inverse Park transform. | |
__STATIC_INLINE void | arm_inv_park_q31 (q31_t Id, q31_t Iq, q31_t *pIalpha, q31_t *pIbeta, q31_t sinVal, q31_t cosVal) |
Inverse Park transform for Q31 version. | |
__STATIC_INLINE float32_t | arm_linear_interp_f32 (arm_linear_interp_instance_f32 *S, float32_t x) |
Process function for the floating-point Linear Interpolation Function. | |
__STATIC_INLINE q15_t | arm_linear_interp_q15 (q15_t *pYData, q31_t x, uint32_t nValues) |
Process function for the Q15 Linear Interpolation Function. | |
__STATIC_INLINE q31_t | arm_linear_interp_q31 (q31_t *pYData, q31_t x, uint32_t nValues) |
Process function for the Q31 Linear Interpolation Function. | |
__STATIC_INLINE q7_t | arm_linear_interp_q7 (q7_t *pYData, q31_t x, uint32_t nValues) |
Process function for the Q7 Linear Interpolation Function. | |
void | arm_lms_f32 (const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize) |
Processing function for floating-point LMS filter. | |
void | arm_lms_init_f32 (arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize) |
Initialization function for floating-point LMS filter. | |
void | arm_lms_init_q15 (arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift) |
Initialization function for the Q15 LMS filter. | |
void | arm_lms_init_q31 (arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift) |
Initialization function for Q31 LMS filter. | |
void | arm_lms_norm_f32 (arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize) |
Processing function for floating-point normalized LMS filter. | |
void | arm_lms_norm_init_f32 (arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize) |
Initialization function for floating-point normalized LMS filter. | |
void | arm_lms_norm_init_q15 (arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift) |
Initialization function for Q15 normalized LMS filter. | |
void | arm_lms_norm_init_q31 (arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift) |
Initialization function for Q31 normalized LMS filter. | |
void | arm_lms_norm_q15 (arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize) |
Processing function for Q15 normalized LMS filter. | |
void | arm_lms_norm_q31 (arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize) |
Processing function for Q31 normalized LMS filter. | |
void | arm_lms_q15 (const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize) |
Processing function for Q15 LMS filter. | |
void | arm_lms_q31 (const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize) |
Processing function for Q31 LMS filter. | |
arm_status | arm_mat_add_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst) |
Floating-point matrix addition. | |
arm_status | arm_mat_add_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst) |
Q15 matrix addition. | |
arm_status | arm_mat_add_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst) |
Q31 matrix addition. | |
void | arm_mat_init_f32 (arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData) |
Floating-point matrix initialization. | |
void | arm_mat_init_q15 (arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData) |
Q15 matrix initialization. | |
void | arm_mat_init_q31 (arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData) |
Q31 matrix initialization. | |
arm_status | arm_mat_inverse_f32 (const arm_matrix_instance_f32 *src, arm_matrix_instance_f32 *dst) |
end of PID group | |
arm_status | arm_mat_mult_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst) |
Floating-point matrix multiplication. | |
arm_status | arm_mat_mult_fast_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState) |
Q15 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4. | |
arm_status | arm_mat_mult_fast_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst) |
Q31 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4. | |
arm_status | arm_mat_mult_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState) |
Q15 matrix multiplication. | |
arm_status | arm_mat_mult_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst) |
Q31 matrix multiplication. | |
arm_status | arm_mat_scale_f32 (const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst) |
Floating-point matrix scaling. | |
arm_status | arm_mat_scale_q15 (const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst) |
Q15 matrix scaling. | |
arm_status | arm_mat_scale_q31 (const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst) |
Q31 matrix scaling. | |
arm_status | arm_mat_sub_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst) |
Floating-point matrix subtraction. | |
arm_status | arm_mat_sub_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst) |
Q15 matrix subtraction. | |
arm_status | arm_mat_sub_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst) |
Q31 matrix subtraction. | |
arm_status | arm_mat_trans_f32 (const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst) |
Floating-point matrix transpose. | |
arm_status | arm_mat_trans_q15 (const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst) |
Q15 matrix transpose. | |
arm_status | arm_mat_trans_q31 (const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst) |
Q31 matrix transpose. | |
void | arm_max_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex) |
Maximum value of a floating-point vector. | |
void | arm_max_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex) |
Maximum value of a Q15 vector. | |
void | arm_max_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex) |
Maximum value of a Q31 vector. | |
void | arm_max_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex) |
Maximum value of a Q7 vector. | |
void | arm_mean_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult) |
Mean value of a floating-point vector. | |
void | arm_mean_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult) |
Mean value of a Q15 vector. | |
void | arm_mean_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult) |
Mean value of a Q31 vector. | |
void | arm_mean_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult) |
Mean value of a Q7 vector. | |
void | arm_min_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex) |
Minimum value of a floating-point vector. | |
void | arm_min_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex) |
Minimum value of a Q15 vector. | |
void | arm_min_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex) |
Minimum value of a Q31 vector. | |
void | arm_min_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *result, uint32_t *index) |
Minimum value of a Q7 vector. | |
void | arm_mult_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize) |
Floating-point vector multiplication. | |
void | arm_mult_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize) |
Q15 vector multiplication. | |
void | arm_mult_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize) |
Q31 vector multiplication. | |
void | arm_mult_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize) |
Q7 vector multiplication. | |
void | arm_negate_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Negates the elements of a floating-point vector. | |
void | arm_negate_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Negates the elements of a Q15 vector. | |
void | arm_negate_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Negates the elements of a Q31 vector. | |
void | arm_negate_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize) |
Negates the elements of a Q7 vector. | |
void | arm_offset_f32 (float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize) |
Adds a constant offset to a floating-point vector. | |
void | arm_offset_q15 (q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize) |
Adds a constant offset to a Q15 vector. | |
void | arm_offset_q31 (q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize) |
Adds a constant offset to a Q31 vector. | |
void | arm_offset_q7 (q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize) |
Adds a constant offset to a Q7 vector. | |
__STATIC_INLINE void | arm_park_f32 (float32_t Ialpha, float32_t Ibeta, float32_t *pId, float32_t *pIq, float32_t sinVal, float32_t cosVal) |
Floating-point Park transform. | |
__STATIC_INLINE void | arm_park_q31 (q31_t Ialpha, q31_t Ibeta, q31_t *pId, q31_t *pIq, q31_t sinVal, q31_t cosVal) |
Park transform for Q31 version. | |
__STATIC_INLINE float32_t | arm_pid_f32 (arm_pid_instance_f32 *S, float32_t in) |
Process function for the floating-point PID Control. | |
void | arm_pid_init_f32 (arm_pid_instance_f32 *S, int32_t resetStateFlag) |
Initialization function for the floating-point PID Control. | |
void | arm_pid_init_q15 (arm_pid_instance_q15 *S, int32_t resetStateFlag) |
Initialization function for the Q15 PID Control. | |
void | arm_pid_init_q31 (arm_pid_instance_q31 *S, int32_t resetStateFlag) |
Initialization function for the Q31 PID Control. | |
__STATIC_INLINE q15_t | arm_pid_q15 (arm_pid_instance_q15 *S, q15_t in) |
Process function for the Q15 PID Control. | |
__STATIC_INLINE q31_t | arm_pid_q31 (arm_pid_instance_q31 *S, q31_t in) |
Process function for the Q31 PID Control. | |
void | arm_pid_reset_f32 (arm_pid_instance_f32 *S) |
Reset function for the floating-point PID Control. | |
void | arm_pid_reset_q15 (arm_pid_instance_q15 *S) |
Reset function for the Q15 PID Control. | |
void | arm_pid_reset_q31 (arm_pid_instance_q31 *S) |
Reset function for the Q31 PID Control. | |
void | arm_power_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult) |
Sum of the squares of the elements of a floating-point vector. | |
void | arm_power_q15 (q15_t *pSrc, uint32_t blockSize, q63_t *pResult) |
Sum of the squares of the elements of a Q15 vector. | |
void | arm_power_q31 (q31_t *pSrc, uint32_t blockSize, q63_t *pResult) |
Sum of the squares of the elements of a Q31 vector. | |
void | arm_power_q7 (q7_t *pSrc, uint32_t blockSize, q31_t *pResult) |
Sum of the squares of the elements of a Q7 vector. | |
void | arm_q15_to_float (q15_t *pSrc, float32_t *pDst, uint32_t blockSize) |
Converts the elements of the Q15 vector to floating-point vector. | |
void | arm_q15_to_q31 (q15_t *pSrc, q31_t *pDst, uint32_t blockSize) |
Converts the elements of the Q15 vector to Q31 vector. | |
void | arm_q15_to_q7 (q15_t *pSrc, q7_t *pDst, uint32_t blockSize) |
Converts the elements of the Q15 vector to Q7 vector. | |
void | arm_q31_to_float (q31_t *pSrc, float32_t *pDst, uint32_t blockSize) |
end of Inverse park group | |
void | arm_q31_to_q15 (q31_t *pSrc, q15_t *pDst, uint32_t blockSize) |
Converts the elements of the Q31 vector to Q15 vector. | |
void | arm_q31_to_q7 (q31_t *pSrc, q7_t *pDst, uint32_t blockSize) |
Converts the elements of the Q31 vector to Q7 vector. | |
void | arm_q7_to_float (q7_t *pSrc, float32_t *pDst, uint32_t blockSize) |
end of park group | |
void | arm_q7_to_q15 (q7_t *pSrc, q15_t *pDst, uint32_t blockSize) |
end of inv_clarke group | |
void | arm_q7_to_q31 (q7_t *pSrc, q31_t *pDst, uint32_t blockSize) |
end of clarke group | |
void | arm_radix2_butterfly_f32 (float32_t *pSrc, uint32_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier) |
Core function for the f32 FFT butterfly process. | |
void | arm_radix2_butterfly_inverse_f32 (float32_t *pSrc, uint32_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen) |
Core function for the f32 IFFT butterfly process. | |
void | arm_radix2_butterfly_inverse_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint16_t twidCoefModifier) |
Core function for the Radix-2 Q15 CFFT Inverse butterfly process. | |
void | arm_radix2_butterfly_inverse_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint16_t twidCoefModifier) |
Core function for the Radix-2 Q31 CFFT Inverse butterfly process. | |
void | arm_radix2_butterfly_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint16_t twidCoefModifier) |
Core function for the Radix-2 Q15 CFFT butterfly process. | |
void | arm_radix2_butterfly_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint16_t twidCoefModifier) |
Core function for the Radix-2 Q31 CFFT butterfly process. | |
void | arm_radix4_butterfly_f32 (float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier) |
Core function for the floating-point CFFT butterfly process. | |
void | arm_radix4_butterfly_inverse_f32 (float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen) |
Core function for the floating-point CIFFT butterfly process. | |
void | arm_radix4_butterfly_inverse_q15 (q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier) |
Core function for the Q15 CIFFT butterfly process. | |
void | arm_radix4_butterfly_inverse_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier) |
Core function for the Q31 CIFFT butterfly process. | |
void | arm_radix4_butterfly_q15 (q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier) |
Core function for the Q15 CFFT butterfly process. | |
void | arm_radix4_butterfly_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier) |
Core function for the Q31 CFFT butterfly process. | |
__STATIC_INLINE uint32_t | arm_recip_q15 (q15_t in, q15_t *dst, q15_t *pRecipTable) |
Function to Calculates 1/in(reciprocal) value of Q15 Data type. | |
__STATIC_INLINE uint32_t | arm_recip_q31 (q31_t in, q31_t *dst, q31_t *pRecipTable) |
Function to Calculates 1/in(reciprocal) value of Q31 Data type. | |
void | arm_rfft_f32 (const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst) |
Processing function for the floating-point RFFT/RIFFT. | |
arm_status | arm_rfft_init_f32 (arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag) |
Initialization function for the floating-point RFFT/RIFFT. | |
arm_status | arm_rfft_init_q15 (arm_rfft_instance_q15 *S, arm_cfft_radix4_instance_q15 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag) |
Initialization function for the Q15 RFFT/RIFFT. | |
arm_status | arm_rfft_init_q31 (arm_rfft_instance_q31 *S, arm_cfft_radix4_instance_q31 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag) |
Initialization function for the Q31 RFFT/RIFFT. | |
void | arm_rfft_q15 (const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst) |
Processing function for the Q15 RFFT/RIFFT. | |
void | arm_rfft_q31 (const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst) |
Processing function for the Q31 RFFT/RIFFT. | |
void | arm_rms_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult) |
Root Mean Square of the elements of a floating-point vector. | |
void | arm_rms_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult) |
Root Mean Square of the elements of a Q15 vector. | |
void | arm_rms_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult) |
Root Mean Square of the elements of a Q31 vector. | |
void | arm_scale_f32 (float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize) |
Multiplies a floating-point vector by a scalar. | |
void | arm_scale_q15 (q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize) |
Multiplies a Q15 vector by a scalar. | |
void | arm_scale_q31 (q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize) |
Multiplies a Q31 vector by a scalar. | |
void | arm_scale_q7 (q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize) |
Multiplies a Q7 vector by a scalar. | |
void | arm_shift_q15 (q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize) |
Shifts the elements of a Q15 vector a specified number of bits. | |
void | arm_shift_q31 (q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize) |
Shifts the elements of a Q31 vector a specified number of bits. | |
void | arm_shift_q7 (q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize) |
Shifts the elements of a Q7 vector a specified number of bits. | |
void | arm_sin_cos_f32 (float32_t theta, float32_t *pSinVal, float32_t *pCcosVal) |
void | arm_sin_cos_q31 (q31_t theta, q31_t *pSinVal, q31_t *pCosVal) |
float32_t | arm_sin_f32 (float32_t x) |
end of LinearInterpolate group | |
q15_t | arm_sin_q15 (q15_t x) |
Fast approximation to the trigonometric sine function for Q15 data. | |
q31_t | arm_sin_q31 (q31_t x) |
Fast approximation to the trigonometric sine function for Q31 data. | |
__STATIC_INLINE arm_status | arm_sqrt_f32 (float32_t in, float32_t *pOut) |
Floating-point square root function. | |
arm_status | arm_sqrt_q15 (q15_t in, q15_t *pOut) |
Q15 square root function. | |
arm_status | arm_sqrt_q31 (q31_t in, q31_t *pOut) |
Q31 square root function. | |
void | arm_std_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult) |
Standard deviation of the elements of a floating-point vector. | |
void | arm_std_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult) |
Standard deviation of the elements of a Q15 vector. | |
void | arm_std_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult) |
Standard deviation of the elements of a Q31 vector. | |
void | arm_sub_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize) |
Floating-point vector subtraction. | |
void | arm_sub_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize) |
Q15 vector subtraction. | |
void | arm_sub_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize) |
Q31 vector subtraction. | |
void | arm_sub_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize) |
Q7 vector subtraction. | |
void | arm_var_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult) |
Variance of the elements of a floating-point vector. | |
void | arm_var_q15 (q15_t *pSrc, uint32_t blockSize, q31_t *pResult) |
Variance of the elements of a Q15 vector. | |
void | arm_var_q31 (q31_t *pSrc, uint32_t blockSize, q63_t *pResult) |
Variance of the elements of a Q31 vector. | |
__STATIC_INLINE q15_t | clip_q31_to_q15 (q31_t x) |
Clips Q31 to Q15 values. | |
__STATIC_INLINE q7_t | clip_q31_to_q7 (q31_t x) |
Clips Q31 to Q7 values. | |
__STATIC_INLINE q15_t | clip_q63_to_q15 (q63_t x) |
Clips Q63 to Q15 values. | |
__STATIC_INLINE q31_t | clip_q63_to_q31 (q63_t x) |
Clips Q63 to Q31 values. | |
__STATIC_INLINE q63_t | mult32x64 (q63_t x, q31_t y) |
Multiplies 32 X 64 and returns 32 bit result in 2.30 format. |
#define __CMSIS_GENERIC /* disable NVIC and Systick functions */ |
Definition at line 259 of file arm_math.h.
#define __PACKq7 | ( | v0, | |
v1, | |||
v2, | |||
v3 | |||
) |
#define __SIMD32 | ( | addr | ) | (*(__packed int32_t **) & (addr)) |
definition to read/write two 16 bit values.
Definition at line 372 of file arm_math.h.
Referenced by arm_pid_q15().
#define __SIMD64 | ( | addr | ) | (*(int64_t **) & (addr)) |
Definition at line 376 of file arm_math.h.
#define _SIMD32_OFFSET | ( | addr | ) | (*(__packed int32_t * ) (addr)) |
Definition at line 373 of file arm_math.h.
#define ALIGN4 |
Macro for Unaligned Support.
Definition at line 311 of file arm_math.h.
#define DELTA_Q15 0x5 |
Definition at line 286 of file arm_math.h.
#define DELTA_Q31 (0x100) |
Macros required for reciprocal calculation in Normalized LMS.
Definition at line 285 of file arm_math.h.
#define INDEX_MASK 0x0000003F |
Definition at line 287 of file arm_math.h.
Referenced by arm_recip_q15(), and arm_recip_q31().
#define INPUT_SPACING 0xB60B61 |
Macros required for SINE and COSINE Controller functions.
Definition at line 305 of file arm_math.h.
#define PI 3.14159265358979f |
Definition at line 289 of file arm_math.h.
#define TABLE_SIZE 256 |
Macros required for SINE and COSINE Fast math approximations.
Definition at line 296 of file arm_math.h.
#define TABLE_SPACING_Q15 0x80 |
Definition at line 298 of file arm_math.h.
#define TABLE_SPACING_Q31 0x800000 |
Definition at line 297 of file arm_math.h.
typedef float float32_t |
32-bit floating-point type definition.
Definition at line 358 of file arm_math.h.
typedef double float64_t |
64-bit floating-point type definition.
Definition at line 363 of file arm_math.h.
16-bit fractional data type in 1.15 format.
Definition at line 343 of file arm_math.h.
32-bit fractional data type in 1.31 format.
Definition at line 348 of file arm_math.h.
64-bit fractional data type in 1.63 format.
Definition at line 353 of file arm_math.h.
8-bit fractional data type in 1.7 format.
Definition at line 338 of file arm_math.h.
enum arm_status |
Error status returned by some functions in the library.
Definition at line 324 of file arm_math.h.
Floating-point vector absolute value.
[in] | *pSrc | points to the input buffer |
[out] | *pDst | points to the output buffer |
[in] | blockSize | number of samples in each vector |
Q15 vector absolute value.
[in] | *pSrc | points to the input buffer |
[out] | *pDst | points to the output buffer |
[in] | blockSize | number of samples in each vector |
Q31 vector absolute value.
[in] | *pSrc | points to the input buffer |
[out] | *pDst | points to the output buffer |
[in] | blockSize | number of samples in each vector |
Q7 vector absolute value.
[in] | *pSrc | points to the input buffer |
[out] | *pDst | points to the output buffer |
[in] | blockSize | number of samples in each vector |
Floating-point vector addition.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q15 vector addition.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q31 vector addition.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q7 vector addition.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
void arm_biquad_cas_df1_32x64_init_q31 | ( | arm_biquad_cas_df1_32x64_ins_q31 * | S, |
uint8_t | numStages, | ||
q31_t * | pCoeffs, | ||
q63_t * | pState, | ||
uint8_t | postShift | ||
) |
[in,out] | *S | points to an instance of the high precision Q31 Biquad cascade filter structure. |
[in] | numStages | number of 2nd order stages in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | postShift | shift to be applied to the output. Varies according to the coefficients format |
void arm_biquad_cas_df1_32x64_q31 | ( | const arm_biquad_cas_df1_32x64_ins_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
[in] | *S | points to an instance of the high precision Q31 Biquad cascade filter structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of samples to process. |
void arm_biquad_cascade_df1_f32 | ( | const arm_biquad_casd_df1_inst_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point Biquad cascade filter.
[in] | *S | points to an instance of the floating-point Biquad cascade structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_biquad_cascade_df1_fast_q15 | ( | const arm_biquad_casd_df1_inst_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Fast but less precise processing function for the Q15 Biquad cascade filter for Cortex-M3 and Cortex-M4.
[in] | *S | points to an instance of the Q15 Biquad cascade structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_biquad_cascade_df1_fast_q31 | ( | const arm_biquad_casd_df1_inst_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Fast but less precise processing function for the Q31 Biquad cascade filter for Cortex-M3 and Cortex-M4.
[in] | *S | points to an instance of the Q31 Biquad cascade structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_biquad_cascade_df1_init_f32 | ( | arm_biquad_casd_df1_inst_f32 * | S, |
uint8_t | numStages, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState | ||
) |
Initialization function for the floating-point Biquad cascade filter.
[in,out] | *S | points to an instance of the floating-point Biquad cascade structure. |
[in] | numStages | number of 2nd order stages in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
void arm_biquad_cascade_df1_init_q15 | ( | arm_biquad_casd_df1_inst_q15 * | S, |
uint8_t | numStages, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState, | ||
int8_t | postShift | ||
) |
Initialization function for the Q15 Biquad cascade filter.
[in,out] | *S | points to an instance of the Q15 Biquad cascade structure. |
[in] | numStages | number of 2nd order stages in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | postShift | Shift to be applied to the output. Varies according to the coefficients format |
void arm_biquad_cascade_df1_init_q31 | ( | arm_biquad_casd_df1_inst_q31 * | S, |
uint8_t | numStages, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState, | ||
int8_t | postShift | ||
) |
Initialization function for the Q31 Biquad cascade filter.
[in,out] | *S | points to an instance of the Q31 Biquad cascade structure. |
[in] | numStages | number of 2nd order stages in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | postShift | Shift to be applied to the output. Varies according to the coefficients format |
void arm_biquad_cascade_df1_q15 | ( | const arm_biquad_casd_df1_inst_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 Biquad cascade filter.
[in] | *S | points to an instance of the Q15 Biquad cascade structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_biquad_cascade_df1_q31 | ( | const arm_biquad_casd_df1_inst_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 Biquad cascade filter.
[in] | *S | points to an instance of the Q31 Biquad cascade structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_biquad_cascade_df2T_f32 | ( | const arm_biquad_cascade_df2T_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point transposed direct form II Biquad cascade filter.
[in] | *S | points to an instance of the filter data structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of samples to process. |
void arm_biquad_cascade_df2T_init_f32 | ( | arm_biquad_cascade_df2T_instance_f32 * | S, |
uint8_t | numStages, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState | ||
) |
Initialization function for the floating-point transposed direct form II Biquad cascade filter.
[in,out] | *S | points to an instance of the filter data structure. |
[in] | numStages | number of 2nd order stages in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
void arm_bitreversal_f32 | ( | float32_t * | pSrc, |
uint16_t | fftSize, | ||
uint16_t | bitRevFactor, | ||
uint16_t * | pBitRevTab | ||
) |
In-place bit reversal function.
[in,out] | *pSrc | points to the in-place buffer of floating-point data type. |
[in] | fftSize | length of the FFT. |
[in] | bitRevFactor | bit reversal modifier that supports different size FFTs with the same bit reversal table. |
[in] | *pBitRevTab | points to the bit reversal table. |
void arm_bitreversal_q15 | ( | q15_t * | pSrc, |
uint32_t | fftLen, | ||
uint16_t | bitRevFactor, | ||
uint16_t * | pBitRevTab | ||
) |
In-place bit reversal function.
[in,out] | *pSrc | points to the in-place buffer of Q15 data type. |
[in] | fftLen | length of the FFT. |
[in] | bitRevFactor | bit reversal modifier that supports different size FFTs with the same bit reversal table |
[in] | *pBitRevTab | points to bit reversal table. |
void arm_bitreversal_q31 | ( | q31_t * | pSrc, |
uint32_t | fftLen, | ||
uint16_t | bitRevFactor, | ||
uint16_t * | pBitRevTab | ||
) |
In-place bit reversal function.
[in,out] | *pSrc | points to the in-place buffer of Q31 data type. |
[in] | fftLen | length of the FFT. |
[in] | bitRevFactor | bit reversal modifier that supports different size FFTs with the same bit reversal table |
[in] | *pBitRevTab | points to bit reversal table. |
void arm_cfft_radix2_f32 | ( | const arm_cfft_radix2_instance_f32 * | S, |
float32_t * | pSrc | ||
) |
Processing function for the floating-point CFFT/CIFFT.
[in] | *S | points to an instance of the floating-point CFFT/CIFFT structure. |
[in,out] | *pSrc | points to the complex data buffer. Processing occurs in-place. |
arm_status arm_cfft_radix2_init_f32 | ( | arm_cfft_radix2_instance_f32 * | S, |
uint16_t | fftLen, | ||
uint8_t | ifftFlag, | ||
uint8_t | bitReverseFlag | ||
) |
Initialization function for the floating-point CFFT/CIFFT.
[in,out] | *S | points to an instance of the floating-point CFFT/CIFFT structure. |
[in] | fftLen | length of the FFT. |
[in] | ifftFlag | flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLen
is not a supported value. arm_status arm_cfft_radix2_init_q15 | ( | arm_cfft_radix2_instance_q15 * | S, |
uint16_t | fftLen, | ||
uint8_t | ifftFlag, | ||
uint8_t | bitReverseFlag | ||
) |
Initialization function for the Q15 CFFT/CIFFT.
[in,out] | *S | points to an instance of the Q15 CFFT/CIFFT structure. |
[in] | fftLen | length of the FFT. |
[in] | ifftFlag | flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLen
is not a supported value. arm_status arm_cfft_radix2_init_q31 | ( | arm_cfft_radix2_instance_q31 * | S, |
uint16_t | fftLen, | ||
uint8_t | ifftFlag, | ||
uint8_t | bitReverseFlag | ||
) |
Initialization function for the Radix-2 Q31 CFFT/CIFFT.
[in,out] | *S | points to an instance of the Radix-2 Q31 CFFT/CIFFT structure. |
[in] | fftLen | length of the FFT. |
[in] | ifftFlag | flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLen
is not a supported value. void arm_cfft_radix2_q15 | ( | const arm_cfft_radix2_instance_q15 * | S, |
q15_t * | pSrc | ||
) |
Processing function for the Q15 CFFT/CIFFT.
[in] | *S | points to an instance of the Q15 CFFT/CIFFT structure. |
[in,out] | *pSrc | points to the complex data buffer. Processing occurs in-place. |
void arm_cfft_radix2_q31 | ( | const arm_cfft_radix2_instance_q31 * | S, |
q31_t * | pSrc | ||
) |
Processing function for the Radix-2 Q31 CFFT/CIFFT.
[in] | *S | points to an instance of the Radix-2 Q31 CFFT/CIFFT structure. |
[in,out] | *pSrc | points to the complex data buffer. Processing occurs in-place. |
void arm_cfft_radix4_f32 | ( | const arm_cfft_radix4_instance_f32 * | S, |
float32_t * | pSrc | ||
) |
Processing function for the floating-point CFFT/CIFFT.
[in] | *S | points to an instance of the floating-point CFFT/CIFFT structure. |
[in,out] | *pSrc | points to the complex data buffer. Processing occurs in-place. |
arm_status arm_cfft_radix4_init_f32 | ( | arm_cfft_radix4_instance_f32 * | S, |
uint16_t | fftLen, | ||
uint8_t | ifftFlag, | ||
uint8_t | bitReverseFlag | ||
) |
Initialization function for the floating-point CFFT/CIFFT.
[in,out] | *S | points to an instance of the floating-point CFFT/CIFFT structure. |
[in] | fftLen | length of the FFT. |
[in] | ifftFlag | flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLen
is not a supported value. arm_status arm_cfft_radix4_init_q15 | ( | arm_cfft_radix4_instance_q15 * | S, |
uint16_t | fftLen, | ||
uint8_t | ifftFlag, | ||
uint8_t | bitReverseFlag | ||
) |
Initialization function for the Q15 CFFT/CIFFT.
[in,out] | *S | points to an instance of the Q15 CFFT/CIFFT structure. |
[in] | fftLen | length of the FFT. |
[in] | ifftFlag | flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLen
is not a supported value. arm_status arm_cfft_radix4_init_q31 | ( | arm_cfft_radix4_instance_q31 * | S, |
uint16_t | fftLen, | ||
uint8_t | ifftFlag, | ||
uint8_t | bitReverseFlag | ||
) |
Initialization function for the Q31 CFFT/CIFFT.
[in,out] | *S | points to an instance of the Q31 CFFT/CIFFT structure. |
[in] | fftLen | length of the FFT. |
[in] | ifftFlag | flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLen
is not a supported value. void arm_cfft_radix4_q15 | ( | const arm_cfft_radix4_instance_q15 * | S, |
q15_t * | pSrc | ||
) |
Processing function for the Q15 CFFT/CIFFT.
[in] | *S | points to an instance of the Q15 CFFT/CIFFT structure. |
[in,out] | *pSrc | points to the complex data buffer. Processing occurs in-place. |
void arm_cfft_radix4_q31 | ( | const arm_cfft_radix4_instance_q31 * | S, |
q31_t * | pSrc | ||
) |
Processing function for the Q31 CFFT/CIFFT.
[in] | *S | points to an instance of the Q31 CFFT/CIFFT structure. |
[in,out] | *pSrc | points to the complex data buffer. Processing occurs in-place. |
__STATIC_INLINE void arm_circularRead_f32 | ( | int32_t * | circBuffer, |
int32_t | L, | ||
int32_t * | readOffset, | ||
int32_t | bufferInc, | ||
int32_t * | dst, | ||
int32_t * | dst_base, | ||
int32_t | dst_length, | ||
int32_t | dstInc, | ||
uint32_t | blockSize | ||
) |
floating-point Circular Read function.
Definition at line 6302 of file arm_math.h.
__STATIC_INLINE void arm_circularRead_q15 | ( | q15_t * | circBuffer, |
int32_t | L, | ||
int32_t * | readOffset, | ||
int32_t | bufferInc, | ||
q15_t * | dst, | ||
q15_t * | dst_base, | ||
int32_t | dst_length, | ||
int32_t | dstInc, | ||
uint32_t | blockSize | ||
) |
Q15 Circular Read function.
Definition at line 6402 of file arm_math.h.
__STATIC_INLINE void arm_circularRead_q7 | ( | q7_t * | circBuffer, |
int32_t | L, | ||
int32_t * | readOffset, | ||
int32_t | bufferInc, | ||
q7_t * | dst, | ||
q7_t * | dst_base, | ||
int32_t | dst_length, | ||
int32_t | dstInc, | ||
uint32_t | blockSize | ||
) |
Q7 Circular Read function.
Definition at line 6504 of file arm_math.h.
__STATIC_INLINE void arm_circularWrite_f32 | ( | int32_t * | circBuffer, |
int32_t | L, | ||
uint16_t * | writeOffset, | ||
int32_t | bufferInc, | ||
const int32_t * | src, | ||
int32_t | srcInc, | ||
uint32_t | blockSize | ||
) |
end of SQRT group
floating-point Circular write function.
Definition at line 6257 of file arm_math.h.
__STATIC_INLINE void arm_circularWrite_q15 | ( | q15_t * | circBuffer, |
int32_t | L, | ||
uint16_t * | writeOffset, | ||
int32_t | bufferInc, | ||
const q15_t * | src, | ||
int32_t | srcInc, | ||
uint32_t | blockSize | ||
) |
Q15 Circular write function.
Definition at line 6357 of file arm_math.h.
__STATIC_INLINE void arm_circularWrite_q7 | ( | q7_t * | circBuffer, |
int32_t | L, | ||
uint16_t * | writeOffset, | ||
int32_t | bufferInc, | ||
const q7_t * | src, | ||
int32_t | srcInc, | ||
uint32_t | blockSize | ||
) |
Q7 Circular write function.
Definition at line 6459 of file arm_math.h.
Floating-point complex conjugate.
[in] | *pSrc | points to the input vector |
[out] | *pDst | points to the output vector |
[in] | numSamples | number of complex samples in each vector |
Q15 complex conjugate.
[in] | *pSrc | points to the input vector |
[out] | *pDst | points to the output vector |
[in] | numSamples | number of complex samples in each vector |
Q31 complex conjugate.
[in] | *pSrc | points to the input vector |
[out] | *pDst | points to the output vector |
[in] | numSamples | number of complex samples in each vector |
void arm_cmplx_dot_prod_f32 | ( | float32_t * | pSrcA, |
float32_t * | pSrcB, | ||
uint32_t | numSamples, | ||
float32_t * | realResult, | ||
float32_t * | imagResult | ||
) |
Floating-point complex dot product.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[in] | numSamples | number of complex samples in each vector |
[out] | *realResult | real part of the result returned here |
[out] | *imagResult | imaginary part of the result returned here |
void arm_cmplx_dot_prod_q15 | ( | q15_t * | pSrcA, |
q15_t * | pSrcB, | ||
uint32_t | numSamples, | ||
q31_t * | realResult, | ||
q31_t * | imagResult | ||
) |
Q15 complex dot product.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[in] | numSamples | number of complex samples in each vector |
[out] | *realResult | real part of the result returned here |
[out] | *imagResult | imaginary part of the result returned here |
void arm_cmplx_dot_prod_q31 | ( | q31_t * | pSrcA, |
q31_t * | pSrcB, | ||
uint32_t | numSamples, | ||
q63_t * | realResult, | ||
q63_t * | imagResult | ||
) |
Q31 complex dot product.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[in] | numSamples | number of complex samples in each vector |
[out] | *realResult | real part of the result returned here |
[out] | *imagResult | imaginary part of the result returned here |
Floating-point complex magnitude.
[in] | *pSrc | points to the complex input vector |
[out] | *pDst | points to the real output vector |
[in] | numSamples | number of complex samples in the input vector |
Q15 complex magnitude.
[in] | *pSrc | points to the complex input vector |
[out] | *pDst | points to the real output vector |
[in] | numSamples | number of complex samples in the input vector |
Q31 complex magnitude.
[in] | *pSrc | points to the complex input vector |
[out] | *pDst | points to the real output vector |
[in] | numSamples | number of complex samples in the input vector |
Floating-point complex magnitude squared.
[in] | *pSrc | points to the complex input vector |
[out] | *pDst | points to the real output vector |
[in] | numSamples | number of complex samples in the input vector |
Q15 complex magnitude squared.
[in] | *pSrc | points to the complex input vector |
[out] | *pDst | points to the real output vector |
[in] | numSamples | number of complex samples in the input vector |
Q31 complex magnitude squared.
[in] | *pSrc | points to the complex input vector |
[out] | *pDst | points to the real output vector |
[in] | numSamples | number of complex samples in the input vector |
void arm_cmplx_mult_cmplx_f32 | ( | float32_t * | pSrcA, |
float32_t * | pSrcB, | ||
float32_t * | pDst, | ||
uint32_t | numSamples | ||
) |
Floating-point complex-by-complex multiplication.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | numSamples | number of complex samples in each vector |
Q15 complex-by-complex multiplication.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | numSamples | number of complex samples in each vector |
Q31 complex-by-complex multiplication.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | numSamples | number of complex samples in each vector |
void arm_cmplx_mult_real_f32 | ( | float32_t * | pSrcCmplx, |
float32_t * | pSrcReal, | ||
float32_t * | pCmplxDst, | ||
uint32_t | numSamples | ||
) |
Floating-point complex-by-real multiplication.
[in] | *pSrcCmplx | points to the complex input vector |
[in] | *pSrcReal | points to the real input vector |
[out] | *pCmplxDst | points to the complex output vector |
[in] | numSamples | number of samples in each vector |
void arm_cmplx_mult_real_q15 | ( | q15_t * | pSrcCmplx, |
q15_t * | pSrcReal, | ||
q15_t * | pCmplxDst, | ||
uint32_t | numSamples | ||
) |
Q15 complex-by-real multiplication.
[in] | *pSrcCmplx | points to the complex input vector |
[in] | *pSrcReal | points to the real input vector |
[out] | *pCmplxDst | points to the complex output vector |
[in] | numSamples | number of samples in each vector |
void arm_cmplx_mult_real_q31 | ( | q31_t * | pSrcCmplx, |
q31_t * | pSrcReal, | ||
q31_t * | pCmplxDst, | ||
uint32_t | numSamples | ||
) |
Q31 complex-by-real multiplication.
[in] | *pSrcCmplx | points to the complex input vector |
[in] | *pSrcReal | points to the real input vector |
[out] | *pCmplxDst | points to the complex output vector |
[in] | numSamples | number of samples in each vector |
void arm_conv_f32 | ( | float32_t * | pSrcA, |
uint32_t | srcALen, | ||
float32_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
float32_t * | pDst | ||
) |
Convolution of floating-point sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the location where the output result is written. Length srcALen+srcBLen-1. |
void arm_conv_fast_opt_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
q15_t * | pScratch1, | ||
q15_t * | pScratch2 | ||
) |
Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length srcALen+srcBLen-1. |
[in] | *pScratch1 | points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
[in] | *pScratch2 | points to scratch buffer of size min(srcALen, srcBLen). |
void arm_conv_fast_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst | ||
) |
Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length srcALen+srcBLen-1. |
void arm_conv_fast_q31 | ( | q31_t * | pSrcA, |
uint32_t | srcALen, | ||
q31_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q31_t * | pDst | ||
) |
Convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length srcALen+srcBLen-1. |
void arm_conv_opt_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
q15_t * | pScratch1, | ||
q15_t * | pScratch2 | ||
) |
Convolution of Q15 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length srcALen+srcBLen-1. |
[in] | *pScratch1 | points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
[in] | *pScratch2 | points to scratch buffer of size min(srcALen, srcBLen). |
void arm_conv_opt_q7 | ( | q7_t * | pSrcA, |
uint32_t | srcALen, | ||
q7_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q7_t * | pDst, | ||
q15_t * | pScratch1, | ||
q15_t * | pScratch2 | ||
) |
Convolution of Q7 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length srcALen+srcBLen-1. |
[in] | *pScratch1 | points to scratch buffer(of type q15_t) of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
[in] | *pScratch2 | points to scratch buffer (of type q15_t) of size min(srcALen, srcBLen). |
arm_status arm_conv_partial_f32 | ( | float32_t * | pSrcA, |
uint32_t | srcALen, | ||
float32_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
float32_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints | ||
) |
Partial convolution of floating-point sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
arm_status arm_conv_partial_fast_opt_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints, | ||
q15_t * | pScratch1, | ||
q15_t * | pScratch2 | ||
) |
Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
[in] | * | pScratch1 points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
[in] | * | pScratch2 points to scratch buffer of size min(srcALen, srcBLen). |
arm_status arm_conv_partial_fast_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints | ||
) |
Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
arm_status arm_conv_partial_fast_q31 | ( | q31_t * | pSrcA, |
uint32_t | srcALen, | ||
q31_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q31_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints | ||
) |
Partial convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
arm_status arm_conv_partial_opt_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints, | ||
q15_t * | pScratch1, | ||
q15_t * | pScratch2 | ||
) |
Partial convolution of Q15 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
[in] | * | pScratch1 points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
[in] | * | pScratch2 points to scratch buffer of size min(srcALen, srcBLen). |
arm_status arm_conv_partial_opt_q7 | ( | q7_t * | pSrcA, |
uint32_t | srcALen, | ||
q7_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q7_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints, | ||
q15_t * | pScratch1, | ||
q15_t * | pScratch2 | ||
) |
Partial convolution of Q7 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
[in] | *pScratch1 | points to scratch buffer(of type q15_t) of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
[in] | *pScratch2 | points to scratch buffer (of type q15_t) of size min(srcALen, srcBLen). |
arm_status arm_conv_partial_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints | ||
) |
Partial convolution of Q15 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
arm_status arm_conv_partial_q31 | ( | q31_t * | pSrcA, |
uint32_t | srcALen, | ||
q31_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q31_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints | ||
) |
Partial convolution of Q31 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
arm_status arm_conv_partial_q7 | ( | q7_t * | pSrcA, |
uint32_t | srcALen, | ||
q7_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q7_t * | pDst, | ||
uint32_t | firstIndex, | ||
uint32_t | numPoints | ||
) |
Partial convolution of Q7 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data |
[in] | firstIndex | is the first output sample to start with. |
[in] | numPoints | is the number of output points to be computed. |
void arm_conv_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst | ||
) |
Convolution of Q15 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the location where the output result is written. Length srcALen+srcBLen-1. |
void arm_conv_q31 | ( | q31_t * | pSrcA, |
uint32_t | srcALen, | ||
q31_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q31_t * | pDst | ||
) |
Convolution of Q31 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length srcALen+srcBLen-1. |
Convolution of Q7 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length srcALen+srcBLen-1. |
Copies the elements of a floating-point vector.
[in] | *pSrc | input pointer |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
Copies the elements of a Q15 vector.
[in] | *pSrc | input pointer |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
Copies the elements of a Q31 vector.
[in] | *pSrc | input pointer |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
Copies the elements of a Q7 vector.
[in] | *pSrc | input pointer |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
void arm_correlate_f32 | ( | float32_t * | pSrcA, |
uint32_t | srcALen, | ||
float32_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
float32_t * | pDst | ||
) |
Correlation of floating-point sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
void arm_correlate_fast_opt_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
q15_t * | pScratch | ||
) |
Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
[in] | *pScratch | points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
void arm_correlate_fast_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst | ||
) |
Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
void arm_correlate_fast_q31 | ( | q31_t * | pSrcA, |
uint32_t | srcALen, | ||
q31_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q31_t * | pDst | ||
) |
Correlation of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
void arm_correlate_opt_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst, | ||
q15_t * | pScratch | ||
) |
Correlation of Q15 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
[in] | *pScratch | points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
void arm_correlate_opt_q7 | ( | q7_t * | pSrcA, |
uint32_t | srcALen, | ||
q7_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q7_t * | pDst, | ||
q15_t * | pScratch1, | ||
q15_t * | pScratch2 | ||
) |
Correlation of Q7 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
[in] | *pScratch1 | points to scratch buffer(of type q15_t) of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2. |
[in] | *pScratch2 | points to scratch buffer (of type q15_t) of size min(srcALen, srcBLen). |
void arm_correlate_q15 | ( | q15_t * | pSrcA, |
uint32_t | srcALen, | ||
q15_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q15_t * | pDst | ||
) |
Correlation of Q15 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
void arm_correlate_q31 | ( | q31_t * | pSrcA, |
uint32_t | srcALen, | ||
q31_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q31_t * | pDst | ||
) |
Correlation of Q31 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
void arm_correlate_q7 | ( | q7_t * | pSrcA, |
uint32_t | srcALen, | ||
q7_t * | pSrcB, | ||
uint32_t | srcBLen, | ||
q7_t * | pDst | ||
) |
Correlation of Q7 sequences.
[in] | *pSrcA | points to the first input sequence. |
[in] | srcALen | length of the first input sequence. |
[in] | *pSrcB | points to the second input sequence. |
[in] | srcBLen | length of the second input sequence. |
[out] | *pDst | points to the block of output data Length 2 * max(srcALen, srcBLen) - 1. |
Fast approximation to the trigonometric cosine function for floating-point data.
[in] | x | input value in radians. |
Fast approximation to the trigonometric cosine function for Q15 data.
[in] | x | Scaled input value in radians. |
Fast approximation to the trigonometric cosine function for Q31 data.
[in] | x | Scaled input value in radians. |
void arm_dct4_f32 | ( | const arm_dct4_instance_f32 * | S, |
float32_t * | pState, | ||
float32_t * | pInlineBuffer | ||
) |
Processing function for the floating-point DCT4/IDCT4.
[in] | *S | points to an instance of the floating-point DCT4/IDCT4 structure. |
[in] | *pState | points to state buffer. |
[in,out] | *pInlineBuffer | points to the in-place input and output buffer. |
arm_status arm_dct4_init_f32 | ( | arm_dct4_instance_f32 * | S, |
arm_rfft_instance_f32 * | S_RFFT, | ||
arm_cfft_radix4_instance_f32 * | S_CFFT, | ||
uint16_t | N, | ||
uint16_t | Nby2, | ||
float32_t | normalize | ||
) |
Initialization function for the floating-point DCT4/IDCT4.
[in,out] | *S | points to an instance of floating-point DCT4/IDCT4 structure. |
[in] | *S_RFFT | points to an instance of floating-point RFFT/RIFFT structure. |
[in] | *S_CFFT | points to an instance of floating-point CFFT/CIFFT structure. |
[in] | N | length of the DCT4. |
[in] | Nby2 | half of the length of the DCT4. |
[in] | normalize | normalizing factor. |
fftLenReal
is not a supported transform length. arm_status arm_dct4_init_q15 | ( | arm_dct4_instance_q15 * | S, |
arm_rfft_instance_q15 * | S_RFFT, | ||
arm_cfft_radix4_instance_q15 * | S_CFFT, | ||
uint16_t | N, | ||
uint16_t | Nby2, | ||
q15_t | normalize | ||
) |
Initialization function for the Q15 DCT4/IDCT4.
[in,out] | *S | points to an instance of Q15 DCT4/IDCT4 structure. |
[in] | *S_RFFT | points to an instance of Q15 RFFT/RIFFT structure. |
[in] | *S_CFFT | points to an instance of Q15 CFFT/CIFFT structure. |
[in] | N | length of the DCT4. |
[in] | Nby2 | half of the length of the DCT4. |
[in] | normalize | normalizing factor. |
N
is not a supported transform length. arm_status arm_dct4_init_q31 | ( | arm_dct4_instance_q31 * | S, |
arm_rfft_instance_q31 * | S_RFFT, | ||
arm_cfft_radix4_instance_q31 * | S_CFFT, | ||
uint16_t | N, | ||
uint16_t | Nby2, | ||
q31_t | normalize | ||
) |
Initialization function for the Q31 DCT4/IDCT4.
[in,out] | *S | points to an instance of Q31 DCT4/IDCT4 structure. |
[in] | *S_RFFT | points to an instance of Q31 RFFT/RIFFT structure |
[in] | *S_CFFT | points to an instance of Q31 CFFT/CIFFT structure |
[in] | N | length of the DCT4. |
[in] | Nby2 | half of the length of the DCT4. |
[in] | normalize | normalizing factor. |
N
is not a supported transform length. void arm_dct4_q15 | ( | const arm_dct4_instance_q15 * | S, |
q15_t * | pState, | ||
q15_t * | pInlineBuffer | ||
) |
Processing function for the Q15 DCT4/IDCT4.
[in] | *S | points to an instance of the Q15 DCT4 structure. |
[in] | *pState | points to state buffer. |
[in,out] | *pInlineBuffer | points to the in-place input and output buffer. |
void arm_dct4_q31 | ( | const arm_dct4_instance_q31 * | S, |
q31_t * | pState, | ||
q31_t * | pInlineBuffer | ||
) |
Processing function for the Q31 DCT4/IDCT4.
[in] | *S | points to an instance of the Q31 DCT4 structure. |
[in] | *pState | points to state buffer. |
[in,out] | *pInlineBuffer | points to the in-place input and output buffer. |
void arm_dot_prod_f32 | ( | float32_t * | pSrcA, |
float32_t * | pSrcB, | ||
uint32_t | blockSize, | ||
float32_t * | result | ||
) |
Dot product of floating-point vectors.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[in] | blockSize | number of samples in each vector |
[out] | *result | output result returned here |
Dot product of Q15 vectors.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[in] | blockSize | number of samples in each vector |
[out] | *result | output result returned here |
Dot product of Q31 vectors.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[in] | blockSize | number of samples in each vector |
[out] | *result | output result returned here |
Dot product of Q7 vectors.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[in] | blockSize | number of samples in each vector |
[out] | *result | output result returned here |
Fills a constant value into a floating-point vector.
[in] | value | input value to be filled |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
Fills a constant value into a Q15 vector.
[in] | value | input value to be filled |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
Fills a constant value into a Q31 vector.
[in] | value | input value to be filled |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
Fills a constant value into a Q7 vector.
[in] | value | input value to be filled |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
void arm_fir_decimate_f32 | ( | const arm_fir_decimate_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point FIR decimator.
[in] | *S | points to an instance of the floating-point FIR decimator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_decimate_fast_q15 | ( | const arm_fir_decimate_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
[in] | *S | points to an instance of the Q15 FIR decimator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_decimate_fast_q31 | ( | arm_fir_decimate_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
[in] | *S | points to an instance of the Q31 FIR decimator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of input samples to process per call. |
arm_status arm_fir_decimate_init_f32 | ( | arm_fir_decimate_instance_f32 * | S, |
uint16_t | numTaps, | ||
uint8_t | M, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the floating-point FIR decimator.
[in,out] | *S | points to an instance of the floating-point FIR decimator structure. |
[in] | numTaps | number of coefficients in the filter. |
[in] | M | decimation factor. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of input samples to process per call. |
blockSize
is not a multiple of M
. arm_status arm_fir_decimate_init_q15 | ( | arm_fir_decimate_instance_q15 * | S, |
uint16_t | numTaps, | ||
uint8_t | M, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q15 FIR decimator.
[in,out] | *S | points to an instance of the Q15 FIR decimator structure. |
[in] | numTaps | number of coefficients in the filter. |
[in] | M | decimation factor. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of input samples to process per call. |
blockSize
is not a multiple of M
. arm_status arm_fir_decimate_init_q31 | ( | arm_fir_decimate_instance_q31 * | S, |
uint16_t | numTaps, | ||
uint8_t | M, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q31 FIR decimator.
[in,out] | *S | points to an instance of the Q31 FIR decimator structure. |
[in] | numTaps | number of coefficients in the filter. |
[in] | M | decimation factor. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of input samples to process per call. |
blockSize
is not a multiple of M
. void arm_fir_decimate_q15 | ( | const arm_fir_decimate_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 FIR decimator.
[in] | *S | points to an instance of the Q15 FIR decimator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_decimate_q31 | ( | const arm_fir_decimate_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 FIR decimator.
[in] | *S | points to an instance of the Q31 FIR decimator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_f32 | ( | const arm_fir_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point FIR filter.
[in] | *S | points to an instance of the floating-point FIR structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_fir_fast_q15 | ( | const arm_fir_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the fast Q15 FIR filter for Cortex-M3 and Cortex-M4.
[in] | *S | points to an instance of the Q15 FIR filter structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_fir_fast_q31 | ( | const arm_fir_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the fast Q31 FIR filter for Cortex-M3 and Cortex-M4.
[in] | *S | points to an instance of the Q31 FIR structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_fir_init_f32 | ( | arm_fir_instance_f32 * | S, |
uint16_t | numTaps, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the floating-point FIR filter.
[in,out] | *S | points to an instance of the floating-point FIR filter structure. |
[in] | numTaps | Number of filter coefficients in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of samples that are processed at a time. |
arm_status arm_fir_init_q15 | ( | arm_fir_instance_q15 * | S, |
uint16_t | numTaps, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q15 FIR filter.
[in,out] | *S | points to an instance of the Q15 FIR filter structure. |
[in] | numTaps | Number of filter coefficients in the filter. Must be even and greater than or equal to 4. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of samples that are processed at a time. |
numTaps
is not a supported value. void arm_fir_init_q31 | ( | arm_fir_instance_q31 * | S, |
uint16_t | numTaps, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q31 FIR filter.
[in,out] | *S | points to an instance of the Q31 FIR structure. |
[in] | numTaps | Number of filter coefficients in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of samples that are processed at a time. |
void arm_fir_init_q7 | ( | arm_fir_instance_q7 * | S, |
uint16_t | numTaps, | ||
q7_t * | pCoeffs, | ||
q7_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q7 FIR filter.
[in,out] | *S | points to an instance of the Q7 FIR structure. |
[in] | numTaps | Number of filter coefficients in the filter. |
[in] | *pCoeffs | points to the filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of samples that are processed. |
void arm_fir_interpolate_f32 | ( | const arm_fir_interpolate_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point FIR interpolator.
[in] | *S | points to an instance of the floating-point FIR interpolator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of input samples to process per call. |
arm_status arm_fir_interpolate_init_f32 | ( | arm_fir_interpolate_instance_f32 * | S, |
uint8_t | L, | ||
uint16_t | numTaps, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the floating-point FIR interpolator.
[in,out] | *S | points to an instance of the floating-point FIR interpolator structure. |
[in] | L | upsample factor. |
[in] | numTaps | number of filter coefficients in the filter. |
[in] | *pCoeffs | points to the filter coefficient buffer. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of input samples to process per call. |
numTaps
is not a multiple of the interpolation factor L
. arm_status arm_fir_interpolate_init_q15 | ( | arm_fir_interpolate_instance_q15 * | S, |
uint8_t | L, | ||
uint16_t | numTaps, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q15 FIR interpolator.
[in,out] | *S | points to an instance of the Q15 FIR interpolator structure. |
[in] | L | upsample factor. |
[in] | numTaps | number of filter coefficients in the filter. |
[in] | *pCoeffs | points to the filter coefficient buffer. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of input samples to process per call. |
numTaps
is not a multiple of the interpolation factor L
. arm_status arm_fir_interpolate_init_q31 | ( | arm_fir_interpolate_instance_q31 * | S, |
uint8_t | L, | ||
uint16_t | numTaps, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q31 FIR interpolator.
[in,out] | *S | points to an instance of the Q31 FIR interpolator structure. |
[in] | L | upsample factor. |
[in] | numTaps | number of filter coefficients in the filter. |
[in] | *pCoeffs | points to the filter coefficient buffer. |
[in] | *pState | points to the state buffer. |
[in] | blockSize | number of input samples to process per call. |
numTaps
is not a multiple of the interpolation factor L
. void arm_fir_interpolate_q15 | ( | const arm_fir_interpolate_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 FIR interpolator.
[in] | *S | points to an instance of the Q15 FIR interpolator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_interpolate_q31 | ( | const arm_fir_interpolate_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 FIR interpolator.
[in] | *S | points to an instance of the Q15 FIR interpolator structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_lattice_f32 | ( | const arm_fir_lattice_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point FIR lattice filter.
[in] | *S | points to an instance of the floating-point FIR lattice structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of samples to process. |
void arm_fir_lattice_init_f32 | ( | arm_fir_lattice_instance_f32 * | S, |
uint16_t | numStages, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState | ||
) |
Initialization function for the floating-point FIR lattice filter.
[in] | *S | points to an instance of the floating-point FIR lattice structure. |
[in] | numStages | number of filter stages. |
[in] | *pCoeffs | points to the coefficient buffer. The array is of length numStages. |
[in] | *pState | points to the state buffer. The array is of length numStages. |
void arm_fir_lattice_init_q15 | ( | arm_fir_lattice_instance_q15 * | S, |
uint16_t | numStages, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState | ||
) |
Initialization function for the Q15 FIR lattice filter.
[in] | *S | points to an instance of the Q15 FIR lattice structure. |
[in] | numStages | number of filter stages. |
[in] | *pCoeffs | points to the coefficient buffer. The array is of length numStages. |
[in] | *pState | points to the state buffer. The array is of length numStages. |
void arm_fir_lattice_init_q31 | ( | arm_fir_lattice_instance_q31 * | S, |
uint16_t | numStages, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState | ||
) |
Initialization function for the Q31 FIR lattice filter.
[in] | *S | points to an instance of the Q31 FIR lattice structure. |
[in] | numStages | number of filter stages. |
[in] | *pCoeffs | points to the coefficient buffer. The array is of length numStages. |
[in] | *pState | points to the state buffer. The array is of length numStages. |
void arm_fir_lattice_q15 | ( | const arm_fir_lattice_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 FIR lattice filter.
[in] | *S | points to an instance of the Q15 FIR lattice structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_fir_lattice_q31 | ( | const arm_fir_lattice_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 FIR lattice filter.
[in] | *S | points to an instance of the Q31 FIR lattice structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | blockSize | number of samples to process. |
void arm_fir_q15 | ( | const arm_fir_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 FIR filter.
[in] | *S | points to an instance of the Q15 FIR structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_fir_q31 | ( | const arm_fir_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 FIR filter.
[in] | *S | points to an instance of the Q31 FIR filter structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_fir_q7 | ( | const arm_fir_instance_q7 * | S, |
q7_t * | pSrc, | ||
q7_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q7 FIR filter.
[in] | *S | points to an instance of the Q7 FIR filter structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_fir_sparse_f32 | ( | arm_fir_sparse_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
float32_t * | pScratchIn, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point sparse FIR filter.
[in] | *S | points to an instance of the floating-point sparse FIR structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | *pScratchIn | points to a temporary buffer of size blockSize. |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_sparse_init_f32 | ( | arm_fir_sparse_instance_f32 * | S, |
uint16_t | numTaps, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState, | ||
int32_t * | pTapDelay, | ||
uint16_t | maxDelay, | ||
uint32_t | blockSize | ||
) |
Initialization function for the floating-point sparse FIR filter.
[in,out] | *S | points to an instance of the floating-point sparse FIR structure. |
[in] | numTaps | number of nonzero coefficients in the filter. |
[in] | *pCoeffs | points to the array of filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | *pTapDelay | points to the array of offset times. |
[in] | maxDelay | maximum offset time supported. |
[in] | blockSize | number of samples that will be processed per block. |
void arm_fir_sparse_init_q15 | ( | arm_fir_sparse_instance_q15 * | S, |
uint16_t | numTaps, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState, | ||
int32_t * | pTapDelay, | ||
uint16_t | maxDelay, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q15 sparse FIR filter.
[in,out] | *S | points to an instance of the Q15 sparse FIR structure. |
[in] | numTaps | number of nonzero coefficients in the filter. |
[in] | *pCoeffs | points to the array of filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | *pTapDelay | points to the array of offset times. |
[in] | maxDelay | maximum offset time supported. |
[in] | blockSize | number of samples that will be processed per block. |
void arm_fir_sparse_init_q31 | ( | arm_fir_sparse_instance_q31 * | S, |
uint16_t | numTaps, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState, | ||
int32_t * | pTapDelay, | ||
uint16_t | maxDelay, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q31 sparse FIR filter.
[in,out] | *S | points to an instance of the Q31 sparse FIR structure. |
[in] | numTaps | number of nonzero coefficients in the filter. |
[in] | *pCoeffs | points to the array of filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | *pTapDelay | points to the array of offset times. |
[in] | maxDelay | maximum offset time supported. |
[in] | blockSize | number of samples that will be processed per block. |
void arm_fir_sparse_init_q7 | ( | arm_fir_sparse_instance_q7 * | S, |
uint16_t | numTaps, | ||
q7_t * | pCoeffs, | ||
q7_t * | pState, | ||
int32_t * | pTapDelay, | ||
uint16_t | maxDelay, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q7 sparse FIR filter.
[in,out] | *S | points to an instance of the Q7 sparse FIR structure. |
[in] | numTaps | number of nonzero coefficients in the filter. |
[in] | *pCoeffs | points to the array of filter coefficients. |
[in] | *pState | points to the state buffer. |
[in] | *pTapDelay | points to the array of offset times. |
[in] | maxDelay | maximum offset time supported. |
[in] | blockSize | number of samples that will be processed per block. |
void arm_fir_sparse_q15 | ( | arm_fir_sparse_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
q15_t * | pScratchIn, | ||
q31_t * | pScratchOut, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 sparse FIR filter.
[in] | *S | points to an instance of the Q15 sparse FIR structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | *pScratchIn | points to a temporary buffer of size blockSize. |
[in] | *pScratchOut | points to a temporary buffer of size blockSize. |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_sparse_q31 | ( | arm_fir_sparse_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
q31_t * | pScratchIn, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 sparse FIR filter.
[in] | *S | points to an instance of the Q31 sparse FIR structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | *pScratchIn | points to a temporary buffer of size blockSize. |
[in] | blockSize | number of input samples to process per call. |
void arm_fir_sparse_q7 | ( | arm_fir_sparse_instance_q7 * | S, |
q7_t * | pSrc, | ||
q7_t * | pDst, | ||
q7_t * | pScratchIn, | ||
q31_t * | pScratchOut, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q7 sparse FIR filter.
[in] | *S | points to an instance of the Q7 sparse FIR structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data |
[in] | *pScratchIn | points to a temporary buffer of size blockSize. |
[in] | *pScratchOut | points to a temporary buffer of size blockSize. |
[in] | blockSize | number of input samples to process per call. |
Converts the elements of the floating-point vector to Q15 vector.
[in] | *pSrc | points to the floating-point input vector |
[out] | *pDst | points to the Q15 output vector |
[in] | blockSize | length of the input vector |
Converts the elements of the floating-point vector to Q31 vector.
[in] | *pSrc | points to the floating-point input vector |
[out] | *pDst | points to the Q31 output vector |
[in] | blockSize | length of the input vector |
Converts the elements of the floating-point vector to Q7 vector.
[in] | *pSrc | points to the floating-point input vector |
[out] | *pDst | points to the Q7 output vector |
[in] | blockSize | length of the input vector |
void arm_iir_lattice_f32 | ( | const arm_iir_lattice_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the floating-point IIR lattice filter.
[in] | *S | points to an instance of the floating-point IIR lattice structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_iir_lattice_init_f32 | ( | arm_iir_lattice_instance_f32 * | S, |
uint16_t | numStages, | ||
float32_t * | pkCoeffs, | ||
float32_t * | pvCoeffs, | ||
float32_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the floating-point IIR lattice filter.
[in] | *S | points to an instance of the floating-point IIR lattice structure. |
[in] | numStages | number of stages in the filter. |
[in] | *pkCoeffs | points to the reflection coefficient buffer. The array is of length numStages. |
[in] | *pvCoeffs | points to the ladder coefficient buffer. The array is of length numStages+1. |
[in] | *pState | points to the state buffer. The array is of length numStages+blockSize-1. |
[in] | blockSize | number of samples to process. |
void arm_iir_lattice_init_q15 | ( | arm_iir_lattice_instance_q15 * | S, |
uint16_t | numStages, | ||
q15_t * | pkCoeffs, | ||
q15_t * | pvCoeffs, | ||
q15_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q15 IIR lattice filter.
[in] | *S | points to an instance of the fixed-point Q15 IIR lattice structure. |
[in] | numStages | number of stages in the filter. |
[in] | *pkCoeffs | points to reflection coefficient buffer. The array is of length numStages. |
[in] | *pvCoeffs | points to ladder coefficient buffer. The array is of length numStages+1. |
[in] | *pState | points to state buffer. The array is of length numStages+blockSize. |
[in] | blockSize | number of samples to process per call. |
void arm_iir_lattice_init_q31 | ( | arm_iir_lattice_instance_q31 * | S, |
uint16_t | numStages, | ||
q31_t * | pkCoeffs, | ||
q31_t * | pvCoeffs, | ||
q31_t * | pState, | ||
uint32_t | blockSize | ||
) |
Initialization function for the Q31 IIR lattice filter.
[in] | *S | points to an instance of the Q31 IIR lattice structure. |
[in] | numStages | number of stages in the filter. |
[in] | *pkCoeffs | points to the reflection coefficient buffer. The array is of length numStages. |
[in] | *pvCoeffs | points to the ladder coefficient buffer. The array is of length numStages+1. |
[in] | *pState | points to the state buffer. The array is of length numStages+blockSize. |
[in] | blockSize | number of samples to process. |
void arm_iir_lattice_q15 | ( | const arm_iir_lattice_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q15 IIR lattice filter.
[in] | *S | points to an instance of the Q15 IIR lattice structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_iir_lattice_q31 | ( | const arm_iir_lattice_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Processing function for the Q31 IIR lattice filter.
[in] | *S | points to an instance of the Q31 IIR lattice structure. |
[in] | *pSrc | points to the block of input data. |
[out] | *pDst | points to the block of output data. |
[in] | blockSize | number of samples to process. |
void arm_lms_f32 | ( | const arm_lms_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pRef, | ||
float32_t * | pOut, | ||
float32_t * | pErr, | ||
uint32_t | blockSize | ||
) |
Processing function for floating-point LMS filter.
[in] | *S | points to an instance of the floating-point LMS filter structure. |
[in] | *pSrc | points to the block of input data. |
[in] | *pRef | points to the block of reference data. |
[out] | *pOut | points to the block of output data. |
[out] | *pErr | points to the block of error data. |
[in] | blockSize | number of samples to process. |
void arm_lms_init_f32 | ( | arm_lms_instance_f32 * | S, |
uint16_t | numTaps, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState, | ||
float32_t | mu, | ||
uint32_t | blockSize | ||
) |
Initialization function for floating-point LMS filter.
[in] | *S | points to an instance of the floating-point LMS filter structure. |
[in] | numTaps | number of filter coefficients. |
[in] | *pCoeffs | points to the coefficient buffer. |
[in] | *pState | points to state buffer. |
[in] | mu | step size that controls filter coefficient updates. |
[in] | blockSize | number of samples to process. |
void arm_lms_init_q15 | ( | arm_lms_instance_q15 * | S, |
uint16_t | numTaps, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState, | ||
q15_t | mu, | ||
uint32_t | blockSize, | ||
uint32_t | postShift | ||
) |
Initialization function for the Q15 LMS filter.
[in] | *S | points to an instance of the Q15 LMS filter structure. |
[in] | numTaps | number of filter coefficients. |
[in] | *pCoeffs | points to the coefficient buffer. |
[in] | *pState | points to the state buffer. |
[in] | mu | step size that controls filter coefficient updates. |
[in] | blockSize | number of samples to process. |
[in] | postShift | bit shift applied to coefficients. |
void arm_lms_init_q31 | ( | arm_lms_instance_q31 * | S, |
uint16_t | numTaps, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState, | ||
q31_t | mu, | ||
uint32_t | blockSize, | ||
uint32_t | postShift | ||
) |
Initialization function for Q31 LMS filter.
[in] | *S | points to an instance of the Q31 LMS filter structure. |
[in] | numTaps | number of filter coefficients. |
[in] | *pCoeffs | points to coefficient buffer. |
[in] | *pState | points to state buffer. |
[in] | mu | step size that controls filter coefficient updates. |
[in] | blockSize | number of samples to process. |
[in] | postShift | bit shift applied to coefficients. |
void arm_lms_norm_f32 | ( | arm_lms_norm_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pRef, | ||
float32_t * | pOut, | ||
float32_t * | pErr, | ||
uint32_t | blockSize | ||
) |
Processing function for floating-point normalized LMS filter.
[in] | *S | points to an instance of the floating-point normalized LMS filter structure. |
[in] | *pSrc | points to the block of input data. |
[in] | *pRef | points to the block of reference data. |
[out] | *pOut | points to the block of output data. |
[out] | *pErr | points to the block of error data. |
[in] | blockSize | number of samples to process. |
void arm_lms_norm_init_f32 | ( | arm_lms_norm_instance_f32 * | S, |
uint16_t | numTaps, | ||
float32_t * | pCoeffs, | ||
float32_t * | pState, | ||
float32_t | mu, | ||
uint32_t | blockSize | ||
) |
Initialization function for floating-point normalized LMS filter.
[in] | *S | points to an instance of the floating-point LMS filter structure. |
[in] | numTaps | number of filter coefficients. |
[in] | *pCoeffs | points to coefficient buffer. |
[in] | *pState | points to state buffer. |
[in] | mu | step size that controls filter coefficient updates. |
[in] | blockSize | number of samples to process. |
void arm_lms_norm_init_q15 | ( | arm_lms_norm_instance_q15 * | S, |
uint16_t | numTaps, | ||
q15_t * | pCoeffs, | ||
q15_t * | pState, | ||
q15_t | mu, | ||
uint32_t | blockSize, | ||
uint8_t | postShift | ||
) |
Initialization function for Q15 normalized LMS filter.
[in] | *S | points to an instance of the Q15 normalized LMS filter structure. |
[in] | numTaps | number of filter coefficients. |
[in] | *pCoeffs | points to coefficient buffer. |
[in] | *pState | points to state buffer. |
[in] | mu | step size that controls filter coefficient updates. |
[in] | blockSize | number of samples to process. |
[in] | postShift | bit shift applied to coefficients. |
void arm_lms_norm_init_q31 | ( | arm_lms_norm_instance_q31 * | S, |
uint16_t | numTaps, | ||
q31_t * | pCoeffs, | ||
q31_t * | pState, | ||
q31_t | mu, | ||
uint32_t | blockSize, | ||
uint8_t | postShift | ||
) |
Initialization function for Q31 normalized LMS filter.
[in] | *S | points to an instance of the Q31 normalized LMS filter structure. |
[in] | numTaps | number of filter coefficients. |
[in] | *pCoeffs | points to coefficient buffer. |
[in] | *pState | points to state buffer. |
[in] | mu | step size that controls filter coefficient updates. |
[in] | blockSize | number of samples to process. |
[in] | postShift | bit shift applied to coefficients. |
void arm_lms_norm_q15 | ( | arm_lms_norm_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pRef, | ||
q15_t * | pOut, | ||
q15_t * | pErr, | ||
uint32_t | blockSize | ||
) |
Processing function for Q15 normalized LMS filter.
[in] | *S | points to an instance of the Q15 normalized LMS filter structure. |
[in] | *pSrc | points to the block of input data. |
[in] | *pRef | points to the block of reference data. |
[out] | *pOut | points to the block of output data. |
[out] | *pErr | points to the block of error data. |
[in] | blockSize | number of samples to process. |
void arm_lms_norm_q31 | ( | arm_lms_norm_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pRef, | ||
q31_t * | pOut, | ||
q31_t * | pErr, | ||
uint32_t | blockSize | ||
) |
Processing function for Q31 normalized LMS filter.
[in] | *S | points to an instance of the Q31 normalized LMS filter structure. |
[in] | *pSrc | points to the block of input data. |
[in] | *pRef | points to the block of reference data. |
[out] | *pOut | points to the block of output data. |
[out] | *pErr | points to the block of error data. |
[in] | blockSize | number of samples to process. |
void arm_lms_q15 | ( | const arm_lms_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pRef, | ||
q15_t * | pOut, | ||
q15_t * | pErr, | ||
uint32_t | blockSize | ||
) |
Processing function for Q15 LMS filter.
[in] | *S | points to an instance of the Q15 LMS filter structure. |
[in] | *pSrc | points to the block of input data. |
[in] | *pRef | points to the block of reference data. |
[out] | *pOut | points to the block of output data. |
[out] | *pErr | points to the block of error data. |
[in] | blockSize | number of samples to process. |
void arm_lms_q31 | ( | const arm_lms_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pRef, | ||
q31_t * | pOut, | ||
q31_t * | pErr, | ||
uint32_t | blockSize | ||
) |
Processing function for Q31 LMS filter.
[in] | *S | points to an instance of the Q15 LMS filter structure. |
[in] | *pSrc | points to the block of input data. |
[in] | *pRef | points to the block of reference data. |
[out] | *pOut | points to the block of output data. |
[out] | *pErr | points to the block of error data. |
[in] | blockSize | number of samples to process. |
arm_status arm_mat_add_f32 | ( | const arm_matrix_instance_f32 * | pSrcA, |
const arm_matrix_instance_f32 * | pSrcB, | ||
arm_matrix_instance_f32 * | pDst | ||
) |
Floating-point matrix addition.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_add_q15 | ( | const arm_matrix_instance_q15 * | pSrcA, |
const arm_matrix_instance_q15 * | pSrcB, | ||
arm_matrix_instance_q15 * | pDst | ||
) |
Q15 matrix addition.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_add_q31 | ( | const arm_matrix_instance_q31 * | pSrcA, |
const arm_matrix_instance_q31 * | pSrcB, | ||
arm_matrix_instance_q31 * | pDst | ||
) |
Q31 matrix addition.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. void arm_mat_init_f32 | ( | arm_matrix_instance_f32 * | S, |
uint16_t | nRows, | ||
uint16_t | nColumns, | ||
float32_t * | pData | ||
) |
Floating-point matrix initialization.
[in,out] | *S | points to an instance of the floating-point matrix structure. |
[in] | nRows | number of rows in the matrix. |
[in] | nColumns | number of columns in the matrix. |
[in] | *pData | points to the matrix data array. |
void arm_mat_init_q15 | ( | arm_matrix_instance_q15 * | S, |
uint16_t | nRows, | ||
uint16_t | nColumns, | ||
q15_t * | pData | ||
) |
Q15 matrix initialization.
[in,out] | *S | points to an instance of the floating-point matrix structure. |
[in] | nRows | number of rows in the matrix. |
[in] | nColumns | number of columns in the matrix. |
[in] | *pData | points to the matrix data array. |
void arm_mat_init_q31 | ( | arm_matrix_instance_q31 * | S, |
uint16_t | nRows, | ||
uint16_t | nColumns, | ||
q31_t * | pData | ||
) |
Q31 matrix initialization.
[in,out] | *S | points to an instance of the floating-point matrix structure. |
[in] | nRows | number of rows in the matrix. |
[in] | nColumns | number of columns in the matrix. |
[in] | *pData | points to the matrix data array. |
arm_status arm_mat_inverse_f32 | ( | const arm_matrix_instance_f32 * | src, |
arm_matrix_instance_f32 * | dst | ||
) |
end of PID group
Floating-point matrix inverse.
[in] | *src | points to the instance of the input floating-point matrix structure. |
[out] | *dst | points to the instance of the output floating-point matrix structure. |
arm_status arm_mat_mult_f32 | ( | const arm_matrix_instance_f32 * | pSrcA, |
const arm_matrix_instance_f32 * | pSrcB, | ||
arm_matrix_instance_f32 * | pDst | ||
) |
Floating-point matrix multiplication.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_mult_fast_q15 | ( | const arm_matrix_instance_q15 * | pSrcA, |
const arm_matrix_instance_q15 * | pSrcB, | ||
arm_matrix_instance_q15 * | pDst, | ||
q15_t * | pState | ||
) |
Q15 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
[in] | *pState | points to the array for storing intermediate results |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_mult_fast_q31 | ( | const arm_matrix_instance_q31 * | pSrcA, |
const arm_matrix_instance_q31 * | pSrcB, | ||
arm_matrix_instance_q31 * | pDst | ||
) |
Q31 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_mult_q15 | ( | const arm_matrix_instance_q15 * | pSrcA, |
const arm_matrix_instance_q15 * | pSrcB, | ||
arm_matrix_instance_q15 * | pDst, | ||
q15_t * | pState | ||
) |
Q15 matrix multiplication.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_mult_q31 | ( | const arm_matrix_instance_q31 * | pSrcA, |
const arm_matrix_instance_q31 * | pSrcB, | ||
arm_matrix_instance_q31 * | pDst | ||
) |
Q31 matrix multiplication.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_scale_f32 | ( | const arm_matrix_instance_f32 * | pSrc, |
float32_t | scale, | ||
arm_matrix_instance_f32 * | pDst | ||
) |
Floating-point matrix scaling.
[in] | *pSrc | points to the input matrix |
[in] | scale | scale factor |
[out] | *pDst | points to the output matrix |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_scale_q15 | ( | const arm_matrix_instance_q15 * | pSrc, |
q15_t | scaleFract, | ||
int32_t | shift, | ||
arm_matrix_instance_q15 * | pDst | ||
) |
Q15 matrix scaling.
[in] | *pSrc | points to input matrix |
[in] | scaleFract | fractional portion of the scale factor |
[in] | shift | number of bits to shift the result by |
[out] | *pDst | points to output matrix |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_scale_q31 | ( | const arm_matrix_instance_q31 * | pSrc, |
q31_t | scaleFract, | ||
int32_t | shift, | ||
arm_matrix_instance_q31 * | pDst | ||
) |
Q31 matrix scaling.
[in] | *pSrc | points to input matrix |
[in] | scaleFract | fractional portion of the scale factor |
[in] | shift | number of bits to shift the result by |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_sub_f32 | ( | const arm_matrix_instance_f32 * | pSrcA, |
const arm_matrix_instance_f32 * | pSrcB, | ||
arm_matrix_instance_f32 * | pDst | ||
) |
Floating-point matrix subtraction.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_sub_q15 | ( | const arm_matrix_instance_q15 * | pSrcA, |
const arm_matrix_instance_q15 * | pSrcB, | ||
arm_matrix_instance_q15 * | pDst | ||
) |
Q15 matrix subtraction.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_sub_q31 | ( | const arm_matrix_instance_q31 * | pSrcA, |
const arm_matrix_instance_q31 * | pSrcB, | ||
arm_matrix_instance_q31 * | pDst | ||
) |
Q31 matrix subtraction.
[in] | *pSrcA | points to the first input matrix structure |
[in] | *pSrcB | points to the second input matrix structure |
[out] | *pDst | points to output matrix structure |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_trans_f32 | ( | const arm_matrix_instance_f32 * | pSrc, |
arm_matrix_instance_f32 * | pDst | ||
) |
Floating-point matrix transpose.
[in] | *pSrc | points to the input matrix |
[out] | *pDst | points to the output matrix |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_trans_q15 | ( | const arm_matrix_instance_q15 * | pSrc, |
arm_matrix_instance_q15 * | pDst | ||
) |
Q15 matrix transpose.
[in] | *pSrc | points to the input matrix |
[out] | *pDst | points to the output matrix |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. arm_status arm_mat_trans_q31 | ( | const arm_matrix_instance_q31 * | pSrc, |
arm_matrix_instance_q31 * | pDst | ||
) |
Q31 matrix transpose.
[in] | *pSrc | points to the input matrix |
[out] | *pDst | points to the output matrix |
ARM_MATH_SIZE_MISMATCH
or ARM_MATH_SUCCESS
based on the outcome of size checking. Maximum value of a floating-point vector.
[in] | *pSrc | points to the input buffer |
[in] | blockSize | length of the input vector |
[out] | *pResult | maximum value returned here |
[out] | *pIndex | index of maximum value returned here |
Maximum value of a Q15 vector.
[in] | *pSrc | points to the input buffer |
[in] | blockSize | length of the input vector |
[out] | *pResult | maximum value returned here |
[out] | *pIndex | index of maximum value returned here |
Maximum value of a Q31 vector.
[in] | *pSrc | points to the input buffer |
[in] | blockSize | length of the input vector |
[out] | *pResult | maximum value returned here |
[out] | *pIndex | index of maximum value returned here |
Maximum value of a Q7 vector.
[in] | *pSrc | points to the input buffer |
[in] | blockSize | length of the input vector |
[out] | *pResult | maximum value returned here |
[out] | *pIndex | index of maximum value returned here |
Mean value of a floating-point vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Mean value of a Q15 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Mean value of a Q31 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Mean value of a Q7 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Minimum value of a floating-point vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output pointer |
[out] | *pIndex | is the array index of the minimum value in the input buffer. |
Minimum value of a Q15 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output pointer |
[in] | *pIndex | is the array index of the minimum value in the input buffer. |
Minimum value of a Q31 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output pointer |
[out] | *pIndex | is the array index of the minimum value in the input buffer. |
Minimum value of a Q7 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *result | is output pointer |
[in] | index | is the array index of the minimum value in the input buffer. |
Floating-point vector multiplication.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q15 vector multiplication.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q31 vector multiplication.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q7 vector multiplication.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Negates the elements of a floating-point vector.
[in] | *pSrc | points to the input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Negates the elements of a Q15 vector.
[in] | *pSrc | points to the input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Negates the elements of a Q31 vector.
[in] | *pSrc | points to the input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Negates the elements of a Q7 vector.
[in] | *pSrc | points to the input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Adds a constant offset to a floating-point vector.
[in] | *pSrc | points to the input vector |
[in] | offset | is the offset to be added |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Adds a constant offset to a Q15 vector.
[in] | *pSrc | points to the input vector |
[in] | offset | is the offset to be added |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Adds a constant offset to a Q31 vector.
[in] | *pSrc | points to the input vector |
[in] | offset | is the offset to be added |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Adds a constant offset to a Q7 vector.
[in] | *pSrc | points to the input vector |
[in] | offset | is the offset to be added |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
void arm_pid_init_f32 | ( | arm_pid_instance_f32 * | S, |
int32_t | resetStateFlag | ||
) |
Initialization function for the floating-point PID Control.
[in,out] | *S | points to an instance of the PID structure. |
[in] | resetStateFlag | flag to reset the state. 0 = no change in state 1 = reset the state. |
void arm_pid_init_q15 | ( | arm_pid_instance_q15 * | S, |
int32_t | resetStateFlag | ||
) |
Initialization function for the Q15 PID Control.
[in,out] | *S | points to an instance of the Q15 PID structure. |
[in] | resetStateFlag | flag to reset the state. 0 = no change in state 1 = reset the state. |
void arm_pid_init_q31 | ( | arm_pid_instance_q31 * | S, |
int32_t | resetStateFlag | ||
) |
Initialization function for the Q31 PID Control.
[in,out] | *S | points to an instance of the Q15 PID structure. |
[in] | resetStateFlag | flag to reset the state. 0 = no change in state 1 = reset the state. |
void arm_pid_reset_f32 | ( | arm_pid_instance_f32 * | S | ) |
Reset function for the floating-point PID Control.
[in,out] | *S | is an instance of the floating-point PID Control structure |
void arm_pid_reset_q15 | ( | arm_pid_instance_q15 * | S | ) |
Reset function for the Q15 PID Control.
[in,out] | *S | points to an instance of the q15 PID Control structure |
void arm_pid_reset_q31 | ( | arm_pid_instance_q31 * | S | ) |
Reset function for the Q31 PID Control.
[in,out] | *S | points to an instance of the Q31 PID Control structure |
Sum of the squares of the elements of a floating-point vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Sum of the squares of the elements of a Q15 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Sum of the squares of the elements of a Q31 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Sum of the squares of the elements of a Q7 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Converts the elements of the Q15 vector to floating-point vector.
[in] | *pSrc | is input pointer |
[out] | *pDst | is output pointer |
[in] | blockSize | is the number of samples to process |
Converts the elements of the Q15 vector to Q31 vector.
[in] | *pSrc | is input pointer |
[out] | *pDst | is output pointer |
[in] | blockSize | is the number of samples to process |
Converts the elements of the Q15 vector to Q7 vector.
[in] | *pSrc | is input pointer |
[out] | *pDst | is output pointer |
[in] | blockSize | is the number of samples to process |
end of Inverse park group
Converts the elements of the Q31 vector to floating-point vector.
[in] | *pSrc | is input pointer |
[out] | *pDst | is output pointer |
[in] | blockSize | is the number of samples to process |
Converts the elements of the Q31 vector to Q15 vector.
[in] | *pSrc | is input pointer |
[out] | *pDst | is output pointer |
[in] | blockSize | is the number of samples to process |
Converts the elements of the Q31 vector to Q7 vector.
[in] | *pSrc | is input pointer |
[out] | *pDst | is output pointer |
[in] | blockSize | is the number of samples to process |
end of park group
Converts the elements of the Q7 vector to floating-point vector.
[in] | *pSrc | is input pointer |
[out] | *pDst | is output pointer |
[in] | blockSize | is the number of samples to process |
end of inv_clarke group
Converts the elements of the Q7 vector to Q15 vector.
[in] | *pSrc | input pointer |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
end of clarke group
Converts the elements of the Q7 vector to Q31 vector.
[in] | *pSrc | input pointer |
[out] | *pDst | output pointer |
[in] | blockSize | number of samples to process |
void arm_radix2_butterfly_f32 | ( | float32_t * | pSrc, |
uint32_t | fftLen, | ||
float32_t * | pCoef, | ||
uint16_t | twidCoefModifier | ||
) |
Core function for the f32 FFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of f32 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to Twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix2_butterfly_inverse_f32 | ( | float32_t * | pSrc, |
uint32_t | fftLen, | ||
float32_t * | pCoef, | ||
uint16_t | twidCoefModifier, | ||
float32_t | onebyfftLen | ||
) |
Core function for the f32 IFFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of f32 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to Twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
[in] | onebyfftLen | 1/fftLenfth |
void arm_radix2_butterfly_inverse_q15 | ( | q15_t * | pSrc, |
uint32_t | fftLen, | ||
q15_t * | pCoef, | ||
uint16_t | twidCoefModifier | ||
) |
Core function for the Radix-2 Q15 CFFT Inverse butterfly process.
[in,out] | *pSrc | points to the in-place buffer of Q15 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to Twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix2_butterfly_inverse_q31 | ( | q31_t * | pSrc, |
uint32_t | fftLen, | ||
q31_t * | pCoef, | ||
uint16_t | twidCoefModifier | ||
) |
Core function for the Radix-2 Q31 CFFT Inverse butterfly process.
[in,out] | *pSrc | points to the in-place buffer of Q31 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to Twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix2_butterfly_q15 | ( | q15_t * | pSrc, |
uint32_t | fftLen, | ||
q15_t * | pCoef, | ||
uint16_t | twidCoefModifier | ||
) |
Core function for the Radix-2 Q15 CFFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of Q15 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to Twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix2_butterfly_q31 | ( | q31_t * | pSrc, |
uint32_t | fftLen, | ||
q31_t * | pCoef, | ||
uint16_t | twidCoefModifier | ||
) |
Core function for the Radix-2 Q31 CFFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of Q31 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to Twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix4_butterfly_f32 | ( | float32_t * | pSrc, |
uint16_t | fftLen, | ||
float32_t * | pCoef, | ||
uint16_t | twidCoefModifier | ||
) |
Core function for the floating-point CFFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of floating-point data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to the twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix4_butterfly_inverse_f32 | ( | float32_t * | pSrc, |
uint16_t | fftLen, | ||
float32_t * | pCoef, | ||
uint16_t | twidCoefModifier, | ||
float32_t | onebyfftLen | ||
) |
Core function for the floating-point CIFFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of floating-point data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
[in] | onebyfftLen | value of 1/fftLen. |
void arm_radix4_butterfly_inverse_q15 | ( | q15_t * | pSrc16, |
uint32_t | fftLen, | ||
q15_t * | pCoef16, | ||
uint32_t | twidCoefModifier | ||
) |
Core function for the Q15 CIFFT butterfly process.
[in,out] | *pSrc16 | points to the in-place buffer of Q15 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef16 | points to twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix4_butterfly_inverse_q31 | ( | q31_t * | pSrc, |
uint32_t | fftLen, | ||
q31_t * | pCoef, | ||
uint32_t | twidCoefModifier | ||
) |
Core function for the Q31 CIFFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of Q31 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix4_butterfly_q15 | ( | q15_t * | pSrc16, |
uint32_t | fftLen, | ||
q15_t * | pCoef16, | ||
uint32_t | twidCoefModifier | ||
) |
Core function for the Q15 CFFT butterfly process.
[in,out] | *pSrc16 | points to the in-place buffer of Q15 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef16 | points to twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
void arm_radix4_butterfly_q31 | ( | q31_t * | pSrc, |
uint32_t | fftLen, | ||
q31_t * | pCoef, | ||
uint32_t | twidCoefModifier | ||
) |
Core function for the Q31 CFFT butterfly process.
[in,out] | *pSrc | points to the in-place buffer of Q31 data type. |
[in] | fftLen | length of the FFT. |
[in] | *pCoef | points to Twiddle coefficient buffer. |
[in] | twidCoefModifier | twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table. |
Function to Calculates 1/in(reciprocal) value of Q15 Data type.
Definition at line 547 of file arm_math.h.
References INDEX_MASK.
Function to Calculates 1/in(reciprocal) value of Q31 Data type.
Definition at line 496 of file arm_math.h.
References clip_q63_to_q31(), and INDEX_MASK.
void arm_rfft_f32 | ( | const arm_rfft_instance_f32 * | S, |
float32_t * | pSrc, | ||
float32_t * | pDst | ||
) |
Processing function for the floating-point RFFT/RIFFT.
[in] | *S | points to an instance of the floating-point RFFT/RIFFT structure. |
[in] | *pSrc | points to the input buffer. |
[out] | *pDst | points to the output buffer. |
arm_status arm_rfft_init_f32 | ( | arm_rfft_instance_f32 * | S, |
arm_cfft_radix4_instance_f32 * | S_CFFT, | ||
uint32_t | fftLenReal, | ||
uint32_t | ifftFlagR, | ||
uint32_t | bitReverseFlag | ||
) |
Initialization function for the floating-point RFFT/RIFFT.
[in,out] | *S | points to an instance of the floating-point RFFT/RIFFT structure. |
[in,out] | *S_CFFT | points to an instance of the floating-point CFFT/CIFFT structure. |
[in] | fftLenReal | length of the FFT. |
[in] | ifftFlagR | flag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLenReal
is not a supported value. arm_status arm_rfft_init_q15 | ( | arm_rfft_instance_q15 * | S, |
arm_cfft_radix4_instance_q15 * | S_CFFT, | ||
uint32_t | fftLenReal, | ||
uint32_t | ifftFlagR, | ||
uint32_t | bitReverseFlag | ||
) |
Initialization function for the Q15 RFFT/RIFFT.
[in,out] | *S | points to an instance of the Q15 RFFT/RIFFT structure. |
[in] | *S_CFFT | points to an instance of the Q15 CFFT/CIFFT structure. |
[in] | fftLenReal | length of the FFT. |
[in] | ifftFlagR | flag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLenReal
is not a supported value. arm_status arm_rfft_init_q31 | ( | arm_rfft_instance_q31 * | S, |
arm_cfft_radix4_instance_q31 * | S_CFFT, | ||
uint32_t | fftLenReal, | ||
uint32_t | ifftFlagR, | ||
uint32_t | bitReverseFlag | ||
) |
Initialization function for the Q31 RFFT/RIFFT.
[in,out] | *S | points to an instance of the Q31 RFFT/RIFFT structure. |
[in,out] | *S_CFFT | points to an instance of the Q31 CFFT/CIFFT structure. |
[in] | fftLenReal | length of the FFT. |
[in] | ifftFlagR | flag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform. |
[in] | bitReverseFlag | flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output. |
fftLenReal
is not a supported value. void arm_rfft_q15 | ( | const arm_rfft_instance_q15 * | S, |
q15_t * | pSrc, | ||
q15_t * | pDst | ||
) |
Processing function for the Q15 RFFT/RIFFT.
[in] | *S | points to an instance of the Q15 RFFT/RIFFT structure. |
[in] | *pSrc | points to the input buffer. |
[out] | *pDst | points to the output buffer. |
void arm_rfft_q31 | ( | const arm_rfft_instance_q31 * | S, |
q31_t * | pSrc, | ||
q31_t * | pDst | ||
) |
Processing function for the Q31 RFFT/RIFFT.
[in] | *S | points to an instance of the Q31 RFFT/RIFFT structure. |
[in] | *pSrc | points to the input buffer. |
[out] | *pDst | points to the output buffer. |
Root Mean Square of the elements of a floating-point vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Root Mean Square of the elements of a Q15 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Root Mean Square of the elements of a Q31 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Multiplies a floating-point vector by a scalar.
[in] | *pSrc | points to the input vector |
[in] | scale | scale factor to be applied |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
void arm_scale_q15 | ( | q15_t * | pSrc, |
q15_t | scaleFract, | ||
int8_t | shift, | ||
q15_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Multiplies a Q15 vector by a scalar.
[in] | *pSrc | points to the input vector |
[in] | scaleFract | fractional portion of the scale value |
[in] | shift | number of bits to shift the result by |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
void arm_scale_q31 | ( | q31_t * | pSrc, |
q31_t | scaleFract, | ||
int8_t | shift, | ||
q31_t * | pDst, | ||
uint32_t | blockSize | ||
) |
Multiplies a Q31 vector by a scalar.
[in] | *pSrc | points to the input vector |
[in] | scaleFract | fractional portion of the scale value |
[in] | shift | number of bits to shift the result by |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Multiplies a Q7 vector by a scalar.
[in] | *pSrc | points to the input vector |
[in] | scaleFract | fractional portion of the scale value |
[in] | shift | number of bits to shift the result by |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Shifts the elements of a Q15 vector a specified number of bits.
[in] | *pSrc | points to the input vector |
[in] | shiftBits | number of bits to shift. A positive value shifts left; a negative value shifts right. |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Shifts the elements of a Q31 vector a specified number of bits.
[in] | *pSrc | points to the input vector |
[in] | shiftBits | number of bits to shift. A positive value shifts left; a negative value shifts right. |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
Shifts the elements of a Q7 vector a specified number of bits.
[in] | *pSrc | points to the input vector |
[in] | shiftBits | number of bits to shift. A positive value shifts left; a negative value shifts right. |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in the vector |
end of LinearInterpolate group
Fast approximation to the trigonometric sine function for floating-point data.
[in] | x | input value in radians. |
Fast approximation to the trigonometric sine function for Q15 data.
[in] | x | Scaled input value in radians. |
Fast approximation to the trigonometric sine function for Q31 data.
[in] | x | Scaled input value in radians. |
Standard deviation of the elements of a floating-point vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Standard deviation of the elements of a Q15 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Standard deviation of the elements of a Q31 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Floating-point vector subtraction.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q15 vector subtraction.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q31 vector subtraction.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Q7 vector subtraction.
[in] | *pSrcA | points to the first input vector |
[in] | *pSrcB | points to the second input vector |
[out] | *pDst | points to the output vector |
[in] | blockSize | number of samples in each vector |
Variance of the elements of a floating-point vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Variance of the elements of a Q15 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Variance of the elements of a Q31 vector.
[in] | *pSrc | is input pointer |
[in] | blockSize | is the number of samples to process |
[out] | *pResult | is output value. |
Clips Q63 to Q15 values.
Definition at line 422 of file arm_math.h.
Clips Q63 to Q31 values.
Definition at line 412 of file arm_math.h.
References x.
Referenced by arm_recip_q31().
Multiplies 32 X 64 and returns 32 bit result in 2.30 format.
Definition at line 453 of file arm_math.h.