47 uint32_t twidCoefModifier);
53 uint32_t twidCoefModifier);
57 const uint16_t bitRevLen,
58 const uint16_t * pBitRevTable);
93 uint8_t bitReverseFlag)
153 q31_t xt, yt, cosVal, sinVal;
158 for (i = 0; i < n2; i++)
160 cosVal = pCoef[2*ia];
161 sinVal = pCoef[2*ia + 1];
165 xt = (pSrc[2 * i] >> 2) - (pSrc[2 * l] >> 2);
166 pSrc[2 * i] = (pSrc[2 * i] >> 2) + (pSrc[2 * l] >> 2);
168 yt = (pSrc[2 * i + 1] >> 2) - (pSrc[2 * l + 1] >> 2);
169 pSrc[2 * i + 1] = (pSrc[2 * l + 1] >> 2) + (pSrc[2 * i + 1] >> 2);
176 pSrc[2u * l] = p0 << 1;
177 pSrc[2u * l + 1u] = p1 << 1;
186 for (i = 0; i < fftLen >> 1; i++)
213 q31_t xt, yt, cosVal, sinVal;
218 for (i = 0; i < n2; i++)
220 cosVal = pCoef[2*ia];
221 sinVal = pCoef[2*ia + 1];
225 xt = (pSrc[2 * i] >> 2) - (pSrc[2 * l] >> 2);
226 pSrc[2 * i] = (pSrc[2 * i] >> 2) + (pSrc[2 * l] >> 2);
228 yt = (pSrc[2 * i + 1] >> 2) - (pSrc[2 * l + 1] >> 2);
229 pSrc[2 * i + 1] = (pSrc[2 * l + 1] >> 2) + (pSrc[2 * i + 1] >> 2);
236 pSrc[2u * l] = p0 << 1;
237 pSrc[2u * l + 1u] = p1 << 1;
246 for (i = 0; i < fftLen >> 1; i++)
void arm_cfft_q31(const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
Processing function for the fixed-point complex FFT in Q31 format.
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.
void arm_cfft_radix4by2_inverse_q31(q31_t *pSrc, uint32_t fftLen, const q31_t *pCoef)
Instance structure for the fixed-point CFFT/CIFFT function.
const uint16_t * pBitRevTable
#define multAcc_32x32_keep32_R(a, x, y)
void arm_bitreversal_32(uint32_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable)
#define multSub_32x32_keep32_R(a, x, y)
int32_t q31_t
32-bit fractional data type in 1.31 format.
#define mult_32x32_keep32_R(a, x, y)
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_cfft_radix4by2_q31(q31_t *pSrc, uint32_t fftLen, const q31_t *pCoef)