: addi x5, x0, 10 addi x6, x0, 0 jal x0, block_b block_a: add x6, x6, x7 addi x10, x0, 1 addi x11, x6, 0 ecall jal x0, end block_b: addi x7, x0, 0 addi x8, x0, 0 jal x0, block_c block_c: sub x9, x5, x7 bge x8, x9, block_a add x7, x7, x8 add x12, x8, x7 addi x8, x8, 1 jal x0, block_c end:
main:
addi x5, x0, 10
addi x6, x0, 0
jal x0, block_b
block_a:
add x6, x6, x7
addi x10, x0, 1
addi x11, x6, 0
ecall jal x0, end
block_b:
addi x7, x0, 0
addi x8, x0, 0
jal x0, block_c
block_c:
sub x9, x5, x7
bge x8, x9, block_a
add x7, x7, x8
add x12, x8, x7
addi x8, x8, 1
jal x0, block_c
end:
Using any combination of techniques, identify and resolve all hazards in the program given below. Draw execution tables showing the pipelined instructions before and after implementing your hazard resolution method to illustrate how your solution fixes the issue. For simplicity, you do not need to draw the table for every instruction in the program, only the instructions affected by each hazard you identify.
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 2 images