How to use this Program
Continue STEP 3: Execute the algorithm step by step
Now we are in the clock 6, all the instructions have been issued but there is data dependencies among the last 4 instructions with the 2 first instructions, therefore they can't start execution even when they have been issued. In this clock 6, the second instruction has finished executing and in the next clock will write its result, note that there are 3 instructions waiting for this result: MULTD F0,F2,F4 , SUBD F10,F0,F6 and ADDD F6,F8,F2
In clock 7, the Load instruction writes its result in the instruction station and forward the result to the Register file station, F2 holds now the value LD1, this value is send to all the units that were waiting for this result. Therefore the instruction MULTD F0,F2,F4 can start execution, the other two instructions SUBD F10,F0,F6 and ADDD F6,F8,F2 can't start execution yet because they still have data dependencies, check the field Qj in the Reservation Station to find out who are they waiting for.
In clock 17 the multiplication ends and in the next clock it will write its result, can you tell now which instructions are going to start execution?
As you figured it out, the instructions that were waiting to the multiplication to finish now have all its data and can start execution.
STEP 4: Going to the end of the algorithm
If you want to go to the end of the algorithm press the button Commit or hold the keys Alt-M, after finishing executing the algorithm you must press RESET if you want to run the algorithm again
STEP 5:
If you still have no clue of what is going on here, don't panic, try reading the textbook Computer Architecture A quantitative Approach Third Edtition, by Hennesy & Patterson, ISBN 1-55860-596-7, Morgan Kaufmann publisher, pages 184-196.