Lecture 10: Simple Data Path

Similar documents
CPE 335 Computer Organization. Basic MIPS Architecture Part I

The Processor (1) Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

COMPUTER ORGANIZATION AND DESIGN. The Hardware/Software Interface. Chapter 4. The Processor: A Based on P&H

Lecture Topics. Announcements. Today: Single-Cycle Processors (P&H ) Next: continued. Milestone #3 (due 2/9) Milestone #4 (due 2/23)

Processor (I) - datapath & control. Hwansoo Han

Chapter 4. The Processor

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 4: Datapath and Control

CENG 3420 Lecture 06: Datapath

CENG 3420 Computer Organization and Design. Lecture 06: MIPS Processor - I. Bei Yu

Chapter 4. The Processor

CS Computer Architecture Spring Week 10: Chapter

Review: Abstract Implementation View

ECE232: Hardware Organization and Design

CS3350B Computer Architecture Quiz 3 March 15, 2018

The Processor. Z. Jerry Shi Department of Computer Science and Engineering University of Connecticut. CSE3666: Introduction to Computer Architecture

The Processor: Datapath and Control. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Systems Architecture

The MIPS Processor Datapath

COMP303 - Computer Architecture Lecture 8. Designing a Single Cycle Datapath

CS 61C: Great Ideas in Computer Architecture. MIPS CPU Datapath, Control Introduction

Chapter 4. The Processor Designing the datapath

LECTURE 5. Single-Cycle Datapath and Control

Chapter 4 The Processor 1. Chapter 4A. The Processor

Chapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor.

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

Lecture 4: Review of MIPS. Instruction formats, impl. of control and datapath, pipelined impl.

Chapter 4. The Processor. Computer Architecture and IC Design Lab

EECS150 - Digital Design Lecture 10- CPU Microarchitecture. Processor Microarchitecture Introduction

Introduction. Datapath Basics

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

CSE140: Components and Design Techniques for Digital Systems

Chapter 4. The Processor

are Softw Instruction Set Architecture Microarchitecture are rdw

The Big Picture: Where are We Now? EEM 486: Computer Architecture. Lecture 3. Designing a Single Cycle Datapath

Chapter 4. The Processor. Instruction count Determined by ISA and compiler. We will examine two MIPS implementations

Pipeline Control Hazards and Instruction Variations

Data paths for MIPS instructions

inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 18 CPU Design: The Single-Cycle I ! Nasty new windows vulnerability!

Lecture 3: The Processor (Chapter 4 of textbook) Chapter 4.1

CO Computer Architecture and Programming Languages CAPL. Lecture 18 & 19

LECTURE 3: THE PROCESSOR

CSEE 3827: Fundamentals of Computer Systems

Systems Architecture I

EECS150 - Digital Design Lecture 9- CPU Microarchitecture. Watson: Jeopardy-playing Computer

Full Datapath. CSCI 402: Computer Architectures. The Processor (2) 3/21/19. Fengguang Song Department of Computer & Information Science IUPUI

Ch 5: Designing a Single Cycle Datapath

Review. N-bit adder-subtractor done using N 1- bit adders with XOR gates on input. Lecture #19 Designing a Single-Cycle CPU

EECS 151/251A Fall 2017 Digital Design and Integrated Circuits. Instructor: John Wawrzynek and Nicholas Weaver. Lecture 13 EE141

CS61C : Machine Structures

CS3350B Computer Architecture Winter Lecture 5.7: Single-Cycle CPU: Datapath Control (Part 2)

CS 351 Exam 2, Fall 2012

Outline. EEL-4713 Computer Architecture Designing a Single Cycle Datapath

Chapter 4. The Processor

RISC Processor Design

COMP303 Computer Architecture Lecture 9. Single Cycle Control

How to design a controller to produce signals to control the datapath

361 control.1. EECS 361 Computer Architecture Lecture 9: Designing Single Cycle Control

UC Berkeley CS61C : Machine Structures

361 datapath.1. Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath

CSE 141 Computer Architecture Summer Session Lecture 3 ALU Part 2 Single Cycle CPU Part 1. Pramod V. Argade

CC 311- Computer Architecture. The Processor - Control

COMPUTER ORGANIZATION AND DESIGN

Instructions: Language of the Computer

ECE260: Fundamentals of Computer Engineering

Single Cycle Data Path

The Processor: Datapath & Control

CSCI 402: Computer Architectures. Fengguang Song Department of Computer & Information Science IUPUI. Today s Content

CISC 662 Graduate Computer Architecture. Lecture 4 - ISA

Laboratory Single-Cycle MIPS CPU Design (3): 16-bits version One clock cycle per instruction

RISC Pipeline. Kevin Walsh CS 3410, Spring 2010 Computer Science Cornell University. See: P&H Chapter 4.6

CS 110 Computer Architecture Single-Cycle CPU Datapath & Control

Computer Hardware Engineering

Single Cycle CPU Design. Mehran Rezaei

CS 351 Exam 2 Mon. 11/2/2015

Chapter 5: The Processor: Datapath and Control

CpE242 Computer Architecture and Engineering Designing a Single Cycle Datapath

3/12/2014. Single Cycle (Review) CSE 2021: Computer Organization. Single Cycle with Jump. Multi-Cycle Implementation. Why Multi-Cycle?

ENE 334 Microprocessors

