Other Parts Discussed in Thread: FFTLIB,
Tool/software: TI-RTOS
I am trying to use the DSPs via OpenCL to do an IFFT. I've had success using DSPLIB but I need to do a non-power of two FFT now (50 elements to be exact). I read that FFTLIB has non-power of two FFTs and indeed the fftlib_c66x_2_0_0_2 provides the following documentation (I've only included a short extract to give some context):
int ifft_sp_1d_c2r_batch_direct | ( | fft_param_u | u, | |
void * | edmaState | |||
) |
Parameters:
N | = IFFT size | |
M | = Power of 2 IFFT size, if Bluestein algorithm is used |
Assumptions:Batch size is at least 4.
N is a positive value.
Looks great, but there was no ae66 library for the whole project, but I did find fftlib_3_1_0_0 in ti-processor-sdk-linux-am57xx-evm-05.01.00.11 which seemed great because it's much more recent and included the library. Problem is, the function documentation explains that non-power of two is more or less not supported, suggesting a rollback in features? Here is another documentation extract from fftlib_3_1_0_0:
void ifft_sp_plan_1d_c2r_batch | ( | int | N, |
int | mode, | ||
fft_callout_t | fxns, | ||
fft_plan_t * | p, | ||
float * | in, | ||
float * | out, | ||
float * | tw, | ||
float * | work | ||
) |
Parameters
N | = IFFT size |
Assumptions:
Batch size is at least 8.
N is a positive value.
N is multiple of 8.
So my concern is: did the IFFT in 2_0_0_2 version not work for non-powers of 2? Or was there a feature rollback?