71 #ifndef ARM_MATH_CM0_FAMILY 75 q31_t in1, in2, in3, in4;
79 blkCnt = numSamples >> 2u;
91 acc0 = __SMUAD(in1, in1);
92 acc1 = __SMUAD(in2, in2);
93 acc2 = __SMUAD(in3, in3);
94 acc3 = __SMUAD(in4, in4);
97 *pDst++ = (
q15_t) (acc0 >> 17);
98 *pDst++ = (
q15_t) (acc1 >> 17);
99 *pDst++ = (
q15_t) (acc2 >> 17);
100 *pDst++ = (
q15_t) (acc3 >> 17);
108 blkCnt = numSamples % 0x4u;
114 acc0 = __SMUAD(in1, in1);
117 *pDst++ = (
q15_t) (acc0 >> 17);
128 while(numSamples > 0u)
133 acc0 = (real * real);
134 acc1 = (imag * imag);
136 *pDst++ = (
q15_t) (((
q63_t) acc0 + acc1) >> 17);
int64_t q63_t
64-bit fractional data type in 1.63 format.
int16_t q15_t
16-bit fractional data type in 1.15 format.
#define __SIMD32(addr)
definition to read/write two 16 bit values.
int32_t q31_t
32-bit fractional data type in 1.31 format.
void arm_cmplx_mag_squared_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
Q15 complex magnitude squared.