Texas Instruments TMS320C64X User Manual

Page 139

Advertising
background image

DSP_fft16x16t

4-111

C64x+ DSPLIB Reference

/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/

co10 = w[j+1]; si10 = w[j+0];

co11 = w[j+3]; si11 = w[j+2];

co20 = w[j+5]; si20 = w[j+4];

co21 = w[j+7]; si21 = w[j+6];

co30 = w[j+9]; si30 = w[j+8];

co31 = w[j+11]; si31 = w[j+10];

/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/

/* Read in the first complex input for the butterflies. */

/* 1st complex input to 1st butterfly: x[0] + jx[1] */

/* 1st complex input to 2nd butterfly: x[2] + jx[3] */

/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/

x_0 = x[0]; x_1 = x[1];

x_2 = x[2]; x_3 = x[3];

/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/

/* Read in the complex inputs for the butterflies. Each of the*/

/* successive complex inputs of the butterfly are seperated */

/* by a fixed amount known as stride. The stride starts out */

/* at N/4, and quarters with every stage. */

/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/

x_l1_0 = x[l1 ]; x_l1_1 = x[l1+1];

x_l1_2 = x[l1+2]; x_l1_3 = x[l1+3];

x_l2_0 = x[l2 ]; x_l2_1 = x[l2+1];

x_l2_2 = x[l2+2]; x_l2_3 = x[l2+3];

x_h2_0 = x[h2 ]; x_h2_1 = x[h2+1];

x_h2_2 = x[h2+2]; x_h2_3 = x[h2+3];

/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/

/* Two butterflies are evaluated in parallel. The following */

/* results will be shown for one butterfly only, although */

/* both are being evaluated in parallel. */

/* */

/* Perform DSP_radix2 style DIF butterflies. */

/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/

xh0_0 = x_0 + x_l1_0; xh1_0 = x_1 + x_l1_1;

xh0_1 = x_2 + x_l1_2; xh1_1 = x_3 + x_l1_3;

xl0_0 = x_0 − x_l1_0; xl1_0 = x_1 − x_l1_1;

Advertising