Tomasulo Theory Flashcards
How does the Tomasulo algorithm improves the instruction level parallelism?
It uses implicit register renaming
What are the dependencies that the tomasulo algorithm deals with?
The write after read and right after right hazards
How is the register renaming implemented?
It uses reservation stations placed in front of the different function unities
How does Tomasulo algorithm solves the right after read and write after right hazards?
By remaining results by using reservation stations numbers instead of register file numbers
What is the Basic idea behind the Tomasulo algorithm?
The results are passed to the functional units from reservation stations, not through registers, over a common data bus that broadcasts results to all functional units and to store buffers
What are the Qj and Qk components in the reservation station?
They are the pointers to the reservation station responsible to produce the values of the source operands, when they are zero, the value of the source operand is ready
What are the contents of a load/store buffer
Load/store buffers have busy and address field.
Store buffers also have a FU field, which corresponds to the value to be written in the given address
What are the stages of the Tomasulo dynamic scheduling algorithm
First issue, when there are checks for structural hazards in reservation stations
Second, start execute, starts when Operands are ready (Which avoids RAW hazard) and the FU is available (check for structural hazards)
Finally, write results, write results on common databus to reservation stations, store buffers, and RF
What are the key differences between the Tomasulo and the scoreboard dynamic scheduling algorithms?
First, in the Tomasulo technique, the structural issues are checked on the reservation stations while for the scoreboard algorithm, the structural hazards are checked for the functional units.
Second, WAR and WAW are avoided by both renaming and stalling for Tomasulo and scoreboard, respectively
Finally, in the Tomasulo algorithm, the control is distributed on the reservation stations. Differently in the scoreboard technique, the control is centralized through the scoreboard.
What are the drawback in the Tomasulo dynamics scheduling algorithm?
The complexity (large amount of hardware and power dissipation), many associative stores, performance limited by common databus
Take a look at the 3 picture in the ACA album and describe the steps taken by the Tomasulo algorithm
Take a look at the 3S picture