Assume you have a machine that has the following resources a
Assume you have a machine that has the following resources and executes Tomasulos algorithm.
a) Complete the table below listing the clock cycle in which the instruction completes each particular stage (assume R2 is available). For this problem assume that you must write back first before you can start execution if an instruction is waiting for a result.
b) What is the maximum number of instructions and their types that could be in progress within the CPU at any one time ?
c) The following is a list of operations that are performed during the issue stage. Explain why the order of these operations cannot be altered. What would happen if steps 2,3 were reversed?
1) Check if Reservation station available
2) Lookup source registers and copy either operand into V field or reservation station in to Q field
3) Rename destination register
| Unit | # Clock Cycles in Execution stage | # Res Stations |
| ALU1 | 4 | 2 |
| MULTIPLIER | 10 | 2 |
| LOAD1 | 2 | 2 |
Solution
number of instructions = 6
CPI = (2*4+2*10+2*2)/6
= 32/6
= 5.3
