fft_1d.h File Reference

#include <spu_intrinsics.h>

Include dependency graph for fft_1d.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define _FFT_1D_H_   1
#define BIT_SWAP(_i, _pat)   spu_extract(spu_gather(spu_shuffle(spu_maskb(_i), _pat, _pat)), 0)
#define MAX_FFT_1D_SIZE   8192
#define INV_SQRT_2   0.7071067811865
#define FFT_1D_BUTTERFLY(_P_re, _P_im, _Q_re, _Q_im, _p_re, _p_im, _q_re, _q_im, _W_re, _W_im)
#define FFT_1D_BUTTERFLY_HI(_P_re, _P_im, _Q_re, _Q_im, _p_re, _p_im, _q_re, _q_im, _W_re, _W_im)


Define Documentation

#define _FFT_1D_H_   1

#define BIT_SWAP ( _i,
_pat   )     spu_extract(spu_gather(spu_shuffle(spu_maskb(_i), _pat, _pat)), 0)

Referenced by _fft_1d_r2().

#define FFT_1D_BUTTERFLY ( _P_re,
_P_im,
_Q_re,
_Q_im,
_p_re,
_p_im,
_q_re,
_q_im,
_W_re,
_W_im   ) 

Value:

{       \
  vector float _qw_re, _qw_im;                                                                          \
                                                                                                        \
  _qw_re = spu_msub(_q_re, _W_re, spu_mul(_q_im, _W_im));                                               \
  _qw_im = spu_madd(_q_re, _W_im, spu_mul(_q_im, _W_re));                                               \
  _P_re  = spu_add(_p_re, _qw_re);                                                                      \
  _P_im  = spu_add(_p_im, _qw_im);                                                                      \
  _Q_re  = spu_sub(_p_re, _qw_re);                                                                      \
  _Q_im  = spu_sub(_p_im, _qw_im);                                                                      \
}

Referenced by _fft_1d_r2().

#define FFT_1D_BUTTERFLY_HI ( _P_re,
_P_im,
_Q_re,
_Q_im,
_p_re,
_p_im,
_q_re,
_q_im,
_W_re,
_W_im   ) 

Value:

{       \
  vector float _qw_re, _qw_im;                                                                          \
                                                                                                        \
  _qw_re = spu_madd(_q_re, _W_im, spu_mul(_q_im, _W_re));                                               \
  _qw_im = spu_msub(_q_im, _W_im, spu_mul(_q_re, _W_re));                                               \
  _P_re  = spu_add(_p_re, _qw_re);                                                                      \
  _P_im  = spu_add(_p_im, _qw_im);                                                                      \
  _Q_re  = spu_sub(_p_re, _qw_re);                                                                      \
  _Q_im  = spu_sub(_p_im, _qw_im);                                                                      \
}

Referenced by _fft_1d_r2().

#define INV_SQRT_2   0.7071067811865

Referenced by _fft_1d_r2().

#define MAX_FFT_1D_SIZE   8192

Referenced by _fft_1d_r2().


Generated on Wed Jul 29 06:29:53 2009 for GNU Radio 3.2.2 C++ API by  doxygen 1.5.9