Computer and Information Sciences College / Computer Science Department The Processor: Datapath and Control
|
|
- Gregory West
- 6 years ago
- Views:
Transcription
1 Computer and Information Sciences College / Computer Science Department The Processor: Datapath and Control Chapter 5 The Processor: Datapath and Control
2 Big Picture: Where are We Now? Performance of a machine is determined by: ISA CLK time CPI Processor design (Datapath and control) will determine: CLK time CPI Single Cycle Processor Advantage: one CLK per instruction Disadvantage: Long cycle time Arithmetic- Logic nit (AL) Processor (CP) Control ( brain ) Datapath ( brawn ) Ex: What are the single cycle processor advantage and disadvantage?
3 REGISTER TRANSFER LANGAGE ICROOPERATION The operations on the data in registers are called microoperations. The functions built into registers are examples of microoperations Shift Load Clear Increment REGISTER TRANSFER LANGAGE For any function of the computer, the register transfer language can be used to describe the (sequence of) microoperations A symbolic language for describing the internal organization of digital computers RTL: An elementary operation performed (during one clock pulse), on the information stored in one or more registers R f(r, R) Registers (R) f: shift, load, clear, increment, add, subtract, complement, and, or, xor, clock cycle Ex: Define the microoperation? Define the RTL? AL (f)
4 Implementing IPS We're ready to look at an implementation of the IPS instruction set Simplified to contain only arithmetic-logic instructions: add, sub, and, or, slt memory-reference instructions: lw, sw control-flow instructions: beq, j 6 bits 5 bits 5 bits 5 bits 5 bits 6 bits op rs rt rd shamt funct R-Format 6 bits 5 bits 5 bits 6 bits op rs rt offset 6 bits 26 bits op address I-Format J-Format Ex: What are the main IPS instruction sets and its format types?
5 Register Transfer Language RTL The Fetch/Execute Cycle High-level abstract view of fetch/execute implementation use the program counter (PC) to read instruction address fetch the instruction from memory and increment PC use fields of the instruction to select registers to read execute depending on the instruction repeat First step is to fetch the instruction from memory IR E[PC] Ex: Write the RTL for fetch and execute for each instruction?
6 Overview: Processor Implementation Styles Single Cycle perform each instruction in clock cycle clock cycle must be long enough for slowest instruction; therefore, disadvantage: only as fast as slowest instruction ulti-cycle break fetch/execute cycle into multiple steps perform step in each clock cycle advantage: each instruction uses only as many cycles as it needs Pipelined execute each instruction in multiple steps perform step / instruction in each clock cycle process multiple instructions in parallel assembly line Ex: What are the Processor Implementation Styles?
7 Clock cycle Functional Elements Two types of functional elements in the hardware: ) elements that operate on data (called combinational elements) 2) elements that contain data (called state or sequential elements) Combinational Elements and Sequential Elements Works as an input output function, e.g., AL Combinational logic reads input data from one register and writes output data to another, or same, register read/write happens in a single cycle combinational element cannot store data from one cycle to a future one Flipflops and latches are -bit state elements, equivalently, they are -bit memories The output(s) of a flipflop or latch always depends on the bit value stored, i.e., its state, and can be called / or high/low or true/false The input to a flipflop or latch can change its state depending on whether it is clocked or not State element Combinational logic State element 2 Combinational logic hardware units State element Combinational logic
8 Building a Datapath Datapath: Elements that process data and addresses in the CP (Registers, ALs, mux s, memories.) Build a IPS datapath: Fetch s operands and execute instructions. Datapath address PC Add Sum 4 A d d memory P C R e a d a d d r e s s a. memory b. Program counter c. Adder Three elements used to store and fetch instructions and increment the PC I n s t r u c t i o n m e m o r y I n s t r u c t i o n Ex: Draw the datapath for fetch instruction process?
9 Ex: Write the RTL, draw the datapath and draw with color pen the dataflow for instruction fetch process? Datapath for Fetch ADD We don t know if instruction is a Branch/Jump or one of the other instructions until we have fetched and interpreted the instruction from memory 4 <- E[PC] PC <- PC + 4 PC ADDR emory RD
10 Datapath: R-Type R[rd] R[rs] op R[rt] ; op : add; sub; or; slt Register numbers Data register data 5 register 2 Registers Write register Write data data 2 Data AL AL control AL result Two elements used to implement R-type instructions a. Registers b. AL register register 2 Registers Write register Write data data data 2 3 AL operation AL AL result Datapath Ex: Write the RTL, draw the datapath for R-type instruction execution process?
11 Ex: Write the RTL, draw the datapath and color with pen the data flow for R-type instruction execution process? Datapath for R-Type op rs rt rd shamt funct add rd, rs, rt R[rd] <- R[rs] + R[rt]; RN RN2 WN RD Register File Operation 3 AL RD2
12 Datapath: Load/Store s ) register operands 2) Calculate address using 6-bit offset 3) se AL, and sign extend offset Load: memory and update register R[rt] <- E[R[rs] + s_extend(offset)]; Two additional elements used To implement load/stores Address Write data emwrite Data memory data 6 Sign 32 extend Store: write register value to memory E[R[rs] + sign_extend(offset)] <- R[rt] register register 2 Registers Write register Write data data data 2 6 Sign 32 extend 3 AL AL operation AL result em a. Data memory unit Address Write data Datapath b. Sign-extension unit emwrite Data memory data em
13 Ex: Write the RTL, draw the datapath and color with pen the data flow for load instruction execution process? Datapath for Load s lw rt, offset(rs) R[rt] <- E[R[rs] + s_extend(offset)];
14 Ex: Write the RTL, draw the datapath and color with pen the data flow for store instruction execution process? Datapath for Store s sw rt, offset(rs) E[R[rs] + sign_extend(offset)] <- R[rt]
15 Datapath: Branch ) register operands 2) Compare operands (use AL, subtract and check zero flag) 3) Calculate target address ) Sign extended displacement 2) Shift left 2 places 3) PC PC+4 No shift hardware required: simply connect wires from input to output, each shifted left 2 bits PC + 4 from instruction datapath Shift left 2 Add Sum Branch target register register 2 Registers Write register Write data data data 2 6 Sign 32 extend 3 AL AL operation Datapath To branch control logic Ex: Draw the datapath for branch instruction execution process?
16 Datapath for Branch op rs rt offset/immediate 6 PC +4 from instruction datapath ADD 5 5 RN RN2 WN Register File RD Operation AL <<2 RD2 beq rs, rt, offset E T N D 6 32 if (R[rs] == R[rt]) then PC <- PC+4 + s_extend(offset<<2) Ex: Write the RTL, draw the datapath and color with pen the data flow for branch instruction execution process?
17 IPS Datapath I: Single-Cycle Input is either register (R-type) or sign-extended lower half of instruction (load/store) Data is either from AL (R-type) or memory (load) Combining the datapaths for R-type instructions and load/stores using two multiplexors Chapter 5 The Processor: Datapath and Control
18 Ex: Write the RTL, draw the datapath and color with pen the data flow for R-type instruction execution process? Datapath for R-type add rd,rs,rt RN RN2 WN RD Register File 5 Operation 3 AL RD2 E 6 32 T N D ALSrc emwrite ADDR Data emory em RD emtoreg
19 Ex: Write the RTL, draw the datapath and color with pen the data flow for Load instruction execution process? Datapath for Load lw rt,offset(rs) RN RN2 WN RD Register File 5 Operation 3 AL RD2 E 6 32 T N D ALSrc emwrite ADDR Data emory em RD emtoreg
20 Ex: Write the RTL, draw the datapath and color with pen the data flow for Store instruction execution process? Datapath for Store sw rt,offset(rs) RN RN2 WN RD Register File 5 Operation 3 AL RD2 E 6 32 T N D ALSrc emwrite ADDR Data emory em RD emtoreg
21 IPS Datapath II: Single-Cycle Add Separate adder as AL operations and PC increment occur in the same clock cycle 4 PC address memory register register 2 Write register Write data Registers data data 2 ALSrc u x 3 AL operation AL AL result Address Write data emwrite data Data memory emtoreg u x 6 Sign 32 extend em Separate instruction memory as instruction and data read occur in the same clock cycle Adding instruction fetch Chapter 5 The Processor: Datapath and Control
22 IPS Datapath III: Single-Cycle PCSrc New multiplexor PC 4 address Add memory address is either PC+4 or branch target address register register 2 Write register Write data Registers data data 2 6 Sign 32 extend Shift left 2 ALSrc u x Add AL result 3 AL operation AL AL result u x Extra adder needed as both adders operate in each cycle Address Write data em emwrite data Data memory emtoreg u x Adding branch capability and another multiplexor Important note: in a single-cycle implementation data cannot be stored during an instruction it only moves through combinational logic Question: is the em signal really needed?! Think of! Ex: Draw the complete datapath for fetch and execute IPS instruction in single cycle processor?
23 Ex: Draw the complete datapath for fetch and execute R-type IPS instruction in single cycle processor and color the data flow? Datapath Executing add ADD 4 ADD PC ADDR emory RD RN RN2 WN RD Register File 5 <<2 Operation 3 AL PCSrc add rd, rs, rt RD2 E 6 32 T N D ALSrc emwrite ADDR Data emory em RD emtoreg
24 Datapath Executing lw ADD 4 ADD PC ADDR emory RD RN RN2 WN RD Register File 5 <<2 Operation 3 AL PCSrc lw rt,offset(rs) RD2 E 6 32 T N D ALSrc emwrite ADDR Data emory em RD emtoreg Ex: Draw the complete datapath for fetch and execute Load IPS instruction in single cycle processor and color the data flow?
25 Ex: Draw the complete datapath for fetch and execute store IPS instruction in single cycle processor and color the data flow? Datapath Executing sw ADD 4 ADD PC ADDR emory RD RN RN2 WN RD Register File 5 <<2 Operation 3 AL PCSrc sw rt,offset(rs) RD2 E 6 32 T N D ALSrc emwrite ADDR Data emory em RD emtoreg
26 Ex: Draw the complete datapath for fetch and execute branch IPS instruction in single cycle processor and color the data flow? Datapath Executing beq ADD 4 ADD PC ADDR emory RD RN RN2 WN RD Register File 5 <<2 Operation 3 AL PCSrc beq r,r2,offset RD2 E 6 32 T N D ALSrc emwrite ADDR Data emory em RD emtoreg
27 Processor = Datapath + Control CP = Datapath+ Control Control unit takes input from the instruction code Control unit tasks Selecting the operations to perform (AL control input) write enable (possibly, read enable also) signals for each storage element Controlling the flow of data for each multiplexor op rs rt rd shamt funct 6 6 Control Logic R-format instruction To datapath Ex: What are the control unit tasks?
28 Defining Control Note that funct field only present in R-format instruction - funct controls AL only To simplify control, define ain, AL control separately using multiple levels will also increase speed important optimization technique ALop inputs will be defined op funct Control Logic op ain Control ALop AL control ALcon funct Ex: What are the main control and AL control units inputs and outputs?
29 Defining AL Control ALcon AL function (s) supported ALcon AND R-format (and) OR R-format (or) add R-format (add), lw, sw subtract R-format (sub), beq set on less than R-format (slt) NOR R-format (nor) A B A L Result Desired opcode AL Action ALOp funct ALcon lw add xxxxxx sw add xxxxxx beq subtract xxxxxx R-type add (add) R-type subtract (sub) R-type logical AND (and) R-type logical OR (or) R-type set on less (slt) Chapter 5 The Processor: Datapath and Control
30 Design AL Control A L O p A L O p A L O p funct F 3 F 2 F F O p e r a t i o n 2 O p e r a t i o n O p e r a t i o n ALcon 4th bit= Operation2 (msb) = ALOp OR (ALOp AND F) Operation = ALOp NOR F2 Operation (lsb) = ALOp AND (F3 OR F) ALOp Funct Field a a f5 f4 f3 f2 f f ALcon x x x x x x x x x x x x x x x x x x x x x x x x x x x x
31 Design the ain Control derived from the instruction code ain Control RegDst Branch em emtoreg ALop emwrite ALSrc op 2 Ex: What are the main control inputs and outputs?
32 Ex: What are the control signals for each instruction type? Design the ain Control R-Type emory Access s Branch on Equal beq lw sw RegDst = = ALSrc = Branch = emtoreg = em = emwrite = ALOp = RegDst = = ALSrc = Branch = emtoreg = em = emwrite = ALOp = RegDst = = ALSrc = Branch = emtoreg = em = emwrite = ALOp = RegDst = = ALSrc = Branch = emtoreg = em = emwrite = ALOp =
33 Outputs Inputs Design the ain Control Truth table for main control signals Signal R- lw sw beq name format Inputs Op5 * Op5 Op4 Op4 Op3 Op3 Op2 Op2 Op Op Op Op RegDst x x Outputs R-format Iw sw beq ALSrc RegDst emtoreg x x ALSrc em em emwrite emwrite Branch Branch ALOp ALOp ALOpO ALOP2 RegDst ALSrc emto- Reg Reg Write em em Write Branch ALOp ALp R-format lw sw beq emtoreg
34 Ex: Draw the complete datapath for fetch, execute with control signals for IPS instruction in single cycle processor? Datapath with Control II 4 Add [3 26] Control RegDst Branch em emtoreg ALOp emwrite ALSrc Shift left 2 Add result AL u x PCSrc PC address memory [3 ] [25 2] [2 6] [5 ] u x register Write data data register 2 Registers Write data 2 register u x AL AL result Address Write data Data memory data u x [5 ] 6 Sign 32 extend AL control [5 ] IPS datapath with the control unit: input to control is the 6-bit instruction opcode field, output is seven -bit signals and the 2-bit ALOp signal
35 Control Signals: R-Type PC 4 ADDR ADD emory RD immediate/ offset I[5:] Control signals shown in blue I 32 6 rs I[25:2] rt I[2:6] 5 5 RN RN2 WN RD Register File rd I[5:] 5 5 RD2 E 6 32 T N D RegDst ALSrc <<2??? Operation 3 AL ADD Value depends on funct PCSrc emwrite ADDR Data emory em RD emtoreg Ex: Draw with color pen the data flow and determine the control signals for R-type instruction type?
36 Control Signals:lw PC 4 ADDR ADD emory RD immediate/ offset I[5:] Control signals shown in blue I 32 6 rs I[25:2] rt I[2:6] 5 5 RN RN2 WN RD Register File rd I[5:] 5 5 RD2 E 6 32 T N D RegDst ALSrc <<2 Operation 3 AL ADD PCSrc emwrite ADDR Data emory em RD emtoreg Ex: Draw with color pen the data flow and determine the control signals for Load instruction?
37 Control Signals:sw PC 4 ADDR ADD emory RD immediate/ offset I[5:] Control signals shown in blue I 32 6 rs I[25:2] rt I[2:6] 5 5 RN RN2 WN RD Register File rd I[5:] 5 5 RD2 E 6 32 T N D RegDst ALSrc <<2 Operation 3 AL ADD PCSrc emwrite ADDR Data emory em RD emtoreg Ex: Draw with color pen the data flow and determine the control signals for store instruction?
38 Control Signals: beq PC 4 ADDR ADD emory RD immediate/ offset I[5:] Control signals shown in blue I 32 6 rs I[25:2] rt I[2:6] 5 5 RN RN2 WN RD Register File rd I[5:] 5 5 RD2 E 6 32 T N D RegDst ALSrc <<2 Operation 3 AL ADD PCSrc if = emwrite ADDR Data emory em RD emtoreg Ex: Draw with color pen the data flow and determine the control signals for branch instruction?
39 Single-Cycle Design Problems Performance Issues o Longest delay determines clock period Critical path: load instruction memory register file AL data memory register file o o o o Not feasible to vary period for different instructions Violates design principle aking the common case fast We will improve performance by pipelining Ex: What is the longest instruction path in single cycle processor
40 Summary 5 steps to design a processor. Analyze instruction set => datapath requirements 2. Select set of datapath components & establish clock methodology 3. Assemble datapath meeting the requirements 4. Analyze implementation of each instruction to determine setting of control points that effects the register transfer 5. Assemble the control logic IPS makes it easier s same size Source registers always in same place Immediate same size, location Operations always on registers/ immediates Single cycle datapath => CPI=, Clock Cycle Time =>Long The IPS architecture was designed to be pipelined Ex: Write the five steps to design a processor? Why IPS is easier to implement Pipeline processor?
Chapter 4. The Processor. Computer Architecture and IC Design Lab
Chapter 4 The Processor Introduction CPU performance factors CPI Clock Cycle Time Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS
More informationECE473 Computer Architecture and Organization. Processor: Combined Datapath
Computer Architecture and Organization Processor: Combined path Lecturer: Prof. Yifeng Zhu Fall, 2014 Portions of these slides are derived from: Dave Patterson CB 1 Where are we? Want to build a processor
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationProcessor (I) - datapath & control. Hwansoo Han
Processor (I) - datapath & control Hwansoo Han Introduction CPU performance factors Instruction count - Determined by ISA and compiler CPI and Cycle time - Determined by CPU hardware We will examine two
More informationChapter 4. The Processor. Instruction count Determined by ISA and compiler. We will examine two MIPS implementations
Chapter 4 The Processor Part I Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware 4.1 Introduction We will examine two MIPS implementations
More informationThe Processor: Datapath and Control. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
The Processor: Datapath and Control Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction CPU performance factors Instruction count Determined
More informationSingle-Cycle Examples, Multi-Cycle Introduction
Single-Cycle Examples, ulti-cycle Introduction 1 Today s enu Single cycle examples Single cycle machines vs. multi-cycle machines Why multi-cycle? Comparative performance Physical and Logical Design of
More informationCOMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle
More informationCOMPUTER ORGANIZATION AND DESIGN. The Hardware/Software Interface. Chapter 4. The Processor: A Based on P&H
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface Chapter 4 The Processor: A Based on P&H Introduction We will examine two MIPS implementations A simplified version A more realistic pipelined
More informationELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 4: Datapath and Control
ELEC 52/62 Computer Architecture and Design Spring 217 Lecture 4: Datapath and Control Ujjwal Guin, Assistant Professor Department of Electrical and Computer Engineering Auburn University, Auburn, AL 36849
More informationChapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor.
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor The Processor - Introduction
More informationCOMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition The Processor - Introduction
More informationLecture 5: The Processor
Lecture 5: The Processor CSCE 26 Computer Organization Instructor: Saraju P. ohanty, Ph. D. NOTE: The figures, text etc included in slides are borrowed from various books, websites, authors pages, and
More informationThe Processor (1) Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
The Processor (1) Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3050: Theory on Computer Architectures, Spring 2017, Jinkyu Jeong (jinkyu@skku.edu)
More informationCENG 3420 Computer Organization and Design. Lecture 06: MIPS Processor - I. Bei Yu
CENG 342 Computer Organization and Design Lecture 6: MIPS Processor - I Bei Yu CEG342 L6. Spring 26 The Processor: Datapath & Control q We're ready to look at an implementation of the MIPS q Simplified
More informationThe Processor. Z. Jerry Shi Department of Computer Science and Engineering University of Connecticut. CSE3666: Introduction to Computer Architecture
The Processor Z. Jerry Shi Department of Computer Science and Engineering University of Connecticut CSE3666: Introduction to Computer Architecture Introduction CPU performance factors Instruction count
More informationCENG 3420 Lecture 06: Datapath
CENG 342 Lecture 6: Datapath Bei Yu byu@cse.cuhk.edu.hk CENG342 L6. Spring 27 The Processor: Datapath & Control q We're ready to look at an implementation of the MIPS q Simplified to contain only: memory-reference
More informationCh 5: Designing a Single Cycle Datapath
Ch 5: esigning a Single Cycle path Computer Systems Architecture CS 365 The Big Picture: Where are We Now? The Five Classic Components of a Computer Processor Control Memory path Input Output Today s Topic:
More informationChapter 4. The Processor Designing the datapath
Chapter 4 The Processor Designing the datapath Introduction CPU performance determined by Instruction Count Clock Cycles per Instruction (CPI) and Cycle time Determined by Instruction Set Architecure (ISA)
More informationECE232: Hardware Organization and Design
ECE232: Hardware Organization and Design Lecture 14: One Cycle MIPs Datapath Adapted from Computer Organization and Design, Patterson & Hennessy, UCB R-Format Instructions Read two register operands Perform
More informationSystems Architecture
Systems Architecture Lecture 15: A Simple Implementation of MIPS Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan Some or all figures from Computer Organization and Design: The Hardware/Software
More informationReview: Abstract Implementation View
Review: Abstract Implementation View Split memory (Harvard) model - single cycle operation Simplified to contain only the instructions: memory-reference instructions: lw, sw arithmetic-logical instructions:
More informationOutline. EEL-4713 Computer Architecture Designing a Single Cycle Datapath
Outline EEL-473 Computer Architecture Designing a Single Cycle path Introduction The steps of designing a processor path and timing for register-register operations path for logical operations with immediates
More informationECE 313 Computer Organization Name SOLUTION EXAM 2 November 3, Floating Point 20 Points
ECE Computer Organization Name SOLTION EA November, This exam is open book and open notes. Credit for problems requiring calculation will be given only if you show your work.. Floating Point Points Translate
More informationCPE 335 Computer Organization. Basic MIPS Architecture Part I
CPE 335 Computer Organization Basic MIPS Architecture Part I Dr. Iyad Jafar Adapted from Dr. Gheith Abandah slides http://www.abandah.com/gheith/courses/cpe335_s8/index.html CPE232 Basic MIPS Architecture
More informationIntroduction. Datapath Basics
Introduction CPU performance factors - Instruction count; determined by ISA and compiler - CPI and Cycle time; determined by CPU hardware 1 We will examine a simplified MIPS implementation in this course
More informationChapter 4 The Processor 1. Chapter 4A. The Processor
Chapter 4 The Processor 1 Chapter 4A The Processor Chapter 4 The Processor 2 Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware
More informationECE260: Fundamentals of Computer Engineering
Datapath for a Simplified Processor James Moscola Dept. of Engineering & Computer Science York College of Pennsylvania Based on Computer Organization and Design, 5th Edition by Patterson & Hennessy Introduction
More information361 datapath.1. Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath
361 datapath.1 Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath Outline of Today s Lecture Introduction Where are we with respect to the BIG picture? Questions and Administrative
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationThe MIPS Processor Datapath
The MIPS Processor Datapath Module Outline MIPS datapath implementation Register File, Instruction memory, Data memory Instruction interpretation and execution. Combinational control Assignment: Datapath
More informationCOMP303 - Computer Architecture Lecture 8. Designing a Single Cycle Datapath
COMP33 - Computer Architecture Lecture 8 Designing a Single Cycle Datapath The Big Picture The Five Classic Components of a Computer Processor Input Control Memory Datapath Output The Big Picture: The
More informationMerging datapaths: (add,lw, sw)
COP 273 Winter 2012 1 - IPS datapath and control 2 ar., 2012 erging datapaths: (add,lw, sw) The datapaths that we saw last lecture considered each instruction in isolation. I drew only those elements that
More informationMark Redekopp and Gandhi Puvvada, All rights reserved. EE 357 Unit 15. Single-Cycle CPU Datapath and Control
EE 37 Unit Single-Cycle CPU path and Control CPU Organization Scope We will build a CPU to implement our subset of the MIPS ISA Memory Reference Instructions: Load Word (LW) Store Word (SW) Arithmetic
More informationProcessor Design CSCE Instructor: Saraju P. Mohanty, Ph. D. NOTE: The figures, text etc included in slides are borrowed
Lecture 3: General Purpose Processor Design CSCE 665 Advanced VLSI Systems Instructor: Saraju P. ohanty, Ph. D. NOTE: The figures, tet etc included in slides are borrowed from various books, websites,
More informationThe Processor: Datapath & Control
Orange Coast College Business Division Computer Science Department CS 116- Computer Architecture The Processor: Datapath & Control Processor Design Step 3 Assemble Datapath Meeting Requirements Build the
More informationCPU Organization (Design)
ISA Requirements CPU Organization (Design) Datapath Design: Capabilities & performance characteristics of principal Functional Units (FUs) needed by ISA instructions (e.g., Registers, ALU, Shifters, Logic
More informationCpE242 Computer Architecture and Engineering Designing a Single Cycle Datapath
CpE242 Computer Architecture and Engineering Designing a Single Cycle Datapath CPE 442 single-cycle datapath.1 Outline of Today s Lecture Recap and Introduction Where are we with respect to the BIG picture?
More informationLecture Topics. Announcements. Today: Single-Cycle Processors (P&H ) Next: continued. Milestone #3 (due 2/9) Milestone #4 (due 2/23)
Lecture Topics Today: Single-Cycle Processors (P&H 4.1-4.4) Next: continued 1 Announcements Milestone #3 (due 2/9) Milestone #4 (due 2/23) Exam #1 (Wednesday, 2/15) 2 1 Exam #1 Wednesday, 2/15 (3:00-4:20
More informationECE468 Computer Organization and Architecture. Designing a Single Cycle Datapath
ECE468 Computer Organization and Architecture Designing a Single Cycle Datapath ECE468 datapath1 The Big Picture: Where are We Now? The Five Classic Components of a Computer Processor Control Input Datapath
More informationCOMPUTER ORGANIZATION AND DESIGN
COMPUTER ORGANIZATION AND DESIGN 5 Edition th The Hardware/Software Interface Chapter 4 The Processor 4.1 Introduction Introduction CPU performance factors Instruction count CPI and Cycle time Determined
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationcomp 180 Lecture 25 Outline of Lecture The ALU Control Operation & Design The Datapath Control Operation & Design HKUST 1 Computer Science
Outline of Lecture The Control Operation & Design The Datapath Control Operation & Design HKST 1 Computer Science Control After the design of partial single IPS datapath, we need to add the control unit
More informationTDT4255 Computer Design. Lecture 4. Magnus Jahre. TDT4255 Computer Design
1 TDT4255 Computer Design Lecture 4 Magnus Jahre 2 Outline Chapter 4.1 to 4.4 A Multi-cycle Processor Appendix D 3 Chapter 4 The Processor Acknowledgement: Slides are adapted from Morgan Kaufmann companion
More informationThe Big Picture: Where are We Now? EEM 486: Computer Architecture. Lecture 3. Designing a Single Cycle Datapath
The Big Picture: Where are We Now? EEM 486: Computer Architecture Lecture 3 The Five Classic Components of a Computer Processor Input Control Memory Designing a Single Cycle path path Output Today s Topic:
More informationCS 61C: Great Ideas in Computer Architecture. MIPS CPU Datapath, Control Introduction
CS 61C: Great Ideas in Computer Architecture MIPS CPU Datapath, Control Introduction Instructor: Alan Christopher 7/28/214 Summer 214 -- Lecture #2 1 Review of Last Lecture Critical path constrains clock
More information1048: Computer Organization
48: Compter Organization Lectre 5 Datapath and Control Lectre5A - simple implementation (cwli@twins.ee.nct.ed.tw) 5A- Introdction In this lectre, we will try to implement simplified IPS which contain emory
More informationInf2C - Computer Systems Lecture Processor Design Single Cycle
Inf2C - Computer Systems Lecture 10-11 Processor Design Single Cycle Boris Grot School of Informatics University of Edinburgh Previous lectures Combinational circuits Combinations of gates (INV, AND, OR,
More informationReview. N-bit adder-subtractor done using N 1- bit adders with XOR gates on input. Lecture #19 Designing a Single-Cycle CPU
CS6C L9 CPU Design : Designing a Single-Cycle CPU () insteecsberkeleyedu/~cs6c CS6C : Machine Structures Lecture #9 Designing a Single-Cycle CPU 27-7-26 Scott Beamer Instructor AI Focuses on Poker Review
More informationCSE140: Components and Design Techniques for Digital Systems
CSE4: Components and Design Techniques for Digital Systems Tajana Simunic Rosing Announcements and Outline Check webct grades, make sure everything is there and is correct Pick up graded d homework at
More informationCS 61C: Great Ideas in Computer Architecture Datapath. Instructors: John Wawrzynek & Vladimir Stojanovic
CS 61C: Great Ideas in Computer Architecture Datapath Instructors: John Wawrzynek & Vladimir Stojanovic http://inst.eecs.berkeley.edu/~cs61c/fa15 1 Components of a Computer Processor Control Enable? Read/Write
More informationComputer Science 61C Spring Friedland and Weaver. The MIPS Datapath
The MIPS Datapath 1 The Critical Path and Circuit Timing The critical path is the slowest path through the circuit For a synchronous circuit, the clock cycle must be longer than the critical path otherwise
More informationLecture 3: The Processor (Chapter 4 of textbook) Chapter 4.1
Lecture 3: The Processor (Chapter 4 of textbook) Chapter 4.1 Introduction Chapter 4.1 Chapter 4.2 Review: MIPS (RISC) Design Principles Simplicity favors regularity fixed size instructions small number
More informationLECTURE 5. Single-Cycle Datapath and Control
LECTURE 5 Single-Cycle Datapath and Control PROCESSORS In lecture 1, we reminded ourselves that the datapath and control are the two components that come together to be collectively known as the processor.
More informationEECS150 - Digital Design Lecture 10- CPU Microarchitecture. Processor Microarchitecture Introduction
EECS150 - Digital Design Lecture 10- CPU Microarchitecture Feb 18, 2010 John Wawrzynek Spring 2010 EECS150 - Lec10-cpu Page 1 Processor Microarchitecture Introduction Microarchitecture: how to implement
More informationChapter 5: The Processor: Datapath and Control
Chapter 5: The Processor: Datapath and Control Overview Logic Design Conventions Building a Datapath and Control Unit Different Implementations of MIPS instruction set A simple implementation of a processor
More informationCS2214 COMPUTER ARCHITECTURE & ORGANIZATION SPRING 2014
CS COPTER ARCHITECTRE & ORGANIZATION SPRING DE : TA HOEWORK IV READ : i) Related portions of Chapter (except Sections. through.) ii) Related portions of Appendix A iii) Related portions of Appendix iv)
More informationCS61C : Machine Structures
inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #19 Designing a Single-Cycle CPU 27-7-26 Scott Beamer Instructor AI Focuses on Poker CS61C L19 CPU Design : Designing a Single-Cycle CPU
More informationSingle Cycle Datapath
Single Cycle atapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili Section 4.1-4.4 Appendices B.3, B.7, B.8, B.11,.2 ing Note: Appendices A-E in the hardcopy text correspond to chapters 7-11 in
More informationCC 311- Computer Architecture. The Processor - Control
CC 311- Computer Architecture The Processor - Control Control Unit Functions: Instruction code Control Unit Control Signals Select operations to be performed (ALU, read/write, etc.) Control data flow (multiplexor
More informationTopic #6. Processor Design
Topic #6 Processor Design Major Goals! To present the single-cycle implementation and to develop the student's understanding of combinational and clocked sequential circuits and the relationship between
More informationEECS150 - Digital Design Lecture 9- CPU Microarchitecture. Watson: Jeopardy-playing Computer
EECS150 - Digital Design Lecture 9- CPU Microarchitecture Feb 15, 2011 John Wawrzynek Spring 2011 EECS150 - Lec09-cpu Page 1 Watson: Jeopardy-playing Computer Watson is made up of a cluster of ninety IBM
More informationCOMP303 - Computer Architecture Lecture 10. Multi-Cycle Design & Exceptions
COP33 - Computer Architecture Lecture ulti-cycle Design & Exceptions Single Cycle Datapath We designed a processor that requires one cycle per instruction RegDst busw 32 Clk RegWr Rd ux imm6 Rt 5 5 Rs
More informationEEC 483 Computer Organization
EEC 483 Compter Organization Chapter 4.4 A Simple Implementation Scheme Chans Y The Big Pictre The Five Classic Components of a Compter Processor Control emory Inpt path Otpt path & Control 2 path and
More informationMajor CPU Design Steps
Datapath Major CPU Design Steps. Analyze instruction set operations using independent RTN ISA => RTN => datapath requirements. This provides the the required datapath components and how they are connected
More informationECE369. Chapter 5 ECE369
Chapter 5 1 State Elements Unclocked vs. Clocked Clocks used in synchronous logic Clocks are needed in sequential logic to decide when an element that contains state should be updated. State element 1
More informationCS3350B Computer Architecture Winter 2015
CS3350B Computer Architecture Winter 2015 Lecture 5.5: Single-Cycle CPU Datapath Design Marc Moreno Maza www.csd.uwo.ca/courses/cs3350b [Adapted from lectures on Computer Organization and Design, Patterson
More informationFull Datapath. CSCI 402: Computer Architectures. The Processor (2) 3/21/19. Fengguang Song Department of Computer & Information Science IUPUI
CSCI 42: Computer Architectures The Processor (2) Fengguang Song Department of Computer & Information Science IUPUI Full Datapath Branch Target Instruction Fetch Immediate 4 Today s Contents We have looked
More informationECE170 Computer Architecture. Single Cycle Control. Review: 3b: Add & Subtract. Review: 3e: Store Operations. Review: 3d: Load Operations
ECE7 Computer Architecture Single Cycle Control Review: 3a: Overview of the Fetch Unit The common operations Fetch the : mem[] Update the program counter: Sequential Code: < + Branch and Jump: < something
More informationCSE 141 Computer Architecture Summer Session Lecture 3 ALU Part 2 Single Cycle CPU Part 1. Pramod V. Argade
CSE 141 Computer Architecture Summer Session 1 2004 Lecture 3 ALU Part 2 Single Cycle CPU Part 1 Pramod V. Argade Reading Assignment Announcements Chapter 5: The Processor: Datapath and Control, Sec. 5.3-5.4
More informationare Softw Instruction Set Architecture Microarchitecture are rdw
Program, Application Software Programming Language Compiler/Interpreter Operating System Instruction Set Architecture Hardware Microarchitecture Digital Logic Devices (transistors, etc.) Solid-State Physics
More informationLECTURE 3: THE PROCESSOR
LECTURE 3: THE PROCESSOR Abridged version of Patterson & Hennessy (2013):Ch.4 Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU
More informationCOMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. 5 th. Edition. Chapter 4. The Processor
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle
More informationCSE 378 Midterm 2/12/10 Sample Solution
Question 1. (6 points) (a) Rewrite the instruction sub $v0,$t8,$a2 using absolute register numbers instead of symbolic names (i.e., if the instruction contained $at, you would rewrite that as $1.) sub
More informationSingle Cycle Datapath
Single Cycle atapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili Section 4.-4.4 Appendices B.7, B.8, B.,.2 Practice Problems:, 4, 6, 9 ing (2) Introduction We will examine two MIPS implementations
More informationThe overall datapath for RT, lw,sw beq instrucution
Designing The Main Control Unit: Remember the three instruction classes {R-type, Memory, Branch}: a) R-type : Op rs rt rd shamt funct 1.src 2.src dest. 31-26 25-21 20-16 15-11 10-6 5-0 a) Memory : Op rs
More informationComputer Organization and Structure. Bing-Yu Chen National Taiwan University
Computer Organization and Structure Bing-Yu Chen National Taiwan University The Processor Logic Design Conventions Building a Datapath A Simple Implementation Scheme An Overview of Pipelining Pipelined
More informationUC Berkeley CS61C : Machine Structures
inst.eecs.berkeley.edu/~cs61c UC Berkeley CS61C : Machine Structures Lecture 25 CPU Design: Designing a Single-cycle CPU Lecturer SOE Dan Garcia www.cs.berkeley.edu/~ddgarcia T-Mobile s Wi-Fi / Cell phone
More informationCOMP303 Computer Architecture Lecture 9. Single Cycle Control
COMP33 Computer Architecture Lecture 9 Single Cycle Control A Single Cycle Datapath We have everything except control signals (underlined) RegDst busw Today s lecture will look at how to generate the control
More informationCPU Design Steps. EECC550 - Shaaban
CPU Design Steps 1. Analyze instruction set operations using independent RTN => datapath requirements. 2. Select set of datapath components & establish clock methodology. 3. Assemble datapath meeting the
More informationCO Computer Architecture and Programming Languages CAPL. Lecture 18 & 19
CO2-3224 Computer Architecture and Programming Languages CAPL Lecture 8 & 9 Dr. Kinga Lipskoch Fall 27 Single Cycle Disadvantages & Advantages Uses the clock cycle inefficiently the clock cycle must be
More informationEEM 486: Computer Architecture. Lecture 3. Designing Single Cycle Control
EEM 48: Computer Architecture Lecture 3 Designing Single Cycle The Big Picture: Where are We Now? Processor Input path Output Lec 3.2 An Abstract View of the Implementation Ideal Address Net Address PC
More informationEC 413 Computer Organization - Fall 2017 Problem Set 3 Problem Set 3 Solution
EC 413 Computer Organization - Fall 2017 Problem Set 3 Problem Set 3 Solution Important guidelines: Always state your assumptions and clearly explain your answers. Please upload your solution document
More informationImproving Performance: Pipelining
Improving Performance: Pipelining Memory General registers Memory ID EXE MEM WB Instruction Fetch (includes PC increment) ID Instruction Decode + fetching values from general purpose registers EXE EXEcute
More informationECS 154B Computer Architecture II Spring 2009
ECS 154B Computer Architecture II Spring 2009 Pipelining Datapath and Control 6.2-6.3 Partially adapted from slides by Mary Jane Irwin, Penn State And Kurtis Kredo, UCD Pipelined CPU Break execution into
More informationLecture 10 Multi-Cycle Implementation
Lecture 10 ulti-cycle Implementation 1 Today s enu ulti-cycle machines Why multi-cycle? Comparative performance Physical and Logical Design of Datapath and Control icroprogramming 2 ulti-cycle Solution
More informationCOMPUTER ORGANIZATION AND DESIGN
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle
More informationENGN1640: Design of Computing Systems Topic 04: Single-Cycle Processor Design
ENGN64: Design of Computing Systems Topic 4: Single-Cycle Processor Design Professor Sherief Reda http://scale.engin.brown.edu Electrical Sciences and Computer Engineering School of Engineering Brown University
More informationThe Processor: Datapath & Control
Chapter Five 1 The Processor: Datapath & Control We're ready to look at an implementation of the MIPS Simplified to contain only: memory-reference instructions: lw, sw arithmetic-logical instructions:
More informationAdding Support for jal to Single Cycle Datapath (For More Practice Exercise 5.20)
Adding Support for jal to Single Cycle Datapath (For More Practice Exercise 5.20) The MIPS jump and link instruction, jal is used to support procedure calls by jumping to jump address (similar to j ) and
More informationWhat do we have so far? Multi-Cycle Datapath (Textbook Version)
What do we have so far? ulti-cycle Datapath (Textbook Version) CPI: R-Type = 4, Load = 5, Store 4, Branch = 3 Only one instruction being processed in datapath How to lower CPI further? #1 Lec # 8 Summer2001
More informationCSCI 402: Computer Architectures. Fengguang Song Department of Computer & Information Science IUPUI. Today s Content
3/6/8 CSCI 42: Computer Architectures The Processor (2) Fengguang Song Department of Computer & Information Science IUPUI Today s Content We have looked at how to design a Data Path. 4.4, 4.5 We will design
More informationLecture 10: Simple Data Path
Lecture 10: Simple Data Path Course so far Performance comparisons Amdahl s law ISA function & principles What do bits mean? Computer math Today Take QUIZ 6 over P&H.1-, before 11:59pm today How do computers
More informationCPE 335. Basic MIPS Architecture Part II
CPE 335 Computer Organization Basic MIPS Architecture Part II Dr. Iyad Jafar Adapted from Dr. Gheith Abandah slides http://www.abandah.com/gheith/courses/cpe335_s08/index.html CPE232 Basic MIPS Architecture
More informationinst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 18 CPU Design: The Single-Cycle I ! Nasty new windows vulnerability!
inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 18 CPU Design: The Single-Cycle I CS61C L18 CPU Design: The Single-Cycle I (1)! 2010-07-21!!!Instructor Paul Pearce! Nasty new windows vulnerability!
More information361 control.1. EECS 361 Computer Architecture Lecture 9: Designing Single Cycle Control
36 control. EECS 36 Computer Architecture Lecture 9: Designing Single Cycle Control Recap: The MIPS Subset ADD and subtract add rd, rs, rt sub rd, rs, rt OR Imm: ori rt, rs, imm6 3 3 26 2 6 op rs rt rd
More informationSystems Architecture I
Systems Architecture I Topics A Simple Implementation of MIPS * A Multicycle Implementation of MIPS ** *This lecture was derived from material in the text (sec. 5.1-5.3). **This lecture was derived from
More informationﻪﺘﻓﺮﺸﻴﭘ ﺮﺗﻮﻴﭙﻣﺎﻛ يرﺎﻤﻌﻣ MIPS يرﺎﻤﻌﻣ data path and ontrol control
معماري كامپيوتر پيشرفته معماري MIPS data path and control abbasi@basu.ac.ir Topics Building a datapath support a subset of the MIPS-I instruction-set A single cycle processor datapath all instruction actions
More informationENE 334 Microprocessors
ENE 334 Microprocessors Lecture 6: Datapath and Control : Dejwoot KHAWPARISUTH Adapted from Computer Organization and Design, 3 th & 4 th Edition, Patterson & Hennessy, 2005/2008, Elsevier (MK) http://webstaff.kmutt.ac.th/~dejwoot.kha/
More information