Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Given the following sequence of instructions to be executed on a 5-stage pipelin

ID: 3810605 • Letter: G

Question

Given the following sequence of instructions to be executed on a 5-stage pipelined datapath as descripted in our textbook: a. List true dependencies in the given sequence in the format of (register_involved. producer_instruction, consumer_instruction). Use labels to indicate instructions. For example: ($0, I10, I11) means a true dependence between instruction I10 and I11: value of register $0 is generated by 110 and used by I11. Do NOT list output or anti-dependences. b. If there is no forwarding or hazard detection, no reordering allowed, insert nops to ensure correct execution. c. Repeat b. but allow instruction reordering -- nops should be inserted only when a hazard cannot be avoided by reordering instructions. d. If there is full forwarding support, draw multiple-cycled pipeline diagram to show the execution of the original sequence (NOT the reordered version). Use arrows to mark forwardings clearly in your diagram. Each arrow should point from instruction/stage that generates the data rightarrow instruction/stage that consumes the data. Also mark the necessary pipeline stalls.

Explanation / Answer

a)Dependencies list:-

I1: $12,$10
I2: [$8]
I3: [$9]+(4*4)
I4: $12,$8
I5: [$9]

b)
I1: add $8,$12,$10
nop
I2:sw $9,0($8)
nop
nop
nop
lw $8,4($9)
nop
and $12,$12,$8
nop
sw $8,0($9)

c)

Re-ordering:-

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote