Improving Power And Performance of Embedded Applications Using Residue Number System Compilers For Embedded Systems Rooju Chokshi.

Slides:



Advertisements
Similar presentations
© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
Advertisements

Lecture 4 Introduction to Digital Signal Processors (DSPs) Dr. Konstantinos Tatas.
CSE 246: Computer Arithmetic Algorithms and Hardware Design Instructor: Prof. Chung-Kuan Cheng Winter 2004 Lecture 2.
CENG536 Computer Engineering Department Çankaya University.
Chapter 2 : Number System
Digital Kommunikationselektronik TNE064 Lecture 1 1 TNE064 Digital Communication Electronics Qin-Zhong Ye ITN Linköping University
Chapter 15 Digital Signal Processing
IUCEE Workshop presentation-YVJoshi VLSI Signal Processing Y. V. Joshi SGGS Institute of Engineering and Technology, Nanded.
1 CSE20 Lecture 6 4/19/11 CK Cheng UC San Diego. Residual Numbers (NT-1 and Shaum’s Chapter 11) Introduction Definition Operations Range of numbers Conversion.
Computer ArchitectureFall 2008 © August 25, CS 447 – Computer Architecture Lecture 3 Computer Arithmetic (1)
The Effect of Data-Reuse Transformations on Multimedia Applications for Different Processing Platforms N. Vassiliadis, A. Chormoviti, N. Kavvadias, S.
1 CSE20 Lecture 5 4/12/11 CK Cheng UC San Diego. Residual Numbers (NT-1 and Shaum’s Chapter 11) Introduction Definition Operations Range of numbers 2.
IT Systems Number Operations EN230-1 Justin Champion C208 –
A COMPARATIVE STUDY OF MULTIPLY ACCCUMULATE IMPLEMENTATIONS ON FPGAS Using Distributed Arithmetic and Residue Number System.
Low power and cost effective VLSI design for an MP3 audio decoder using an optimized synthesis- subband approach T.-H. Tsai and Y.-C. Yang Department of.
Computer Arithmetic Integers: signed / unsigned (can overflow) Fixed point (can overflow) Floating point (can overflow, underflow) (Boolean / Character)
Kathy Grimes. Signals Electrical Mechanical Acoustic Most real-world signals are Analog – they vary continuously over time Many Limitations with Analog.
GallagherP188/MAPLD20041 Accelerating DSP Algorithms Using FPGAs Sean Gallagher DSP Specialist Xilinx Inc.
1 DSP Implementation on FPGA Ahmed Elhossini ENGG*6090 : Reconfigurable Computing Systems Winter 2006.
GPGPU platforms GP - General Purpose computation using GPU
FPGA Based Fuzzy Logic Controller for Semi- Active Suspensions Aws Abu-Khudhair.
Embedded Systems Design ICT Embedded System What is an embedded System??? Any IDEA???
Real time DSP Professors: Eng. Julian Bruno Eng. Mariano Llamedo Soria.
Coping With the Carry Problem 1. Limit Carry to Small Number of Bits Hybrid Redundant Residue Number Systems 2.Detect the End of Propagation Rather Than.
Philip Brisk 2 Paolo Ienne 2 Hadi Parandeh-Afshar 1,2 1: University of Tehran, ECE Department 2: EPFL, School of Computer and Communication Sciences Efficient.
High Speed, Low Power FIR Digital Filter Implementation Presented by, Praveen Dongara and Rahul Bhasin.
COMPUTER ORGANIZATIONS CSNB123 May 2014Systems and Networking1.
200/MAPLD 2004 Craven1 Super-Sized Multiplies: How Do FPGAs Fare in Extended Digit Multipliers? Stephen Craven Cameron Patterson Peter Athanas Configurable.
Decimal Multiplier on FPGA using Embedded Binary Multipliers Authors: H. Neto and M. Vestias Conference: Field Programmable Logic and Applications (FPL),
Reconfigurable Computing - Multipliers: Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on.
ECE 545 – Introduction to VHDL ECE 645—Project 2 Project Options.
ECE 8053 Introduction to Computer Arithmetic (Website: Course & Text Content: Part 1: Number Representation.
Mohammad Reza Najafi Main Ref: Computer Arithmetic Algorithms and Hardware Designs (Behrooz Parhami) Spring 2010 Class presentation for the course: “Custom.
CML RESIDUE NUMBER SYSTEM ENHANCEMENTS FOR PROGRAMMABLE PROCESSORS Arizona State University Rooju Chokshi 7 th November, 2008 Compiler-Microarchitecture.
Area: VLSI Signal Processing.
Digital Logic Design Lecture # 2 University of Tehran.
ACOE2511 Assembly Language for the 80X86/Pentium Intel Microprocessors Lecturer: Dr. Konstantinos Tatas.
COARSE GRAINED RECONFIGURABLE ARCHITECTURES 04/18/2014 Aditi Sharma Dhiraj Chaudhary Pruthvi Gowda Rachana Raj Sunku DAY
Computer Architecture Lecture 32 Fasih ur Rehman.
SAK Chapter 21 Chapter 2 : Number System 2.1 Decimal, Binary, Octal and Hexadecimal Numbers 2.2 Relation between binary number system with other.
Unconventional Fixed-Radix Number Systems
Overview of Residue Number System (RNS) for Advanced VLSI Design and VLSI Signal Processing NTUEE 吳安宇.
Negative binary numbers 1 Computer Architectures M.
Recursive Architectures for 2DLNS Multiplication RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 11 Recursive Architectures for 2DLNS.
Reconfigurable Computing - Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound,
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU Brief Overview of Residue Number System (RNS) VLSI Signal Processing 台灣大學電機系 吳安宇.
Reconfigurable Computing - Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound,
DATA REPRESENTATION Data Types Complements Fixed Point Representations
Efficient Montgomery Modular Multiplication Algorithm Using Complement and Partition Techniques Speaker: Te-Jen Chang.
Choosing RNS Moduli Assume we wish to represent 100, Values Standard Binary  lg 2 (100,000) 10  =   =17 bits RNS(13|11|7|5|3|2), Dynamic.
Binary Arithmetic James A. Rome Tennessee Governor's Academy August 2010.
Digital Signal Processor HANYANG UNIVERSITY 학기 Digital Signal Processor 조 성 호 교수님 담당조교 : 임대현
Embedded Systems. What is Embedded Systems?  Embedded reflects the facts that they are an integral.
1 Chapter 1: Basic Concepts Assembly Language for Intel-Based Computers, 4th edition Kip R. Irvine 9/6/2003.
Number-Theoretic Algorithms
Array multiplier TU/e Processor Design 5Z032.
Embedded Systems Design
Overview of Residue Number System (RNS) for Advanced VLSI Design and VLSI Signal Processing NTUEE 吳安宇.
CSE 575 Computer Arithmetic Spring 2003 Mary Jane Irwin (www. cse. psu
Reconfigurable Computing - Options in Circuit Design
Introduction.
Outline Introduction Floating Point Arithmetic Adder Multiplier.
DESIGN AND IMPLEMENTATION OF DIGITAL FILTER
Chapter 4: Threads.
Brief Overview of Residue Number System (RNS)
Chapter 1 Introduction.
Unconventional Fixed-Radix Number Systems
Modular Arithmetic and Change of Base
Introduction to Cryptography
Nov. 12, 1997 Bob Brodersen ( CS 152 Computer Architecture and Engineering Introduction to Architectures for Digital.
Presentation transcript:

Improving Power And Performance of Embedded Applications Using Residue Number System Compilers For Embedded Systems Rooju Chokshi

Motivation Immense increase in the usage and popularity of battery powered electronic appliances. Cellular phones, MP3 players, portable DVD players, etc. Demand low power operation, to conserve battery. Extremely important for embedded processors to have low power, yet reasonably fast, operation.

Motivation Residue Number System (RNS) has been found to be very efficient in doing certain arithmetic operations. Researchers have constructed ASIC architectures for DSP units, like FIR filters, based on RNS, which are faster and consume less power than 2’s complement binary number system. Can we utilize RNS in a general purpose processor architecture?

Introduction to RNS Non-positional number system Characterized by set of relatively prime numbers (P 1,P 2,….,P k ) A binary number N is represented as a k-tuple (R 1,R 2,….,R k ), where R i =N mod P i Any number in [0,M), M= P 1 xP 2 x….xP k can be uniquely represented. M is called the dynamic range.

Introduction to RNS Arithmetic Operations – X = (x 1,x 2,….,x k ), Y = (y 1,y 2,….,y k ) – X±Y = (x 1 ±y 1,x 2 ±y 2,….,x k ±y k ) – X×Y = (x 1 ×y 1,x 2 ×y 2,….,x k ×y k ) Bigger computation is split into smaller, parallel compuations. Overhead of conversions from binary to RNS and vice-versa.

Introduction to RNS Advantages – Additions, subtractions, multiplications can be done faster Disadvantages – Overhead of conversions. – Residue to Binary, based on Chinese Remainder Theorem, is especially expensive. – Magnitude comparison not possible.

Related Work Jenkins & Leon, 1977 – Used RNS to design FIR filters Jenkins, Soderstrand, Jullien, Taylor, 1986 – Residue Number System Arithmetic: modern applications in Digital Signal Processing. ASIC implementations of DSP algorithms, like FIR filters, etc.

Related Work Large body of work done in designing better (faster and/or low power) arithmetic units (adders, multipliers) and RNS-to-binary converters. Notable: – Piestrak, 1989 – Usage of carry-save adders in designing faster units for RNS. Griffin, Taylor, 1989 – Proposed the concept of RNS RISC as an area of research

Related Work H. T. Vergos, 2001 – Proposed 200 MHz RNS Core – Supposed to be used as a building block in ASIC design. Chaves & Sousa, 2003 – Design RISC DSP based on RNS – Do not talk application level transformations to take advantage of new architecture. Chaves & Sousa, 2007 – Moduli sets for balanced processing.

Focus Areas How can we use RNS to reduce power and/or increase performance of embedded applications? – How can we design faster and low-power arithmetic units for RNS, specifically, the RNS-to- binary converter? – What selection of moduli aids in this? – How can the compiler take advantage of this new microarchitecture?