lec09 - ± Structural hazards: ² Divide unit is not...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
LECTURE - 09
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Pipelining Multi-cycle Opns. ± Some operations take > 1 cycle (e.g. FP) ± Handling multi-cycle opns. in the pipeline: ² Multiple EX stages ² Multiple functional units ± An example: IF ID MEM WB EX1 EX2 EX3 EX4 EX1: Main ALU EX2: FP,Int mult. EX3: FP add,sub EX4: FP,Int div.
Background image of page 2
Pipelining Multi-cycle Opns. (continued) ± Two things to consider: ² Different units may take different # cycles ² Some units may not be pipelined ± Corresponding definitions: ² Latency: # cycles between an instn. & another which can use its result ² Initiation/repeat interval: # cycles between issue of two operations of the same type
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
The Multi-cycle Pipeline IF ID MEM WB EX M1 M2 M3 M4 M5 M6 M7 A1 A2 A3 A4 DIVIDE Functional Unit Latency Initiation interval Main ALU 0 1 Data memory 1 1 FP add, sub 3 1 FP, Int mul 6 1 FP div 14 15
Background image of page 4
Pipeline Timing: An Example ± Additional details: ² We require more latches ² ID/EX register must be expanded CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 CC10 CC11 MULTD IF ID M1 M2 M3 M4 M5 M6 M7 MEM WB ADDD IF ID A1 A2 A3 A4 MEM WB LD IF ID EX MEM WB
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
More Hazards!
Background image of page 6
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Background image of page 8
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: ± Structural hazards: ² Divide unit is not pipelined ² Multiple writes possible in the same cycle ± Data hazards: ² RAW is more frequent ² WAW is possible ± Control hazards: ² Out-of-order completion ==> difficulty in handling exceptions Multiple Writes/Cycle: An Example CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 CC10 CC11 MULTD F0, F4, F6 IF ID M1 M2 M3 M4 M5 M6 M7 MEM WB ... IF ID EX MEM WB ... IF ID EX MEM WB ADDD F2, F4, F6 IF ID A1 A2 A3 A4 MEM WB ... IF ID EX MEM WB Multiple Writes/Cycle: Solution ± Provide multiple write-ports ± Or, detect and stall; Two possibilities: ² Detect in ID stage ± Instruction reserve the write port using a reservation register ± Reservation register is shifted one bit each clock ² Detect in MEM stage ± Easier to check ± Can also give priority to longer cycle operation ± But, stall can now be in two places ± Stall may trickle back...
View Full Document

This note was uploaded on 07/14/2011 for the course CS 422 taught by Professor Hogakoi during the Spring '10 term at IIT Kanpur.

Page1 / 8

lec09 - ± Structural hazards: ² Divide unit is not...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online