Professional Documents
Culture Documents
Outline
Applications of FFT in Communications Fundamental FFT Algorithms FFT Circuit Design Architectures Conclusions
DAB Receiver
Tuner OFDM Demodulator
256/512/ 1024/2048 point FFT
Channel Decoder
Control Panel
FEC Coder
S/P
IFFT 64-pt
D/A LPF
Up Converter
MAC Layer
6Mbps ~ 54Mbps
RECEIVER
FEC Decoder
P/S
FFT 64-pt
A/D LPF
Down Converter 4
QAM encoders
IFFT 512-pt
P/S
channel
TEQ
OFDM
DMT
Outline
Applications of FFT in Communications Fundamental FFT Algorithms FFT Circuit Design Architectures Conclusions
7
N 1 n=0
x [ n ] W Nkn , k = 0 , 1 , ..., N 1 ,
1 x[n ] = N
N 1 n=0
X [ k ] W N kn , n = 0 , 1, ..., N 1,
Where, W N = e j ( 2 / N ) .
9
Observations
WNk is N-periodic. WNk is conjugate symmetric.
Both x[n] and X[k] are N-periodic. If x[n] is real, then X[k] is conjugate symmetric and vice versa.
10
Observations
A direct calculation requires approximately N2 complex multiplications and additions. FFT algorithms reduce the computation complexity to the order of N log N. Algorithms developed for FFT also works for IFFT with only minor modifications.
11
Subcarriers
26 27 37 38
IFFT
26 27 37 38
62 63
62 63
12
N / 2 1 r =0
x[2r ] W
kr N /2
+W
x[2r + 1] W
kr N /2
k = G[k] + WN H[k]
k = 0, K , N 1
13
Observations
G[k] is DFT of even samples of x[n]. H[k] is DFT of odd samples of x[n]. G[k] and H[k] are N/2-periodic.
WNk+N/2 = - WNk.
14
X [ r + N / 2 ] = G[r] + W N( r + N / 2 ) H[r] ,
X[r]
WNr
Mth stage
-WNr
(M-1)th stage -1
Mth stage
16
H[3]
X[0] -1 -1 -1
WN0 WN0
WN0
-1
WN2
-1
WN0
WN1
-1 -1
WN2 WN3
WN0
-1
WN2
Bit Reversal
n0 n1 0 0 1 x[n2 n1 n0] 0 1 0 1 1 1 0 1 n2 0 1 0 x[0 1 0] x[1 1 0] x[0 0 1] x[1 0 1] x[0 1 1] x[1 1 1]
19
x[0 0 0] x[1 0 0]
X [2r + 1] =
( N / 2 ) 1 n =0
r = 0, K , N/ 2-1
20
g[ n] W
n =0
rn N /2
X [2r + 1] =
( N / 2 ) 1
n rn h[n] WN WN / 2 ,
21
(M-1)th stage
Mth stage
-1
WNn
In-place Computation
22
X[0]
N/2-point DFT
N/2-point DFT
X[0] -1 -1 -1
WN0 WN2 WN0
X[4] X[2]
-1
WN0
X[6] X[1]
-1 -1 -1
WN0 WN2
WN0
X[5] X3]
-1
WN0
X7]
24
Butterfly Comparison
Butterfly (decimation-in-frequency) (M-1)th stage Mth stage
-1 Butterfly (decimation-in-time)
WNn
(M-1)th stage -1
Mth stage
WNr
25
Cooley-Tukey Algorithm
N = N1 N 2
n = N 2 n1 + n 2 , k = k1 + N 1 n 2 , 0 n1 N 1 1, 0 n 2 N 2 1, 0 k 1 N 1 1, 0 k 2 N 2 1,
2D point re - arrangemen t : x [ n ] = x[ N 2 n1 + n 2 ], X [ k ] = X[ k 1 + N 1 k 2 ].
26
Cooley-Tukey Algorithms
Twiddle factor
N1 1 k1n2 k 2 n2 k1n1 X [ k ] = x[ N 2 n1 + n2 ] W N1 WN WN 2 , n2 = 0 n1 = 0 G [ n 2 , k1 ]
N 2 1
~ G [ n 2 , k1 ]
27
Observations
N1 = 2, N2 = N/2 -> 1st stage of the decimation in frequency radix-2 FFT. N1 = N/2, N2 = 2 -> 1st stage of the decimation in time radix-2 FFT.
In general, N = N1 N2 Nn. If N = r n -> Radix-r.
28
( N / 3)1 n=0
X[3r +1] =
( N / 3)1 r =0
j 2
n rn ) WNWN / 3
X[3r + 2] =
( N / 3)1
j 2
j 2
2 rn ) WN nWN / 3
29
(M-1)th stage
j2
j2
WNn
Mth stage
e e
j2
j2
WN2n
30
(x[n]+ x[n+ N/ 4]+ x[n+2N/ 4]+ x[n+3N/ 4])Wrn4 N/ (x[n]+( j)x[n+ N/ 4]+(1)x[n+2N/ 4]+ jx[n+ N/ 4])WnWrn4 N N/
r=0
(N/ 4)1
(M-1)th stage
Mth stage
32
Radix-4
34
Split-Radix FFT
35
Computational Complexity
Method DFT Radix-2 Radix-4
# of Complex Multiplications # of Complex Additions
N2 (N/2) log2N
N(N-1) N log2N
The above numbers do not tell the whole story! Architecture is the key issue to trade of among performance, cost, hardware complexity, etc.
36
Outline
Applications of FFT in Communications Fundamental FFT Algorithms FFT Circuit Design Architectures Conclusions
37
Degree of Parallelism
One simple processing unit or multiple simple processing units
x[0] x[4] x[2] x[6] x[1] x[5] x[3] x[7]
WN0 WN0 WN0 WN0
X[0] -1
WN0
X[1] -1 -1
WN0
-1
WN2
-1
WN0
WN1
-1 -1
WN2 WN3
-1
WN2
Degree of Parallelism
Simple processing units versus complicate processing units
40
Data In
Input Buffer Coefficients ROM or Generator Butterfly or Processing Element RAM Data Out
Control
Control Unit
42
Pipeline Architectures
FFT Signal Flow Graph Multiple path delay commutator Single path delay commutator Single path delay feedback
43
X[0] -1
WN0 WN0
X[1] -1 -1
WN0 WN1 WN0
-1 -1
WN2
WN0
-1 -1
BF2
WN2 WN3
WN0
-1
Buffer BF2
WN2
Buffer ROM
ROM
ROM
44
-1 -1
WN0 WN0
-1 -1
Buffer
WN0 WN2
-1
Buffer
WN0
BF2
BF2
BF2
ROM
ROM
ROM
45
46
-1 -1 -1 -1
-1 -1 -1 -1
76543210
3210 3210 4 5 6 7 butterfly 4 5 6 7 delay 5410 5410 7 6 3 2 butterfly 7 6 3 2 delay 6420 6420 7 5 3 1 butterfly 7 5 3 1
switch
switch
delay
47
C2
C2 4
BF2
C2
BF2
BF2
N=16
48
C4
BF4
N=256
49
Delay Commutator
Butterfly
50
DC2
BF2
DC2
BF2
DC2
BF2
DC2
BF2
N=16
51
DC4
BF4
DC4
BF4
DC4
BF4
DC4
BF4
N=256
52
Butterfly
53
BF2
BF2
BF2
BF2
N=16
54
BF4
BF4
BF4
BF4
N=256
55
R22SDF
128 64 32 16 8 4 2 1
BF2 I
BF2 II
BF2 I
BF2 II
BF2 I
BF2 II
BF2 I
BF2 II
N=256
56
Hardware Comparison
Architecture Multiplier # R2MDC R2SDF R4MDC R4SDF R4SDC R22SDF 2(log4 N-1) 2(log4 N-1) 3(log4 N-1) log4N-1 log4N-1 log4N-1 Adder # 4 log4 N 4 log4 N 8 log4 N 8 log4 N 3 log4 N 4 log4 N Memory Size 3N/2-2 N-1 5N/2-4 N-1 2N-2 N-1 Control simple simple simple medium complex simple
57
Conclusions
Effect FFT computation is essential to many communication applications utilizing OFDM or DMT technique. A pipelined FFT architecture is applied where a high real-time performance is required. A memory-based FFT architecture can be adopted when cost is more concerned than speed. A best fit FFT architecture depends on application specific requirements to tradeoff among accuracy, speed, chip size, power consumption, etc.
58