lec16 - LW R9, 0(R8), R12 Empty slot filled, stall for last...

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

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

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

View Full DocumentRight Arrow Icon
Hardware Support for Speculation ± Conditional or predicated instructions ± Execute on condition, annul otherwise ± Example: conditional move if (A == 0) { S = T; } BNEZ R1, L MOV R2, R3 L: CMOVZ R2, R3, R1 ± Control dependence has been eliminated ² Dependence resolution now moves to WB stage
Background image of page 2
Scheduling Using Conditional Instructions LW R1, 40(R2) ADD R3, R4, R5 ADD R6, R3, R7 BEQZ R10, L LW R8, 20(R12) LW R9, 0(R8) LW R1, 40(R2) ADD R3, R4, R5 LWC R8, 20(R12), R10 ADD R6, R3, R7 BEQZ R10, L
Background image of page 3

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

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

Unformatted text preview: LW R9, 0(R8), R12 Empty slot filled, stall for last load eliminated Limitations of Conditional Instructions ± Usefulness limitations: ² Condition must not be delayed due to data dependence ² Useful only for simple alternative sequences ± Performance limitations: ² Annulled conditional instruction is equivalent to noop/stall ± Except when filling an anyway empty slot ² Speed penalty in terms of higher clock cycle time...
View Full Document

Page1 / 4

lec16 - LW R9, 0(R8), R12 Empty slot filled, stall for last...

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

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