最近在整快速傅里叶变化,自己编写的函数使用起来速度太慢了,想把TI库里面自带的函数给用起来,查看了下使用说明,主要使用2个函数:
<1>int gen_twiddle_fft32x32(int *w, int n, float scale);
<2> void DSP_fft32x32 (int * w, int nx, int * x, int * y)
w[2*nx]: Pointer to vector of Q.31 FFT coefficients of size 2*nx elements.
nx: Number of complex elements in vector x.
x[2*nx]: Pointer to input vector of size 2*nx elements.
y[2*nx]: Pointer to output vector of size 2*nx elements.
流程是先使用1生成旋转因子,再使用2,在输入时x[2*nx]偶数字地址存放的是实部,奇数字地址存放的是虚部,但运算出来的数据与其他函数运行结果差距较大,仅第一个数是对的,不清楚里面是否有哪些地方需要特别注意,或者是数据存放还有什么让人节操碎落的地方,求解答
|