Instruction Pipelining Lecture 1 - Pipeline Basics.pdf

mforhadrabbi 34 views 29 slides Jun 09, 2024
Slide 1
Slide 1 of 29
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29

About This Presentation

Pipelining in computer architecture


Slide Content

Instruction Pipelining
Dr. Mohammad Reza Selim
Computer Architecture

Lecture Outline
Instruction Representation in MIPS
What is pipelining?
Pipeline characteristics
Pipeline RISC Datapath
Five Stages of Pipelined RISC Datapath
Pipeline Issues

MIPS
Microprocessor without Interlocked Pipelined Stages (MIPS)
32 registers, 32-bit each
Uniform length instructions
RISC load-store architecture

How instructions are represented in MIPS processors

Problem: Instruction Encoding

What is Pipelining?
Pipelining is an implementation technique whereby multiple instructions
are overlapped in execution.
It takes advantage of parallelism that exists among the actions needed
to execute an instruction.
Today, pipelining is the key implementation technique used to make fast
CPUs.

Un-pipelined Workflow Example

Pipeline Workflow Example

Pipeline Characteristics
Pipeline does not reduce the latency of a single task, its improves
throughput of entire workload
Pipeline rate is limited by the slowest pipeline stage
Potential speedup = No. of pipe stages
Unbalanced length of pipe stages reduces speedup
Time to fill and time to drain pipeline reduces speedup

Pipelining in Circuits

Instruction Execution Cycle

Un-Pipelined RISC Datapath

Pipelined RISC Datapath

Pipelined RISC Datapath

Pipelined RISC Datapath
Instruction Decode / Register Fetch Cycle (ID)
Decode the instruction + Register read operation
Example: ADD R1, R2, R3 = A3.04.02.03
= 10100011 00000001 00000010 00000011
Example LW R1, 8(R2) = 86.01.02.03
10000110 00000001 00001000 00000010

Pipelined RISC Datapath
Execution / Effective Address Cycle (Ex)
Memory Reference instructions: Calculate
Effective Address
Example: LW R1, 8(R2), Effective address =
[R2]+8
Execute Reg-RegALU Instructions
Example: Add R1, R2, R3

Pipelined RISC Datapath

Pipelined RISC Datapath

Five Stages of Pipelined RISC Datapath

Five Stages of Pipelined RISC Datapath(Contd.)

Five Stages of Pipelined RISC Datapath(Contd.)

Five Stages of Pipelined RISC Datapath(Contd.)

Visualizing the Pipeline

Visualizing the Pipeline

Pipeline Issues (1)

Pipeline Issues (2)

Pipeline Issues (3)

Pipeline Issues (4)

Problem: Pipelined Design