Chapter 7. Microarchitecture. Copyright 2013 Elsevier Inc. All rights reserved.

Similar documents
Chapter 7. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 7 <1>

LECTURE 10. Pipelining: Advanced ILP

Computer Architecture CS372 Exam 3

Pipelining. CSC Friday, November 6, 2015

COMPUTER ORGANIZATION AND DESI

ECE 313 Computer Organization FINAL EXAM December 14, This exam is open book and open notes. You have 2 hours.

Microprogrammed Control Approach

CENG 3531 Computer Architecture Spring a. T / F A processor can have different CPIs for different programs.

Basic Instruction Timings. Pipelining 1. How long would it take to execute the following sequence of instructions?

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

Static, multiple-issue (superscaler) pipelines

LECTURE 3: THE PROCESSOR

c. What are the machine cycle times (in nanoseconds) of the non-pipelined and the pipelined implementations?

Determined by ISA and compiler. We will examine two MIPS implementations. A simplified version A more realistic pipelined version

1 Hazards COMP2611 Fall 2015 Pipelined Processor

Chapter 4. The Processor

14:332:331 Pipelined Datapath

CSC258: Computer Organization. Microarchitecture

Computer Architecture Computer Science & Engineering. Chapter 4. The Processor BK TP.HCM

COMPUTER ORGANIZATION AND DESIGN

Pipeline Hazards. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Advanced d Instruction Level Parallelism. Computer Systems Laboratory Sungkyunkwan University

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

Chapter 4. The Processor

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

4. The Processor Computer Architecture COMP SCI 2GA3 / SFWR ENG 2GA3. Emil Sekerinski, McMaster University, Fall Term 2015/16

Chapter 4. The Processor

Pipelining. lecture 15. MIPS data path and control 3. Five stages of a MIPS (CPU) instruction. - factory assembly line (Henry Ford years ago)

EIE/ENE 334 Microprocessors

ECE260: Fundamentals of Computer Engineering

Chapter 4 The Processor (Part 4)

CS 341l Fall 2008 Test #2

The Processor Pipeline. Chapter 4, Patterson and Hennessy, 4ed. Section 5.3, 5.4: J P Hayes.

Chapter 4. The Processor

Pipelining Analogy. Pipelined laundry: overlapping execution. Parallelism improves performance. Four loads: Non-stop: Speedup = 8/3.5 = 2.3.

Chapter 4. The Processor

Processor (IV) - advanced ILP. Hwansoo Han

CS3350B Computer Architecture Quiz 3 March 15, 2018

Instruction Level Parallelism. Appendix C and Chapter 3, HP5e

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

Alexandria University

Introduction. Datapath Basics

ECE154A Introduction to Computer Architecture. Homework 4 solution

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

Pipelining: Overview. CPSC 252 Computer Organization Ellen Walker, Hiram College

EECE 417 Computer Systems Architecture

EXAM #1. CS 2410 Graduate Computer Architecture. Spring 2016, MW 11:00 AM 12:15 PM

ECE 313 Computer Organization FINAL EXAM December 14, This exam is open book and open notes. You have 2 hours.

THE HONG KONG UNIVERSITY OF SCIENCE & TECHNOLOGY Computer Organization (COMP 2611) Spring Semester, 2014 Final Examination

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

Chapter 4. The Processor

Outline. A pipelined datapath Pipelined control Data hazards and forwarding Data hazards and stalls Branch (control) hazards Exception

Pipelined Processor Design

Processor design - MIPS

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

CS 110 Computer Architecture. Pipelining. Guest Lecture: Shu Yin. School of Information Science and Technology SIST

4. What is the average CPI of a 1.4 GHz machine that executes 12.5 million instructions in 12 seconds?

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

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

ECE 154B Spring Project 4. Dual-Issue Superscalar MIPS Processor. Project Checkoff: Friday, June 1 nd, Report Due: Monday, June 4 th, 2018

Chapter Six. Dataı access. Reg. Instructionı. fetch. Dataı. Reg. access. Dataı. Reg. access. Dataı. Instructionı fetch. 2 ns 2 ns 2 ns 2 ns 2 ns

Review: Abstract Implementation View

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

Department of Computer and IT Engineering University of Kurdistan. Computer Architecture Pipelining. By: Dr. Alireza Abdollahpouri

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

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

ECEC 355: Pipelining

CS 61C: Great Ideas in Computer Architecture. Lecture 13: Pipelining. Krste Asanović & Randy Katz

CS/COE0447: Computer Organization

CS/COE0447: Computer Organization

Processor: Multi- Cycle Datapath & Control

Pipelined Processor Design

SI232 Set #20: Laundry, Co-dependency, and other Hazards of Modern (Architecture) Life. Chapter 6 ADMIN. Reading for Chapter 6: 6.1,

ECE232: Hardware Organization and Design

CSEE 3827: Fundamentals of Computer Systems

CS 351 Exam 2, Fall 2012

CS2100 Computer Organisation Tutorial #10: Pipelining Answers to Selected Questions

CSEE 3827: Fundamentals of Computer Systems

Chapter 3. Instructions:

Communications and Computer Engineering II: Lecturer : Tsuyoshi Isshiki

Chapter 4. The Processor. Jiang Jiang

are Softw Instruction Set Architecture Microarchitecture are rdw

ENGN 2910A Homework 03 (140 points) Due Date: Oct 3rd 2013

Computer Hardware Engineering

Final Exam Fall 2007

Chapter 4. The Processor

Full Datapath. Chapter 4 The Processor 2

ECE 313 Computer Organization FINAL EXAM December 13, 2000

Instruction Level Parallelism

