Cost/Performance Tradeoffs:
|
|
- Trevor Doyle
- 5 years ago
- Views:
Transcription
1 Cost/Performance Tradeoffs: a case study Digital Systems Architecture I. L10 - Multipliers 1
2 Binary Multiplication x a b n bits n bits EASY PROBLEM: design combinational circuit to multiply tiny (1-, 2-, 3-bit) operands... 2n bits since (2 n -1) 2 < 2 2n HARD PROBLEM: design circuit to multiply BIG (32-bit, 64-bit) numbers We can make big multipliers out of little ones! Engineering Principle: Exploit STRUCTURE in in problem. L10 - Multipliers 2
3 Making a 2n-bit multiplier using n-bit multipliers Given n-bit multipliers: a H a L a x b = ab n bits n bits 2n bits x b H b L Synthesize 2n-bit multipliers: x ab 4n bits a 2n bits b 2n bits a L b L a L b H a H b L a H b H ab L10 - Multipliers 3
4 Our Basis: n=1: minimalist starting point Multiplying two 1-bit numbers is pretty simple: a x b = 0 ab Of course, we could start with optimized combinational multipliers for larger operands; e.g. a 1 a 0 b 1 b bit Multiplier 4 c 3 c 2 c 1 c 0 the logic gets more complex, but some optimizations are possible... L10 - Multipliers 4
5 2n-bit by 2n-bit multiplication: Our induction step: 1. Divide multiplicands into n-bit pieces 2. Form 2n-bit partial products, using n-bit by n-bit multipliers. 3. Align appropriately 4. Add. a L b H REGROUP partial products - 2 additions rather than 3! a H a L x b H b a H b H a L b L L a H b L Induction: we can use the same structuring principle to build a 4n-bit multiplier from our newly-constructed 2n-bit ones... a b L10 - Multipliers 5
6 Brick Wall view of partial products Making 4n-bit multipliers from n-bit ones: 2 induction steps x a 3 a2 a1 a0 b 3 b 2 b 1 b 0 a 2 b 3 a 3 b 3 a 2 b 2 a 0 b 3 a 1 b 3 a 0 b 2 a 1 b 2 a 0 b 1 a 1 b 1 a 0 b 0 a 3 b 2 a 2 b 1 a 3 b 1 a 2 b 0 a 3 b 0 a 1 b 0 L10 - Multipliers 6
7 Multiplier Cookbook: Chapter 1 Given problem: x a 3 a2 a1 a0 b 3 b 2 b 1 b 0 Subassemblies: Partial Products Adders Step 1: Form (& arrange) Partial Products: a 0 b 3 a 1 b 3 a 0 b 2 a 2 b 3 a 1 b 2 a 0 b 1 a 3 b 3 a 2 b 2 a 1 b 1 a 0 b 0 a 3 b 2 a 2 b 1 a 1 b 0 MULT ADD a 3 b 1 a 2 b 0 a 3 b 0 Step 2: Sum L10 - Multipliers 7
8 Performance/Cost Analysis "Order Of" notation: "g(n) is of order f(n)" g(n) = Θ (f(n)) g(n) = Θ(f(n)) if there exist C 2 C 1 > 0, such that for all but finitely many integral n 0 c 1 f(n) g(n) c 2 f(n) Example: n 2 +2n+3 = Θ(n 2 ) since n 2 (n 2 +2n+3) 2n 2 "almost always" g(n) = O(f(n)) Θ(...) implies both inequalities; O(...) implies only the second. Partial Products: Things to Add: Adder Width: Hardware Cost: n 2 2n-2 n? = = = = Θ(n 2 ) Θ(n) Θ(n) Θ(n 2 ) Latency: Ο(n 2 )?? L10 - Multipliers 8
9 Observations: a 0 b 3 a 1 b 3 a 0 b 2 a 2 b 3 a 1 b 2 a 0 b 1 a 3 b 3 a 2 b 2 a 1 b 1 a 0 b 0 MULT ADD Θ(n 2 ) partial products. Θ(n 2 ) full adders. Hmmm. a 3 b 2 a 2 b 1 a 1 b 0 a 3 b 1 a 2 b 0 a 3 b 0 L10 - Multipliers 9
10 Repackaging Function Engineering Principle #2: #2: Put Put the the Solution where where the the Problem is. is. Θ(n 2 ) partial products. Θ(n 2 ) full adders. MULT ADD ab 0 3 ab 1 3 ab 0 2 ab 2 3 ab 1 2 ab 0 1 ab 3 3 ab ab ab 3 2 ab 2 1 ab 1 0 ab 3 1 ab 2 0 ab 3 0 ab 0 0 How about n 2 blocks, each doing a little multiplication and a little addition? L10 - Multipliers 10
11 b 3 b 2 ab 0 3 b 1 ab 1 3 ab 0 2 b 0 ab 2 3 ab 1 2 ab 0 1 ab 3 3 ab 2 2 ab 1 1 ab 0 0 ab 3 2 ab 2 1 ab 1 0 a 0 ab 3 1 ab 2 0 a 1 ab 3 0 a 2 a 3 C i+1 A i FA B i Goal: Array of Identical Multiplier Cells C i C k+2 S k+1 S k Single "brick" of brick-wall array... Forms partial product Adds to accumulating sum along with carry S k+1 S k Necessary Component: Full Adder Takes 2 addend bits plus carry bit. Produces sum and carry output bits. b i a j C k (A+B) i CASCADE to form an n-bit adder. L10 - Multipliers 11
12 Design of 1-bit multiplier "Brick": b 3 b 2 ab 0 3 ab 1 3 ab 0 2 ab 2 3 ab 1 2 ab 0 1 ab 3 3 ab ab ab 3 2 ab 2 1 ab 1 0 ab 3 1 ab 2 0 ab 3 0 a 2 a 3 ab 0 0 b 1 b 0 a 1 a 0 Brick design: AND gate forms 1x1 product 2-bit sum propagates from top to bottom Carry propagates to left Array Layout: operand bits bused diagonally Carry bits propagate right-to-left Sum bits propagate down C k+2 S k+1 0 FA FA S k+1 S k S k b i a j C k L10 - Multipliers 12
13 Latency revisited Here s our combinational multiplier: a 3 a 2 a 1 a 0 a0 b3 a1 b3 a2 b3 a3 b b a1 b1 a0 b0 3 1 a3 b b 2 b 1 b 0 What s its propagation delay? Naive (but valid) bound: O(n) addtions O(n) time for each addition Hence O(n 2 ) time required On closer inspection: Propagation only toward left, bottom Hence longest path bounded by length + width of array: O(n+n) = O(n)! L10 - Multipliers 13
14 Combinational Multiplier: Multiplier Cookbook: Chapter 2 a 3 + a 2 a 1 a 0 a0 b3 a1 b3 a2 b3 a3 b b a1 b1 a0 b0 3 1 a3 b b 2 b 1 b 0 Hardware for n by n bits: Latency: Throughput: Θ(n 2 ) Θ(n) Θ(1/n) L10 - Multipliers 14
15 Combinational Multiplier: best bang for the buck? Suppose we have LOTS of multiplications. Can we do better from a cost/performance standpoint? PIPELINING L10 - Multipliers 15
16 The Pipelining Bandwagon... where do I get on? WE HAVE: Pipeline rules - "well formed pipelines" Plenty of registers Demand for higher throughput. What do we do? Where do we define stages? a 3 a 2 a 0 b 3 b a 1 a0 b3 a1 b3 a0 b2 a2 b3 a1 b2 a0 b1 2 b 1 a3 b3 a2 b2 a1 b1 a0 b0 a3 b2 a2 b1 a1 b0 a3 b1 a2 b0 a3 b0 b 0 L10 - Multipliers 16
17 Stupid Pipeline Tricks a0 b3 a2 b3 a1 b3 a1 b2 a0 b2 a0 b1 gottreak that long carry chain! a3 b3 a2 b2 a1 b1 a0 b0 a3 b2 a2 b1 a1 b0 a3 b1 a3 b0 a2 b0 Stages: Θ(n) Clock Period: Θ(n) Hardware cost for n by n bits: Θ(n 2 ) Latency: Θ(n 2 ) Throughput: Θ( 1/n ) L10 - Multipliers 17
18 Even Stupider Pipeline Tricks a3 b3 a2 b3 a3 b2 a1 b3 a2 b2 a0 b3 a0 b a1 b1 2 1 a3 b WORSE idea: Doesn t break long combinational paths NOT a well-formed pipeline different register counts on alternative paths... data crosses stage boundaries in both directions! Back to basics: what s the point of pipelining, anyhow? L10 - Multipliers 18
19 Breaking O(n) combinational paths LONG PATHS go down, to left: Break array into diagonal slices Segment every long combinational path a 3 a 2 a3 b3 a 0 b 3 b 2 a a0 b 1 3 a0 b2 a1 b3 a0 b1 a1 b2 a0 b0 a2 b3 a1 b1 a2 b2 a1 b0 a3 b2 a3 b1 a3 b b 1 b 0 GOAL: Θ (n) stages; Θ (1) clock period! L10 - Multipliers 19
20 Multiplier Cookbook: Chapter 3 Stages: Clock Period: Hardware cost for n by n bits: Latency: Well-formed pipeline (careful!) Constant (high!) throughput, independently of operand size.... but suppose we don t need the throughput? a 3 Θ (n) Θ (1) Θ (n 2 ) Θ (n) Throughput: Θ (1) a 2 a3 b3 a 0 b 3 b 2 a a0 b 1 3 a0 b2 a1 b3 a0 b1 a1 b2 a0 b0 a2 b3 a1 b1 a2 b2 a1 b0 a3 b2 a3 b1 a3 b b 1 b 0 L10 - Multipliers 20
21 Moving down the cost curve... Suppose we have INFREQUENT multiplications... pipelining doesn t help us. Can we do better from a cost/performance standpoint? Hmmm, are all these extras really needed? a 3 a 0 b 2 a 1 a 0 b 3 a 0 b 2 a 2 a 1 b 3 a 0 b 1 a 1 b 2 a 0 b 0 a 2 b 3 a 1 b 1 a 2 b 2 a 1 b 0 a 3 b 3 a 2 b 1 a 3 b 2 a 2 b 0 a 3 b b 1 b 0 L10 - Multipliers 21
22 Multiplier Cookbook: Chapter 4 a i b 3 b 2 b 1 ai b3 ai b2 ai b1 ai b0 b 0 Sequential Multiplier: Re-uses a single n-bit slice to emulate each pipeline stage a operand entered serially Lots of details to be filled in... Stages: Clock Period: Hardware cost for n by n bits: Latency: Throughput: 1 Θ (1) (constant!) Θ (n) Θ (n) Θ (1/n) L10 - Multipliers 22
23 (Ridiculous?) Extremes Dept... Cost minimization: how far can we go? a i b 3 b 2 b 1 i 3 i 2 i 1 i 0 b 0 Suppose we want to minimize hardware (at any cost) Consider bit-serial! Form and add 1-bit partial product per clock Reuse single brick for each bit b j of slice; Re-use slice for each bit of a operand L10 - Multipliers 23
24 Multiplier Cookbook: Chapter 5 Bit Serial multiplier: Re-uses a single brick to emulate an n-bit slice both operands entered serially O(n 2 ) clock cycles required Needs additional storage (typically from existing registers) a i b 3 b 2 b 1 ai b3 i 2 i 1 i 0 b 0 Stages: Clock Period: Hardware cost for n by n bits: Latency: Throughput: Θ (1 n ) Θ (1) (constant!) Θ (1) +? Θ (n 2 ) Θ (1/n 2 ) L10 - Multipliers 24
25 Summary: Scheme: $ Latency Thruput Combinational Θ(n 2 ) Θ(n) Θ(1/n) N-pipe Θ(n 2 ) Θ(n) Θ(1) Slice-serial Θ(n) Θ(n) Θ(1/n) Bit-serial Θ(1) * Θ(n 2 ) Θ(1/n 2 ) Lots more multiplier technology: fast adders, Booth Encoding, column compression,... L10 - Multipliers 25
6.004 Computation Structures Spring 2009
MIT OpenCourseWre http://ocw.mit.edu 6.004 Computtion Structures Spring 009 For informtion out citing these mterils or our Terms of Use, visit: http://ocw.mit.edu/terms. Cost/Performnce Trdeoffs: cse study
More information8. Design Tradeoffs x Computation Structures Part 1 Digital Circuits. Copyright 2015 MIT EECS
8. Design Tradeoffs 6.004x Computation Structures Part 1 Digital Circuits Copyright 2015 MIT EECS 6.004 Computation Structures L08: Design Tradeoffs, Slide #1 There are a large number of implementations
More information8. Design Tradeoffs x Computation Structures Part 1 Digital Circuits. Copyright 2015 MIT EECS
8. Design Tradeoffs 6.004x Computation Structures Part 1 Digital Circuits Copyright 2015 MIT EECS 6.004 Computation Structures L08: Design Tradeoffs, Slide #1 There are a large number of implementations
More informationTree and Array Multipliers Ivor Page 1
Tree and Array Multipliers 1 Tree and Array Multipliers Ivor Page 1 11.1 Tree Multipliers In Figure 1 seven input operands are combined by a tree of CSAs. The final level of the tree is a carry-completion
More informationComputer Architecture 10. Fast Adders
Computer Architecture 10 Fast s Ma d e wi t h Op e n Of f i c e. o r g 1 Carry Problem Addition is primary mechanism in implementing arithmetic operations Slow addition directly affects the total performance
More informationLecture 8: Sequential Multipliers
Lecture 8: Sequential Multipliers ECE 645 Computer Arithmetic 3/25/08 ECE 645 Computer Arithmetic Lecture Roadmap Sequential Multipliers Unsigned Signed Radix-2 Booth Recoding High-Radix Multiplication
More informationBinary Multipliers. Reading: Study Chapter 3. The key trick of multiplication is memorizing a digit-to-digit table Everything else was just adding
Binary Multipliers The key trick of multiplication is memorizing a digit-to-digit table Everything else was just adding 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 2 2 4 6 8 2 4 6 8 3 3 6 9 2 5 8 2 24 27 4 4 8 2 6
More informationDatapath Component Tradeoffs
Datapath Component Tradeoffs Faster Adders Previously we studied the ripple-carry adder. This design isn t feasible for larger adders due to the ripple delay. ʽ There are several methods that we could
More informationCarry Look Ahead Adders
Carry Look Ahead Adders Lesson Objectives: The objectives of this lesson are to learn about: 1. Carry Look Ahead Adder circuit. 2. Binary Parallel Adder/Subtractor circuit. 3. BCD adder circuit. 4. Binary
More informationChapter 5 Arithmetic Circuits
Chapter 5 Arithmetic Circuits SKEE2263 Digital Systems Mun im/ismahani/izam {munim@utm.my,e-izam@utm.my,ismahani@fke.utm.my} February 11, 2016 Table of Contents 1 Iterative Designs 2 Adders 3 High-Speed
More informationLogic Design II (17.342) Spring Lecture Outline
Logic Design II (17.342) Spring 2012 Lecture Outline Class # 10 April 12, 2012 Dohn Bowden 1 Today s Lecture First half of the class Circuits for Arithmetic Operations Chapter 18 Should finish at least
More informationECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering TIMING ANALYSIS Overview Circuits do not respond instantaneously to input changes
More informationMidterm Exam Two is scheduled on April 8 in class. On March 27 I will help you prepare Midterm Exam Two.
Announcements Midterm Exam Two is scheduled on April 8 in class. On March 27 I will help you prepare Midterm Exam Two. Chapter 5 1 Chapter 3: Part 3 Arithmetic Functions Iterative combinational circuits
More informationWhat s the Deal? MULTIPLICATION. Time to multiply
What s the Deal? MULTIPLICATION Time to multiply Multiplying two numbers requires a multiply Luckily, in binary that s just an AND gate! 0*0=0, 0*1=0, 1*0=0, 1*1=1 Generate a bunch of partial products
More informationDIGITAL TECHNICS. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute
DIGITAL TECHNICS Dr. Bálint Pődör Óbuda University, Microelectronics and Technology Institute 4. LECTURE: COMBINATIONAL LOGIC DESIGN: ARITHMETICS (THROUGH EXAMPLES) 2016/2017 COMBINATIONAL LOGIC DESIGN:
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 informationLogic. Combinational. inputs. outputs. the result. system can
Digital Electronics Combinational Logic Functions Digital logic circuits can be classified as either combinational or sequential circuits. A combinational circuit is one where the output at any time depends
More informationCOMBINATIONAL LOGIC FUNCTIONS
COMBINATIONAL LOGIC FUNCTIONS Digital logic circuits can be classified as either combinational or sequential circuits. A combinational circuit is one where the output at any time depends only on the present
More informationDigital Logic: Boolean Algebra and Gates. Textbook Chapter 3
Digital Logic: Boolean Algebra and Gates Textbook Chapter 3 Basic Logic Gates XOR CMPE12 Summer 2009 02-2 Truth Table The most basic representation of a logic function Lists the output for all possible
More informationLogic and Computer Design Fundamentals. Chapter 5 Arithmetic Functions and Circuits
Logic and Computer Design Fundamentals Chapter 5 Arithmetic Functions and Circuits Arithmetic functions Operate on binary vectors Use the same subfunction in each bit position Can design functional block
More informationA COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER. Jesus Garcia and Michael J. Schulte
A COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER Jesus Garcia and Michael J. Schulte Lehigh University Department of Computer Science and Engineering Bethlehem, PA 15 ABSTRACT Galois field arithmetic
More informationEECS150 - Digital Design Lecture 24 - Arithmetic Blocks, Part 2 + Shifters
EECS150 - Digital Design Lecture 24 - Arithmetic Blocks, Part 2 + Shifters April 15, 2010 John Wawrzynek 1 Multiplication a 3 a 2 a 1 a 0 Multiplicand b 3 b 2 b 1 b 0 Multiplier X a 3 b 0 a 2 b 0 a 1 b
More informationVectorized 128-bit Input FP16/FP32/ FP64 Floating-Point Multiplier
Vectorized 128-bit Input FP16/FP32/ FP64 Floating-Point Multiplier Espen Stenersen Master of Science in Electronics Submission date: June 2008 Supervisor: Per Gunnar Kjeldsberg, IET Co-supervisor: Torstein
More informationSerial Parallel Multiplier Design in Quantum-dot Cellular Automata
Serial Parallel Multiplier Design in Quantum-dot Cellular Automata Heumpil Cho and Earl E. Swartzlander, Jr. Application Specific Processor Group Department of Electrical and Computer Engineering The University
More informationCPE100: Digital Logic Design I
Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu CPE100: Digital Logic Design I Final Review http://www.ee.unlv.edu/~b1morris/cpe100/ 2 Logistics Tuesday Dec 12 th 13:00-15:00 (1-3pm) 2 hour
More informationCOMPUTERS ORGANIZATION 2ND YEAR COMPUTE SCIENCE MANAGEMENT ENGINEERING UNIT 3 - ARITMETHIC-LOGIC UNIT JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ
OMUTERS ORGANIZATION 2ND YEAR OMUTE SIENE MANAGEMENT ENGINEERING UNIT 3 - ARITMETHI-LOGI UNIT JOSÉ GARÍA RODRÍGUEZ JOSÉ ANTONIO SERRA ÉREZ Tema 3. La Unidad entral de roceso. A.L.U. Arithmetic Logic Unit
More informationLecture 8. Sequential Multipliers
Lecture 8 Sequential Multipliers Required Reading Behrooz Parhami, Computer Arithmetic: Algorithms and Hardware Design Chapter 9, Basic Multiplication Scheme Chapter 10, High-Radix Multipliers Chapter
More informationSystems I: Computer Organization and Architecture
Systems I: Computer Organization and Architecture Lecture 6 - Combinational Logic Introduction A combinational circuit consists of input variables, logic gates, and output variables. The logic gates accept
More informationLecture 22 Chapters 3 Logic Circuits Part 1
Lecture 22 Chapters 3 Logic Circuits Part 1 LC-3 Data Path Revisited How are the components Seen here implemented? 5-2 Computing Layers Problems Algorithms Language Instruction Set Architecture Microarchitecture
More informationDesign of Sequential Circuits
Design of Sequential Circuits Seven Steps: Construct a state diagram (showing contents of flip flop and inputs with next state) Assign letter variables to each flip flop and each input and output variable
More informationCS/COE 1501 cs.pitt.edu/~bill/1501/ Integer Multiplication
CS/COE 1501 cs.pitt.edu/~bill/1501/ Integer Multiplication Integer multiplication Say we have 5 baskets with 8 apples in each How do we determine how many apples we have? Count them all? That would take
More informationNovel Bit Adder Using Arithmetic Logic Unit of QCA Technology
Novel Bit Adder Using Arithmetic Logic Unit of QCA Technology Uppoju Shiva Jyothi M.Tech (ES & VLSI Design), Malla Reddy Engineering College For Women, Secunderabad. Abstract: Quantum cellular automata
More informationLogic and Computer Design Fundamentals. Chapter 8 Sequencing and Control
Logic and Computer Design Fundamentals Chapter 8 Sequencing and Control Datapath and Control Datapath - performs data transfer and processing operations Control Unit - Determines enabling and sequencing
More informationEECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary
EECS50 - Digital Design Lecture - Shifters & Counters February 24, 2003 John Wawrzynek Spring 2005 EECS50 - Lec-counters Page Register Summary All registers (this semester) based on Flip-flops: q 3 q 2
More informationDesign of Arithmetic Logic Unit (ALU) using Modified QCA Adder
Design of Arithmetic Logic Unit (ALU) using Modified QCA Adder M.S.Navya Deepthi M.Tech (VLSI), Department of ECE, BVC College of Engineering, Rajahmundry. Abstract: Quantum cellular automata (QCA) is
More informationLOGIC CIRCUITS. Basic Experiment and Design of Electronics
Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Outline Combinational logic circuits Output
More informationCounters. We ll look at different kinds of counters and discuss how to build them
Counters We ll look at different kinds of counters and discuss how to build them These are not only examples of sequential analysis and design, but also real devices used in larger circuits 1 Introducing
More informationChapter 4. Combinational: Circuits with logic gates whose outputs depend on the present combination of the inputs. elements. Dr.
Chapter 4 Dr. Panos Nasiopoulos Combinational: Circuits with logic gates whose outputs depend on the present combination of the inputs. Sequential: In addition, they include storage elements Combinational
More informationReduced-Area Constant-Coefficient and Multiple-Constant Multipliers for Xilinx FPGAs with 6-Input LUTs
Article Reduced-Area Constant-Coefficient and Multiple-Constant Multipliers for Xilinx FPGAs with 6-Input LUTs E. George Walters III Department of Electrical and Computer Engineering, Penn State Erie,
More informationComputer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Digital Logic
Computer Science 324 Computer Architecture Mount Holyoke College Fall 2007 Topic Notes: Digital Logic Our goal for the next few weeks is to paint a a reasonably complete picture of how we can go from transistor
More informationEECS150 - Digital Design Lecture 25 Shifters and Counters. Recap
EECS150 - Digital Design Lecture 25 Shifters and Counters Nov. 21, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof. John
More informationDigital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.
Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Arithmetic Circuits January, 2003 1 A Generic Digital Processor MEM ORY INPUT-OUTPUT CONTROL DATAPATH
More informationCh 7. Finite State Machines. VII - Finite State Machines Contemporary Logic Design 1
Ch 7. Finite State Machines VII - Finite State Machines Contemporary Logic esign 1 Finite State Machines Sequential circuits primitive sequential elements combinational logic Models for representing sequential
More information10/12/2016. An FSM with No Inputs Moves from State to State. ECE 120: Introduction to Computing. Eventually, the States Form a Loop
University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering An FSM with No Inputs Moves from State to State What happens if an FSM has no inputs? ECE 120: Introduction to Computing
More informationLOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D.
Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Digital IC packages TTL (transistor-transistor
More information9. Datapath Design. Jacob Abraham. Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017
9. Datapath Design Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017 October 2, 2017 ECE Department, University of Texas at Austin
More informationComputers also need devices capable of Storing data and information Performing mathematical operations on such data
Sequential Machines Introduction Logic devices examined so far Combinational Output function of input only Output valid as long as input true Change input change output Computers also need devices capable
More informationDesign at the Register Transfer Level
Week-7 Design at the Register Transfer Level Algorithmic State Machines Algorithmic State Machine (ASM) q Our design methodologies do not scale well to real-world problems. q 232 - Logic Design / Algorithmic
More informationCombinational Logic Design Combinational Functions and Circuits
Combinational Logic Design Combinational Functions and Circuits Overview Combinational Circuits Design Procedure Generic Example Example with don t cares: BCD-to-SevenSegment converter Binary Decoders
More informationBinary addition by hand. Adding two bits
Chapter 3 Arithmetic is the most basic thing you can do with a computer We focus on addition, subtraction, multiplication and arithmetic-logic units, or ALUs, which are the heart of CPUs. ALU design Bit
More informationArithmetic Circuits-2
Arithmetic Circuits-2 Multipliers Array multipliers Shifters Barrel shifter Logarithmic shifter ECE 261 Krish Chakrabarty 1 Binary Multiplication M-1 X = X i 2 i i=0 Multiplicand N-1 Y = Y i 2 i i=0 Multiplier
More informationModels for representing sequential circuits
Sequential Circuits Models for representing sequential circuits Finite-state machines (Moore and Mealy) Representation of memory (states) Changes in state (transitions) Design procedure State diagrams
More informationArithmetic Circuits How to add and subtract using combinational logic Setting flags Adding faster
rithmetic Circuits Didn t I learn how to do addition in second grade? UNC courses aren t what they used to be... 01011 +00101 10000 Finally; time to build some serious functional blocks We ll need a lot
More informationLatches. October 13, 2003 Latches 1
Latches The second part of CS231 focuses on sequential circuits, where we add memory to the hardware that we ve already seen. Our schedule will be very similar to before: We first show how primitive memory
More informationCS470: Computer Architecture. AMD Quad Core
CS470: Computer Architecture Yashwant K. Malaiya, Professor malaiya@cs.colostate.edu AMD Quad Core 1 Architecture Layers Building blocks Gates, flip-flops Functional bocks: Combinational, Sequential Instruction
More informationComputer Architecture. ESE 345 Computer Architecture. Design Process. CA: Design process
Computer Architecture ESE 345 Computer Architecture Design Process 1 The Design Process "To Design Is To Represent" Design activity yields description/representation of an object -- Traditional craftsman
More informationELEN Electronique numérique
ELEN0040 - Electronique numérique Patricia ROUSSEAUX Année académique 2014-2015 CHAPITRE 3 Combinational Logic Circuits ELEN0040 3-4 1 Combinational Functional Blocks 1.1 Rudimentary Functions 1.2 Functions
More information211: Computer Architecture Summer 2016
211: Computer Architecture Summer 2016 Liu Liu Topic: Storage Project3 Digital Logic - Storage: Recap - Review: cache hit rate - Project3 - Digital Logic: - truth table => SOP - simplification: Boolean
More informationCS 140 Lecture 14 Standard Combinational Modules
CS 14 Lecture 14 Standard Combinational Modules Professor CK Cheng CSE Dept. UC San Diego Some slides from Harris and Harris 1 Part III. Standard Modules A. Interconnect B. Operators. Adders Multiplier
More informationDigital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.
Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Arithmetic Circuits January, 2003 1 A Generic Digital Processor MEMORY INPUT-OUTPUT CONTROL DATAPATH
More informationHardware Design I Chap. 4 Representative combinational logic
Hardware Design I Chap. 4 Representative combinational logic E-mail: shimada@is.naist.jp Already optimized circuits There are many optimized circuits which are well used You can reduce your design workload
More informationVLSI Signal Processing
VLSI Signal Processing Lecture 1 Pipelining & Retiming ADSP Lecture1 - Pipelining & Retiming (cwliu@twins.ee.nctu.edu.tw) 1-1 Introduction DSP System Real time requirement Data driven synchronized by data
More informationChapter 2 Basic Arithmetic Circuits
Chapter 2 Basic Arithmetic Circuits This chapter is devoted to the description of simple circuits for the implementation of some of the arithmetic operations presented in Chap. 1. Specifically, the design
More informationCprE 281: Digital Logic
CprE 281: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Synchronous Sequential Circuits Basic Design Steps CprE 281: Digital Logic Iowa State University, Ames,
More information14:332:231 DIGITAL LOGIC DESIGN
4:332:23 DIGITAL LOGIC DEIGN Ivan Marsic, Rutgers University Electrical & Computer Engineering Fall 23 Lecture #4: Adders, ubtracters, and ALUs Vector Binary Adder [Wakerly 4 th Ed., ec. 6., p. 474] ingle
More informationCSE370 HW6 Solutions (Winter 2010)
SE370 HW6 Solutions (Winter 2010) 1. L2e, 6.10 For this problem we are given a blank waveform with clock and input and asked to draw out the how different flip-flops and latches would behave. LK a) b)
More informationArithmetic Circuits Didn t I learn how to do addition in the second grade? UNC courses aren t what they used to be...
rithmetic Circuits Didn t I learn how to do addition in the second grade? UNC courses aren t what they used to be... + Finally; time to build some serious functional blocks We ll need a lot of boxes The
More informationCost/Performance Tradeoff of n-select Square Root Implementations
Australian Computer Science Communications, Vol.22, No.4, 2, pp.9 6, IEEE Comp. Society Press Cost/Performance Tradeoff of n-select Square Root Implementations Wanming Chu and Yamin Li Computer Architecture
More informationCombinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan
Combinational Logic Mantıksal Tasarım BBM23 section instructor: Ufuk Çelikcan Classification. Combinational no memory outputs depends on only the present inputs expressed by Boolean functions 2. Sequential
More informationDigital Design for Multiplication
Digital Design for Multiplication Norman Matloff October 15, 2003 c 2003, N.S. Matloff 1 Overview A cottage industry exists in developing fast digital logic to perform arithmetic computations. Fast addition,
More informationMedian architecture by accumulative parallel counters
Median architecture by accumulative parallel counters Article Accepted Version Cadenas Medina, J., Megson, G. M. and Sherratt, S. (2015) Median architecture by accumulative parallel counters. IEEE Transactions
More informationEE141- Spring 2004 Digital Integrated Circuits
EE141- pring 2004 Digital Integrated ircuits Lecture 19 Dynamic Logic - Adders (that is wrap-up) 1 Administrative tuff Hw 6 due on Th No lab this week Midterm 2 next week Project 2 to be launched week
More informationAdders, subtractors comparators, multipliers and other ALU elements
CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Adders 2 Circuit Delay Transistors have instrinsic resistance and capacitance
More informationAdders, subtractors comparators, multipliers and other ALU elements
CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Instructor: Mohsen Imani UC San Diego Slides from: Prof.Tajana Simunic Rosing
More informationClass Website:
ECE 20B, Winter 2003 Introduction to Electrical Engineering, II LECTURE NOTES #5 Instructor: Andrew B. Kahng (lecture) Email: abk@ece.ucsd.edu Telephone: 858-822-4884 office, 858-353-0550 cell Office:
More informationEECS150 - Digital Design Lecture 18 - Counters
EECS150 - Digital Design Lecture 18 - Counters October 24, 2002 John Wawrzynek Fall 2002 EECS150 - Lec18-counters Page 1 Counters Special sequential circuits (FSMs) that sequence though a set outputs.
More informationEECS150 - Digital Design Lecture 18 - Counters
EECS50 - Digital Design Lecture 8 - Counters October 24, 2002 John Wawrzynek Fall 2002 EECS50 - Lec8-counters Page Counters Special sequential circuits (FSMs) that sequence though a set outputs. Examples:
More informationIntroduction to Digital Logic
Introduction to Digital Logic Lecture 15: Comparators EXERCISES Mark Redekopp, All rights reserved Adding Many Bits You know that an FA adds X + Y + Ci Use FA and/or HA components to add 4 individual bits:
More informationEE40 Lec 15. Logic Synthesis and Sequential Logic Circuits
EE40 Lec 15 Logic Synthesis and Sequential Logic Circuits Prof. Nathan Cheung 10/20/2009 Reading: Hambley Chapters 7.4-7.6 Karnaugh Maps: Read following before reading textbook http://www.facstaff.bucknell.edu/mastascu/elessonshtml/logic/logic3.html
More informationDSP Configurations. responded with: thus the system function for this filter would be
DSP Configurations In this lecture we discuss the different physical (or software) configurations that can be used to actually realize or implement DSP functions. Recall that the general form of a DSP
More informationCMPEN 411 VLSI Digital Circuits Spring Lecture 19: Adder Design
CMPEN 411 VLSI Digital Circuits Spring 2011 Lecture 19: Adder Design [Adapted from Rabaey s Digital Integrated Circuits, Second Edition, 2003 J. Rabaey, A. Chandrakasan, B. Nikolic] Sp11 CMPEN 411 L19
More informationEECS150 - Digital Design Lecture 23 - FSMs & Counters
EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?
More informationFundamentals of Digital Design
Fundamentals of Digital Design Digital Radiation Measurement and Spectroscopy NE/RHP 537 1 Binary Number System The binary numeral system, or base-2 number system, is a numeral system that represents numeric
More informationArithmetic Circuits-2
Arithmetic Circuits-2 Multipliers Array multipliers Shifters Barrel shifter Logarithmic shifter ECE 261 Krish Chakrabarty 1 Binary Multiplication M-1 X = X i 2 i i=0 Multiplicand N-1 Y = Y i 2 i i=0 Multiplier
More information14:332:231 DIGITAL LOGIC DESIGN. 2 s-complement Representation
4:332:23 DIGITAL LOGIC DESIGN Ivan Marsic, Rutgers University Electrical & Computer Engineering Fall 203 Lecture #3: Addition, Subtraction, Multiplication, and Division 2 s-complement Representation RECALL
More informationLogic BIST. Sungho Kang Yonsei University
Logic BIST Sungho Kang Yonsei University Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2 Built In Self Test Test/ Normal Input Pattern
More informationNCU EE -- DSP VLSI Design. Tsung-Han Tsai 1
NCU EE -- DSP VLSI Design. Tsung-Han Tsai 1 Multi-processor vs. Multi-computer architecture µp vs. DSP RISC vs. DSP RISC Reduced-instruction-set Register-to-register operation Higher throughput by using
More informationEECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters)
EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters) March 19&21, 2002 John Wawrzynek Spring 2002 EECS150 - Lec13-seq3 version 2 Page 1 Counters Special sequential circuits (FSMs) that
More informationReview. EECS Components and Design Techniques for Digital Systems. Lec 18 Arithmetic II (Multiplication) Computer Number Systems
Review EE 5 - omponents and Design Techniques for Digital ystems Lec 8 rithmetic II (Multiplication) David uller Electrical Engineering and omputer ciences University of alifornia, Berkeley http://www.eecs.berkeley.edu/~culler
More informationDE58/DC58 LOGIC DESIGN DEC 2014
Q.2 a. In a base-5 number system, 3 digit representations is used. Find out (i) Number of distinct quantities that can be represented.(ii) Representation of highest decimal number in base-5. Since, r=5
More informationUNIT III Design of Combinational Logic Circuits. Department of Computer Science SRM UNIVERSITY
UNIT III Design of ombinational Logic ircuits Department of omputer Science SRM UNIVERSITY Introduction to ombinational ircuits Logic circuits for digital systems may be ombinational Sequential combinational
More information課程名稱 : 數位邏輯設計 P-1/ /6/11
課程名稱 : 數位邏輯設計 P-1/55 2012/6/11 Textbook: Digital Design, 4 th. Edition M. Morris Mano and Michael D. Ciletti Prentice-Hall, Inc. 教師 : 蘇慶龍 INSTRUCTOR : CHING-LUNG SU E-mail: kevinsu@yuntech.edu.tw Chapter
More informationMemory, Latches, & Registers
Memory, Latches, & Registers 1) Structured Logic Arrays 2) Memory Arrays 3) Transparent Latches 4) How to save a few bucks at toll booths 5) Edge-triggered Registers L13 Memory 1 General Table Lookup Synthesis
More informationEECS150 - Digital Design Lecture 16 Counters. Announcements
EECS150 - Digital Design Lecture 16 Counters October 20, 2011 Elad Alon Electrical Engineering and Computer Sciences University of California, Berkeley http://www-inst.eecs.berkeley.edu/~cs150 Fall 2011
More informationMultiplication of signed-operands
Multiplication of signed-operands Recall we discussed multiplication of unsigned numbers: Combinatorial array multiplier. Sequential multiplier. Need an approach that works uniformly with unsigned and
More informationELCT201: DIGITAL LOGIC DESIGN
ELCT201: DIGITAL LOGIC DESIGN Dr. Eng. Haitham Omran, haitham.omran@guc.edu.eg Dr. Eng. Wassim Alexan, wassim.joseph@guc.edu.eg Following the slides of Dr. Ahmed H. Madian Lecture 10 محرم 1439 ه Winter
More informationDecoding A Counter. svbitec.wordpress.com 1
ecoding A ounter ecoding a counter involves determining which state in the sequence the counter is in. ifferentiate between active-high and active-low decoding. Active-HIGH decoding: output HIGH if the
More informationCS/EE 181a 2008/09 Lecture 4
CS/EE 181a 28/9 Lecture 4 General topic of today s lecture: Logic Optimization Karnaugh maps. Quine-McCluskey tabulation method (not in detail). Non series-parallel networks (some care is required). Reference
More informationCMP 334: Seventh Class
CMP 334: Seventh Class Performance HW 5 solution Averages and weighted averages (review) Amdahl's law Ripple-carry adder circuits Binary addition Half-adder circuits Full-adder circuits Subtraction, negative
More informationSample Test Paper - I
Scheme G Sample Test Paper - I Course Name : Computer Engineering Group Marks : 25 Hours: 1 Hrs. Q.1) Attempt any THREE: 09 Marks a) Define i) Propagation delay ii) Fan-in iii) Fan-out b) Convert the following:
More information