Lecture 21 - Modern Renaming (2010-03-30)

Lecture 21 - Modern Renaming (2010-03-30) - 1 University of...

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

View Full Document Right Arrow Icon

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

View Full DocumentRight Arrow Icon

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

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

Unformatted text preview: 1 University of Central Florida CDA 5106 CDA 5106 Modern Renaming Prof. Mark Heinrich School of Electrical Engineering and Computer Science [email protected] Reorder Buffer (ROB) ¡ Holds instruction results until commit • allows forwarding of results to consumer instructions Delays update of architectural stat ¡ Delays update of architectural state • Value in ROB committed when it reaches the ROB head ¡ Strictly in order (allocated at issue) • ROB head : oldest (uncommitted) instruction ¡ Similar to Tomasulo’s reservation stations, but: • Tomasulo’s: after CDB bcast, consumers find result in updated register file UCF • ROB: supplies result to consumers on demand until producer commits 2 ROB Entry Fields ¡ Instruction type ¡ Destination branch: no destinatio • branch: no destination • store: destination address • other: destination register ¡ Value: instruction’s result (outcome for branches) ¡ Ready bit: whether instruction has executed (and result is ready) UCF ROB-Extended Tomasulo’s ¡ Reservation stations (RS): • buffer op and operands once issued until executed track assigned ROB entr • track assigned ROB entry ¡ ROB • provide renaming mechanism (tag results with ROB entry instead of RS) • hold instruction’s relevant state from issue to commit, including result if any – replaces store buffer in the case of stores • store queue still needed if store-load reordering allowed Wh do I need renaming? UCF • Why do I need renaming? – Can predict branch, but then what? L: fld f0,0(r1) fadd f4,f0,f2 fst f4,0(r1) addi r1,r1,-8 bne r1,r2,L 3 Instruction Execution ¡ Issue: • get instruction from instruction queue issue instruction to RS if RS and ROB entry available stall otherwis • issue instruction to RS if RS and ROB entry available stall otherwise • locate operands in register file or ROB entry...
View Full Document

This note was uploaded on 08/22/2010 for the course CDA 5106 taught by Professor Staff during the Spring '08 term at University of Central Florida.

Page1 / 8

Lecture 21 - Modern Renaming (2010-03-30) - 1 University of...

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