Spring 2006EE 5324 - VLSI Design II - © Kia Bazargan 187 EE 5324 – VLSI Design II Kia Bazargan University of Minnesota Part IV: Control Path and Busses.

Slides:



Advertisements
Similar presentations
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Advertisements

1 Register Transfer &  -operations Computer Organization Computer Architectures Lab REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register.
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Jan M. Rabaey Anantha.
1 CONSTRUCTING AN ARITHMETIC LOGIC UNIT CHAPTER 4: PART II.

EECS Components and Design Techniques for Digital Systems Lec 17 – Addition, Subtraction, and Negative Numbers David Culler Electrical Engineering.
DATAPATHS 3) Shifters. 4) Comparators 5) Counters.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 24 - Subsystem.
Computer Structure - The ALU Goal: Build an ALU  The Arithmetic Logic Unit or ALU is the device that performs arithmetic and logical operations in the.
Chapter 7. Register Transfer and Computer Operations
ECE C03 Lecture 61 Lecture 6 Arithmetic Logic Circuits Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Chapter # 5: Arithmetic Circuits Contemporary Logic Design Randy H
Lecture 8 Arithmetic Logic Circuits
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ input/output and clock inputs Sequence of control signal combinations.
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
CPEN Digital System Design Chapter 9 – Computer Design
Fall 2008EE VLSI Design I - © Kia Bazargan 1 EE 5323 – VLSI Design I Kia Bazargan University of Minnesota Adders.
Spring 2006EE VLSI Design II - © Kia Bazargan 68 EE 5324 – VLSI Design II Kia Bazargan University of Minnesota Part II: Adders.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Hao Ji.
More Basics of CPU Design Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University.
Lecture 18: Datapath Functional Units
Basic Arithmetic (adding and subtracting)
Abdullah Aldahami ( ) Feb26, Introduction 2. Feedback Switch Logic 3. Arithmetic Logic Unit Architecture a.Ripple-Carry Adder b.Kogge-Stone.
Chapter # 5: Arithmetic Circuits
Chapter 6-1 ALU, Adder and Subtractor
Topic: Arithmetic Circuits Course: Digital Systems Slide no. 1 Chapter # 5: Arithmetic Circuits.
Arithmetic Building Blocks
5-1 Programmable and Steering Logic Chapter # 5: Arithmetic Circuits.
Basic Arithmetic (adding and subtracting)
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Reference: Digital Integrated.
Arithmetic Building Blocks
1/8/ L3 Data Path DesignCopyright Joanne DeGroat, ECE, OSU1 ALUs and Data Paths Subtitle: How to design the data path of a processor.
1 Microprocessor-based systems Course 2 General structure of a computer.
Chap 7. Register Transfers and Datapaths. 7.1 Datapaths and Operations Two types of modules of digital systems –Datapath perform data-processing operations.
FPGA-Based System Design: Chapter 4 Copyright  2003 Prentice Hall PTR Topics n Number representation. n Shifters. n Adders and ALUs.
CDA 3101 Fall 2013 Introduction to Computer Organization The Arithmetic Logic Unit (ALU) and MIPS ALU Support 20 September 2013.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Jan M. Rabaey Anantha.
INTRODUCTION.  Upon completing this topic, you should be able to: Illustrate a basic elements of digital computer system and their functions, Depicts.
Kavita Bala CS 3410, Spring 2014 Computer Science Cornell University.
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
CPS3340 Computer Architecture Fall Semester, 2013
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Transistor: Building.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
Register Transfer Languages (RTL)
CPEN Digital System Design
CS61C L20 Datapath © UC Regents 1 Microprocessor James Tan Adapted from D. Patterson’s CS61C Copyright 2000.
Cpu control.1 2/14 Datapath Components for Lab The Processor! ( th ed)
Elements of Datapath for the fetch and increment The first element we need: a memory unit to store the instructions of a program and supply instructions.
Arithmetic Logic Unit (ALU) Introduction to Computer Yung-Yu Chuang with slides by Sedgewick & Wayne ( introcs.cs.princeton.edu ), Nisan & Schocken (
Lecture #23: Arithmetic Circuits-1 Arithmetic Circuits (Part I) Randy H. Katz University of California, Berkeley Fall 2005.
Computer Arthmetic Chapter Four P&H. Data Representation Why do we not encode numbers as strings of ASCII digits inside computers? What is overflow when.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003 Rev /05/2003.
نظام المحاضرات الالكترونينظام المحاضرات الالكتروني Arithmetic Logic Unit (ALU)
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ read/write and clock inputs Sequence of control signal combinations.
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003.
Computer Arthmetic Chapter Four P&H.
Topics Subsystem design principles. Pipelining. Datapath.
Subtitle: How to design the data path of a processor.
Chapter 4 Register Transfer and Microoperations
Chap 7. Register Transfers and Datapaths
Swamynathan.S.M AP/ECE/SNSCT
Computer Science 210 Computer Organization
Instructors: Randy H. Katz David A. Patterson
Arithmetic Circuits (Part I) Randy H
Rocky K. C. Chang 6 November 2017
Booth Recoding: Advantages and Disadvantages
Instruction execution and ALU
Presentation transcript:

Spring 2006EE VLSI Design II - © Kia Bazargan 187 EE 5324 – VLSI Design II Kia Bazargan University of Minnesota Part IV: Control Path and Busses

Spring 2006EE VLSI Design II - © Kia Bazargan 188 References and Copyright Textbooks referenced  [WE92] N. H. E. Weste, K. Eshraghian “Principles of CMOS VLSI Design: A System Perspective ” Addison-Wesley, 2 nd Ed.,  [Rab96] J. M. Rabaey “Digital Integrated Circuits: A Design Perspective ” Prentice Hall, 1996.

Spring 2006EE VLSI Design II - © Kia Bazargan 189 References and Copyright (cont.) Slides used(Modified by Kia when necessary)  [©Hauck] © Scott A. Hauck, ; G. Borriello, C. Ebeling, S. Burns, 1995, University of Washington  [©Prentice Hall] © Prentice Hall 1995, © UCB 1996 Slides for [Rab96]

Spring 2006EE VLSI Design II - © Kia Bazargan 190 What is Control Logic? Data paths  Actual input values are not important Movement of data from one point to another or standard computation (e.g., shift register, add, logical XOR, etc.) Control logic  Input values matter and cause state and output transitions Used to control flow of data in data path logic (e.g., load a register, select addition or subtraction in ALU, etc.) [©Hauck]

Spring 2006EE VLSI Design II - © Kia Bazargan 191 Control Path Input to control path  Program (from RAM, ROM, PLA, …)  Condition codes (from datapath) Implementation  Usually state machine Datapath Control Logic Control signals (func. sel) Data-dependent conditions (e.g., overflow)

Spring 2006EE VLSI Design II - © Kia Bazargan 192 Control Path Example A control path to control a simple data path Datapath operations:  2’s complement numbers  add, sub, inc, dec, compare (< and =), bit-wise XOR Control signals:  Encoding of 7 operations (minimum of 3 signals) Condition codes:  zero, negative, overflow, underflow [©Hauck]

Spring 2006EE VLSI Design II - © Kia Bazargan 193 Control Path Example: Operation Details Subtraction:  Addition with complemented input and carry-in of 1 A – B  A + (B' +1)2's complement form Increment:  Addition with one input equal to all 0 and carry-in of 1 A + 1  A Decrement:  subtraction with one input equal to all 1 and carry-in of 0 A – 1  A  A + 0' Comparison:  Subtraction and test if carry-out (>) or result is zero (=) A < B  A – B with a negative result A = B  A – B result equal to 0 [©Hauck]

Spring 2006EE VLSI Design II - © Kia Bazargan 194 Control Path Example: Implementation Carry chain opzeroBcompBC 0 outsel add1001 sub1111 inc0011 dec0101 comp111– XOR10–0 outputs: R (result) S n-1 (sign bit) Z (zero detect) < if S n-1 = 1 = if zero detect = C i+1 CiCi complement B input zero B input (active low) Ai Bi Ri Si select output (sum, XOR) zero detect g p [©Hauck]

Spring 2006EE VLSI Design II - © Kia Bazargan 195 Datapath Components:  data storage, arithmetic and logic operators, shifters, stacks,... Characteristics:  Wide data transfers (regularity)  Many-to-many connections (busses)  Large capacitances (busses)  Critical path (arithmetic and carry propagation) Control signals must direct the flow of data between data path elements and busses 32 register file shifter ALUI / O 32

Spring 2006EE VLSI Design II - © Kia Bazargan 196 Busses and Precharging In data paths and in memory arrays in particular:  Busses get very long and heavy  Large capacitance due to wire length and the transistor drains Not easy to implement complementary structure:  Due to geographic distribution of inputs Common solution:  Pre-charge the bus  Only one half of the complementary structure needs to be considered

Spring 2006EE VLSI Design II - © Kia Bazargan 197 Precharged Bus Example 22 Cbus L1 11 L2 11 L3 11

Spring 2006EE VLSI Design II - © Kia Bazargan 198 Tri-State Bus If you can guarantee that at most one source will write to the bus at a time, can use tri-state busses: Cbus L1 L2 L3