1 COMP541 Datapaths I Montek Singh Mar 8, 2007. 2Topics  Over next 2/3 classes: datapaths  Basic register operations Book sections 7-2 to 7-6 and 7-8.

Slides:



Advertisements
Similar presentations
CPEN Digital System Design
Advertisements

Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Chapter 7 Henry Hexmoor Registers and RTL
ARITHMETIC LOGIC SHIFT UNIT
1 Register Transfer &  -operations Computer Organization Computer Architectures Lab REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register.
Chapter 9 Computer Design Basics. 9-2 Datapaths Reminding A digital system (or a simple computer) contains datapath unit and control unit. Datapath: A.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 7 – Registers.
Register Cell Design.
Instructor: Yuzhuang Hu The Shifter 3 clock cycles will be needed if using a bidirectional shift register with parallel load.  A clock.
Chapter 16 Control Unit Operation No HW problems on this chapter. It is important to understand this material on the architecture of computer control units,
L14 – Control & Execution 1 Comp 411 – Fall /04/09 Control & Execution Finite State Machines for Control MIPS Execution.
Overview Part 1 – Datapaths Part 2 – A Simple Computer
1 COMP541 Datapaths II Montek Singh Mar 22, 2007.
Chapter 7. Register Transfer and Computer Operations
1 COMP541 Sequencing – III (Sequencing a Computer) Montek Singh April 9, 2007.
Chapter 16 Control Unit Implemntation. A Basic Computer Model.
L15 – Control & Execution 1 Comp 411 – Spring /25/08 Control & Execution Finite State Machines for Control MIPS Execution.
CPEN Digital System Design Chapter 9 – Computer Design
Logic and Computer Design Dr. Sanjay P. Ahuja, Ph.D. FIS Distinguished Professor of CIS ( ) School of Computing, UNF.
Chapter 7 – Registers and Register Transfers Part 1 – Registers, Microoperations and Implementations Logic and Computer Design Fundamentals.
More Basics of CPU Design Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University.
Week #9 Register Transfer and Data Paths
Computer System Configuration and Function Computer Architecture and Design Lecture 6.
Unit I Digital computer: functional units and their interconnections Mr. Mukul Varshney.
CSC321 Where We’ve Been Binary representations Boolean logic Logic gates – combinational circuits Flip-flops – sequential circuits Complex gates – modules.
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
COSC 3430 L08 Basic MIPS Architecture.1 COSC 3430 Computer Architecture Lecture 08 Processors Single cycle Datapath PH 3: Sections
Computer Design Basics
EKT221 ELECTRONICS DIGITAL II CHAPTER 4: Computer Design Basics
Chap 7. Register Transfers and Datapaths. 7.1 Datapaths and Operations Two types of modules of digital systems –Datapath perform data-processing operations.
Chapter 4 Computer Design Basics. Chapter Overview Part 1 – Datapaths  Introduction  Datapath Example  Arithmetic Logic Unit (ALU)  Shifter  Datapath.
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 7 – Registers and Register Transfers Part.
Computer Organization CSC 405 (VSC) Very Simple Computer.
CDA 3101 Fall 2013 Introduction to Computer Organization The Arithmetic Logic Unit (ALU) and MIPS ALU Support 20 September 2013.
CoE3DJ4 Digital Systems Design
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Computer Organization CDA 3103 Dr. Hassan Foroosh Dept. of Computer Science UCF © Copyright Hassan Foroosh 2002.
EKT 221 : Chapter 4 Computer Design Basics
Lecture 15 Microarchitecture Level: Level 1. Microarchitecture Level The level above digital logic level. Job: to implement the ISA level above it. The.
Register Transfer Languages (RTL)
Chapter 3 System Buses.  Hardwired systems are inflexible  General purpose hardware can do different tasks, given correct control signals  Instead.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 23 Introduction Computer Specification –Instruction Set Architecture (ISA) - the specification.
EKT 221 : Digital 2 Computer Design Basics Date : Lecture : 2 hrs.
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
ECEG-3202: Computer Architecture and Organization, Dept of ECE, AAU 1 Register Transfer & Microoperations.
BASIC COMPUTER ARCHITECTURE HOW COMPUTER SYSTEMS WORK.
1 REGISTER TRANSFER & MICROOPERATIONS. 2 OUTLINES Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Microoperations Logic.
REGISTER TRANSFER AND MICROOPERATIONS
REGISTER TRANSFER AND MICROOPERATIONS
Control & Execution Finite State Machines for Control MIPS Execution.
Computer Design Basics
COMP541 Datapaths I Montek Singh Mar 28, 2012.
Chap 7. Register Transfers and Datapaths
Morgan Kaufmann Publishers The Processor
KU College of Engineering Elec 204: Digital Systems Design
Morgan Kaufmann Publishers
Register Transfer and Microoperations
Control Unit.
Instructor: Alexander Stoytchev
CSCI206 - Computer Organization & Programming
Overview Part 1 - Registers, Microoperations and Implementations
CSC 220: Computer Organization
Overview Part 1 - Registers, Microoperations and Implementations
COMP541 Datapaths I Montek Singh Mar 18, 2010.
Computer Design Basics
ECE 352 Digital System Fundamentals
Lecture 6 CdM-8 CPU overview
CHAPTER-3 REGISTER TRANSFER LANGUAGE AND MICROOPERATIONS
Presentation transcript:

