Clock Cycle 1

17
Score Board Solution Summary Assgn #2; SP2 Spring 06 Load / Store: 1 cycle Mult: 10 cycles Add/Sub: 2 cycles

description

Score Board Solution Summary Assgn #2; SP2 Spring 06 Load / Store: 1 cycle Mult: 10 cycles Add/Sub: 2 cycles. Clock Cycle 1. Clock Cycle 2. Clock Cycle 3. Clock Cycle 4. Clock Cycle 5. Clock Cycle 7. Clock Cycle 8. Clock Cycle 9. Clock Cycle 10. Clock Cycle 12. Clock Cycle 13. - PowerPoint PPT Presentation

Transcript of Clock Cycle 1

Page 1: Clock Cycle 1

Score Board Solution SummaryAssgn #2; SP2 Spring 06

Load / Store: 1 cycleMult: 10 cycles

Add/Sub: 2 cycles

Page 2: Clock Cycle 1

Clock Cycle 1

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1ADDD F0 F6 F8MULT F8 F6 F4SUBD F4 F10 F0ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer Yes Load F6 R3 YesMult1 NoMult2 NoAdd NoDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F301 FU integar

Page 3: Clock Cycle 1

Clock Cycle 2

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2ADDD F0 F6 F8 2MULT F8 F6 F4SUBD F4 F10 F0ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer Yes Load F6 R3 YesMult1 NoMult2 NoAdd Yes Add F0 F6 F8 Int No YesDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F302 FU Add integar

Page 4: Clock Cycle 1

Clock Cycle 3

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3ADDD F0 F6 F8 2MULT F8 F6 F4 3SUBD F4 F10 F0ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer Yes Load F6 R3 YesMult1 Yes Mult F8 F6 F4 Int No YesMult2 NoAdd Yes Add F0 F6 F8 Int No YesDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F303 FU Add Int Mult

Page 5: Clock Cycle 1

Clock Cycle 4

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4 F6 is now available forADDD F0 F6 F8 2 ADD & Mult in next cycleMULT F8 F6 F4 3SUBD F4 F10 F0ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer Yes Load F6 R3 YesMult1 Yes Mult F8 F6 F4 Int No YesMult2 NoAdd Yes Add F0 F6 F8 Int No YesDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F304 FU Add Mult

Page 6: Clock Cycle 1

Clock Cycle 5

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5MULT F8 F6 F4 3 5SUBD F4 F10 F0ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No10 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 No2 Add Yes Add F0 F6 F8 Yes Yes

Divide NoRegister result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F305 FU Add Mult

Page 7: Clock Cycle 1

Clock Cycle 7

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7MULT F8 F6 F4 3 5SUBD F4 F10 F0ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No8 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 No0 Add Yes Add F0 F6 F8 Yes Yes

Divide NoRegister result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F307 FU Add Mult

Page 8: Clock Cycle 1

Clock Cycle 8

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5SUBD F4 F10 F0ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No7 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 NoAdd NoDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F308 FU Mult

Page 9: Clock Cycle 1

Clock Cycle 9

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5SUBD F4 F10 F0 9ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No6 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 NoAdd Yes Sub F4 F10 F0 Yes YesDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F309 FU Add Mult

Page 10: Clock Cycle 1

Clock Cycle 10

Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5SUBD F4 F10 F0 9 10ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No5 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 No2 Add Yes Sub F4 F10 F0 Yes Yes

Divide NoRegister result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3010 FU Add Mult

Page 11: Clock Cycle 1

Clock Cycle 12Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5SUBD F4 F10 F0 9 10 12ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No3 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 No0 Add Yes Sub F4 F10 F0 Yes Yes

Divide NoRegister result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3012 FU Add Mult

Page 12: Clock Cycle 1

Clock Cycle 13Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5SUBD F4 F10 F0 9 10 12 13ADDD F6 F4 F10

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No2 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 NoAdd N0Divide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3013 FU Mult

Page 13: Clock Cycle 1

Clock Cycle 14Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5SUBD F4 F10 F0 9 10 12 13ADDD F6 F4 F10 14

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No1 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 NoAdd Yes Add F6 F4 F10 Yes YesDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3014 FU Add Mult

Page 14: Clock Cycle 1

Clock Cycle 15Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5 15SUBD F4 F10 F0 9 10 12 13ADDD F6 F4 F10 14 15

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer No0 Mult1 Yes Mult F8 F6 F4 Yes Yes

Mult2 No2 Add Yes Add F6 F4 F10 Yes Yes

Divide NoRegister result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3015 FU Add Mult

Page 15: Clock Cycle 1

Clock Cycle 16Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5 15 16SUBD F4 F10 F0 9 10 12 13ADDD F6 F4 F10 14 15

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer NoMult1 N0Mult2 No

1 Add Yes Add F6 F4 F10 Yes YesDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3016 FU Add

Page 16: Clock Cycle 1

Clock Cycle 17Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5 15 16SUBD F4 F10 F0 9 10 12 13ADDD F6 F4 F10 14 15 17

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer NoMult1 N0Mult2 No

0 Add Yes Add F6 F4 F10 Yes YesDivide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3017 FU Add

Page 17: Clock Cycle 1

Clock Cycle 18Instruction status Read ExecutionWriteInstruction j k Issue operandscompleteResultLD F6 100+ R3 1 2 3 4ADDD F0 F6 F8 2 5 7 8MULT F8 F6 F4 3 5 15 16SUBD F4 F10 F0 9 10 12 13ADDD F6 F4 F10 14 15 17 18

Functional unit status dest S1 S2 FU for jFU for kFj? Fk?TimeName Busy Op Fi Fj Fk Qj Qk Rj Rk

Integer NoMult1 N0Mult2 NoAdd N0Divide No

Register result status

Clock F0 F2 F4 F6 F8 F10 F12 ... F3018 FU