DSP_fft16x16t
4-117
C64x+ DSPLIB Reference
if (radix == 2)
{
n02 = x_8 + x_a; n03 = x_9 + x_b;
n22 = x_8 − x_a; n23 = x_9 − x_b;
n12 = x_c + x_e; n13 = x_d + x_f;
n32 = x_c − x_e; n33 = x_d − x_f;
}
/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/
/* Points that are read from succesive locations map to y, y[N/4] */
/* y[N/2], y[3N/4] in a radix4 scheme, y, y[N/8], y[N/2],y[5N/8] */
/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/
y0[2*h2+2] = n02; y0[2*h2+3] = n03;
y1[2*h2+2] = n12; y1[2*h2+3] = n13;
y2[2*h2+2] = n22; y2[2*h2+3] = n23;
y3[2*h2+2] = n32; y3[2*h2+3] = n33;
/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/
/* Increment ”j” by ”j0”. If j equals n0, then increment both ”x0” */
/* and ”x2” so that double inversion is avoided. */
/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/
j += j0;
if (j == n0)
{
j += n0;
x0 += (int) npoints>>1;
x2 += (int) npoints>>1;
}
}
}