1 COMP541 Datapaths I Montek Singh Mar 8, 2007

2Topics  Over next 2/3 classes: datapaths  Basic register operations Book sections 7-2 to 7-6 and 7-8 Book sections 7-2 to 7-6 and 7-8  Computer datapaths First part of Chapter 10 First part of Chapter 10

3 Parts of CPUs  Datapath The registers and logic to perform operations on them The registers and logic to perform operations on them  Control unit Generates signals to control datapath Generates signals to control datapath

4 Memory and I/O  Are connected to the data/control in and out lines Example: register to memory ops Example: register to memory ops

5Microoperations  Basic operations of the datapath Example: moving data from one register to another Example: moving data from one register to another  Not necessarily microprogrammed control Just a description of operations Just a description of operations  Microoperation expected to complete in one clock  Register transfer notation, next

6 Register Transfer Language (RTL)  Registers named in uppercase PC, IR (instruction), R3 PC, IR (instruction), R3 Little endian Little endian

7RT  Transfer from R1 to R2 R2  R1 R2  R1 R2 is destination R2 is destination R1 is source R1 is source  Conditional If(K1 = 1) then (R2  R1) If(K1 = 1) then (R2  R1) K1: R2  R1 as a shorter form K1: R2  R1 as a shorter form

8Transfer  Transfer at the clock edge  When K1 is high  n bits wide

9Symbols  Note memory transfers

10 Syntax not Verilog (but similar)

11 Types of Microoperations  Transfer – have just looked at  Arithmetic  Logic  Shift

12Arithmetic  Basic ops (not multiply, divide) R0  R1 + R2 R0  R1 + R2  Subtraction by 2’s complement

13 Notation is Shorthand for Hardware  Consider and and  Note overflow and carry registers

14 Logic Microoperations  OR notation a little confusing shows two types of syntax for ORs shows two types of syntax for ORs

15 Shift Microoperations  Here just the basic one-bit shifts  Bit falls off the end, zero shifted in

16 Multiplexer-Based Transfers  Consider  Which can also be expressed as  Block diagram next

17 Multiplexer Block Diagram  Detailed block diagram next

18Detailed  Simpler version is easier to follow and to derive

19 Bus-Based Transfers  How about when there are lots of registers? Beyond a certain point muxes become unwieldy Beyond a certain point muxes become unwieldy  Can use buses and send data over common set of wires

20 Simple Cases  One mux  One output bus

21Transfers  Can’t be as general  Only single source  About ½ the hardware

22 Three-State Bus  Remember three-state drivers allow having multiple outputs share wire  Have to control so only one is asserted  Example next

23 Same Example with 3-State  One R output Enable controls Enable controls  Load controls which latches  Fewer wires  Especially important outside chip

24 Memory Transfers  Usually one or more buses associated with memory Address Address Data Data  Note that memory can be slower, so may have to use complex timing Address on one clock cycle Address on one clock cycle Data latched at later clock cycle Data latched at later clock cycle

25Datapath  Blue signals generated by control  A&B buses to ALU B can be constant from memory B can be constant from memory Can also send addr and data Can also send addr and data

26 R1  R2+R3  Signals Load enable Load enable A, B select A, B select MB Select MB Select MF Select MF Select G Select G Select Destination (D) Destination (D)  What about timing?

27Timing  All can occur in one clock, but  Signals must be available in time to propagate through muxes, ALU and  Be at R inputs by next posedge  Go back and look at path

28Next  Look at specific MIPS design  Next time Continue design review of ALU Continue design review of ALU Look at shifter Look at shifter