This project implements a simplified 5-stage pipelined MIPS32 processor in Verilog and simulates it using a custom testbench. The design supports a basic instruction set and demonstrates pipelined execution, including register updates and memory access for calculating factorial using loop-based control.
pipe_MIPS32.vโ Verilog module for pipelined MIPS32 processor.test_mips32.vโ Testbench to simulate the processor and observe register/memory changes.mips.vcdโ Waveform dump generated after simulation (viewable in GTKWave or Vivado).README.mdโ This file.
- Two-phase clocked pipeline:
clk1andclk2 - 32 general-purpose registers
- 1024 32-bit memory locations
- Implements key instructions:
- R-type:
ADD,SUB,AND,OR,SLT,MUL - I-type:
ADDI,SUBI,SLTI,LW,SW,BEQZ,BNEQZ - Control:
HLT
- R-type:
- Simulates factorial computation using loop
- Xilinx Vivado (tested with 2024.2)
- Basic Verilog knowledge
- Open Vivado โ Create New Project โ Add
pipe_MIPS32.vandtest_mips32.v - Set
test_mips32as the top module. - Run behavioral simulation.
- Observe simulation output or open
mips.vcdin waveform viewer.