The Wayback Machine - https://web.archive.org/web/20200916092630/https://github.com/GodTamIt/tomasulo-simulation
Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
inc
 
 
src
 
 
 
 
 
 
 
 

README.md

Tomasulo Simulation

Introduction

This project is an educational simulation of the Tomasulo algorithm, a hardware algorithm for out-of-order scheduling and execution of computer instructions, written in C++.

Implementation

Below are some of the key concepts of the simulation's algorithm:

  • Reorder Buffer: simulates branching resolution using a reorder buffer
  • Register Renaming: a technique to minimize data hazards
  • Result Buses: unlike the original Tomasulo algorithm, which contains a single Common Data Bus (CDB), there can be multiple result buses to update the state of the pipeline.
  • Reservation Station Scheduling: units of scheduling managing an instruction fired to a Function Unit
  • Specialized Function Units: specialized hardware units specific to different types of instructions
  • Gselect Branch Prediction: a global branch prediction scheme that keeps a pattern history table and concatenates the global branch history

About

A simulation of the Tomasulo algorithm, a hardware algorithm for out-of-order scheduling and execution of computer instructions, written in C++.

Topics

Resources

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.