Project:
The goal of this term-project is to implement a simulator of MIPS pipelined processors for handling data hazards. For the implementation, you can use C, C++, python.However, your processor simulator should work as follows:
The execution command of your data hazard handler:
dhh_simulator
Input: : the file contains MIPS instruction sequences
In an assembly language level
Only ADD, ADDI, OR, ORI, LW, SW are used
Suppose that only register $1 ~ $8 are used
Example:
Output:
In the output file, the following information must be contained.
Control signal values at each clock cycle
Considerations
You MUST consider pipeline stalls caused by load-use data hazards
When the signal value is invalid, then write 0
You can change the format of output files
Term-project schedule and submission
The compressed file should contain
The source code of your simulator with detailed comments
Documentation (the most important thing!)
It must include all about your implementation
Test input files and outputs which you used in this project
The test input files are not given. You should make the test files, by yourself,which can examine all the token patterns.