Pipelining. Ideal speedup is number of stages in the pipeline. Do we achieve this? 2. Improve performance by increasing instruction throughput ...

Computer Systems Laboratory Sungkyunkwan University

MIPS Pipelining. Computer Organization Architectures for Embedded Computing. Wednesday 8 October 14

RISC Processor Design

Instruction word R0 R1 R2 R3 R4 R5 R6 R8 R12 R31

Advanced Computer Architecture

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

2B 52 AB CA 3E A1 +29 A B C. CS120 Fall 2018 Final Prep and super secret quiz 9

ECE 4750 Computer Architecture, Fall 2017 T05 Integrating Processors and Memories

Pipelining Exercises, Continued

Computer and Information Sciences College / Computer Science Department Enhancing Performance with Pipelining

Transcription:

Chapter 7 Microarchitecture 1

Figure 7.1 State elements of MIPS processor 2

Figure 7.2 Fetch instruction from memory 3

Figure 7.3 Read source operand from register file 4

Figure 7.4 Sign-extend the immediate 5

Figure 7.5 Compute memory address 6

Figure 7.6 Write data back to register file 7

Figure 7.7 Determine address of next instruction for PC 8

Figure 7.8 Write data to memory for sw instruction 9

Figure 7.9 Datapath enhancements for R-type instruction 10

Figure 7.10 Datapath enhancements for beq instruction 11

Figure 7.11 Complete single-cycle MIPS processor 12

Figure 7.12 Control unit internal structure 13

Figure 7.13 Control signals and data flow while executing or instruction 14

Figure 7.14 Single-cycle MIPS datapath enhanced to support the j instruction 15

Figure 7.15 Critical path for lw instruction 16

Figure 7.16 State elements with unified instruction/data memory 17

Figure 7.17 Fetch instruction from memory 18

Figure 7.18 Read source operand from register file 19

Figure 7.19 Sign-extend the immediate 20

Figure 7.20 Add base address to offset 21

Figure 7.21 Load data from memory 22

Figure 7.22 Write data back to register file 23

Figure 7.23 Increment PC by 4 24

Figure 7.24 Enhanced datapath for sw instruction 25

Figure 7.25 Enhanced datapath for R-type instructions 26

Figure 7.26 Enhanced datapath for beq instruction 27

Figure 7.27 Complete multicycle MIPS processor 28

Figure 7.28 Control unit internal structure 29

Figure 7.29 Fetch 30

Figure 7.30 Data flow during the fetch step 31

Figure 7.31 Decode 32

Figure 7.32 Data flow during the decode step 33

Figure 7.33 Memory address computation 34

Figure 7.34 Data flow during memory address computation 35

Figure 7.35 Memory read 36

Figure 7.36 Memory write 37

Figure 7.37 Execute R-type operation 38

Figure 7.38 Branch 39

Figure 7.39 Complete multicycle control FSM 40

Figure 7.40 Main controller states for addi 41

Figure 7.41 Multicycle MIPS datapath enhanced to support the j instruction 42

Figure 7.42 Main controller state for j 43

Figure 7.43 Timing diagrams: (a) single-cycle processor, (b) pipelined processor 44

Figure 7.44 Abstract view of pipeline in operation 45

Figure 7.45 Single-cycle and pipelined datapaths 46

Figure 7.46 Corrected pipelined datapath 47

Figure 7.47 Pipelined processor with control 48

Figure 7.48 Abstract pipeline diagram illustrating hazards 49

Figure 7.49 Abstract pipeline diagram illustrating forwarding 50

Figure 7.50 Pipelined processor with forwarding to solve hazards 51

Figure 7.51 Abstract pipeline diagram illustrating trouble forwarding from lw 52

Figure 7.52 Abstract pipeline diagram illustrating stall to solve hazards 53

Figure 7.53 Pipelined processor with stalls to solve lw data hazard 54

Figure 7.54 Abstract pipeline diagram illustrating flushing when a branch is taken 55

Figure 7.55 Abstract pipeline diagram illustrating earlier branch decision 56

Figure 7.56 Pipelined processor handling branch control hazard 57

Figure 7.57 Pipelined processor handling data dependencies for branch instructions 58

Figure 7.58 Pipelined processor with full hazard handling 59

Figure 7.59 MIPS single-cycle processor interfaced to external memory 60

Figure 7.60 Assembly and machine code for MIPS test program 61

Figure 7.61 Contents of memfile.dat 62

Figure 7.62 Datapath supporting overflow and undefined instruction exceptions 63

Figure 7.63 Datapath supporting mfco 64

Figure 7.64 Controller supporting exceptions and mfc0 65

Figure 7.65 Cycle time and instruction time versus the number of pipeline stages 66

Figure 7.66 2-bit branch predictor state transition diagram 67

Figure 7.67 Superscalar datapath 68

Figure 7.68 Abstract view of a superscalar pipeline in operation 69

Figure 7.69 Program with data dependencies 70

Figure 7.70 Out-of-order execution of a program with dependencies 71

Figure 7.71 Out-of-order execution of a program using register renaming 72

Figure 7.72 Packed arithmetic: four simultaneous 8-bit additions 73

Figure 7.73 4004 microprocessor chip 74

Figure 7.74 80386 microprocessor chip 75

Figure 7.75 80486 microprocessor chip 76

Figure 7.76 Pentium microprocessor chip 77

Figure 7.77 Pentium III microprocessor chip 78

Figure 7.78 Pentium 4 microprocessor chip 79

Figure 7.79 Core Duo microprocessor chip 80

Figure 7.80 Core i7 microprocessor chip (Source: http://www.intel.com/pressroom/archive/releases/2008/20081117comp_sm.htm. Courtesy Intel) 81

UNN Figure 1 82