Documente Academic
Documente Profesional
Documente Cultură
Lecture outline
Discrete Fourier transform Denition, Properties of the DFT, Circular convolution, Linear convolution using DFT, Zero padding Fast Fourier transform Denition, Decimation-in-time FFT, Decimation-in-frequency FFT Exercises
Page 2/40
and X(ejw ) is periodic with period 2. Sampling X(ejw ) over the interval [0, 2) at the points wk = 2k/N, k = 0, 1, . . . , N 1 we get X[k] = X(ejwk ) =
N 1 n=0
x[n]ej2kn/N , k = 0, 1, . . . , N 1
(1)
The sampled Fourier transform X[k] in (1) is referred to as the discrete Fourier transform (DFT) of the discrete-time signal x[n].
Page 3/40
{X(ejw )}
4 0 4 0 1 2
w/
(a)
w/
(b)
Figure 1: The (a) real, and (b) imaginary parts of the Fourier transform of a discrete-time signal of length N = 16.
Page 4/40
(2)
Eulers formula states that e = cos + j sin , i.e., the powers of WN lie on the unit circle in the complex plane spaced = 2/N apart.
6 W8 5 W8 1 7 W8 = W8 8 0 W8 = W8 = 1 + j0 1 W8 2 W8
4 W8 3 W8
X[k N ] =
N 1 n=0
x[n]WN
(kN )n
N 1 n=0
kn x[n]WN = X[k]
The discrete-time signal x[n] can be recovered from X[k] by means of the inverse discrete Fourier transform (IDFT), i.e.,
N 1 1 kn X[k]WN , n = 0, 1, . . . , N 1 x[n] = N k=0
Page 6/40
0 WN = W 0 N
0 WN
0 WN
0 WN
0 WN
1 WN 2 WN
2 WN 4 WN
N WN 1 2(N 1) WN
2(N 1)
WN
(N 1)(N 1)
0 N WN WN 1 WN
(3)
x[N 1]
Page 7/40
0 W4 2 W4 4 W4 6 W4
0 W4 3 W4 6 W4 9 W4
0 1 j 1 j 0 1 j = = 0 1 1 1 1 0 2
1 1 j 1 j 1 1+j
The notation {x[0], x[1], . . . , x[N 1]} is used to denote a discrete-time signal x[n] of N elements.
Page 8/40
{X[k]}
k
(a) (b)
{X[k]}
Figure 3: The (a) real, and (b) imaginary spectra of a real-valued signal.
Page 9/40
xo [n]
xe [n]
0 1 0 8 16
n
(a) (b)
Figure 4: The (a) even, and (b) odd parts of a real-valued signal.
Page 10/40
{Xe [k]}
4 0 4 0 8 16
k
(a) (b)
{Xo [k]}
4 0 4 0 8 16
{Xo [k]}
4 0 4 0 8 16
k
(c) (d)
Figure 5: The real and imaginary spectra of an even signal in (a, b), and the real and imaginary spectra of an odd signal in (c, d).
Page 11/40
Page 12/40
x[n] =
2 cos(2k0n/N ) { 1, n = 0, . . . , m 1 0, n = m, . . . , N 1
sin(k/N )
Page 13/40
x[n]
0 1 0 8 16
n
(a)
16 ] 16 ]
1 0 1 0 8 16
1 0 1 0 8 16
x[ n + 1
n
(b) (c)
x[ n
Figure 6: The (a) signal x[n], (b) circularly shifted x[n + 116], and (c) time-reversed x[n16].
c 2011 Alan Tan Page 14/40
x[m]y[n mN ], n = 0, 1, . . . , N 1
Page 15/40
1 2 3 4 8 7 6 5 1 2 3 4 8 7 6 5 1 2 3 4 8 7 6 5 1 2 3 4 8 7 6 5
1 2 3 4 5 8 7 6 1 2 3 4 6 5 8 7 1 2 3 4 7 6 5 8 1 2 3 4 8 7 6 5
Table 3: The linear and circular convolution of x[n] = {1, 2, 3, 4} and y[n] = {5, 6, 7, 8}.
c 2011 Alan Tan
Page 16/40
y[0] y[1]
y[2]
x[0] x[1]
(4)
x[N 1]
The matrix of ys is Toeplitz, i.e., constant along the diagonals. Problem 2: Determine the circular convolution of x[n] = {2, 3, 1, 5} and y[n] = {1, 4, 2, 3}. Solution: Using (4) we have
4 1 3 2 3 4 = 2 4 1 3 1 8
3 2 4 1 5 11
3 2
15
The operation of adding zeros to the tail of a discrete-time signal is called zero padding.
Page 18/40
3 2 0
3 2
11 7 3 1 5 = 11 0 0 13 0 0 0 7
1 0 15
3 2
and so xa[n]
c 2011 Alan Tan
Page 20/40
xa [n]
x[n]
0 1 0 8 16
n
(a) (b)
k
(a) (b)
{Xa [k]}
4 0 4 0 8 16
{Xa [k]}
4 0 4 0 8 16
k
(c) (d)
Figure 9: The DFT X[k] of x[n] in (a, b), and the interpolated DFT Xa[k] of xa[n] in (c, d). Note that the interpolation factor is L = 2, i.e., Xa[2k] = X[k].
c 2011 Alan Tan Page 22/40
In particular, N complex multiplications and N 1 complex additions are involved in the calculation of each point of the DFT. To compute all the N points, therefore, involves N 2 complex multiplications and N (N 1) complex additions; the computation time is, thus, approximately proportional to N 2. Similar complexity also applies for computing the IDFT. Evidently, the number of arithmetic operations grows rapidly as N increases. For this reason, we are interested in computational procedures that reduce the number of multiplications and additions. In the literature, these procedures are collectively referred to as the fast Fourier transforms (FFT).
Page 23/40
kn x[n]WN
n odd
kn x[n]WN
n even
X[k] =
r=0
r=0
x[2r + 1]WN
N/21
k(2r+1)
N/21
r=0
2 x[2r](WN )kr
k WN
r=0
Page 24/40
X[k] =
r=0
N/21 kr x[2r]WN/2
k WN
r=0
kr x[2r + 1]WN/2
k = G[k] + WN H[k], k = 0, 1, . . . , N 1
(5)
In the above, G[k] is the N/2 point DFT of the even-numbered points of x[n], and H[k] is the other N/2 point DFT of the odd-numbered points of x[n]. Although k ranges over N points, each of the sums are computed only for k = 0, 1, . . . , N/2 1 since G[k] and H[k] are both periodic in k with period N/2. Essentially, (5) corresponds to breaking up the original N point DFT into two shorter N/2 point DFTs. This is the basis of the decimation-in-time FFT.
Page 25/40
Page 26/40
Page 27/40
Page 28/40
Page 29/40
Page 30/40
Page 31/40
Page 32/40
Page 33/40
For simplicity, we shall assume that N is large so that N (N 1) can be approximated by N 2 . 6 To be precise, there are (N/2) log2 N complex multiplications (ignoring multiplications by 1) and N log2 N complex additions.
5 c 2011 Alan Tan Page 34/40
2 x[n](WN )rn +
2 x[n](WN )rn
n=0
Page 35/40
X[2r] =
n=0 N/21
x[n +
2 rn N/2](WN )
n=0 N/21
n=0 N/21
rn g[n]WN/2, r = 0, 1, . . . , N/2 1
(6)
n=0
Page 36/40
x[n]WN
(2r+1)n
N 1 n=0
N/21
n=0
Page 37/40
X[2r + 1] =
n=0 N/21
x[n +
= Note that WN
N/2
n=0
n =0
Page 38/40
X[2r + 1] =
n=0 N/21
(7)
n=0
where h[n] derives from subtracting one half of x[n] from the other. The overall N point DFT is, thus, given by the N/2 point DFTs of g[n] n and h[n]WN corresponding to the even- and odd-numbered points of X[k], respectively. As before, the procedures in (6) and (7) are repeated until only the 2-point DFTs remain.
Page 39/40
Page 40/40
Exercises
Question 6, May 2010
Let x[n] = {1, 2, 0, 1} and y[n] = {1, 1, 1}. Using circular convolution, compute the linear convolution of x[n] and y[n]. The system below uses the DFT to perform the convolution of x[n] and y[n].
Determine ya[n], X[k], Ya[k], Z[k], and z[n]. Is the convolution process similar to the one previously?
X[k] = {2, 1 j3, 0, 1 + j3}, Ya[k] = {1, j, 3, j}, z[n] = {2, 0, 1, 1} No, one is a 6-point circular convolution whereas the other is a 4-point circular convolution.
Exercises (cont.)
Question 6, September 2010
Prove that, for real-valued signals, the real part of the DFT is symmetrical and the imaginary part is anti-symmetrical. Using zero padding where necessary, determine the DFT of x[n] = {1, 1, 1, 0, 0, 1} based on the 8-point decimationin-time FFT.
X[k] = {4, 1 j, j2, 1 + j, 0, 1 j, j2, 1 + j}
Exercises (cont.)
Question 6, February 2011
The circular convolution of two discrete-time signals x1[n] and x2[n] produces yet another discrete-time signal y[n] of the same length. How does one recover x2[n] from knowing x1[n] and y[n]? Demonstrate the procedure you described to compute x2[n], assuming x1[n] = {1, 2, 2, 0} and y[n] = {3, 3, 0, 1}. Now, supposing z[n] is the linear convolution of x1[n] and x2[n], how should this procedure be changed so that x2[n] can also be recovered from knowing x1[n] and z[n]?
x2[n] = {1, 1, 0, 1}
Exercises (cont.)
Question 6, September 2011
Using appropriate zero padding where necessary, determine the DFT of x[n] = {1, 0, 0, 1, 1} based on the 8-point decimation-in-time FFT. Without modifying the decimation-in-time FFT structure, explain how it be used to realize the inverse discrete Fourier transform (IDFT). As a hint, express the DFT in vector notation as y = Wx, and proceed from there.
X[k] = {1, 0.7071(1+j), 2j, 0.7071(1+j), 3, 0.7071(1j), 2+j, 0.7071(1j)
y y y/N x x
complex conjugate divide N FFT complex conjugate