DSP Run-Time Library Reference
rfft
N point real input FFT
Synopsis
#include <filter.h>
void rfft_fr16(in[], t[], out[], w[], wst, n, block_exponent,
const fract16 in[];
complex_fract16 t[];
complex_fract16 out[];
const complex_fract16 w[];
int wst;
int n;
int block_exponent;
int scale method;
Description
This function transforms the time domain real input signal sequence to
the frequency domain by using the radix-2 FFT. The function takes
advantage of the fact that the imaginary part of the input equals zero,
which in turn eliminates half of the multiplications in the butterfly.
The size of the input array
working buffer
The function does not impose any special memory alignment require-
ments on the arrays. However, benefits in run-time performance will be
realized if the output array is allocated on an address boundary that is
multiple of twice the FFT size. If the input data can be overwritten, then
optimum memory usage can be achieved by specifying the input array as
either the output array or as the temporary array provided that the mem-
ory size of the input array is at least
temporary array will also result in increased run-time performance.
4-94
scale_method)
/* input/output sequence
/* temporary working buffer
/* working buffer
/* twiddle sequence
/* twiddle factor stride
/* number of FFT points
/* block exponent of output data */
/* scaling method desired 0-none,
, the output array
in
is
, where
represents the number of points in the FFT.
t
n
n
VisualDSP++ 3.5 C/C++ Compiler and Library Manual
1-static,
2-dynamic
, and the temporary
out
. Specifying the input array as the
2*n
for ADSP-219x DSPs
*/
*/
*/
*/
*/
*/
*/
Need help?
Do you have a question about the VISUALDSP++ 3.5 and is the answer not in the manual?
Questions and answers