CORDIC (Coordinate rotation digital computer)

Slides:



Advertisements
Similar presentations
ADSP Lecture2 - Unfolding VLSI Signal Processing Lecture 2 Unfolding Transformation.
Advertisements

Cost-Effective Pipeline FFT/IFFT VLSI Architecture for DVB-H System Present by: Yuan-Chu Yu Chin-Teng Lin and Yuan-Chu Yu Department of Electrical and.
Distributed Arithmetic
1 Final project Speaker: Team 5 電機三 黃柏森 趙敏安 Mentor : 陳圓覺 Adviser: Prof. An-Yeu Wu Date: 2007/1/22.
ELEC692 VLSI Signal Processing Architecture Lecture 9 VLSI Architecture for Discrete Cosine Transform.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU Why Systolic Architecture ? VLSI Signal Processing 台灣大學電機系 吳安宇.
VLSI Design Spring03 UCSC By Prof Scott Wakefield Final Project By Shaoming Ding Jun Hu
Chapter 15 Digital Signal Processing
Digital Kommunikationselektronik TNE027 Lecture 3 1 Multiply-Accumulator (MAC) Compute Sum of Product (SOP) Linear convolution y[n] = f[n]*x[n] = Σ f[k]
Spring 2006EE VLSI Design II - © Kia Bazargan 368 EE 5324 – VLSI Design II Kia Bazargan University of Minnesota Part IX: CORDIC Algorithms.
EE466: VLSI Design Lecture 14: Datapath Functional Units.
Distributed Arithmetic: Implementations and Applications
Introduction to CMOS VLSI Design Datapath Functional Units
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU A New Algorithm to Compute the Discrete Cosine Transform VLSI Signal Processing 台灣大學電機系.
Real time DSP Professors: Eng. Julian Bruno Eng. Mariano Llamedo Soria.
Chapter 6-2 Multiplier Multiplier Next Lecture Divider
1 Miodrag Bolic ARCHITECTURES FOR EFFICIENT IMPLEMENTATION OF PARTICLE FILTERS Department of Electrical and Computer Engineering Stony Brook University.
A Bit-Serial Method of Improving Computational Efficiency of Dot-Products 1.
Department of Computer Systems Engineering, N-W.F.P. University of Engineering & Technology. DSP Presentation Computing Multiplication & division using.
Implementation of MAC Assisted CORDIC engine on FPGA EE382N-4 Abhik Bhattacharya Mrinal Deo Raghunandan K R Samir Dutt.
Digital Kommunikationselektronik TNE027 Lecture 2 1 FA x n –1 c n c n1- y n1– s n1– FA x 1 c 2 y 1 s 1 c 1 x 0 y 0 s 0 c 0 MSB positionLSB position Ripple-Carry.
June 2007 Computer Arithmetic, Function EvaluationSlide 1 VI Function Evaluation Topics in This Part Chapter 21 Square-Rooting Methods Chapter 22 The CORDIC.
RICE UNIVERSITY “Joint” architecture & algorithm designs for baseband signal processing Sridhar Rajagopal and Joseph R. Cavallaro Rice Center for Multimedia.
EE421, Fall 1998 Michigan Technological University Timothy J. Schulz 29-Sept, 1998EE421, Lecture 61 Lecture 6 - Sample Processing Methods l Basic building.
Paper Reading - A New Approach to Pipeline FFT Processor Presenter:Chia-Hsin Chen, Yen-Chi Lee Mentor:Chenjo Instructor:Andy Wu.
Z TRANSFORM AND DFT Z Transform
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU CORDIC (Coordinate rotation digital computer) Ref: Y. H. Hu, “CORDIC based VLSI architecture.
LIST OF EXPERIMENTS USING TMS320C5X Study of various addressing modes of DSP using simple programming examples Sampling of input signal and display Implementation.
Applications of Distributed Arithmetic to Digital Signal Processing:
Implementation of a noise subtraction algorithm using Verilog HDL University of Massachusetts, Amherst Department of Electrical & Computer Engineering,
CORDIC Algorithm COordinate Rotation DIgital Computer Method for Elementary Function Evaluation (e.g., sin(z), cos(z), tan -1 (y)) Originally Used for.
Implementing algorithms for advanced communication systems -- My bag of tricks Sridhar Rajagopal Electrical and Computer Engineering This work is supported.
Digital Signal Processing
1. Adaptive System Identification Configuration[2] The adaptive system identification is primarily responsible for determining a discrete estimation of.
CORDIC-Based Processor
Overview of Residue Number System (RNS) for Advanced VLSI Design and VLSI Signal Processing NTUEE 吳安宇.
CORDIC Algorithm COordinate Rotation DIgital Computer
Recursive Architectures for 2DLNS Multiplication RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 11 Recursive Architectures for 2DLNS.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU CORDIC (COordinate Rotation DIgital Computer) For Advanced VLSI and VLSI Signal Processing.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU Multirate Processing of Digital Signals (II): Short-Length FIR Filter VLSI Signal Processing.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU Brief Overview of Residue Number System (RNS) VLSI Signal Processing 台灣大學電機系 吳安宇.
FFT VLSI Implementation
VLSI SP Course 2001 台大電機吳安宇 1 Why Systolic Architecture ? H. T. Kung Carnegie-Mellon University.
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)
Para-CORDIC: Parallel CORDIC Rotation Algorithm and Architecture
DIGITAL SIGNAL PROCESSING ELECTRONICS
CSE477 VLSI Digital Circuits Fall 2003 Lecture 21: Multiplier Design
Multipliers Multipliers play an important role in today’s digital signal processing and various other applications. The common multiplication method is.
Adaptation Behavior of Pipelined Adaptive Filters
Subject Name: Digital Signal Processing Algorithms & Architecture
Brief Overview of Residue Number System (RNS)
A New Approach to Pipeline FFT Processor
Lecture #17 INTRODUCTION TO THE FAST FOURIER TRANSFORM ALGORITHM
Multiplier-less Multiplication by Constants
Applications of Distributed Arithmetic to Digital Signal Processing:
Z TRANSFORM AND DFT Z Transform
ESE532: System-on-a-Chip Architecture
UNIVERSITY OF MASSACHUSETTS Dept
C Model Sim (Fixed-Point) -A New Approach to Pipeline FFT Processor
Lecture 9 Digital VLSI System Design Laboratory
UNIVERSITY OF MASSACHUSETTS Dept
The Cooley-Tukey decimation-in-time algorithm
Real time signal processing
Booth Recoding: Advantages and Disadvantages
FFT VLSI Implementation
CSE 575 Computer Arithmetic Spring 2003 Mary Jane Irwin (www. cse. psu
Lecture #17 INTRODUCTION TO THE FAST FOURIER TRANSFORM ALGORITHM
Applications of Distributed Arithmetic to Digital Signal Processing:
Presentation transcript:

CORDIC (Coordinate rotation digital computer) For VLSI Signal Processing Course Ref: Y. H. Hu, “CORDIC based VLSI architecture for digital signal processing,” IEEE Signal Processing Mag., pp.16-35, July 1992. 2001/4/30

Rotation Operation You need: 4 multipliers. 2 adders. or ROM for Table Look-up

What is “CORDIC” ? COordinate Rotation DIgital Computer •Why do we use “CORDIC” ? MAC dominates the implementational cost in some DSP functions. The DSP approach, CORDIC, helps to save the hardware cost.

Basic Concept of The CORDIC To decompose the desired rotation angle (θ) into the weighted sum of a set of predefined elementary rotation angles (am(i)) Such that the rotation through each of them can be accomplished with simple shift-and-add operation.

Behavior of CORDIC V(0) V(1) V(3)

In General Case: In CORDIC Algorithm:

CORDIC Algorithm

Initiation:Given x(0),y(0),z(0) For i=0 to n-1 ,Do /*CORDIC iteration equation */ /*Angle updating equation*/ End i loop /*Scaling Operation (required for m=±1 only)*/

Basic processor for CORDIC X(i) Y(i) Basic processor for CORDIC a(n-1) a(1) a(0) X-Reg Y-Reg Barrel shifter Barrel shifter Z-reg +/- +/- Z(i+1) X(i+1) Y(i+1)

Modes of Operations Vector rotation mode (θ is given) : determined by the set of  The objective is to compute the final vector (Usually, we set z(0)= θ.) θ  = sign of z(i)

Modes of Operations (cont’d) Angle accumulation mode (θ is not given) The objective is to rotate the given initial vector back to x-axis ,and the angle can be accrued.(Now, we let z(0)=0.) V(0) θ X-axis  = - sign of x(i)·y(i) V(1)

Scaling Operation

Scaling Stage +/- +/- X(n) Y(n) X-Reg X(n) Y(n) Y-Reg Barrel shifter

Advantages and disadvantages Simple Shift-and-add Operation. (2 adders+2 shifters v.s. 4 mul.+2 adder) -It needs n iterations to obtain n-bit precision. -Slow carry-propagate addition. -Low throughput rate -Area consuming shifting operations.

How to improve CORDIC ? Use Pipelined Architecture Improve the Performance of the Adders (redundant arithmetic, CSA) Reduce Iteration Number High radix CORDIC. (e.g., Radix-4, Radix-8) Find a optimized shift sequence (e.g., AR-CORDIC) Improve the Scaling Operation – Canonical multiplier recoding – Force Km to 2.

Parallel and Pipelined Arrays Basic CORDIC Processor1 Processor2 Processor n+s x(0) y(0) Basic CORDIC Processor 1 2 n+s L A T C H

In General Case: In CORDIC Algorithm:

Generalized CORDIC Algorithm m0 , linear system ; m=1 , circular system ; m=-1 , hyperbolic system.

Different coordinates V(2) V(4) V(0) V(1) V(3) Different coordinates Circular V(0) V(2) V(1) V(3) Hyperbolic V(0) V(1) V(2) V(3) Linear

Initiation: Given x(0),y(0),z(0) For i=0 to n-1 ,Do /*CORDIC iteration equation */ /*Angle updating equation*/ End i loop /*Scaling Operation (required for m=±1 only)*/

Shift Sequence {s(m,i); 0in-1} Determine the convergence of the CORDIC iteration, as well as the magnitude of the scaling factor Km(n). m=0 or 1 , s=(m,i)=i m=-1 , s(-1,i)=1,2,3,4,4,5,….,12,13,14,14,.. An angle approximation error:

Application to DSP Algorithms 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.

FFT application -1

Butterfly unit + + - CORDIC processor -

Conclusions In some cases, CORDIC evaluates rotational functions more efficiently than MAC units. 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.