• No results found

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

N/A
N/A
Protected

Academic year: 2021

Share "COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor. Dr. Randa Mohamed"

Copied!
38
0
0

Loading.... (view fulltext now)

Full text

(1)

C

OMPUTER

O

RGANIZATION AND

D

ESIGN

The Hardware/Software Interface

5th

Edition

Chapter 4

The Processor

(2)

Agenda

Performance Issues

MIPS Pipeline:

(3)
(4)

Performance Issues

Longest delay determines clock period

◼ Critical path: load instruction

◼ Instruction memory → register file → ALU →

data memory → register file

(5)

Performance Issues

Not feasible to vary period for different

instructions

(6)

Pipelining Analogy

Pipelined laundry: overlapping execution

◼ Parallelism improves performance

(7)

MIPS Pipeline

Five stages, one step per stage

1. IF: Instruction fetch from memory

2. ID: Instruction decode & register read

3. EX: Execute operation or calculate address

4. MEM: Access memory operand

5. WB: Write result back to register

(8)
(9)

Pipeline Performance

◼ Assume time for stages is

◼ 100ps for register read or write ◼ 200ps for other stages

◼ Compare pipelined datapath with single-cycle

datapath

(10)

Pipeline Performance

Single-cycle (Tc= 800ps)

(11)

Pipeline Speedup

Speedup = CPUtime

N

CPUtime

P

◼ CPUtimeN= IC × TN

(12)

Pipeline Speedup

Speedup = CPUtime

N

CPUtime

P

◼ CPUtimeN= IC × TN 3×800=2400

(13)

Pipeline Speedup

Speedup = CPUtime

N

CPUtime

P

◼ CPUtimeP= No. Stages × TP + (IC-1) × TP

Pipelined (T = 200ps)

(14)

◼ Speedup = IC × TN

No. Stages × TP + (IC-1) × TP = IC × TN

TP (No. Stages + IC-1)

Pipeline Speedup

Speedup = CPUtime

N

CPUtime

P

◼ CPUtimeN= IC × TN

(15)

◼ Speedup = IC × TN

No. Stages × TP + (IC-1) × TP = IC × TN

TP (No. Stages -1+ IC)

Pipeline Speedup

Speedup = CPUtime

N

CPUtime

P

◼ CPUtimeN= IC × TN

◼ CPUtimeP= No. Stages × TP + (IC-1) × TP

(16)

◼ Speedup = IC × TN

No. Stages × TP + (IC-1) × TP

= IC × TN = TN = No. Stages × TP Tp× IC TP TP

Pipeline Speedup

Speedup = CPUtime

N

CPUtime

P ◼ CPUtimeN= IC × TN

◼ CPUtimeP= No. Stages × TP + (IC-1) × TP

= No. Stages

3×800=2400 (5×200)+ (2×200)=1400

1.7

(17)

◼ Speedup = IC × TN

No. Stages × TP + (IC-1) × TP

= IC × TN = TN = No. Stages × TP Tp× IC TP TP

Pipeline Speedup

Speedup = CPUtime

N

CPUtime

P ◼ CPUtimeN= IC × TN

◼ CPUtimeP= No. Stages × TP + (IC-1) × TP

= No. Stages

1000×800=800000 (5×200)+ (999×200)=200800

3.9

(18)
(19)

Pipelined Datapath

Need registers between stages

(20)

Pipeline Operation

Cycle-by-cycle flow of instructions through the

pipelined datapath

◼ “Single-clock-cycle” pipeline diagram ◼ Shows pipeline usage in a single cycle ◼ Highlight resources used

◼ c.f. “multi-clock-cycle” diagram ◼ Graph of operation over time

(21)
(22)
(23)
(24)
(25)

WB for Load

(26)
(27)
(28)
(29)
(30)

Multi-Cycle Pipeline Diagram

(31)

Multi-Cycle Pipeline Diagram

(32)

Single-Cycle Pipeline Diagram

(33)
(34)
(35)

Pipelined Control

Control signals derived from instruction

(36)
(37)

Concluding Remarks

◼ ISA influences design of datapath and control ◼ Datapath and control influence design of ISA ◼ Pipelining improves instruction throughput

using parallelism

◼ More instructions completed per second ◼ Latency for each instruction not reduced

(38)

Problems to solve

References

Related documents

What is needed for success, according to the authors of the report are: ‘better metrics’ so investors know what they are paying for and can validate the achievement of social or

These contracts are for the continuation of statewide development and implementation of economic, business development and technical assistance services for the statewide small

Note in this figure that the datapath sends the signal lteflg to the control unit, and the control unit sends the register load signals ald, sqld, dld, and outld to the datapath..

3 For the quadrilateral shown on the right: a name two intervals that are parallel b name two intervals that are perpendicular c are the diagonals AC and DB equal in length.. d what

Subject Matter Expert – Oracle OAAM and IDM Setup Design and Implementation (Each Master Contractor can only submit three candidate for the RFR).. Anticipated start date June

extending HTTP we already support an application layer level of redirection. Clients should be able to connect to any server and be redirected by that server to another server.

That the granting of the variance will not adversely affect the public health, safety or welfare, will not alter the essential character of the general vicinity, will not cause

113 Solution Sort a linked list using insertion sort in Java Code: package algorithm.sort; class ListNode { int val; ListNode next; ListNode( int x) { val = x; next = null ; } }.