- 115 Views
- Uploaded on
- Presentation posted in: General

Pipelining

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

22444 - Computer Architecture & Organization (1)

Pipelining

- Applied to sequential steps to speed up operation
Example:

ComputeRi = AiBi + Cifor i=1, 2, … n

Perform the multiplication first

Perform the addition next

R1

Multiplier

Adder

R2

R3

MUL

ADD

R1

Multiplier

Adder

R3

R2

R4

MUL

ADD

B3

C4

A4

B4

A2B2+C2

A4B4

A3B3

A2B2

A1B1

C2

C3

A3B3+C3

B2

B1

A3

A2

A1

A1B1+C1

A4B4+C4

C1

Clock

Input A

Input B

Input C

R1

A1

A2

A3

A4

R2

B1

B2

B3

B4

R3

A1B1

A2B2

A3B3

A4B4

R4

C1

C2

C3

C4

Mult.

Adder

Clock

S1

R1

S2

R2

S3

R3

S4

R4

Input

n = number of Tasks

k = number of segments

T = segment time

For n >> k

- Non Pipelined Process

Execute

Fetch Instr.

Get Operands

Store Result

Instr.1

Instr.1

Instr.1

Instr.1

ƮALU

ƮMem

ƮMem

ƮReg

Register File

PC

Instr.Mem.

ALU

Data Mem.

- Non Pipelined Process

Execute

Fetch Instr.

Get Operands

Store Result

Instr.2

Instr.2

Instr.2

Instr.2

ƮALU

ƮMem

ƮMem

ƮReg

Register File

PC

Instr.Mem.

ALU

Data Mem.

- Non Pipelined Process
- Clock Period =
- Clocks per Instruction =

ƮALU

ƮMem

ƮMem

ƮReg

Register File

PC

Instr.Mem.

ALU

Data Mem.

- Pipelined Process

Execute

Fetch Instr.

Get Operands

Store Result

Instr.2

Instr.1

Instr.5

Instr.3

Instr.4

Instr.2

Instr.1

Instr.2

Instr.4

Instr.3

Instr.3

Instr.2

Instr.1

Instr.1

ƮALU

ƮMem

ƮMem

ƮReg

IR

Register File

Result

PC

Instr.Mem.

ALU

Data Mem.

X

Y

- Pipelined Process

IR

Register File

Result

PC

Instr.Mem.

ALU

Data Mem.

X

Y

- Pipelined Process
- Clock Period =
- Clocks per Instruction =

ƮALU

ƮMem

ƮMem

ƮReg

IR

Register File

Result

PC

Instr.Mem.

ALU

Data Mem.

X

Y

- Structural Hazards
Hardware can’t support instruction combination at a certain time.

Example:

IR

Register File

Result

PC

Instr.Mem.

ALU

Data Mem.

X

Y

- Data Hazards
One instruction has to wait for another to complete.

Example:

IR

Register File

Result

PC

Instr.Mem.

ALU

Data Mem.

X

Y

- Control Hazards
Decision depends on the result of unfinished instruction.

Example:

IR

Register File

Result

PC

Instr.Mem.

ALU

Data Mem.

X

Y

The End

- Mano