Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using.

Slides:



Advertisements
Similar presentations
DFT & FFT Computation.
Advertisements

CSE 246: Computer Arithmetic Algorithms and Hardware Design Instructor: Prof. Chung-Kuan Cheng Fall 2006 Lecture 11 Cordic, Log, Square, Exponential Functions.
ECE 645 – Computer Arithmetic Lecture 11: Advanced Topics and Final Review ECE 645—Computer Arithmetic 4/22/08.
CENG536 Computer Engineering department Çankaya University.
CENG536 Computer Engineering Department Çankaya University.
Advanced Information Security 4 Field Arithmetic
ELEC692 VLSI Signal Processing Architecture Lecture 9 VLSI Architecture for Discrete Cosine Transform.
UNIVERSITY OF MASSACHUSETTS Dept
Copyright 2008 Koren ECE666/Koren Part.9b.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
Hypercomputing With the CORDIC Algorithm
1 Implementation of VLD and Constant Division on PAC DSP Platform Student: Chung-Yen Tsai Advisor: Prof. David W. Lin Date:
CSE 246: Computer Arithmetic Algorithms and Hardware Design Instructor: Prof. Chung-Kuan Cheng Fall 2006 Lecture 11 Cordic, Log, Square, Exponential Functions.
UNIVERSITY OF MASSACHUSETTS Dept
Digital Kommunikationselektronik TNE027 Lecture 3 1 Multiply-Accumulator (MAC) Compute Sum of Product (SOP) Linear convolution y[n] = f[n]*x[n] = Σ f[k]
1 Combined LNS Adder/Subtractors for DCT Hardware Jie Ruan & Mark G. Arnold.
Spring 2006EE VLSI Design II - © Kia Bazargan 368 EE 5324 – VLSI Design II Kia Bazargan University of Minnesota Part IX: CORDIC Algorithms.
Distributed Arithmetic: Implementations and Applications
Copyright 2008 Koren ECE666/Koren Part.6a.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
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)
Ch. 21. Square-rootingSlide 1 VI Function Evaluation Topics in This Part Chapter 21 Square-Rooting Methods Chapter 22 The CORDIC Algorithms Chapter 23.
Prepared by: Hind J. Zourob Heba M. Matter Supervisor: Dr. Hatem El-Aydi Faculty Of Engineering Communications & Control Engineering.
3-1 Chapter 3 - Arithmetic Computer Architecture and Organization by M. Murdocca and V. Heuring © 2007 M. Murdocca and V. Heuring Computer Architecture.
Tightly coupled INS/GPS system using particle filter D0928- system architecture and math functions Part A - Final presentation Students: Royzman Danny.
A Bit-Serial Method of Improving Computational Efficiency of Dot-Products 1.
Efficient FPGA Implementation of QR
Implementation of MAC Assisted CORDIC engine on FPGA EE382N-4 Abhik Bhattacharya Mrinal Deo Raghunandan K R Samir Dutt.
07/19/2005 Arithmetic / Logic Unit – ALU Design Presentation F CSE : Introduction to Computer Architecture Slides by Gojko Babić.
Multiplication of signed-operands
1 Binary Coded Decimal Presented By Chung Wai Chow.
A Fast Hardware Approach for Approximate, Efficient Logarithm and Anti-logarithm Computation Suganth Paul Nikhil Jayakumar Sunil P. Khatri Department of.
ELEC692/04 course_des 1 ELEC 692 Special Topic VLSI Signal Processing Architecture Fall 2004 Chi-ying Tsui Department of Electrical and Electronic Engineering.
June 2007 Computer Arithmetic, Function EvaluationSlide 1 VI Function Evaluation Topics in This Part Chapter 21 Square-Rooting Methods Chapter 22 The CORDIC.
Arithmetic Logic Unit (ALU) Anna Kurek CS 147 Spring 2008.
Paper Reading - A New Approach to Pipeline FFT Processor Presenter:Chia-Hsin Chen, Yen-Chi Lee Mentor:Chenjo Instructor:Andy Wu.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU CORDIC (Coordinate rotation digital computer) Ref: Y. H. Hu, “CORDIC based VLSI architecture.
Floating-Point Divide and Square Root for Efficient FPGA Implementation of Image and Signal Processing Algorithms Xiaojun Wang, Miriam Leeser
4.7 Inverse Trig Functions. By the end of today, we will learn about….. Inverse Sine Function Inverse Cosine and Tangent Functions Composing Trigonometric.
CORDIC Algorithm COordinate Rotation DIgital Computer Method for Elementary Function Evaluation (e.g., sin(z), cos(z), tan -1 (y)) Originally Used for.
-BY KUSHAL KUNIGAL UNDER GUIDANCE OF DR. K.R.RAO. SPRING 2011, ELECTRICAL ENGINEERING DEPARTMENT, UNIVERSITY OF TEXAS AT ARLINGTON FPGA Implementation.
SOLVING TRIGONOMETRIC EQUATIONS Dr. Shildneck Spring, 2015.
CORDIC-Based Processor
CDA 3101 Spring 2016 Introduction to Computer Organization
CORDIC Algorithm COordinate Rotation DIgital Computer
Recursive Architectures for 2DLNS Multiplication RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 11 Recursive Architectures for 2DLNS.
Two’s and one’s complement arithmetic CLOCK ARITHMETIC.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU CORDIC (COordinate Rotation DIgital Computer) For Advanced VLSI and VLSI Signal Processing.
Chapter 8 Computer Arithmetic. 8.1 Unsigned Notation Non-negative notation  It treats every number as either zero or a positive value  Range: 0 to 2.
ELEC692 VLSI Signal Processing Architecture Lecture 12 Numerical Strength Reduction.
Reconfigurable Computing - Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound,
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003.
CSE 575 Computer Arithmetic Spring 2003 Mary Jane Irwin (www. cse. psu
Robust Low Power VLSI R obust L ow P ower VLSI CORDIC Implementation for a battery-less Body sensor Node L. Patricia Gonzalez G. Dept. of Electrical Engineering,
CORDIC (Coordinate rotation digital computer)
CORDIC Based 64-Point Radix-2 FFT Processor
CORDIC (Coordinate rotation digital computer)
UNIVERSITY OF MASSACHUSETTS Dept
UNIVERSITY OF MASSACHUSETTS Dept
Outline Introduction Floating Point Arithmetic Adder Multiplier.
UNIVERSITY OF MASSACHUSETTS Dept
CSE 575 Computer Arithmetic Spring 2003 Mary Jane Irwin (www. cse. psu
CSE 575 Computer Arithmetic Spring 2002 Mary Jane Irwin (www. cse. psu
Applications of Distributed Arithmetic to Digital Signal Processing:
UNIVERSITY OF MASSACHUSETTS Dept
UNIVERSITY OF MASSACHUSETTS Dept
C Model Sim (Fixed-Point) -A New Approach to Pipeline FFT Processor
UNIVERSITY OF MASSACHUSETTS Dept
UNIVERSITY OF MASSACHUSETTS Dept
UNIVERSITY OF MASSACHUSETTS Dept
Booth Recoding: Advantages and Disadvantages
Presentation transcript:

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Project Presentation Computing Multiplication & division using CORDIC in Visual DSP++ PROJECT BY Mohammad Waqas Arbab Waseem Abbas

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC OUTLINE Abstract Introduction Methodology Results & Discussion Conclusion/summary References

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Abstract What is “CORDIC” ? Coordinate Rotation Digital Computer. Three methods of CORDIC algo. linear, circular and hyperbolic For multiplication & div. linear method is used.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC WHY CORDIC ? CORDIC algorithms are efficient in terms of both computation time and hardware resources Dominates the implementation & hardware cost

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC HOW ? The CORDIC algorithm makes use of only shifters and adder blocks to compute these functions.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC INTRODUCTION Background ?  COordinate Rotational DIgital Computer  Jack E. Volder (1959)  Primary concern was trig functions  Extended by J. Walther in 1971  Used by most calculators today  Efficient shift add algorithm/ no mulitplies needed

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Comparison ? Simple Shift-and-add Operation. (2 adders+2 shifters v.s. 4 mul.+2 adder) CORDIC algorithms are efficient in terms of both computation time and hardware resources - and in most systems, these resources are normally a premium This algorithm uses only minimal hardware (adder and shift) for computation of all trigonometric and other function values. It consumes fewer resources than any other techniques and so the performance is high. Thus, almost all scientific calculators use the CORDIC algorithm in their calculations.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Application ? calculators digital-systems satellite microcontrollers Application to DSP algo.s (below) Linear transformation: - DFT, Chirp-Z transform, DHT, and FFT. Digital filters: - Orthogonal digital filters, and adaptive lattice filters. Matrix based digital signal processing algorithms: - QR factorization, with applications to Kalman filtering - Linear system solvers, such as Toeplitz and covariance system solvers,……,etc.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC USES ? – Linear Functions – Trigonometric Functions – Hyperbolic Functions – Square Rooting – Logarithms, Exponentials –The functions that can be evaluated using CORDIC methods are sine, cosine, tangent, inverse tangent, hyperbolic sine, hyperbolic cosine, hyperbolic tangent, inverse hyperbolic tangent, natural logarithm, natural exponential, square root, multiplication, division.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC METHODOLOGY Explanation of algo.? Embedding of elementary function evaluation as a generalized rotation operation. Decompose rotation operation into successive basic rotations. Each basic rotation can be realized with shift and add arithmetic operations.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Contd. A CORDIC algorithm for multiplication can be derived using a series representation for x as shown below From this, z is composed of shifted versions of y. The unknown value for z, may be found by driving x to zero 1 bit at a time. If the ith bit of x is nonzero, yi is right shifted by i bits and added to the current value of z. The ith bit is then removed from x by subtracting 2-i from x. If x is negative, the ith bit in the twos complement format would be removed by adding 2-i. In either case, when x has been driven to zero all bits have been examined and z contains the signed product of x and y correct to B bits.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Contd. multiply(x,y) { for (i=1; i=<B; i++) { if (x > 0) x = x - 2^(-i) z = z + y*2^(-i) else x = x + 2^(-i) z = z - y*2^(-i) } return(z) }

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC A CORDIC division algorithm is based on rewriting the equation z=x/y into the form x- y*z=0. If z is expanded into its series representation, the second version of the equation takes the form in Figure (a), which, after some manipulation, yields Figure (b). This final form of the equation shows that the quotient z may be estimated 1 bit at a time by driving x to zero using right- shifted versions of y. If the current residual is positive, the ith bit in z is set. Likewise, if the residual is negative the ith bit in z is cleared.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC divide(x,y) { for (i=1; i=<B; i++) { if (x > 0) x = x - y*2^(-i); z = z + 2^(-i); else x = x + y*2^(-i); z = z - 2^(-i); } return(z) }

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC X(i)Y(i) X-RegY-Reg +/- Barrel shifter X(i+1)Y(i+1) A Flow chart diagram of CORDIC

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC RESULTS Loading: "C:\Documents and Settings\arbab waseem abbas\My Documents\VisualDSP Projects\dsp_project\Debug\dsp_project.dxe"... Load complete. Breakpoint Hit at MULTIPLY DIVIDE Breakpoint Hit at Loading: "C:\Documents and Settings\arbab waseem abbas\My Documents\VisualDSP Projects\dsp_project\Debug\dsp_project.dxe"... Load complete. Breakpoint Hit at MULTIPLY DIVIDE Breakpoint Hit at

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC CONCLUSION CORDIC algorithms are an efficient method to compute many different functions Low area, high speed Used in calculators, DSPs, math-coprocessors and supercomputers. CORDIC saves more hardware cost. By the regularity, the CORDIC based architecture is very suitable for implementation with pipelined VLSI array processors. The utility of the CORDIC based architecture lies in its generality and flexibility.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Contd. Using CORDIC algorithms may allow a single chip solution where algorithms using the look-up table method may require a large ROM size or where power series calculations require a separate co-processor because of the computation time required.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC How to Improve ? Use Pipelined Architecture Improve the Performance of the Adder(redundant arithmetic, CSA) Reduce Iteration Number –High radix CORDIC. –Find a optimized shift sequence. –Improve the Scaling Operation.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC REFRENCES 1. Volder, Jack E., “The CORDIC Trignometric Computing Technique”, IRE Transactions Electronic Computers, vol. EC-8, pp , September Specker W. H., “A Class of Algorithms for Ln x, Exp x, Sin x, Cos x, Tan-1x and Cot-1x”, IEEE Transactions Electronic Computers, vol. EC-14, pp , Walther, J. S., “A Unified Algorithm For Elementary Functions”, 1971 Proceedings of the Joint Spring Computer Conference, pp , Jarvis, Pitts, “Implementing CORDIC Algorithms”, Dr. Dobb’s Journal, #169`, pp , October Dr Dobb’s official website.

Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using CORDIC Thanks for your patience Any queries?