DOC PREVIEW
Berkeley COMPSCI 252 - Scoreboard

This preview shows page 1-2-17-18-19-35-36 out of 36 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 36 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

EECS 252 Graduate Computer Architecture Lec 6 - ScoreboardScoreboard: a bookkeeping techniqueScoreboard Architecture (CDC 6600)Four Stages of Scoreboard ControlSlide 5Three Parts of the ScoreboardScoreboard ExampleDetailed Scoreboard Pipeline ControlScoreboard Example: Cycle 1Scoreboard Example: Cycle 2Scoreboard Example: Cycle 3Scoreboard Example: Cycle 4Scoreboard Example: Cycle 5Scoreboard Example: Cycle 6Scoreboard Example: Cycle 7Scoreboard Example: Cycle 8a (First half of clock cycle)Scoreboard Example: Cycle 8b (Second half of clock cycle)Scoreboard Example: Cycle 9Scoreboard Example: Cycle 10Scoreboard Example: Cycle 11Scoreboard Example: Cycle 12Scoreboard Example: Cycle 13Scoreboard Example: Cycle 14Scoreboard Example: Cycle 15Scoreboard Example: Cycle 16Scoreboard Example: Cycle 17Scoreboard Example: Cycle 18Scoreboard Example: Cycle 19Scoreboard Example: Cycle 20Scoreboard Example: Cycle 21Scoreboard Example: Cycle 22Faster than light computation (skip a couple of cycles)Scoreboard Example: Cycle 61Scoreboard Example: Cycle 62Review: Scoreboard Example: Cycle 62CDC 6600 ScoreboardEECS 252 Graduate Computer Architecture Lec 6 - ScoreboardDavid CullerElectrical Engineering and Computer SciencesUniversity of California, Berkeleyhttp://www.eecs.berkeley.edu/~cullerhttp://www-inst.eecs.berkeley.edu/~cs2521/28/2004EECS 150, Fa04, Lec XX-topic2Scoreboard: a bookkeeping technique•Out-of-order execution divides ID stage:1. Issue—decode instructions, check for structural hazards2. Read operands—wait until no data hazards, then read operands•Scoreboards date to CDC6600 in 1963•Instructions execute whenever not dependent on previous instructions and no hazards. •CDC 6600: In order issue, out-of-order execution, out-of-order commit (or completion)–No forwarding!–Imprecise interrupt/exception model for now1/28/2004EECS 150, Fa04, Lec XX-topic3Scoreboard Architecture(CDC 6600)Functional UnitsRegistersFP MultFP MultFP MultFP MultFP DivideFP DivideFP AddFP AddIntegerIntegerMemorySCOREBOARDSCOREBOARD1/28/2004EECS 150, Fa04, Lec XX-topic4Four Stages of Scoreboard Control•Issue—decode instructions & check for structural hazards (ID1)–Instructions issued in program order (for hazard checking)–Don’t issue if structural hazard–Don’t issue if instruction is output dependent on any previously issued but uncompleted instruction (no WAW hazards) •Read operands—wait until no data hazards, then read operands (ID2)– All real dependencies (RAW hazards) resolved in this stage, since we wait for instructions to write back data.–No forwarding of data in this model!1/28/2004EECS 150, Fa04, Lec XX-topic5Four Stages of Scoreboard Control•Execution—operate on operands (EX)–The functional unit begins execution upon receiving operands. When the result is ready, it notifies the scoreboard that it has completed execution. •Write result—finish execution (WB)–Stall until no WAR hazards with previous instructions:Example: DIVD F0,F2,F4 ADDD F10,F0,F8 SUBD F8,F8,F14CDC 6600 scoreboard would stall SUBD until ADDD reads operands1/28/2004EECS 150, Fa04, Lec XX-topic6Three Parts of the Scoreboard•Instruction status:Which of 4 steps the instruction is in•Functional unit status:—Indicates the state of the functional unit (FU). 9 fields for each functional unit Busy: Indicates whether the unit is busy or notOp: Operation to perform in the unit (e.g., + or –)Fi: Destination registerFj,Fk: Source-register numbersQj,Qk: Functional units producing source registers Fj, FkRj,Rk: Flags indicating when Fj, Fk are ready•Register result status—Indicates which functional unit will write each register, if one exists. Blank when no pending instructions will write that register1/28/2004EECS 150, Fa04, Lec XX-topic7Scoreboard ExampleInstruction status:Read Exec WriteInstruction j kIssue OperCompResultLD F6 34+ R2LD F2 45+ R3MULTD F0 F2 F4SUBD F8 F6 F2DIVD F10 F0 F6ADDD F6 F8 F2Functional unit status:dest S1 S2 FU FU Fj? Fk?Time NameBusy Op Fi Fj Fk Qj Qk Rj RkInteger NoMult1 NoMult2 NoAdd NoDivide NoRegister result status:ClockF0 F2 F4 F6 F8 F10 F12 ... F30FU1/28/2004EECS 150, Fa04, Lec XX-topic8Detailed Scoreboard Pipeline ControlRead operandsExecution completeInstruction statusWrite resultIssueBookkeepingRj No; Rk Nof(if Qj(f)=FU then Rj(f) Yes);f(if Qk(f)=FU then Rj(f) Yes); Result(Fi(FU)) 0; Busy(FU) NoBusy(FU) yes; Op(FU) op; Fi(FU) `D’; Fj(FU) `S1’; Fk(FU) `S2’; Qj Result(‘S1’); Qk Result(`S2’); Rj not Qj; Rk not Qk; Result(‘D’) FU;Rj and RkFunctional unit doneWait untilf((Fj(f)Fi(FU) or Rj(f)=No) & (Fk(f)Fi(FU) or Rk( f )=No))Not busy (FU) and not result(D)1/28/2004EECS 150, Fa04, Lec XX-topic9Scoreboard Example: Cycle 1Instruction status:Read Exec WriteInstructionj kIssue OperCompResultLD F6 34+ R2 1LD F2 45+ R3MULTD F0 F2 F4SUBD F8 F6 F2DIVD F10 F0 F6ADDD F6 F8 F2Functional unit status:dest S1 S2 FU FU Fj? Fk?Time NameBusy Op Fi Fj Fk Qj Qk Rj RkInteger Yes Load F6 R2 YesMult1 NoMult2 NoAdd NoDivide NoRegister result status:ClockF0 F2 F4 F6 F8 F10 F12 ... F301 FU Integer1/28/2004EECS 150, Fa04, Lec XX-topic10Scoreboard Example: Cycle 2Instruction status:Read Exec WriteInstruction j kIssue OperCompResultLD F6 34+ R2 1 2LD F2 45+ R3MULTD F0 F2 F4SUBD F8 F6 F2DIVD F10 F0 F6ADDD F6 F8 F2Functional unit status:dest S1 S2 FU FU Fj? Fk?Time NameBusy Op Fi Fj Fk Qj Qk Rj RkInteger Yes Load F6 R2 YesMult1 NoMult2 NoAdd NoDivide NoRegister result status:ClockF0 F2 F4 F6 F8 F10 F12 ... F302 FU Integer•Issue 2nd LD?1/28/2004EECS 150, Fa04, Lec XX-topic11Scoreboard Example: Cycle 3Instruction status:Read Exec WriteInstruction j kIssue OperCompResultLD F6 34+ R2 1 2 3LD F2 45+ R3MULTD F0 F2 F4SUBD F8 F6 F2DIVD F10 F0 F6ADDD F6 F8 F2Functional unit status:dest S1 S2 FU FU Fj? Fk?Time NameBusy Op Fi Fj Fk Qj Qk Rj RkInteger Yes Load F6 R2 NoMult1 NoMult2 NoAdd NoDivide NoRegister result status:ClockF0 F2 F4 F6 F8 F10 F12 ... F303 FU Integer•Issue MULT?1/28/2004EECS 150, Fa04, Lec XX-topic12Scoreboard Example: Cycle 4Instruction status:Read Exec WriteInstruction j kIssue OperCompResultLD F6 34+ R2 1 2 3 4LD F2 45+ R3MULTD F0 F2 F4SUBD F8 F6 F2DIVD F10 F0 F6ADDD F6 F8 F2Functional unit status:dest S1 S2 FU FU Fj? Fk?Time NameBusy Op Fi Fj Fk Qj Qk Rj RkInteger NoMult1 NoMult2 NoAdd NoDivide NoRegister result status:ClockF0 F2 F4 F6 F8 F10 F12 ... F304 FU Integer1/28/2004EECS 150, Fa04, Lec


View Full Document

Berkeley COMPSCI 252 - Scoreboard

Documents in this Course
Quiz

Quiz

9 pages

Caches I

Caches I

46 pages

Lecture 6

Lecture 6

36 pages

Lecture 9

Lecture 9

52 pages

Figures

Figures

26 pages

Midterm

Midterm

15 pages

Midterm

Midterm

14 pages

Midterm I

Midterm I

15 pages

ECHO

ECHO

25 pages

Quiz  1

Quiz 1

12 pages

Load more
Download Scoreboard
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Scoreboard and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Scoreboard 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?