Fc100 - floating point fast fourier transform, Twiddle factors – Sundance FC100 v.2.3 User Manual
Page 7
FC100 - Floating Point Fast Fourier Transform
v2.3
Fast Fourier Transform product manual
October 2005
www.sundance.com
- 7 -
Twiddle factors
The twiddle factors used during the transform computation must be stored in a memory
accessible by the FFT core. The twiddle factors for a forward FFT of length N are given
by the following equation:
e
N
k
j
k
Tw
π
2
)
(
−
=
with k = 0, 1, …, N-1
Equation 3: Twiddle factors DFT
The inverse FFT twiddle factors can be calculated as follows.
e
N
k
j
k
Tw
π
2
)
(
=
with k = 0, 1, …, N-1
Equation 4: Twiddle factors IDFT
The FFT core package comprises a Matlab program (FFT_test.m) and subroutines that
generate the twiddles factors and write them to a file (fftcore_twiddle) in the floating
point format required.
Memory
The memory banks are external to the FFT core. Two banks are dedicated to data
processing. The signals din_bank and dout_bank indicate which bank is used for input
and which bank is used for output. Every new pass, the banks are swapped as the FFT
core needs to access the data calculated from the previous pass.
Minimal memory usage architecture
The block diagram below shows a configuration that uses as few memory banks as
possible. Please note that a system using dual port memory or QDR SRAM will only
require one data bank.
Figure 1 : Minimum memory usage architecture