Dspf_Sp_Fftspxsp - Texas Instruments TMS320C67 DSP Series Programmer's Reference Manual

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

Advertisement

DSPF_sp_fftSPxSP

DSPF_sp_fftSPxSP
Function
Arguments
Description
4-16
Single-precision floating-point mixed radix forwards FFT with
complex input
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)
Length of fft in complex samples, power of 2 such that N ≥ 8
N
and N ≤ 16384.
ptr_x
Pointer to complex data input.
ptr_w
Pointer to complex twiddle factor (see below).
ptr_y
Pointer to complex output data.
brev
Pointer to bit reverse table containing 64 entries.
n_min
Smallest fft butterfly used in computation used for
decomposing fft into subffts, see notes.
offset
Index in complex samples of sub-fft from start of main fft.
n_max
Size of main fft in complex samples.
The benchmark performs a mixed radix forwards fft using a special sequece
of coefficients generated in the following way:
/* generate vector of twiddle factors for optimized algorithm
*/
void tw_gen(float * w, int N)
{
int j, k;
double x_t, y_t, theta1, theta2, theta3;
const double PI = 3.141592654;
for (j=1, k=0; j <= N>>2; j = j<<2)
{
for (i=0; i < N>>2; i+=j)
{
theta1 = 2*PI*i/N;
x_t = cos(theta1);
y_t = sin(theta1);
w[k] = (float)x_t;
w[k+1] = (float)y_t;
theta2 = 4*PI*i/N;
x_t = cos(theta2);
y_t = sin(theta2);
w[k+2] = (float)x_t;
w[k+3] = (float)y_t;
theta3 = 6*PI*i/N;
x_t = cos(theta3);
y_t = sin(theta3);
w[k+4] = (float)x_t;

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