Chapter-9
X[k ] =
N 1
x[n]e
j(2 / N )kn
n=0
1 N1
x[n] = X[k ]e j(2 / N)kn
N k =0
X[k ] = e
Define
j(2 / N )kN
yk [n] =
N 1
x[r]e
j(2 / N )rn
r =0
N 1
j 2 / N )r (N n )
x[r]e (
r =0
j(2 / N )k (n r )
x
[
r
]
e
u[n r ]
r =
With this definition and using x[n]=0 for n<0 and n>N-1
X[k ] = yk [n]n=N
X[k] can be viewed as the output of a filter to the input x[n]
Impulse response of filter:
e j(2 / N)knu[n]
X[k] is the output of the filter at time n=N
Hk (z ) =
1
1e
2
k
N
z 1
Computational complexity
4N real multiplications
4N real additions
Slightly less efficient than the direct method
2
k
N
2
k
N
1e
z 1
1e
z 1
Hk (z ) =
=
2
2
j k
j k
1 2 cos 2k z 1 + z 2
1
1
N
N
1 e z 1 e
z
2
k
N
1e
z 1
Hk (z) =
2k 1
1 2 cos
z + z 2
N
Complexity for one DFT coefficient
Poles: 2N real multiplications and 4N real additions
Zeros: Need to be implement only once
4 real multiplications and 4 real additions
X [ k ] = x[n]e
j ( 2 /N )kn
n=0
x[n]e
j ( 2 /N )kn
n even
+ x[n]e
j ( 2 /N )kn
n odd
X[k ] =
N / 2 1
2rk
N
x[2r]W
r =0
N / 2 1
rk
N/2
N / 2 1
(2r +1)k
x
[
2
r
+
1
]
W
r =0
k
N
N / 2 1
rk
N/2
r =0
r =0
k
N
Decimation In Time
Decimation In Time
N /21
G [k ] =
N /41
g[r]WNrk/2 = g[2l]WN2lk
/2 = +
r=0
l=0
N /41
N /41
x[2l +1]WN( /2
l=0
N /41
g[2l]W
lk
N /4
k
N /2
+W
g[2l +1]W
lk
N /4
l=0
l=0
N /41
N /41
and
H[k] =
h[2l]W
lk
N /4
l=0
+ WNk /2
h[2l +1]W
lk
N /4
l=0
2l+1)k
Complexity:
Nlog2N complex multiplications and additions
Butterfly Computation
Flow graph constitutes of butterflies
In-Place Computation
Decimation-in-time flow graphs require two sets of registers
Input and output for each stage
In-Place Computation
X[k ] =
N 1
nk
x
[
n
]
W
n=0
Split the DFT equation into even and odd frequency indexes
X[2r ] =
N1
n2r
N
x[n]W
n=0
N / 2 1
n2r
N
x[n]W
n=0
N1
n2r
N
x[n]W
n =N / 2
X[2r ] =
N / 2 1
n2r
N
x[n]W
n=0
N / 2 1
x[n + N / 2]W
(n + N / 2 )2r
n=0
N / 2 1
n=0
X[2r + 1] =
N / 2 1
n 2r +1)
N/2
n=0
nr
N/2