Skip to content

Latest commit

 

History

History
17 lines (9 loc) · 737 Bytes

File metadata and controls

17 lines (9 loc) · 737 Bytes

Tomasulo-Algorithm

Tomasulo algorithm implementation and visualization

Introduction

A compiler for assembly code, Tomasulo's various micro-architectural units, mainly Load/Store buffers, integer adders, integer multipliers, and their respective reserved stations, are implemented as a virtual machine on top of that. I also implement a visual interface to show the state changes of the pipeline CPUs.

The algorithm is implemented in C++, and the visualization is implemented in Python.

Supported instruction sets

LW, SW, ADD, ADDI, SUB, AND, ANDI, BEQZ, J, HALT, NOOP

Architecture

arch