Digital Kommunikationselektronik TNE027 Lecture 5 1 Fourier Transforms Discrete Fourier Transform (DFT) Algorithms Fast Fourier Transform (FFT) Algorithms.

Slides:



Advertisements
Similar presentations
Chapter 19 Fast Fourier Transform
Advertisements

DFT & FFT Computation.
DCSP-12 Jianfeng Feng
DCSP-13 Jianfeng Feng Department of Computer Science Warwick Univ., UK
David Hansen and James Michelussi
Parallel Processing (CS 730) Lecture 7: Shared Memory FFTs*
DFT and FFT FFT is an algorithm to convert a time domain signal to DFT efficiently. FFT is not unique. Many algorithms are available. Each algorithm has.
The Discrete Fourier Transform. The spectrum of a sampled function is given by where –  or 0 .
LECTURE Copyright  1998, Texas Instruments Incorporated All Rights Reserved Use of Frequency Domain Telecommunication Channel |A| f fcfc Frequency.
ECE 734: Project Presentation Pankhuri May 8, 2013 Pankhuri May 8, point FFT Algorithm for OFDM Applications using 8-point DFT processor (radix-8)
1 Chapter 16 Fourier Analysis with MATLAB Fourier analysis is the process of representing a function in terms of sinusoidal components. It is widely employed.
Digital Signal Processing
Computer Graphics Recitation 6. 2 Motivation – Image compression What linear combination of 8x8 basis signals produces an 8x8 block in the image?
Lecture #17 INTRODUCTION TO THE FAST FOURIER TRANSFORM ALGORITHM Department of Electrical and Computer Engineering Carnegie Mellon University Pittsburgh,
Introduction to Fast Fourier Transform (FFT) Algorithms R.C. Maher ECEN4002/5002 DSP Laboratory Spring 2003.
S. Mandayam/ ECOMMS/ECE Dept./Rowan University Electrical Communications Systems ECE Spring 2009 Shreekanth Mandayam ECE Department Rowan University.
Chapter 12 Fourier Transforms of Discrete Signals.
Lecture #18 FAST FOURIER TRANSFORM INVERSES AND ALTERNATE IMPLEMENTATIONS Department of Electrical and Computer Engineering Carnegie Mellon University.
S. Mandayam/ ECOMMS/ECE Dept./Rowan University Electrical Communications Systems ECE Spring 2007 Shreekanth Mandayam ECE Department Rowan University.
S. Mandayam/ ECOMMS/ECE Dept./Rowan University Electrical Communications Systems Spring 2005 Shreekanth Mandayam ECE Department Rowan University.
Unit 7 Fourier, DFT, and FFT 1. Time and Frequency Representation The most common representation of signals and waveforms is in the time domain Most signal.
Fast Fourier Transforms
Goals For This Class Quickly review of the main results from last class Convolution and Cross-correlation Discrete Fourier Analysis: Important Considerations.
Integral Transform Dongsup Kim Department of Biosystems, KAIST Fall, 2004.
Discrete-Time and System (A Review)
DTFT And Fourier Transform
1 Chapter 8 The Discrete Fourier Transform 2 Introduction  In Chapters 2 and 3 we discussed the representation of sequences and LTI systems in terms.
The Discrete Fourier Transform. The Fourier Transform “The Fourier transform is a mathematical operation with many applications in physics and engineering.
Transforms. 5*sin (2  4t) Amplitude = 5 Frequency = 4 Hz seconds A sine wave.
Digital Signal Processing – Chapter 10
FFT USING OPEN-MP Done by: HUSSEIN SALIM QASIM & Tiba Zaki Abdulhameed
Jeff Wang Kay-Won Chang March 18, DEMO Harmonic Product Spectrum (HPS) pitch detection: obtain fundamental frequency from FFT Fast Fourier Transform.
Chapter 6 Spectrum Estimation § 6.1 Time and Frequency Domain Analysis § 6.2 Fourier Transform in Discrete Form § 6.3 Spectrum Estimator § 6.4 Practical.
Real time DSP Professors: Eng. Julian S. Bruno Eng. Jerónimo F. Atencio Sr. Lucio Martinez Garbino.
Digital Signal Processing Chapter 3 Discrete transforms.
Fourier Analysis of Discrete Time Signals
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU Under-Graduate Project Case Study: Single-path Delay Feedback FFT Speaker: Yu-Min.
Chapter 5 Finite-Length Discrete Transform
Inverse DFT. Frequency to time domain Sometimes calculations are easier in the frequency domain then later convert the results back to the time domain.
Reconfigurable FFT architecture
Fourier Transform.
Speaker: Darcy Tsai Advisor: Prof. An-Yeu Wu Date: 2013/10/31
Professor A G Constantinides 1 Discrete Fourier Transforms Consider finite duration signal Its z-tranform is Evaluate at points on z-plane as We can evaluate.
Fast Fourier Transforms. 2 Discrete Fourier Transform The DFT pair was given as Baseline for computational complexity: –Each DFT coefficient requires.
The Discrete Fourier Transform
EE345S Real-Time Digital Signal Processing Lab Fall 2006 Lecture 17 Fast Fourier Transform Prof. Brian L. Evans Dept. of Electrical and Computer Engineering.
Husheng Li, UTK-EECS, Fall The specification of filter is usually given by the tolerance scheme.  Discrete Fourier Transform (DFT) has both discrete.
بسم الله الرحمن الرحيم Digital Signal Processing Lecture 14 FFT-Radix-2 Decimation in Frequency And Radix -4 Algorithm University of Khartoum Department.
Discrete Fourier Transform
Fourier Analysis Patrice Koehl Department of Biological Sciences National University of Singapore
Chapter 4 Discrete-Time Signals and transform
DIGITAL SIGNAL PROCESSING ELECTRONICS
Fast Fourier Transforms Dr. Vinu Thomas
Real-time double buffer For hard real-time
Discrete Cosine Transform (DCT)
Lecture #17 INTRODUCTION TO THE FAST FOURIER TRANSFORM ALGORITHM
Real-time 1-input 1-output DSP systems
4.1 DFT In practice the Fourier components of data are obtained by digital computation rather than by analog processing. The analog values have to be.
Fast Fourier Transformation (FFT)
Lecture 17 DFT: Discrete Fourier Transform
Chapter 9 Computation of the Discrete Fourier Transform
LECTURE 18: FAST FOURIER TRANSFORM
Chapter 19 Fast Fourier Transform
Speaker: Yumin Adviser: Prof. An-Yeu Wu Date: 2013/10/24
Lecture #18 FAST FOURIER TRANSFORM ALTERNATE IMPLEMENTATIONS
Fast Fourier Transform (FFT) Algorithms
Speaker: Chris Chen Advisor: Prof. An-Yeu Wu Date: 2014/10/28
Lec.6:Discrete Fourier Transform and Signal Spectrum
Lecture #17 INTRODUCTION TO THE FAST FOURIER TRANSFORM ALGORITHM
LECTURE 18: FAST FOURIER TRANSFORM
Presentation transcript:

