Texas Instruments TMS320C64X Programmer's Reference Manual page 127

Dsp little-endian dsp library
Hide thumbs Also See for TMS320C64X:
Table of Contents

Advertisement

#include <stdio.h>
#include <stdlib.h>
#if 0
# define DIG_REV(i, m, j) ((j) = (_shfl(_rotl(_bitr(_deal(i)), 16)) >> (m)))
#else
# define DIG_REV(i, m, j)
do {
unsigned _ = (i);
_ = ((_ & 0x33333333) <<
_ = ((_ & 0x0F0F0F0F) <<
_ = ((_ & 0x00FF00FF) <<
_ = ((_ & 0x0000FFFF) << 16) | ((_ & ~0x0000FFFF) >> 16);
(j) = _ >> (m);
} while (0)
#endif
void fft_cn
(
const short *restrict w,
int n,
short
*restrict x,
short
*restrict y
)
{
int stride, i, j, k, t, s, m;
short
xh0, xh1,
short
xl0, xl1,
short
xt0, yt0,
short
xt2, yt2,
/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/
/* Inform the compiler that the
/* "w" and output array "y" are double word aligned.
/* number of points to be transformed is assumed to be greater than or
/* equal to 16, and less than 32768.
/*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*/
#ifndef NOASSUME
2) | ((_ & ~0x33333333) >>
4) | ((_ & ~0x0F0F0F0F) >>
8) | ((_ & ~0x00FF00FF) >>
xh20,
xh21;
xl20,
xl21;
xt1,
yt1;
xt3,
yt3;
input array "x", twiddle factor array
2);
4);
8);
In addition, the
C64x+ DSPLIB Reference
DSP_fft
\
\
\
\
\
\
\
\
*/
*/
*/
*/
4-99

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

Tms320c64x+

Table of Contents