Fourier Transform Fourier transform decomposes a signal into its frequency components Used in telecommunications, data compression, digital signal processing,

Slides:



Advertisements
Similar presentations
Who Wants To Be A Millionaire?
Advertisements

Chapter 19 Fast Fourier Transform (FFT) (Theory and Implementation)
Chapter 19 Fast Fourier Transform
Welcome to Who Wants to be a Millionaire
1 KCipher-2 KDDI R&D Laboratories Inc.. ©KDDI R&D Laboratories Inc. All rights Reserved. 2 Introduction LFSR-based stream ciphers Linear recurrence between.
DFT & FFT Computation.
FIGURE 11.1 Discrete Time Signals.. FIGURE 11.2 Step Function.
0 - 0.
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
MULTIPLYING MONOMIALS TIMES POLYNOMIALS (DISTRIBUTIVE PROPERTY)
SUBTRACTING INTEGERS 1. CHANGE THE SUBTRACTION SIGN TO ADDITION
Addition Facts
Patterns and sequences We often need to spot a pattern in order to predict what will happen next. In maths, the correct name for a pattern of numbers is.
Welcome to Who Wants to be a Millionaire
DCSP-13 Jianfeng Feng Department of Computer Science Warwick Univ., UK
Operations Basic Arithmetic Operations. 7/9/2013 Operations 2 2 A Subtraction ( – ) Division ( / ) Notation … addition of negatives … multiplication of.
Acceleration of Cooley-Tukey algorithm using Maxeler machine
1 Fast Multiplication of Large Numbers Using Fourier Techniques Henry Skiba Advisor: Dr. Marcus Pendergrass.
Complex Numbers Properties & Powers of i
The Fast Fourier Transform (and DCT too…)
25 July, 2014 Martijn v/d Horst, TU/e Computer Science, System Architecture and Networking 1 Martijn v/d Horst
25 July, 2014 Martijn v/d Horst, TU/e Computer Science, System Architecture and Networking 1 Martijn v/d Horst
5 August, 2014 Martijn v/d Horst, TU/e Computer Science, System Architecture and Networking 1 Martijn v/d Horst
Created by Susan Neal $100 Fractions Addition Fractions Subtraction Fractions Multiplication Fractions Division General $200 $300 $400 $500 $100 $200.
David Hansen and James Michelussi
Past Tense Probe. Past Tense Probe Past Tense Probe – Practice 1.
Addition 1’s to 20.
Test B, 100 Subtraction Facts
Week 1.
Parallel Processing (CS 730) Lecture 7: Shared Memory FFTs*
Fourier Transforms and Their Use in Data Compression
Parallel Fast Fourier Transform Ryan Liu. Introduction The Discrete Fourier Transform could be applied in science and engineering. Examples: ◦ Voice recognition.
Digital Kommunikationselektronik TNE027 Lecture 5 1 Fourier Transforms Discrete Fourier Transform (DFT) Algorithms Fast Fourier Transform (FFT) Algorithms.
ECE 734: Project Presentation Pankhuri May 8, 2013 Pankhuri May 8, point FFT Algorithm for OFDM Applications using 8-point DFT processor (radix-8)
Fast Fourier Transform Lecture 6 Spoken Language Processing Prof. Andrew Rosenberg.
FFT1 The Fast Fourier Transform. FFT2 Outline and Reading Polynomial Multiplication Problem Primitive Roots of Unity (§10.4.1) The Discrete Fourier Transform.
Lecture #17 INTRODUCTION TO THE FAST FOURIER TRANSFORM ALGORITHM Department of Electrical and Computer Engineering Carnegie Mellon University Pittsburgh,
FFT1 The Fast Fourier Transform by Jorge M. Trabal.
Reconfigurable Computing S. Reda, Brown University Reconfigurable Computing (EN2911X, Fall07) Lecture 16: Application-Driven Hardware Acceleration (1/4)
Introduction to Algorithms
Fast Fourier Transforms
The Discrete Fourier Transform. The Fourier Transform “The Fourier transform is a mathematical operation with many applications in physics and engineering.
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.
FFT1 The Fast Fourier Transform. FFT2 Outline and Reading Polynomial Multiplication Problem Primitive Roots of Unity (§10.4.1) The Discrete Fourier Transform.
200/MAPLD 2004 Craven1 Super-Sized Multiplies: How Do FPGAs Fare in Extended Digit Multipliers? Stephen Craven Cameron Patterson Peter Athanas Configurable.
The Fast Fourier Transform
Radix-2 2 Based Low Power Reconfigurable FFT Processor Presented by Cheng-Chien Wu, Master Student of CSIE,CCU 1 Author: Gin-Der Wu and Yi-Ming Liu Department.
Convolution in Matlab The convolution in matlab is accomplished by using “conv” command. If “u” is a vector with length ‘n’ and “v” is a vector with length.
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.
 presented by- ARPIT GARG ISHU MISHRA KAJAL SINGHAL B.TECH(ECE) 3RD YEAR.
