Our simulation of Tomasulo’s algorithm is different from any other in that it is very user friendly; it parses code from text; and it is visually oriented through our Gantt chart approach.

Simulator main screen.
We implemented Tomasulo’s algorithm in C# for the .Net Framework as part of a graduate class (Advanced Computer Architecture) project at UT Pan American. Our program features a small but flexible instruction set (ld, sd, set, add, mul, div, and j), and it features a unique Gantt chart visualization of the simulated execution cycles. Our program also has a built-in parser with some limited color coding.

Gantt chart output.
Our simulation of Tomasulo’s algorithm is different from any other in that it is very user friendly; it parses code from text; and it is visually oriented through our Gantt chart approach. Using the Gantt chart, one can easily tell what instructions are being executed and stalled, as well as what instruction is causing the stall. Stall, Read, and Write-back cycles are indicated by color-coding in the Gantt chart. These qualities make our program very suitable to teach and learn Tomasulo’s algorithm.
Read more