6.4.7 IFFTComplex
Description
IFFTComplex computes the inverse Fast Fourier Transform of a source complex vector and stores the results in the destination complex vector.
Prototype
fractcomplex* IFFTComplex(int log2N, fractcomplex* dstCV, fractcomplex* srcCV, fractcomplex* twidFactors);
Arguments
Parameters |
Description |
---|---|
log2N |
Base 2 logarithm of N (number of complex elements in source vector) |
dstCV |
Pointer to the destination vector |
srcCV |
Pointer to the source vector |
twidFactors |
Pointer to twiddle factors |
Return
Pointer to the base address of the destination sample.
Remarks
N must be an integer power of 2.
This function internally calls VectorCopy and IFFTComplexIP functions.
This function operates out of place. A complex vector, large enough to receive the results of the operation, must already have been allocated and assigned to dstCV.
The source array is expected to be in a natural order. Similarly, the resultant array will be stored back in a natural order as well.
The dstCV vector must be allocated in the Y-Data space with address alignment to a modulo of N.
To avoid saturation (overflow) during computation, the values of the source vector should be in the range [-0.5, 0.5].
Only the first N/2 twiddle factors are needed.
The twiddle factors must be initialized with conjFlag set to a value other than zero.
Output is scaled by the factor of N.
Source File
- ifftoop_aa.s
Function Profile
Program Words |
10 |
Cycle Count |
30 |
- The above-mentioned program word and cycle counts pertain solely to IFFTComplex. However, as this function inherently utilizes VectorCopy and IFFTComplexIP, the respective counts for these functions must also be considered.
- In the description of VectorCopy and IFFTComplexIP, the number of cycles reported includes four cycles of C-function call overhead. Thus, the number of actual cycles from these functions to add to IFFTComplex is 2x4 less than whatever number is reported for a stand-alone IFFTComplex.
System resource usage
The following system resource usages exclude that of VectorCopy and IFFTComplexIP.
- W0…W4 - used, not restored
- REPEAT instruction usage - None