MIPS-Processor-Simulator

MIPS Processor Simulator built in C

MIPS (Microprocessor without Interlocked Pipeline Stages) is a family of RISC instruction set architectures. The MIPS Processors were designed in 1984 by a group of Stanford Researchers.

In my 2nd year at University, I took the “Introduction to Computer Systems” course where we learnt about basic computer architecture and processor design. As part of this, we looked at multicycle processors and how instructions are executed.

MCMIPS

Implementation

For the second coursework, we had to implement a MIPS Processor Simulator in C which would follow the multicycle processor design we were learning at the time.

To implement this, we followed the design of the MIPS Processor, defining all the different states, opcodes, and instruction types of the processor. The actual implementation of the processor is a Finite-State Machine which would update the signals sent to the Control Unit.

book-FSM

I also implemented a basic memory hierarchy in C which would mock the registers on the MIPS Processor.

Results

For this assignment, I was awarded 100%.