15.3.26. Twiddle ROM (TwiddleRom, TwiddleMultRom and TwiddleRomF (deprecated))
The TwiddleRom and TwiddleMutlRom block construct FFTs. They map an angle (specified as an unsigned integer) to a complex number (the twiddle factor). For an FFT, the mapping is:
twiddle = exp(-2*pi*i*angle/N)
For an IFFT, the mapping is:
twiddle = exp(2*pi*i*angle/N)
where N = 2anglewidth and anglewidth is the width of the angle input signal.
The TwiddleRom and TwiddleMultRom blocks have the same external interface but different internal implementations. TwiddleRom uses a single large memory; TwiddleMultRom uses two smaller memories and constructs the twiddle factors using complex multiplication.
TwiddleMultRom consumes more DSP blocks but generally uses fewer memory blocks than TwiddleRom. TwiddleMultRom also produces slightly less accurate results than TwiddleRom.
|iFFT||True to generate twiddle factors for an IFFT.|
|Angle bit width||The width of the angle input signal in bits.|
|Twiddle type||The type of the twiddle output. For example: fixdt(1,18,17).|
|twiddle||Output||User specified||Output twiddle factor.|