Digital Kommunikationselektronik TNE027 Lecture 5 1 Fourier Transforms Discrete Fourier Transform (DFT) Algorithms Fast Fourier Transform (FFT) Algorithms

Digital Kommunikationselektronik TNE027 Lecture 5 2 Discrete Fourier Transform (DFT) Fourier Transform assumes a continuous signal of infinite duration and bandwidth. For practical representation, we must sample in time and frequency, and amplitude must be quantized. Discrete Fourier Transform assumes N samples in time and frequency. DFT: X[k] = Σ x[n] e –j2  kn/N = Σ x[n] W N kn IDFT: x [n] =(1/N) Σ X[k] e j2  kn/N = (1/N) Σ X[k] W N – kn where W N kn = e – j2  kn/N N-1 n=0 N-1 k=0 N-1 k=0

Digital Kommunikationselektronik TNE027 Lecture 5 3 Effect of Sampling in Time and Frequency By sampling in time, we get a periodic spectrum with the sampling frequency f s. The approximation of a Fourier transform by a DFT is reasonable only if the frequency components of x(t) are concentrated on a smaller range than the Nyquist frequency f s /2.

Digital Kommunikationselektronik TNE027 Lecture 5 4 By sampling in the frequency domain, the time function becomes periodic, i.e., the DFT assumes the time series to be periodic. If an N-sample DFT is applied to a signal that does not complete an integer number of cycles with an N-sample window, a phenomenon called leakage occurs.

Digital Kommunikationselektronik TNE027 Lecture 5 5 If possible, we should choose the sampling frequency and the analysis window in such a way that it covers an integer number of periods of x(t), if x(t) is periodic. We can also decrease leakage by using a window function that tapers smoothly to zero on both sides. See Example 6.1: Windowing.

Digital Kommunikationselektronik TNE027 Lecture 5 6 Vector/matrix notation and an alternative inversion algorithm X = Wx  x = (1/N) W * X x = (1/N) W * X = (1/N) (WX * ) * When computing IDFT, we can compute the DFT of X *, i.e., WX *. The result of IDFT is the conjugate of the result of WX * scaled by (1/N).

Digital Kommunikationselektronik TNE027 Lecture 5 7 The Fast Fourier Transform (FFT) Algorithms FFT uses different multidimensional index maps of the input and output sequences. Two-dimensional index transform: n = An 1 + Bn 2 mod N where 0  n 1  N 1 –1, 0  n 2  N 2 –1 and N = N 1 N 2 See equation (6.18) on page 259.

Digital Kommunikationselektronik TNE027 Lecture 5 8 The Cooley-Tukey FFT Algorithm The Cooley-Tukey FFT is the most universal of all FFT algorithms, because any factorization of N is possible.

