Texas Instruments TMS320C67 DSP Series Programmer's Reference Manual page 44

Library
Hide thumbs Also See for TMS320C67 DSP Series:
Table of Contents

Advertisement

Algorithm
sp_fftSPxSP_asm(N/4,&x[2*N/4], &w[2*3*N/4],y,brev,rad,N/4, N)
sp_fftSPxSP_asm(N/4,&x[0], &w[2*3*N/4],y,brev,rad,0, N)
In addition this function can be used to minimize call overhead, by completing
the FFT with one function call invocation as shown below:
sp_fftSPxSP_asm(N, &x[0], &w[0], y, brev, rad, 0, N)
This is the C equivalent of the assembly code without restrictions: Note that
the assembly code is hand optimized and restrictions may apply.
void DSPF_sp_fftSPxSP(int N, float *ptr_x, float *ptr_w, float
*ptr_y,
unsigned char *brev, int n_min, int offset, int n_max)
{
int
i, j, k, l1, l2, h2, predj;
int
tw_offset, stride, fft_jmp;
float x0, x1, x2, x3,x4,x5,x6,x7;
float xt0, yt0, xt1, yt1, xt2, yt2, yt3;
float yt4, yt5, yt6, yt7;
float si1,si2,si3,co1,co2,co3;
float xh0,xh1,xh20,xh21,xl0,xl1,xl20,xl21;
float x_0, x_1, x_l1, x_l1p1, x_h2 , x_h2p1, x_l2,
x_l2p1;
float xl0_0, xl1_0, xl0_1, xl1_1;
float xh0_0, xh1_0, xh0_1, xh1_1;
float *x,*w;
int
k0, k1, j0, j1, l0, radix;
float * y0, * ptr_x0, * ptr_x2;
radix = n_min;
stride = N; /* N is the number of complex samples */
tw_offset = 0;
while (stride > radix)
{
j = 0;
fft_jmp = stride + (stride>>1);
h2 = stride>>1;
l1 = stride;
l2 = stride + (stride>>1);
x = ptr_x;
DSPF_sp_fftSPxSP
DSPLIB Reference
4-19

Hide quick links:

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the TMS320C67 DSP Series and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Table of Contents