A.R. Hurson 323 CS Building, Missouri S&T

Slides:



Advertisements
Similar presentations
Arithmetic in Computers Chapter 4 Arithmetic in Computers2 Outline Data representation integers Unsigned integers Signed integers Floating-points.
Advertisements

Datorteknik IntegerMulDiv bild 1 MIPS mul/div instructions Multiply: mult $2,$3Hi, Lo = $2 x $3;64-bit signed product Multiply unsigned: multu$2,$3Hi,
Datapath Functional Units. Outline  Comparators  Shifters  Multi-input Adders  Multipliers.
THE ARITHMETIC-LOGIC UNIT. BINARY HALF-ADDER BINARY HALF-ADDER condt Half adder InputOutput XYSC
Fixed-Point Arithmetics: Part I
EE466: VLSI Design Lecture 14: Datapath Functional Units.
Introduction to CMOS VLSI Design Datapath Functional Units
+ CS 325: CS Hardware and Software Organization and Architecture Integers and Arithmetic Part 4.
Copyright 2008 Koren ECE666/Koren Part.6a.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
1 Lecture 4: Arithmetic for Computers (Part 4) CS 447 Jason Bakos.
Multiplication.
Lecture 12: Computer Arithmetic Today’s topic –Numerical representations –Addition / Subtraction –Multiplication / Division 1.
Arithmetic for Computers
Multiplication CPSC 252 Computer Organization Ellen Walker, Hiram College.
Chapter 6-2 Multiplier Multiplier Next Lecture Divider
Computer Architecture Lecture 3: Logical circuits, computer arithmetics Piotr Bilski.
Computer Architecture and Organization Introduction.
ECE232: Hardware Organization and Design
Lec 13Systems Architecture1 Systems Architecture Lecture 13: Integer Multiplication and Division Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan.
 Recall grade school trick ◦ When multiplying by 9:  Multiply by 10 (easy, just shift digits left)  Subtract once ◦ E.g.  x 9 = x (10.
Sequential Multipliers Lecture 9. Required Reading Chapter 9, Basic Multiplication Scheme Chapter 10, High-Radix Multipliers Chapter 12.3, Bit-Serial.
Multiplication of signed-operands
L/O/G/O CPU Arithmetic Chapter 7 CS.216 Computer Architecture and Organization.
Lecture 6: Multiply, Shift, and Divide
05/03/2009CA&O Lecture 8,9,10 By Engr. Umbreen sabir1 Computer Arithmetic Computer Engineering Department.
Computer Arithmetic See Stallings Chapter 9 Sep 10, 2009
Topics covered: Arithmetic CSE243: Introduction to Computer Architecture and Hardware/Software Interface.
Csci 136 Computer Architecture II – Multiplication and Division
COMPUTER ARITHMETIC Arithmetic with Signed-2's Complement Numbers
Integer Operations Computer Organization and Assembly Language: Module 5.
C OMPUTER A RITHMETIC. I NTRODUCTION A processor has an separate unit that is known as ALU that executes arithmetic operations. Negative numbers may be.
Multipliers. More complicated than addition accomplished via shifting and addition More time and more area Multiplication What should be the length of.
Arithmetic Intro Computer Organization 1 Computer Science Dept Va Tech February 2008 © McQuain Multiplication Design 1.0 Multiplicand Shift left.
1 Lecture 5Multiplication and Division ECE 0142 Computer Organization.
More Binary Arithmetic - Multiplication
COMPUTER ARITHMETIC Arithmetic with Signed-2's Complement Numbers
Multiplication and Division basics
Array multiplier TU/e Processor Design 5Z032.
Computer Architecture & Operations I
Integer Multiplication and Division
MIPS mul/div instructions
Morgan Kaufmann Publishers
CSCI206 - Computer Organization & Programming
Morgan Kaufmann Publishers
Multipliers Multipliers play an important role in today’s digital signal processing and various other applications. The common multiplication method is.
Introduction to Micro Controllers & Embedded System Design Stored Program Machine Department of Electrical & Computer Engineering Missouri University.
CDA 3101 Spring 2016 Introduction to Computer Organization
Introduction to Micro Controllers & Embedded System Design Background to Module4 Department of Electrical & Computer Engineering Missouri University.
Topic 3c Integer Multiply and Divide
Lecture 5 Multiplication and Division
Unsigned Multiplication
CDA 3101 Summer 2007 Introduction to Computer Organization
ECE/CS 552: Integer Multipliers
Computer Organization and Design
Multiprocessor & Multicomputer
ECEG-3202 Computer Architecture and Organization
Multiplication More complicated than addition
UNIVERSITY OF MASSACHUSETTS Dept
Booth's Algorithm for 2's Complement Multiplication
Sequential Multipliers
UNIVERSITY OF MASSACHUSETTS Dept
CHAPTER 18 Circuits for Arithmetic Operations
Arithmetic Logic Unit A.R. Hurson Electrical and Computer Engineering Missouri University of Science & Technology A.R. Hurson.
CpE 5110 Principles of Computer Architecture: Arithmetic Logic Unit
Booth Recoding: Advantages and Disadvantages
1 Lecture 5Multiplication and Division ECE 0142 Computer Organization.
Computer Architecture
Presentation transcript:

A.R. Hurson 323 CS Building, Missouri S&T hurson@mst.edu CS 5803 Introduction to High Performance Computer Architecture: Arithmetic Logic Unit A.R. Hurson 323 CS Building, Missouri S&T hurson@mst.edu

Introduction to High Performance Computer Architecture Multiplication Multiplication can be performed as a sequence of repeated additions. A * B is interpreted as add A, B times. However, such a scheme is very inefficient with a time complexity of O(m) where m is the magnitude of B. A better approach to multiplication, add-and-shift, produces a time complexity of O(n) where n is the length of the B.

Add-and-shift — hardware configuration Introduction to High Performance Computer Architecture Add-and-shift — hardware configuration Multiplier and multiplicand are two n-bit unsigned numbers, Result is a 2n-bit number stored in an accumulator and multiplier registers. B AC Parallel Adder Q Least Significant Bit C out Multiplier Multiplicand Accumulator

Add-and-shift — Algorithm Introduction to High Performance Computer Architecture Add-and-shift — Algorithm In each iteration the least-significant bit of multiplier is checked; if one, then multiplicand is added to the accumulator and the contents of accumulator and multiplier is shifted right one position. if zero, just shift accumulator and multiplier to the right. See module3.background for additional discussion about Add-and-shift algorithm.

Multiplication — Booth's Algorithm Introduction to High Performance Computer Architecture Multiplication — Booth's Algorithm Booth's algorithm is an extension to the add-and-shift approach. In each iteration two bits of multiplier are being investigated and proper action(s) will be taken according to the following coding table: 00 no action shift right once 01 add multiplicand shift right once 10 sub multiplicand shift right once 11 no action shift right once See module3.background for more discussion about Booth’s algorithm.

Multiplication — Modified Booth's Algorithm Introduction to High Performance Computer Architecture Multiplication — Modified Booth's Algorithm Check 3 bits of multiplier at a time and take proper steps as follows: 000 no action shift right twice 001 add multiplicand shift right twice 010 add multiplicand shift right twice 011 add 2*multiplicand shift right twice 100 sub 2*multiplicand shift right twice 101 sub multiplicand shift right twice 110 sub multiplicand shift right twice 111 no action shift right twice

Multiplication — Booth's Algorithm Introduction to High Performance Computer Architecture Multiplication — Booth's Algorithm Any version of Booth's algorithm allows a sequence of consecutive 1s to be bypassed. Modified Booth's Algorithm is faster than Booth's Algorithm. Booth's Algorithm can be further extended by looking at 4 bits, (5 bits, ...) at a time and taking proper actions according to the proper encoding table.

Multiplication — Modified Booth's Algorithm Introduction to High Performance Computer Architecture Multiplication — Modified Booth's Algorithm