IFFT_OMP_DP_3D_C2C
fft_plan_t ifft_omp_dp_plan_3d_c2c (int N1, int N2, int N3, int mode, fft_callout_t fxns)
int ifft_omp_dp_3d_c2c_ecpy (fft_param_u u, void *edmaState)
#define IFFT_OMP_DP_3D_C2C_MIN_SIZE   ( 32*32*32)
#define IFFT_OMP_DP_3D_C2C_MAX_SIZE   (1024*1024*1024)
#define IFFT_OMP_DP_3D_C2C_NUMOFLINEBUFS   4

Detailed Description

3


Define Documentation

#define IFFT_OMP_DP_3D_C2C_MIN_SIZE   ( 32*32*32)

Definition at line 51 of file ifft_omp_dp_3d_c2c.h.

#define IFFT_OMP_DP_3D_C2C_MAX_SIZE   (1024*1024*1024)

Definition at line 52 of file ifft_omp_dp_3d_c2c.h.

Parameters:
IFFT_OMP_DP_3D_C2C_NUMOFLINEBUFS= number of cache lines to process each iteration

Definition at line 58 of file ifft_omp_dp_3d_c2c.h.


Function Documentation

fft_plan_t ifft_omp_dp_plan_3d_c2c ( int  N1,
int  N2,
int  N3,
int  mode,
fft_callout_t  fxns 
)

This function sets up the parameters for each dimension and the algorithm to utilize.

Parameters:
N1= FFT size dimension 1
N2= FFT size dimension 2
N3= FFT size dimension 3
mode= Only FFT_ECPY is supported for 3d FFT
int ifft_omp_dp_3d_c2c_ecpy ( fft_param_u  u,
void *  edmaState 
)

This program performs one 3-dimensional double-precision real-to-complex IFFT utilizing multi-processing.

Parameters:
N1= FFT size dimension 1
N2= FFT size dimension 2
N3= FFT size dimension 3
para1= Twiddle, mixed radix & bluestein parameters for dimension 1
para2= Twiddle, mixed radix & bluestein parameters for dimension 2
para3= Twiddle, mixed radix & bluestein parameters for dimension 3
data= input/output pointer
workbuf= working pointer
data_w= input/output buffer pointer
workbuf_w= working buffer pointer
workbuf_t= Cache line buffer pointer
tw= twiddle pointer
tw_w= twiddle buffer pointer
Bn= Bluestein pointer
Bn_w= Bluestein buffer pointer
workbuf_bn= Bluestein scratch pointer
Algorithm:
Algorithm can run in anysize or power of two mode based upon values of N1, N2 & N3. Supported radix values are 2, 3, 4, & 5, and Bluestein for all other sizes.
Note:Parameters para1 & para2 are determined at runtime and will depend upon type of FFT desired, radix 3 & 5, radix 2 & 4, or bluestein.
Assumptions:
N1, N2 & N3 are a multiple of IFFT_OMP_DP_3D_C2C_NUMOFLINEBUFS and positive values.
All input, output and working buffers are double word aligned.
No input, working or buffers overlap.
Size Limitations:
Current limitations are: 512 IFFT size with bluestein, 1024 IFFT size for power of 2.
Implementation notes:
Endian Support: The code supports little endian modes.
Interruptibility: The code is interrupt-tolerant but not interruptible.

Copyright 2014, Texas Instruments Incorporated