Introduction to. DSP Using FPGAs. Guillermo Güichal UTN FRBB
|
|
- Bruce Booker
- 6 years ago
- Views:
Transcription
1 Introduction to DSP Using FPGAs Guillermo Güichal UTN FRBB
2 Program Morning Introduction to DSP What is DSP? How is it done? Why use FPGAs for DSP? Comments on DSP algorithms and FPGA implementations. Issues related to DSP using FPGAs Clock frequency, sampling, bit count, arithmetic operations. FPGA Design flow for DSP applications Design alternatives: HDLs, dedicated tools, etc. Basic design examples
3 Program Afternoon Intro to Xilinx System Generator Xilinx Sysgen and its interaction with Matlab, Simulink & ISE. Use of Xilinx SysGen for DSP Use of Sysgen for simulation and synthesis. Examples Additional Topics Other tools and additional comments
4 References On the Roots of Digital Signal Processing, Parts 1 & 2, IEEE Circuits and Systems Magazine, Vol. 7 Number 1 and 4 Berkeley Design Technology, Inc. whitepapers, DSP-FPGA.com articles, Andraka Consulting articles, Programmable Logic Design Line articles, FPGA and Structured ASIC Journal articles, ACM Queue articles, Applying Data Converters, Texas Instruments The Scientist and Engineer s Guide to DSP, Steven W Smith, IEEE papers, Digital Signal Processing with FPGAs, Uwe Mayer-Baese, Springer Xilinx, Altera and Lattice documentation, The Mathworks documentation, etc.
5 Let s go over some background information on DSP A Propos of the Treatise on Cubic Form" by Juan de Herrera Salvador Dali, 1960
6 What is DSP? From wikipedia Digital signal processing (DSP) is the study of signals in a digital representation and the processing methods of these signals. DSP and analog signal processing are subfields of signal processing. DSP includes subfields like: audio and speech signal processing, sonar and radar signal processing, sensor array processing, spectral estimation, statistical signal processing, digital image processing, signal processing for communications, biomedical signal processing, seismic data processing, etc.
7 What is DSP? Digital Signal Processing (not Processors) DIGITAL: Digital domain, as opposed to analog. Everything is digital nowadays SIGNAL: A physical quantity that changes over time. PROCESSING: Do something with the signal, manipulate it in useful ways.
8 What is DSP? We have always processed signals to communicate to understand and summarize scientific data for entertainment... etc. Now we do it digitally, research new methods and algorithms and constantly find new challenging and complex applications. Many of the mathematical methods and algorithms used for signal processing are well known, and were developed within other contexts. Refer to the Circuits and Systems magazine series On the Roots of DSP, by Andreas Antoniou for a history of DSP.
9 What is DSP? So We want to manipulate signals which are usually real signals like audio, temperature, currents and voltages, seismic, sonar, RF waves (communications), images, biological, etc. We take them into the digital domain because it makes life easier for us. We manipulate (process) the signals using algorithms and methods to transform them in ways that are useful for our purposes.
10 What is DSP? Real signals Analog signal conditioning Bandwidth, amplitude, etc. Make this as simple as possible Digital domain Sampling (discretization and quantization) We try to do this as early as possible in the process Processing Signal processing algorithms and methods Implies mathematical operations, delay lines. Lots of theory and tools implementation issues! An interesting blend of theory and practice And we want to do all this this in the simplest, cheapest manner
11 What is DSP? DSP is made possible by mathematical research, the digital computer and IC technology Discretization and interpolation has been part of mathematics since classical times Work by Fourier, Poisson, Laurent and others during the 1700 an 1800s Work during 1900s by Nyquist, Shannon, Bode and others. Calculating machines, ENIAC and the modern digital computer Integrated circuit technology in 1950s Numerical filtering methods during 1960s Creation of specific processors (DSPs), ADC and DACs Powerful processors, IC technology and alternatives to ASICs Tools, compilers, simulators make our job easier
12 How is DSP Done? DSP algorithms Filters FIR Discrete Fourier Transform IIR
13 How is DSP Done? DSP algorithms Direct Digital Synthesis (DDS) Digital Up-converter
14 How is DSP Done? DSP algorithms OFDM Receiver (used in benchmark article)
15 How is DSP Done? DSP applications (DSPs: Back to the Future, ACM Queue article)
16 How is DSP Done? DSP algorithms shape DSP architectures Fast multiplication and other DSP tasks Single cycle, multiply accumulate (MAC), ALUs, shifter, wide accumulators Flexible and efficient memory access Data delay lines, FIFOs, dedicated address generation (inverted, circular addressing), high bandwidth (multiple busses, coefficient ) Efficient Looping Zero overhead looping, addressing and calculations in parallel Real time, speed High clock frequency, parallelism (MAC, ALU, address generation, SIMD), special instruction sets (low end DSP), multiple execution units (high end, VLIW Streamlined I/O and interfaces Must connect to ADC, DACs and transfer data in and out in real time and with little overhead Data formats Diverse precisions, accumulator guard bits. Support for rounding, saturation and shifting. Speed, cost & power-> Fixed point, Numeric fidelity-> floating point
17 How is DSP Done? What else does wikipedia say DSP algorithms have traditionally run on specialized processors called digital signal processors (DSPs). Algorithms requiring more performance than DSPs could provide were typically implemented using application-specific integrated circuit (ASICs). Today however there are a number of technologies used for digital signal processing. These include more powerful general purpose microprocessors, field-programmable gate arrays (FPGAs), digital signal controllers (mostly for industrial apps such as motor control), and stream processors, among others.
18 How is DSP Done? Nowadays there are several options for DSP applications ASICs (Application Specific Integrated Circuits) ASSP (Application Specific Standard Product) DSP FPGA (Field Programmable Gate Array) GPP and MCUs with DSP enhancements High end CPUs (Digital Signal Processor) We have to choose the right platform for each problem! Speed? Cost? Power? Tools? Time to market? Flexibility? Other tasks?
19 How is DSP Done? How do we choose? What are my needs? What are each options strengths? What are each options limitations? What are my strengths and weaknesses? Are there tools available? What will be around the DSP portion of my design? Strengths and limitations of each option change over time and they change quickly! Update your information and don t take anything for granted
20 FPGA Technology Overview Reading Salvador Dali, 1981
21 FPGA Overview An FPGA is a sea of gates. Lots of logic that can be connected together to form different combinational and sequential digital circuits. An FPGA inside Function generation (combinational logic) Registers and latches (sequential logic) Memory Clock management Power management DSP functions!!!
22 FPGA Overview Xilinx Spartan 3 FPGA General FPGA Architecture
23 FPGA Overview Xilinx Spartan 3 FPGA CLB Structure
24 FPGA Overview Xilinx Spartan 3 Memory
25 FPGA Overview Xilinx Spartan 3 Clock Management
26 FPGA Overview Xilinx Spartan 3 Routing
27 FPGA DSP Functions High end FPGAs Function generators & registers Xilinx Virtex 5 Altera Stratix III
28 FPGA DSP Functions DSP: Low cost FPGAs Xilinx Spartan 3 has multipliers Altera Cyclone III
29 FPGA DSP Functions DSP: Low cost FPGAs LatticeECP-DSP
30 FPGA DSP Functions DSP: Low cost FPGAs LatticeECP-DSP vs Spartan 3 (Lattice Article)
31 FPGA DSP Functions DSP: Low cost FPGAs Xilinx Spartan 3A-DSP (XtremeDSP DSP48 slices)
32 FPGA DSP Functions DSP: High end FPGAs Xilinx and Altera both have High End FPGAs with DSP enhancements High speed multipliers Flexible Multiply Accumulate logic DSP block cascading and interconnection Rounding and saturation units Barrel shifter Support for floating point multiplication Advanced clock and power management Support for additional DSP Intellectual Property (IP)
33 FPGA DSP Functions DSP: High end FPGAs Altera Stratix III DSP Blocks
34 FPGA DSP Functions DSP: High end FPGAs Xilinx Virtex 5 DSP48 Slice
35 Do we want to use an FPGA? Tower of Enigmas Salvador Dali, 1981
36 FPGA Overview Remember a DSP is essentially a sequential processing machine, with support to execute (although most DSP do several things in parallel) Analog Devices AD21xx architecture
37 FPGA Overview but some are very powerful processing machines! TI s C6712 AD s Blackfin
38 When to use FPGAs When do we choose FPGAs to do DSP? FPGAs are good for Lots of parallel processing Many simple and rigid, repetitive tasks High sampling rates and data bandwidth Fixed point operations Implementing small DSPs blocks within lots of digital logic Prototyping or replacing ASICs Flexible or dynamic hardware configuration Mapping a block diagram directly into hardware Multirate systems Configurable word lengths and precision What else?
39 When to use FPGAs When do we choose FPGAs to do DSP? FPGAs are not that good for Sequential tasks (if we have C code available) Complex tasks with lots of decision making and branching Very low power applications (but that is changing) Floating point operations What else?
40 When to use FPGAs From Xilinx slides..
41 When to use FPGAs FPGA vs DSP From an ACMQueue article Time to Market Performance Price Ease of Use Power Flexibility ASIC Longest High Low Hardest Low Low ASSP Shortest High Low Easiest Low Low DSP Short High Low Easy Low High FPGA Short High High Hard High High MCU Short Lowest Low Easy Low High RISC/GPP Short Low High Easy High High From FPGA vendor s article (Altera)
42 When to use FPGAs FPGA vs DSP From FPGA vendor (Altera at FPGA-DSP.com article)
43 When to use FPGAs FPGA vs DSP From FPGA vendor (Xilinx at DSP Engineering article) FPGAs for high end applications Improved performance (parallelism) Lower system power (compared to DSP clusters) Reconfigurable hardware (evolving standards) Custom bit precision Optimization of computation hardware (not possible in DSPs) (distributed arithmetic, etc, see Andraka) High I/O bandwidth
44 When to use FPGAs FPGA vs DSP and other options ASICs (Application Specific Integrated Circuits) ASSP (Application Specific Standard Product) DSP FPGA (Field Programmable Gate Array) GPP and MCUs with DSP enhancements (dspic, ARM DSP extensions) High end CPUs (Intel, AMD doing processing for audio and images) (Digital Signal Processor) Comments? Opinions? Other issues?
45 We ve decided to use an FPGA! What issues affect our implementation? Portrait of Mrs. Mary Sigall Salvador Dali, 1948
46 Implementation Issues Issues that affect the implementation on an FPGA Data frequency, sampling frequency, clock frequency Number representation, word widths, precision, rounding Arithmetic operations, parallel, serial, distributed, overflow, underflow, saturation Look-Up tables, block ram or distributed memory, optimizations
47 Implementation Issues Frequencies Sampling frequency: Frequency at which samples of the data are taken and processed. Clock frequency: Frequency of the system clock (Clock driving the FPGA registers) Data rate: Rate at which new data arrives and needs to be processed Multiple frequencies: several different data rates, multiple sampling frequencies and/or different clock domains These rates and frequencies will affect and limit the possible architectures and solutions
48 Implementation Issues Sampling frequency Data sampling must meet the Nyquist criterion External data must be band limited before it is sampled (filters) Data can be oversampled or undersampled Oversampling used to increase SNR or reduce effects of quantization noise Undersampling used in IF or RF signals Multirate systems have several sampling frequencies Relationship between them affects data transfers between them FPGA will drive ADC control signals ADC timing, relationship between system clock and ADC signals Meet data setup and hold times in FPGA
49 Implementation Issues Sampling frequency Manage synchronization to system clock Integer division of system clock (Sample rate = Clock / 4 is easy!) Manage multiple sample rates (Downsampling by 43 is hard) Use asynchronous FIFOs to get data to and from processing logic to the DAC and ADC FPGA will probably drive ADC and DAC control signals ADC and DAC timing Relationship between system clock and converter signals Must meet data setup and hold times for FPGA and DAC
50 Implementation Issues Clock frequency Higher clock frequencies will enable higher sampling rates Higher clock frequencies will consume more power Use as few clock domains as possible and control rates with Clock Enable input Clock dividers generate CE signals at lower rates Logic can be reused
51 Implementation Issues Clock frequency If sampling frequency is lower than system clock, several clocks can be used to process the data
52 Implementation Issues Data rate Useful data might come at lower frequencies than the sampling frequency Some data may not need to be sampled at same as others
53 Implementation Issues Clock frequency and sample rate Data at clock rate Filter result available every on clock cycle Data at CE rate Filter result takes several clock cycles to complete Note: Data has N bits and each FF represents N registers
54 Implementation Issues Clock frequency and sample rate Clock at high speed Data at CE rate (sample frequency) Each coefficient is multiplied at CE2 rate Multiplication is implemented with shift-add logic, and takes several cycles to complete Filter result takes several clock cycles to complete
55 Implementation Issues Clock frequency and sample rate In the filter shown, timing between all signals must be synchronized to achieve results Use SYNCHRONOUS logic, as recommended for FPGAs Different CE signals control what parts of the process are activated by enabling FFs
56 Implementation Issues Number representation, Bits and Word Widths Fixed point or floating point. Number representation. Operations on the data will change the word size to maintain full precision Scaling Overflow, underflow, rounding
57 Implementation Issues Number systems for binary representations Fixed point Traditional Non traditional Two s complement One s complement Sign-Magnitude Diminshed-1 Signed digit RNS Fixed point numbers on FPGAs (For now! High end FPGAs have support for some floating point operations) Each system has advantages and disadvantages for implementations in digital circuits or arithmetic operations. Our examples will use fixed point two s complement representations
58 Implementation Issues Fixed point binary numbers Fixed point sets the decimal point at a fixed location within the binary word
59 Implementation Issues Operation results have longer word lengths
60 Implementation Issues Overflow, saturation, rounding & scaling Overflow results when an arithmetic operation requires more bits than are available in the result register Rounding will help maintain the number of bits low May introduce offsets or accumulative errors Scaling can be used to reduce the number of bits used If all numbers are between -1 and 1 multiplication will result in a number between -1 and 1 Will result in larger round-off or quantization errors
61 Implementation Issues Overflow Consider these 3-bit two s complement numbers: 010, 011 Overflow! Maintaining the same number of bits gives an incorrect result. An extra bit for the result will give the correct answer Sign extension: = 0101 (4 bit number = 5) To avoid overflow we can use extra bits in the accumulator (guard bits)
62 Implementation Issues Saturation In previous operation, : Sign extension: = 0101 (4 bit number = 5) Result is OK but has an extra bit Overflow is detected by checking the old sign bit position with the new sign bit bit 4 = bit 3? No Overflow Saturate the result 0101 saturated to 011 (maximum number that can be represented by 3 bits) In filters, maybe we can saturate the result, but not the intermediate values
63 Implementation Issues Rounding Get rid of least significant bits in result (multiplication) Round coefficients and/or datapath Different rounding methods: Truncation, round floor, round ceiling, round half-up, round half-even, etc. Refer to Programmable Logic Design Line article (Jan 4, 2006) An introduction to different rounding algorithms
64 Implementation Issues Rounding
65 Implementation Issues Arithmetic Operations and Implementation Structures Operations can be done using different approaches Different word widths, number representations, etc. Different clock frequencies and data rates Others (Distributed arithmetic, optimizations) Several factors determine the type of implementation Required precision Required data rates and sampling frequency Resources available in the FPGA Dedicated DSP blocks, multipliers, logic, memory, etc Others (Power. External logic.)
66 Implementation Issues Arithmetic Operations: Some multipliers (from Andraka s web site, Scaling Accumulator Ripple-Carry Array Computed Partial Product Row Adder Tree Partial Product LUT
67 Implementation Issues Structures, Calculations and Optimizations Filter structures Pipelining Power of 2 operations Cordic algorithms Resource sharing Look up tables for operations, look up table optimization Type of memory used (block or distributed) Etc.
68 Implementation Issues Filter Structures (from Peled and Liu paper)
69 Implementation Issues Pipelining
70 Implementation Issues Operations and Structures Refer to papers and articles: Multiplication in FPGAs, Ray Andraka, FPGAs: the high end alternative for DSP applications, Chris Dick, DSP Engineering A New Hardware Realization of Digital Filters, Peled and B Liu, IEEE Trans on Acoust., Speech, Signal Processing, Dec Application of Distributed Arithmetic to Digital Signal Processing: A Tutorial Review, Stanley White, IEEE ASSP Magazine, July 1989 High Speed Binary Addition, Robert Jackson, Sunil Talwar, IEEE Signals, Systems and Computers, 2004 Etc.
71 How do we go about doing DSP on an FPGA? The Disintegration of the Persistence of Memory Salvador Dali, 1954
72 Implementation Issues Typical DSP design flow Task Work on Design Simulate Models Code Compile Simulate Code (Assembly, C, HDLs) Run - Test Debug Platform This is valid for CPU, DSP or FPGA based approaches we are probably more careful if building and ASIC.
73 Implementation Issues Possible design flows Code-based Model-based Mixed Tools?
74 A basic example: Filtering Three Apparitions of the Visage of Gala Salvador Dali, 1945
Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering. Winter/Summer Training
Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering Winter/Summer Training Level 2 continues. 3 rd Year 4 th Year FIG-3 Level 1 (Basic & Mandatory) & Level 1.1 and
More informationREAL TIME DIGITAL SIGNAL PROCESSING
REAL TIME DIGITAL SIGNAL PROCESSING UTN-FRBA 2010 Introduction Why Digital? A brief comparison with analog. Advantages Flexibility. Easily modifiable and upgradeable. Reproducibility. Don t depend on components
More informationModeling and implementation of dsp fpga solutions
See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/228877179 Modeling and implementation of dsp fpga solutions Article CITATIONS 9 READS 57 4
More informationREAL TIME DIGITAL SIGNAL PROCESSING
REAL TIME DIGITAL SIGNAL PROCESSING UTN - FRBA 2011 www.electron.frba.utn.edu.ar/dplab Introduction Why Digital? A brief comparison with analog. Advantages Flexibility. Easily modifiable and upgradeable.
More informationEmbedded Systems: Hardware Components (part I) Todor Stefanov
Embedded Systems: Hardware Components (part I) Todor Stefanov Leiden Embedded Research Center Leiden Institute of Advanced Computer Science Leiden University, The Netherlands Outline Generic Embedded System
More informationDIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING
1 DSP applications DSP platforms The synthesis problem Models of computation OUTLINE 2 DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: Time-discrete representation
More informationIntroduction to DSP/FPGA Programming Using MATLAB Simulink
دوازدهمين سمينار ساليانه دانشكده مهندسي برق فناوری های الکترونيک قدرت اسفند 93 Introduction to DSP/FPGA Programming Using MATLAB Simulink By: Dr. M.R. Zolghadri Dr. M. Shahbazi N. Noroozi 2 Table of main
More informationAgenda. Introduction FPGA DSP platforms Design challenges New programming models for FPGAs
New Directions in Programming FPGAs for DSP Dr. Jim Hwang Xilinx, Inc. Agenda Introduction FPGA DSP platforms Design challenges New programming models for FPGAs System Generator Getting your math into
More informationINTEGER SEQUENCE WINDOW BASED RECONFIGURABLE FIR FILTERS.
INTEGER SEQUENCE WINDOW BASED RECONFIGURABLE FIR FILTERS Arulalan Rajan 1, H S Jamadagni 1, Ashok Rao 2 1 Centre for Electronics Design and Technology, Indian Institute of Science, India (mrarul,hsjam)@cedt.iisc.ernet.in
More informationCOPROCESSOR APPROACH TO ACCELERATING MULTIMEDIA APPLICATION [CLAUDIO BRUNELLI, JARI NURMI ] Processor Design
COPROCESSOR APPROACH TO ACCELERATING MULTIMEDIA APPLICATION [CLAUDIO BRUNELLI, JARI NURMI ] Processor Design Lecture Objectives Background Need for Accelerator Accelerators and different type of parallelizm
More informationRUN-TIME RECONFIGURABLE IMPLEMENTATION OF DSP ALGORITHMS USING DISTRIBUTED ARITHMETIC. Zoltan Baruch
RUN-TIME RECONFIGURABLE IMPLEMENTATION OF DSP ALGORITHMS USING DISTRIBUTED ARITHMETIC Zoltan Baruch Computer Science Department, Technical University of Cluj-Napoca, 26-28, Bariţiu St., 3400 Cluj-Napoca,
More informationBasic Xilinx Design Capture. Objectives. After completing this module, you will be able to:
Basic Xilinx Design Capture This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: List various blocksets available in System
More informationECE 450:DIGITAL SIGNAL. Lecture 10: DSP Arithmetic
ECE 450:DIGITAL SIGNAL PROCESSORS AND APPLICATIONS Lecture 10: DSP Arithmetic Last Session Floating Point Arithmetic Addition Block Floating Point format Dynamic Range and Precision 2 Today s Session Guard
More informationSignal Processing Algorithms into Fixed Point FPGA Hardware Dennis Silage ECE Temple University
Signal Processing Algorithms into Fixed Point FPGA Hardware Dennis Silage silage@temple.edu ECE Temple University www.temple.edu/scdl Signal Processing Algorithms into Fixed Point FPGA Hardware Motivation
More informationREAL TIME DIGITAL SIGNAL PROCESSING
REAL TIME DIGITAL SIGNAL PROCESSING SASE 2010 Universidad Tecnológica Nacional - FRBA Introduction Why Digital? A brief comparison with analog. Advantages Flexibility. Easily modifiable and upgradeable.
More informationINTRODUCTION TO FPGA ARCHITECTURE
3/3/25 INTRODUCTION TO FPGA ARCHITECTURE DIGITAL LOGIC DESIGN (BASIC TECHNIQUES) a b a y 2input Black Box y b Functional Schematic a b y a b y a b y 2 Truth Table (AND) Truth Table (OR) Truth Table (XOR)
More informationEmbedded Systems. 7. System Components
Embedded Systems 7. System Components Lothar Thiele 7-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
More informationStratix II vs. Virtex-4 Performance Comparison
White Paper Stratix II vs. Virtex-4 Performance Comparison Altera Stratix II devices use a new and innovative logic structure called the adaptive logic module () to make Stratix II devices the industry
More informationParallel FIR Filters. Chapter 5
Chapter 5 Parallel FIR Filters This chapter describes the implementation of high-performance, parallel, full-precision FIR filters using the DSP48 slice in a Virtex-4 device. ecause the Virtex-4 architecture
More informationA SIMULINK-TO-FPGA MULTI-RATE HIERARCHICAL FIR FILTER DESIGN
A SIMULINK-TO-FPGA MULTI-RATE HIERARCHICAL FIR FILTER DESIGN Xiaoying Li 1 Fuming Sun 2 Enhua Wu 1, 3 1 University of Macau, Macao, China 2 University of Science and Technology Beijing, Beijing, China
More informationCHAPTER 4. DIGITAL DOWNCONVERTER FOR WiMAX SYSTEM
CHAPTER 4 IMPLEMENTATION OF DIGITAL UPCONVERTER AND DIGITAL DOWNCONVERTER FOR WiMAX SYSTEM 4.1 Introduction FPGAs provide an ideal implementation platform for developing broadband wireless systems such
More informationAn introduction to Digital Signal Processors (DSP) Using the C55xx family
An introduction to Digital Signal Processors (DSP) Using the C55xx family Group status (~2 minutes each) 5 groups stand up What processor(s) you are using Wireless? If so, what technologies/chips are you
More informationIntroduction to Field Programmable Gate Arrays
Introduction to Field Programmable Gate Arrays Lecture 2/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May 9 June 2007 Javier Serrano, CERN AB-CO-HT Outline Digital Signal
More informationFPGA Implementation of Multiplierless 2D DWT Architecture for Image Compression
FPGA Implementation of Multiplierless 2D DWT Architecture for Image Compression Divakara.S.S, Research Scholar, J.S.S. Research Foundation, Mysore Cyril Prasanna Raj P Dean(R&D), MSEC, Bangalore Thejas
More informationDesign and Verify Embedded Signal Processing Systems Using MATLAB and Simulink
Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink Giorgia Zucchelli, Application Engineer, MathWorks 10 January 2013, Technical University Eindhoven 2013 The MathWorks, Inc.
More informationFPGA Based Digital Signal Processing Applications & Techniques. Nathan Eddy Fermilab BIW12 Tutorial
FPGA Based Digital Signal Processing Applications & Techniques BIW12 Tutorial Outline Digital Signal Processing Basics Modern FPGA Overview Instrumentation Examples Advantages of Digital Signal Processing
More informationModel-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany
Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany 2013 The MathWorks, Inc. 1 Agenda Model-Based Design of embedded Systems Software Implementation
More informationFPGA architecture and design technology
CE 435 Embedded Systems Spring 2017 FPGA architecture and design technology Nikos Bellas Computer and Communications Engineering Department University of Thessaly 1 FPGA fabric A generic island-style FPGA
More informationHIGH-PERFORMANCE RECONFIGURABLE FIR FILTER USING PIPELINE TECHNIQUE
HIGH-PERFORMANCE RECONFIGURABLE FIR FILTER USING PIPELINE TECHNIQUE Anni Benitta.M #1 and Felcy Jeba Malar.M *2 1# Centre for excellence in VLSI Design, ECE, KCG College of Technology, Chennai, Tamilnadu
More informationImplementation of DSP Algorithms
Implementation of DSP Algorithms Main frame computers Dedicated (application specific) architectures Programmable digital signal processors voice band data modem speech codec 1 PDSP and General-Purpose
More informationAll MSEE students are required to take the following two core courses: Linear systems Probability and Random Processes
MSEE Curriculum All MSEE students are required to take the following two core courses: 3531-571 Linear systems 3531-507 Probability and Random Processes The course requirements for students majoring in
More informationD. Richard Brown III Associate Professor Worcester Polytechnic Institute Electrical and Computer Engineering Department
D. Richard Brown III Associate Professor Worcester Polytechnic Institute Electrical and Computer Engineering Department drb@ece.wpi.edu 3-November-2008 Analog To Digital Conversion analog signal ADC digital
More informationAn introduction to DSP s. Examples of DSP applications Why a DSP? Characteristics of a DSP Architectures
An introduction to DSP s Examples of DSP applications Why a DSP? Characteristics of a DSP Architectures DSP example: mobile phone DSP example: mobile phone with video camera DSP: applications Why a DSP?
More informationGeneral Purpose Signal Processors
General Purpose Signal Processors First announced in 1978 (AMD) for peripheral computation such as in printers, matured in early 80 s (TMS320 series). General purpose vs. dedicated architectures: Pros:
More informationDigital Integrated Circuits
Digital Integrated Circuits Lecture 9 Jaeyong Chung Robust Systems Laboratory Incheon National University DIGITAL DESIGN FLOW Chung EPC6055 2 FPGA vs. ASIC FPGA (A programmable Logic Device) Faster time-to-market
More informationISSN Vol.02, Issue.11, December-2014, Pages:
ISSN 2322-0929 Vol.02, Issue.11, December-2014, Pages:1208-1212 www.ijvdcs.org Implementation of Area Optimized Floating Point Unit using Verilog G.RAJA SEKHAR 1, M.SRIHARI 2 1 PG Scholar, Dept of ECE,
More informationDigital Signal Processing with Field Programmable Gate Arrays
Uwe Meyer-Baese Digital Signal Processing with Field Programmable Gate Arrays Third Edition With 359 Figures and 98 Tables Book with CD-ROM ei Springer Contents Preface Preface to Second Edition Preface
More informationThe QR code here provides a shortcut to go to the course webpage.
Welcome to this MSc Lab Experiment. All my teaching materials for this Lab-based module are also available on the webpage: www.ee.ic.ac.uk/pcheung/teaching/msc_experiment/ The QR code here provides a shortcut
More informationDSP Resources. Main features: 1 adder-subtractor, 1 multiplier, 1 add/sub/logic ALU, 1 comparator, several pipeline stages
DSP Resources Specialized FPGA columns for complex arithmetic functionality DSP48 Tile: two DSP48 slices, interconnect Each DSP48 is a self-contained arithmeticlogical unit with add/sub/multiply/logic
More informationD. Richard Brown III Professor Worcester Polytechnic Institute Electrical and Computer Engineering Department
D. Richard Brown III Professor Worcester Polytechnic Institute Electrical and Computer Engineering Department drb@ece.wpi.edu Lecture 2 Some Challenges of Real-Time DSP Analog to digital conversion Are
More informationDivide: Paper & Pencil
Divide: Paper & Pencil 1001 Quotient Divisor 1000 1001010 Dividend -1000 10 101 1010 1000 10 Remainder See how big a number can be subtracted, creating quotient bit on each step Binary => 1 * divisor or
More informationOptimize DSP Designs and Code using Fixed-Point Designer
Optimize DSP Designs and Code using Fixed-Point Designer MathWorks Korea 이웅재부장 Senior Application Engineer 2013 The MathWorks, Inc. 1 Agenda Fixed-point concepts Introducing Fixed-Point Designer Overview
More informationQsys and IP Core Integration
Qsys and IP Core Integration Stephen A. Edwards (after David Lariviere) Columbia University Spring 2016 IP Cores Altera s IP Core Integration Tools Connecting IP Cores IP Cores Cyclone V SoC: A Mix of
More informationHead, Dept of Electronics & Communication National Institute of Technology Karnataka, Surathkal, India
Mapping Signal Processing Algorithms to Architecture Sumam David S Head, Dept of Electronics & Communication National Institute of Technology Karnataka, Surathkal, India sumam@ieee.org Objectives At the
More informationFPGAs in a Nutshell - Introduction to Embedded Systems-
FPGAs in a Nutshell - Introduction to Embedded Systems- Dipl.- Ing. Falk Salewski Lehrstuhl Informatik RWTH Aachen salewski@informatik.rwth-aachen.de Winter term 6/7 Contents History FPGA architecture
More informationArithmetic Circuits. Design of Digital Circuits 2014 Srdjan Capkun Frank K. Gürkaynak.
Arithmetic Circuits Design of Digital Circuits 2014 Srdjan Capkun Frank K. Gürkaynak http://www.syssec.ethz.ch/education/digitaltechnik_14 Adapted from Digital Design and Computer Architecture, David Money
More informationFPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011
FPGA for Complex System Implementation National Chiao Tung University Chun-Jen Tsai 04/14/2011 About FPGA FPGA was invented by Ross Freeman in 1989 SRAM-based FPGA properties Standard parts Allowing multi-level
More informationEvaluation of High Speed Hardware Multipliers - Fixed Point and Floating point
International Journal of Electrical and Computer Engineering (IJECE) Vol. 3, No. 6, December 2013, pp. 805~814 ISSN: 2088-8708 805 Evaluation of High Speed Hardware Multipliers - Fixed Point and Floating
More informationCS6303 COMPUTER ARCHITECTURE LESSION NOTES UNIT II ARITHMETIC OPERATIONS ALU In computing an arithmetic logic unit (ALU) is a digital circuit that performs arithmetic and logical operations. The ALU is
More informationDesign Methodologies. Full-Custom Design
Design Methodologies Design styles Full-custom design Standard-cell design Programmable logic Gate arrays and field-programmable gate arrays (FPGAs) Sea of gates System-on-a-chip (embedded cores) Design
More informationResearch Article International Journal of Emerging Research in Management &Technology ISSN: (Volume-6, Issue-8) Abstract:
International Journal of Emerging Research in Management &Technology Research Article August 27 Design and Implementation of Fast Fourier Transform (FFT) using VHDL Code Akarshika Singhal, Anjana Goen,
More informationKeywords: Soft Core Processor, Arithmetic and Logical Unit, Back End Implementation and Front End Implementation.
ISSN 2319-8885 Vol.03,Issue.32 October-2014, Pages:6436-6440 www.ijsetr.com Design and Modeling of Arithmetic and Logical Unit with the Platform of VLSI N. AMRUTHA BINDU 1, M. SAILAJA 2 1 Dept of ECE,
More informationModeling a 4G LTE System in MATLAB
Modeling a 4G LTE System in MATLAB Part 3: Path to implementation (C and HDL) Houman Zarrinkoub PhD. Signal Processing Product Manager MathWorks houmanz@mathworks.com 2011 The MathWorks, Inc. 1 LTE Downlink
More informationHardware Implementation and Verification by Model-Based Design Workflow - Communication Models to FPGA-based Radio
Hardware Implementation and Verification by -Based Design Workflow - Communication s to FPGA-based Radio Katsuhisa Shibata Industry Marketing MathWorks Japan 2015 The MathWorks, Inc. 1 Agenda Challenges
More informationMicroprocessors vs. DSPs (ESC-223)
Insight, Analysis, and Advice on Signal Processing Technology Microprocessors vs. DSPs (ESC-223) Kenton Williston Berkeley Design Technology, Inc. Berkeley, California USA +1 (510) 665-1600 info@bdti.com
More informationExperiment 3. Getting Start with Simulink
Experiment 3 Getting Start with Simulink Objectives : By the end of this experiment, the student should be able to: 1. Build and simulate simple system model using Simulink 2. Use Simulink test and measurement
More information4.1 QUANTIZATION NOISE
DIGITAL SIGNAL PROCESSING UNIT IV FINITE WORD LENGTH EFFECTS Contents : 4.1 Quantization Noise 4.2 Fixed Point and Floating Point Number Representation 4.3 Truncation and Rounding 4.4 Quantization Noise
More informationRepresentation of Numbers and Arithmetic in Signal Processors
Representation of Numbers and Arithmetic in Signal Processors 1. General facts Without having any information regarding the used consensus for representing binary numbers in a computer, no exact value
More informationDigital Logic & Computer Design CS Professor Dan Moldovan Spring 2010
Digital Logic & Computer Design CS 434 Professor Dan Moldovan Spring 2 Copyright 27 Elsevier 5- Chapter 5 :: Digital Building Blocks Digital Design and Computer Architecture David Money Harris and Sarah
More informationisplever Parallel FIR Filter User s Guide October 2005 ipug06_02.0
isplever TM CORE Parallel FIR Filter User s Guide October 2005 ipug06_02.0 Introduction This document serves as a guide containing technical information about the Lattice Parallel FIR Filter core. Overview
More informationField Programmable Gate Array (FPGA)
Field Programmable Gate Array (FPGA) Lecturer: Krébesz, Tamas 1 FPGA in general Reprogrammable Si chip Invented in 1985 by Ross Freeman (Xilinx inc.) Combines the advantages of ASIC and uc-based systems
More informationChapter 5. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 5 <1>
Chapter 5 Digital Design and Computer Architecture, 2 nd Edition David Money Harris and Sarah L. Harris Chapter 5 Chapter 5 :: Topics Introduction Arithmetic Circuits umber Systems Sequential Building
More informationFPGA Technology and Industry Experience
FPGA Technology and Industry Experience Guest Lecture at HSLU, Horw (Lucerne) May 24 2012 Oliver Brndler, FPGA Design Center, Enclustra GmbH Silvio Ziegler, FPGA Design Center, Enclustra GmbH Content Enclustra
More informationTailoring the 32-Bit ALU to MIPS
Tailoring the 32-Bit ALU to MIPS MIPS ALU extensions Overflow detection: Carry into MSB XOR Carry out of MSB Branch instructions Shift instructions Slt instruction Immediate instructions ALU performance
More informationECE 645: Lecture 1. Basic Adders and Counters. Implementation of Adders in FPGAs
ECE 645: Lecture Basic Adders and Counters Implementation of Adders in FPGAs Required Reading Behrooz Parhami, Computer Arithmetic: Algorithms and Hardware Design Chapter 5, Basic Addition and Counting,
More informationWordlength Optimization
EE216B: VLSI Signal Processing Wordlength Optimization Prof. Dejan Marković ee216b@gmail.com Number Systems: Algebraic Algebraic Number e.g. a = + b [1] High level abstraction Infinite precision Often
More informationObjectives. After completing this module, you will be able to:
Signal Routing This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: Describe how signals are converted through Gateway In
More informationRISC IMPLEMENTATION OF OPTIMAL PROGRAMMABLE DIGITAL IIR FILTER
RISC IMPLEMENTATION OF OPTIMAL PROGRAMMABLE DIGITAL IIR FILTER Miss. Sushma kumari IES COLLEGE OF ENGINEERING, BHOPAL MADHYA PRADESH Mr. Ashish Raghuwanshi(Assist. Prof.) IES COLLEGE OF ENGINEERING, BHOPAL
More informationIntro to System Generator. Objectives. After completing this module, you will be able to:
Intro to System Generator This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: Explain why there is a need for an integrated
More informationVIII. DSP Processors. Digital Signal Processing 8 December 24, 2009
Digital Signal Processing 8 December 24, 2009 VIII. DSP Processors 2007 Syllabus: Introduction to programmable DSPs: Multiplier and Multiplier-Accumulator (MAC), Modified bus structures and memory access
More informationImplementation of Floating Point Multiplier Using Dadda Algorithm
Implementation of Floating Point Multiplier Using Dadda Algorithm Abstract: Floating point multiplication is the most usefull in all the computation application like in Arithematic operation, DSP application.
More informationCore Facts. Documentation Design File Formats. Verification Instantiation Templates Reference Designs & Application Notes Additional Items
(FFT_MIXED) November 26, 2008 Product Specification Dillon Engineering, Inc. 4974 Lincoln Drive Edina, MN USA, 55436 Phone: 952.836.2413 Fax: 952.927.6514 E mail: info@dilloneng.com URL: www.dilloneng.com
More informationDesign of Feature Extraction Circuit for Speech Recognition Applications
Design of Feature Extraction Circuit for Speech Recognition Applications SaambhaviVB, SSSPRao and PRajalakshmi Indian Institute of Technology Hyderabad Email: ee10m09@iithacin Email: sssprao@cmcltdcom
More informationDigital Systems Design. System on a Programmable Chip
Digital Systems Design Introduction to System on a Programmable Chip Dr. D. J. Jackson Lecture 11-1 System on a Programmable Chip Generally involves utilization of a large FPGA Large number of logic elements
More informationA VARIETY OF ICS ARE POSSIBLE DESIGNING FPGAS & ASICS. APPLICATIONS MAY USE STANDARD ICs or FPGAs/ASICs FAB FOUNDRIES COST BILLIONS
architecture behavior of control is if left_paddle then n_state
More informationINTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS)
INTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS) Bill Jason P. Tomas Dept. of Electrical and Computer Engineering University of Nevada Las Vegas FIELD PROGRAMMABLE ARRAYS Dominant digital design
More informationIn this article, we present and analyze
[exploratory DSP] Manuel Richey and Hossein Saiedian Compressed Two s Complement Data s Provide Greater Dynamic Range and Improved Noise Performance In this article, we present and analyze a new family
More informationCOMPARISON OF DIFFERENT REALIZATION TECHNIQUES OF IIR FILTERS USING SYSTEM GENERATOR
COMPARISON OF DIFFERENT REALIZATION TECHNIQUES OF IIR FILTERS USING SYSTEM GENERATOR Prof. SunayanaPatil* Pratik Pramod Bari**, VivekAnandSakla***, Rohit Ashok Shah****, DharmilAshwin Shah***** *(sunayana@vcet.edu.in)
More informationAltera SDK for OpenCL
Altera SDK for OpenCL A novel SDK that opens up the world of FPGAs to today s developers Altera Technology Roadshow 2013 Today s News Altera today announces its SDK for OpenCL Altera Joins Khronos Group
More informationNumber Systems and Computer Arithmetic
Number Systems and Computer Arithmetic Counting to four billion two fingers at a time What do all those bits mean now? bits (011011011100010...01) instruction R-format I-format... integer data number text
More informationEvaluating MMX Technology Using DSP and Multimedia Applications
Evaluating MMX Technology Using DSP and Multimedia Applications Ravi Bhargava * Lizy K. John * Brian L. Evans Ramesh Radhakrishnan * November 22, 1999 The University of Texas at Austin Department of Electrical
More informationBasic FPGA Architectures. Actel FPGAs. PLD Technologies: Antifuse. 3 Digital Systems Implementation Programmable Logic Devices
3 Digital Systems Implementation Programmable Logic Devices Basic FPGA Architectures Why Programmable Logic Devices (PLDs)? Low cost, low risk way of implementing digital circuits as application specific
More informationHigh-Tech-Marketing. Selecting an FPGA. By Paul Dillien
High-Tech-Marketing Selecting an FPGA By Paul Dillien The Market In 2011 the total PLD market was $4.97B The FPGA portion was worth $4.1B 2 FPGA Applications The dominant applications have always been
More informationProgrammable Logic Devices FPGA Architectures II CMPE 415. Overview This set of notes introduces many of the features available in the FPGAs of today.
Overview This set of notes introduces many of the features available in the FPGAs of today. The majority use SRAM based configuration cells, which allows fast reconfiguation. Allows new design ideas to
More informationLinköping University Post Print. Analysis of Twiddle Factor Memory Complexity of Radix-2^i Pipelined FFTs
Linköping University Post Print Analysis of Twiddle Factor Complexity of Radix-2^i Pipelined FFTs Fahad Qureshi and Oscar Gustafsson N.B.: When citing this work, cite the original article. 200 IEEE. Personal
More informationDesign Methodologies and Tools. Full-Custom Design
Design Methodologies and Tools Design styles Full-custom design Standard-cell design Programmable logic Gate arrays and field-programmable gate arrays (FPGAs) Sea of gates System-on-a-chip (embedded cores)
More informationEmbedded Computing Platform. Architecture and Instruction Set
Embedded Computing Platform Microprocessor: Architecture and Instruction Set Ingo Sander ingo@kth.se Microprocessor A central part of the embedded platform A platform is the basic hardware and software
More informationISSN (Online), Volume 1, Special Issue 2(ICITET 15), March 2015 International Journal of Innovative Trends and Emerging Technologies
VLSI IMPLEMENTATION OF HIGH PERFORMANCE DISTRIBUTED ARITHMETIC (DA) BASED ADAPTIVE FILTER WITH FAST CONVERGENCE FACTOR G. PARTHIBAN 1, P.SATHIYA 2 PG Student, VLSI Design, Department of ECE, Surya Group
More information! Program logic functions, interconnect using SRAM. ! Advantages: ! Re-programmable; ! dynamically reconfigurable; ! uses standard processes.
Topics! SRAM-based FPGA fabrics:! Xilinx.! Altera. SRAM-based FPGAs! Program logic functions, using SRAM.! Advantages:! Re-programmable;! dynamically reconfigurable;! uses standard processes.! isadvantages:!
More informationAdaptive FIR Filter Using Distributed Airthmetic for Area Efficient Design
International Journal of Scientific and Research Publications, Volume 5, Issue 1, January 2015 1 Adaptive FIR Filter Using Distributed Airthmetic for Area Efficient Design Manish Kumar *, Dr. R.Ramesh
More informationdiscrete logic do not
Welcome to my second year course on Digital Electronics. You will find that the slides are supported by notes embedded with the Powerpoint presentations. All my teaching materials are also available on
More informationAC : INCORPORATING SYSTEM-LEVEL DESIGN TOOLS INTO UPPER-LEVEL DIGITAL DESIGN AND CAPSTONE COURSES
AC 2007-2290: ICORPORATIG SYSTEM-LEVEL DESIG TOOLS ITO UPPER-LEVEL DIGITAL DESIG AD CAPSTOE COURSES Wagdy Mahmoud, University of the District of Columbia IEEE Senior Member American Society for Engineering
More informationDesign and Verify Embedded Signal Processing Systems Using MATLAB and Simulink
Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink Giorgia Zucchelli, Application Engineer, MathWorks 17 January 2011, Technical University Eindhoven 1 Agenda Introduction to
More informationFPGA Implementation of 16-Point Radix-4 Complex FFT Core Using NEDA
FPGA Implementation of 16-Point FFT Core Using NEDA Abhishek Mankar, Ansuman Diptisankar Das and N Prasad Abstract--NEDA is one of the techniques to implement many digital signal processing systems that
More informationDESIGN AND DEVELOPMENT OF A MULTIRATE FILTERS IN SOFTWARE DEFINED RADIO ENVIRONMENT
74 DESIGN AND DEVELOPMENT OF A MULTIRATE FILTERS IN SOFTWARE DEFINED RADIO ENVIRONMENT L.C Loong, N.C Kyun, C.J Hui and N.K Noordin Department of Computer and Communication Systems Engineering, Universiti
More informationEITF35: Introduction to Structured VLSI Design
EITF35: Introduction to Structured VLSI Design Introduction to FPGA design Rakesh Gangarajaiah Rakesh.gangarajaiah@eit.lth.se Slides from Chenxin Zhang and Steffan Malkowsky WWW.FPGA What is FPGA? Field
More informationAn Overview of a Compiler for Mapping MATLAB Programs onto FPGAs
An Overview of a Compiler for Mapping MATLAB Programs onto FPGAs P. Banerjee Department of Electrical and Computer Engineering Northwestern University 2145 Sheridan Road, Evanston, IL-60208 banerjee@ece.northwestern.edu
More informationDesigning and Prototyping Digital Systems on SoC FPGA The MathWorks, Inc. 1
Designing and Prototyping Digital Systems on SoC FPGA Hitu Sharma Application Engineer Vinod Thomas Sr. Training Engineer 2015 The MathWorks, Inc. 1 What is an SoC FPGA? A typical SoC consists of- A microcontroller,
More informationBenchmarking Processors for DSP Applications
Insight, Analysis, and Advice on Signal Processing Technology Benchmarking Processors for DSP Applications Berkeley Design Technology, Inc. 2107 Dwight Way, Second Floor Berkeley, California 94704 USA
More informationFloating Point. CSE 351 Autumn Instructor: Justin Hsia
Floating Point CSE 351 Autumn 2016 Instructor: Justin Hsia Teaching Assistants: Chris Ma Hunter Zahn John Kaltenbach Kevin Bi Sachin Mehta Suraj Bhat Thomas Neuman Waylon Huang Xi Liu Yufang Sun http://xkcd.com/899/
More information