Digital Kommunikationselektronik TNE027 Lecture 5 9 Index transform (index mapping) n = N 2 n 1 + n 2 k = k 1 + N 1 k 2 where 0  n 1  N 1 –1, 0  n 2  N 2 –1, 0  k 1  N 1 –1, 0  k 2  N 2 –1 and N = N 1 N 2 X[k] = Σ x[n] e –j2  kn/N = Σ x[n] W N kn W N kn = W N ( k 1 + N 1 k 2 )( N 2 n 1 + n 2 ) = W N N 2 n 1 k 1 + N 1 N 2 n 1 k 2 + n 2 k 1 + N 1 n 2 k 2 N-1 n=0 N-1

Digital Kommunikationselektronik TNE027 Lecture 5 10 W N N 2 n 1 k 1 = e –j2  N 2 n 1 k 1 / N = e –j2  n 1 k 1 / N 1 = W N 1 n 1 k 1 W N N 1 N 2 n 1 k 2 = e –j2  N 1 N 2 n 1 k 2 / N = e –j2  n 1 k 2 = 1 W N N 1 n 2 k 2 = e –j2  N 1 n 2 k 2 / N = e –j2  n 2 k 2 / N 2 = W N 2 n 2 k 2 X[k 1,k 2 ] = Σ W N 2 n 2 k 2 (W N n 2 k 1 Σ x[n 1,n 2 ] W N 1 n 1 k 1 ) = Σ W N 2 n 2 k 2 x[n 2,k 1 ] N 2 -1 n 2 =0 n 1 =0 N 1 -1 N 2 -1 n 2 =0

Digital Kommunikationselektronik TNE027 Lecture 5 11 Algorithm 6.8: Cooley-Tukey Algorithm An N = N 1 N 2 -point DFT can be done using the following steps: 1)Compute an index transform of the input sequence according to: n = N 2 n 1 + n 2 2)Compute the N 2 DFTs of length N 1. 3)Apply the twiddle factors W N n 2 k 1 to the output of the first transform stage. 4)Compute the N 1 DFTs of length N 2. 5)Compute an index transform of the output sequence according to: k = k 1 + N 1 k 2 See Example 6.9: Cooley-Tukey FFT for N = 12.

Digital Kommunikationselektronik TNE027 Lecture 5 12 Radix-r Cooley-Tukey Algorithm Radix-r algorithms, N = r s, S is the number of stages. The most popular algorithms are of basis r = 2 or r =4, because the necessary basic DFTs can be implemented without any multiplications.

Digital Kommunikationselektronik TNE027 Lecture point DFT, Butterfly X(0) = x(0)e 0 + x(1)e 0 = x(0) + x(1) X(1) = x(0)e 0 + x(1)e –j2  / 2 = x(0)  x(1) 11 x(0) x(1) X(0) X(1)

Digital Kommunikationselektronik TNE027 Lecture point FFT n = 2n 1 + n 2 k = k 1 + 2k 2 11 11 11 11 W0W0 W2W2 x(0) x(2) x(1) x(3) X(0) X(2) X(1) X(3)

Digital Kommunikationselektronik TNE027 Lecture 5 15 11 11 11 11 W0W0 W2W2 x(0) x(1) x(2) x(3) X(0) X(2) X(1) X(3) Group Rearrange the positions of x(1) and x(2)

Digital Kommunikationselektronik TNE027 Lecture 5 16 Decimation-in-frequency (DIF) FFT algorithm See Fig and Table 6.3. The Decimation-in-frequency algorithm starts in the frequency domain to split the original DFT into shorter DFTs. The input values typically occur in natural order, while the index of the frequency values is in bit- reversed order. The decimation-in-time (DIT) FFT algorithm can be found in the book “Fundamentals of Signals and Systems using the WEB and MATLAB”, pages

Digital Kommunikationselektronik TNE027 Lecture 5 17 Number of complex multiplications and add/subtract operations For r = 2 and S stages (S = log 2 N), the number of complex twiddle factor multiplications is (S – 1)  N/2 = ((log 2 N) – 1)  N/2. The number of complex add/subtract operations is S  N = (log 2 N)  N. Compare with the direct DFT computation: –Complex multiplications: N  N –Complex add/subtract operations: N  (N – 1)

Digital Kommunikationselektronik TNE027 Lecture 5 18 Index transform for radix-2 Cooley-Tukey FFT using bit reversing –Reversing of the bit sequence of the index. Example: For the 8-point FFT in Fig. 6.12, the output at the second position (index ) of the output is X[4] (index: ) after bit reversing. Index transform for radix-4 Cooley-Tukey FFT using digit reversing –Build “digits” of two bitsand then reverse the order of these digits. See Fig

Digital Kommunikationselektronik TNE027 Lecture 5 19 Radix-2 Cooley-Tukey Algorithm Implementation Butterfly processor Complex multiplication –Complex multiplication with the twiddle factor is often implemented with 4 real multiplications and two add/subtract operations. –A more efficient complex multiplier is implemented with 3 real multiplications and 3 add/subtract operations. See Algorithm 6.10.