The Discrete Fourier Transform

The Discrete Fourier Transform

The Discrete Fourier Transform The discrete-time Fourier transform (DTFT) of a sequence is a continuous function of !, and repeats with period 2π. In practice we usually want to obtain the Fourier components using digital computation, and can only evaluate them for a discrete set of frequencies. The discrete Fourier transform (DFT) provides a means for achieving this. The DFT is itself a sequence, and it corresponds roughly to samples, equally spaced in frequency, of the Fourier transform of the signal. The discrete Fourier transform of a length N signal x[n], n D 0; 1; : : : ; N − 1 is given by N−1 X[k] D x[n]e− j .2π=N/kn: XnD0 This is the analysis equation. The corresponding synthesis equation is 1 N−1 x[n] D X[k]e j .2π=N/kn: N XkD0 When dealing with the DFT, it is common to define the complex quantity − j .2π=N/ WN D e : With this notation the DFT analysis-synthesis pair becomes N−1 kn X[k] D x[n]WN XnD0 1 N−1 x[n] D X[k]W −kn: N N XkD0 An important property of the DFT is that it is cyclic, with period N, both in the 1 discrete-time and discrete-frequency domains. For example, for any integer r, N−1 N−1 .kCr N/n kn N rn X[k C r N] D x[n]WN D x[n]WN .WN / XnD0 XnD0 N−1 kn D x[n]WN D X[k]; XnD0 N − j .2π=N/N − j2π since WN D e D e D 1. Similarly, it is easy to show that x[n C r N] D x[n], implying periodicity of the synthesis equation. This is important — even though the DFT only depends on samples in the interval 0 to N − 1, it is implicitly assumed that the signals repeat with period N in both the time and frequency domains. To this end, it is sometimes useful to define the periodic extension of the signal x[n] to be xQ[n] D x[n mod N] D x[..n//N ]: Here n mod N and ..n//N are taken to mean n modulo N, which has the value of the remainder after n is divided by N. Alternatively, if n is written in the form n D kN C l for 0 ≤ l < N, then n mod N D ..n//N D l: x[n] n 0 N xQ[n] PSfrag replacements n 0 N Similarly, the periodic extension of X[k] is defined to be XQ [k] D X[k mod N] D X[..k//N ]: 2 It is sometimes better to reason in terms of these periodic extensions when dealing with the DFT. Specifically, if X[k] is the DFT of x[n], then the inverse DFT of X[k] is xQ[n]. The signals x[n] and xQ[n] are identical over the interval 0 to N − 1, but may differ outside of this range. Similar statements can be made regarding the transform X[k]. 1 Properties of the DFT Many of the properties of the DFT are analogous to those of the discrete-time Fourier transform, with the notable exception that all shifts involved must be considered to be circular, or modulo N. D D D Defining the DFT pairs x[n] !X[k], x1[n] !X1[k], and x2[n] !X[k], the following are properties of the DFT: • Symmetry: ∗ X[k] D X [..−k//N ] RefX[k]g D RefX[..−k//N ]g ImfX[k]g D −ImfX[..−k//N ]g jX[k]j D jX[..−k//N ]j ^X[k] D −^X[..−k//N ] D • Linearity: ax1[n] C bx2[n] !aX1[k] C bX2[k]. D km • Circular time shift: x[..n − m//N ] !WN X[k]. • Circular convolution: N−1 D x1[m]x2[..n − m//N ] !X1[k]X2[k]: mXD0 Circular convolution between two N-point signals is sometimes denoted by x1[n] N x[n]. 3 • Modulation: N−1 D 1 x [n]x [n] ! X [l]X [..k − l// ]: 1 2 N 1 2 N XlD0 Some of these properties, such as linearity, are easy to prove. The properties involving time shifts can be quite confusing notationally, but are otherwise quite simple. For example, consider the 4-point DFT 3 kn X[k] D x[n]W4 XnD0 of the length 4 signal x[n]. This can be written as 0k 1k 2k 3k X[k] D x[0]W4 C x[1]W4 C x[2]W4 C x[3]W4 1k The product W4 X[k] can therefore be written as 1k 1k 2k 3k 4k W4 X[k] D x[0]W4 C x[1]W4 C x[2]W4 C x[3]W4 0k 1k 2k 3k D x[3]W4 C x[0]W4 C x[1]W4 C x[2]W4 4k 0k since W4 D W4 . This can be seen to be the DFT of the sequence x[3]; x[0]; x[1]; x[2], which is precisely the sequence x[n] circularly shifted to the right by one sample. This proves the time-shift property for a shift of km length 1. In general, multiplying the DFT of a sequence by WN results in an N-point circular shift of the sequence by m samples. The convolution properties can be similarly demonstrated. It is useful to note that the circularly shifted signal x[..n − m//N ] is the same as the linearly shifted signal xQ[n − m], where xQ[n] is the N-point periodic extension of x[n]. 4 x[n] n 0 N xQ[n] n 0 N xQ[n − m] n PSfrag replacements 0 N x[..n − m//N ] n 0 N On the interval 0 to N − 1, the circular convolution N−1 x3[n] D x1[n] N x2[n] D x1[m]x2[..n − m//N ] mXD0 can therefore be calculated using the linear convolution product N−1 x3[n] D x1[m]xQ2[n − m]: mXD0 Circular convolution is really just periodic convolution. Example: Circular convolution with a delayed impulse sequence Given the sequences 5 PSfrag replacements x1[n] x2[n] n n 0 N 0 N the circular convolution x3[n] D x1[n] N x2[n] is the signal xQ[n] delayed by one sample, evaluated over the range 0 to N − 1: x [n] PSfrag replacements 3 n 0 N Example: Circular convolution of two rectangular pulses Let 1 0 ≤ n ≤ L − 1 x1[n] D x2[n] D 8 <0 otherwise: If N D L, then the N-point DFTs are: N−1 kn N k D 0 X1[k] D X2[k] D WN D 8 XnD0 <0 otherwise: Since the product is : N 2 k D 0 X3[k] D X1[k]X2[k] D 8 <0 otherwise; : it follows that the N-point circular convolution of x1[n] and x2[n] is x3[n] D x1[n] N x2[n] D N; 0 ≤ n ≤ N − 1: Suppose now that x1[n] and x2[n] are considered to be length 2L sequences by augmenting with zeros. The N D 2L-point circular convolution is then seen to be the same as the linear convolution of the finite-duration sequences x1[n] and x2[n]: 6 x1[n] D x2[n] n 0 L N L PSfrag replacements x1[n] N x2[n] n 0 L N 2 Linear convolution using the DFT Using the DFT we can compute the circular convolution as follows • Compute the N-point DFTs X1[k] and X2[k] of the two sequences x1[n] and x2[n]. • Compute the product X3[k] D X1[k]X2[k] for 0 ≤ k ≤ N − 1. • Compute the sequence x3[n] D x1[n] N x2[n] as the inverse DFT of X3[k]. This is computationally useful due to efficient algorithms for calculating the DFT. The question that now arises is this: how do we get the linear convolution (required in speech, radar, sonar, image processing) from this procedure? 2.1 Linear convolution of two finite-length sequences Consider a sequence x1[n] with length L points, and x2[n] with length P points. The linear convolution of the sequences, 1 x3[n] D x1[m]x2[n − m]; mX=−∞ is nonzero over a maximum length of L C P − 1 points: 7 2 [n] 1 x 0 0 L 1 [n] 2 x 0 0 P 8 [n] 3 x 0 0 L+P−1 n Therefore L C P − 1 is the maximum length of x3[n] resulting from the linear convolution. The N-point circular convolution of x1[n] and x2[n] is N−1 N−1 x1[n] N x2[n] D x1[m]x2[..n − m//N ] D x1[m]xQ2[n − m] : mXD0 mXD0 It is easy to see that the circular convolution product will be equal to the linear convolution product on the interval 0 to N − 1 as long as we choose N ≥ L C P − 1. The process of augmenting a sequence with zeros to make it of a required length is called zero padding. 2.2 Convolution by sectioning Suppose that for computational efficiency we want to implement a FIR system using DFTs. It cannot in general be assumed that the input signal has a finite duration, so the methods described up to now cannot be applied directly: 8 h[n] 0 P x[n] 0 L 2L 3L n The solution is to use block convolution, where the signal to be filtered is segmented into sections of length L.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    19 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us