2. (3 pts) There are two different ways to measure performance. What are they? 3. (3 pts) Why doesn t MIPS have a subtract immediate instruction?

ECE 486/586. Computer Architecture. Lecture # 7

Pipelining. CSC Friday, November 6, 2015

Computer Hardware Engineering

ECE170 Computer Architecture. Single Cycle Control. Review: 3b: Add & Subtract. Review: 3e: Store Operations. Review: 3d: Load Operations

CSE Computer Architecture I Fall 2009 Lecture 13 In Class Notes and Problems October 6, 2009

ECE369. Chapter 5 ECE369

Lecture 4: MIPS Instruction Set

Mark Redekopp and Gandhi Puvvada, All rights reserved. EE 357 Unit 15. Single-Cycle CPU Datapath and Control

The overall datapath for RT, lw,sw beq instrucution

CS/COE0447: Computer Organization

CS/COE0447: Computer Organization

CSE 2021 COMPUTER ORGANIZATION

Computer Architecture. Lecture 6.1: Fundamentals of

Instructions: MIPS ISA. Chapter 2 Instructions: Language of the Computer 1

Review: latency vs. throughput

ECE468 Computer Organization and Architecture. Designing a Single Cycle Datapath

MIPS-Lite Single-Cycle Control

CS152 Computer Architecture and Engineering Lecture 10: Designing a Single Cycle Control. Recap: The MIPS Instruction Formats

Grading: 3 pts each part. If answer is correct but uses more instructions, 1 pt off. Wrong answer 3pts off.

CISC 662 Graduate Computer Architecture. Lecture 4 - ISA MIPS ISA. In a CPU. (vonneumann) Processor Organization

Math 230 Assembly Programming (AKA Computer Organization) Spring 2008

Transcription:

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 execute instructions? From specification to state changes In order simple data path execution UTCS 352, Lecture 10 1 Exam Return Perusal in ACES 3.22 (Gem Naivar s office) Questions in office hours Grade distribution 90-100 2 80-89 19 70-79 29 60-69 16 50-59 3 - Go to office hours 0-9 1 30-39 2 0-29 0 UTCS 352, Lecture 10 2 1

ISA Specifies How the Computer Changes State formats types ressing modes instruction Op Mode Ra Rb Byte r Little Endian 32-bit addr R0-R31 32 bit Byte r Little Endian 32-bit addr R0-R31 32 bit Before State After State Machine state:, memory, registers UTCS 352, Lecture 10 3 Simplify for Understanding Let s abstract & simplify: 9 MIPS instructions from the three categories: memory-reference instructions: lw, sw arithmetic-logical instructions: add, sub, and, or, slt control flow instructions: beq, j add $8, $17, $18 Format: 000000 10001 10010 01000 00000 100000 op rs rt rd shamt funct What state & logic do we need to execute instructions? UTCS 352, Lecture 10 2

What do we need to execute instructions? Which instruction? instruction memory, : beq, j Which registers? register storage file Which Math? combinational logic: add,sub, and,or,slt Which data? memory: lw, sw UTCS 352, Lecture 10 5 Remember: State & Clocking Review Clocking methodology defines when to read/write a signal An edge-triggered methodology Typical execution read contents of state elements send values through combinational logic write results to one or more state elements No control: always write or Control the Write (write only on 1 ) always write control State element 1 Combinational logic State element 2 clock one clock cycle UTCS 352, Lecture 10 6 3

What is Execution? 5 logical steps IF: fetch instruction ID/R: decode instruction and read registers EX: execute (add, sub, ) MEM: access memory WB: store result (write back) I-Fetch Decode Execute Write Result UTCS 352, Lecture 10 7 Fetch the Next read the instruction from the update the to hold the address of the next instruction ress No write control because The processor updates the every cycle The processor reads instruction memory every cycle UTCS 352, Lecture 10 8

Decode the send the opcode of the fetched instruction and function field bits to the control unit Control Unit r 1 r 2 Data 1 read two values from the identifiers are in the instruction UTCS 352, Lecture 10 9 Executing Branch Operations compare registers + compute branch target Shift left 2 Branch target address ALU control r 1 r 2 Data 1 ALU zero (to branch control logic) Sign UTCS 352, Lecture 10 16 Extend 32 10 5

Executing Jump Operations replace the lower 28 bits of the with the lower 26 bits of the fetched instruction shifted left by 2 bits ress 26 Shift left 2 28 Jump address UTCS 352, Lecture 10 11 Executing R Format Operations R format operations (add, sub, slt, and, or) 31 25 20 15 10 5 0 R-type: op rs rt rd shamt funct perform the (op and funct) operation on values in rs and rt store the result back into the (into location rd) RegWrite ALU control r 1 r 2 Data 1 ALU overflow zero The is not written every cycle (e.g. sw), so we need an explicit write control signal for the UTCS 352, Lecture 10 12 6

Executing Load and Store Operations compute memory address: add base register (read from during decode) to 16-bit signed-extended offset field store write to Data value (read from during decode) load write to value, read from Data RegWrite ALU control MemWrite r 1 r 2 Data 1 overflow zero ALU ress Data Data Sign 16 Extend 32 Mem UTCS 352, Lecture 10 13 Summary Break down of instruction execution and logic based on needed functionality Next Time Putting it all together and adding control logic Pipelining Homework # is due Tuesday March 2, 2010 ing: P&H.5-6 UTCS 352, Lecture 10 1 7