Husheng Li, UTK-EECS, Fall The specification of filter is usually given by the tolerance scheme.  Discrete Fourier Transform (DFT) has both discrete.
Low Power Design for a 64 point FFT Processor
The content of lecture This lecture will cover: Fourier Transform
DIGITAL SIGNAL PROCESSING ELECTRONICS
Polynomial + Fast Fourier Transform
Fast Fourier Transforms Dr. Vinu Thomas
FAST FOURIER TRANSFORM ALGORITHMS
A New Approach to Pipeline FFT Processor
DFT and FFT By using the complex roots of unity, we can evaluate and interpolate a polynomial in O(n lg n) An example, here are the solutions to 8 =
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.
The Fast Fourier Transform
Chapter 9 Computation of the Discrete Fourier Transform
Kenneth Moreland Edward Angel Sandia National Labs U. of New Mexico
The Fast Fourier Transform
Speaker: Chris Chen Advisor: Prof. An-Yeu Wu Date: 2014/10/28
Presentation transcript:

Rader’s FFT algorithm acceleration using Maxeler Author: Tadej Matek

Fourier Transform Fourier transform decomposes a signal into its frequency components Used in telecommunications, data compression, digital signal processing, fast multiplication of polynomials ... Tadej Matek Source: http://fweb.wallawalla.edu/class-wiki/index.php/DFT_example_using_MATLAB_-_HW11 1/17

Fourier Transform and computers Transformation: Discrete Fourier Transform Time: O(n2) Algorithm(s): Fast Fourier Transform (FFT) (Cooley-Tukey, Bruun’s FFT, Rader’s FFT, Bluestein’s FFT …) Time: O(nlogn) Tadej Matek 2/17

Why is FFT faster than DFT Divide & conquer + properties of primitive roots Primitive root of unity: Conquer step (butterfly): Source: http://mathworld.wolfram.com/images/gifs/rootsu.gif Tadej Matek 3/17

Rader’s FFT algorithm overview Primitive root defined as: Bit reversal revk(i): rev4(3): 3(10) = 0011(2) → 1100(2) = 12(10) Tadej Matek 4/17

Example of calculation n = 4 k = log(n) = 2 z = 5 p = 13 8, 2, 2, 4 i = 0 s = revk(i) = 2 s = revk(i) = 0 i = 1 10, 6 6, 11 8+z0*2 % 13 = 10 8+z2*2 % 13 = 6 2+z0*4 % 13 = 6 2+z2*4 % 13 = 11 i = 0 i = 1 i = 2 i = 3 s = 0 s = 3 s = 2 s = 1 3 4 9 3 Tadej Matek 5/17

Example: fast multiplication How to multiply two large polynomials? Basic approach: multiply each component of 1st with each component of 2nd -> O(n2) Using FFT: compute DFT transform of both polynomials, multiply in O(n) time and do inverse FFT -> O(nlogn) Tadej Matek 6/17

Dataflow implementation (1) 8, 2, 2, 4 Data dependency! 10, 6 6, 11 3 4 9 3 Kernel needs updated data for each level! Solution: LMem 7/17 Tadej Matek

Dataflow implementation (2) Input sequence Call kernel k times CPU (1) (3) (2) ... Output sequence Kernel Manager Manager streams data in and out of Kernel LMem Tadej Matek 8/17

Dataflow implementation (3) LMem works in bursts (example: 384 B, but depends on DFE) Good for consecutive calculations zs are calculated on CPU and written to LMem Tadej Matek 9/17

Performance & results (1) CPU used for testing: Intel Core2 Quad Processor Q9400 2.86GHz Maxeler card of type MAX2336B was used for DFE testing Tadej Matek 10/17

Performance & results (2) Conditions: BIG data, 95% run time in loops Type of experiments: consecutive calculations starting from 10K and up to 10M Consecutive calculations for input sequences of length 32, 64, 128 and 256 Tadej Matek 11/17

Performance & results (3) Execution time, N = 32, for CPU and DFE Tadej Matek 12/17

Performance & results (4) Speedup according to the number of consecutive calculations for N = 32 13/17 Tadej Matek

Performance & results (5) Speedup according to the number of consecutive calculations for N = 64 Tadej Matek 14/17

Performance & results (6) Speedup according to the number of consecutive calculations for N = 256 15/17 Tadej Matek

Performance & results (7) Speedup according to the size of input sequence (for 100K calculations) 16/17 Tadej Matek

Conclusion FFTs are one of the most used algorithms today There can be massive speedup but the requirement are consecutive calculations Power usage: reduced due to lower frequency (200Mhz vs 2.86GHz) Tadej Matek 17/17