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:
clk1
andclk2
- 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.v
andtest_mips32.v
- Set
test_mips32
as the top module. - Run behavioral simulation.
- Observe simulation output or open
mips.vcd
in waveform viewer.