Skip to content

Unconventional MIPS Architecture CPU with Pipeline structure with fewer stalls and advanced units to ensure smallest possible CPI. Designed in Verilog and contains simulation and implementation for Xilinx Basys 3 board

License

Notifications You must be signed in to change notification settings

dbaeka/Pipelined-CPU

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

32-BIT PIPELINED MIPS PROCESSOR

BEFORE YOU BEGIN

Welcome to this repository! In this repository is a uniquely designed 32 bit MIPS pipelined processor. The base design is based on the Patterson design but with modified control to ensure faster and less stalls, thus improving the Clocks Per Instruction (CPI). Only a few instruction sets were implemented, enough to run any sorting algorithm you commonly know. The bubble sort MIPS example is attached in examples/bubblesort.mem. The design language is Verilog, and is both behavioral using the test bench attached and synthesisable on an FPGA. The uploaded code was tested on Xilinx’s Basys 3 Board.


The instructions supported are:

  • The memory-reference instructions load word (lw) and store word (saw)
  • The arithmetic-logical instructions add, addi, sub, and, andi, or, and slt
  • The jumping instructions branch equal (beq), branch not equal (bne), jump register (jr), jump and link (jal), and jump (j)

RTL DESIGN

About

Unconventional MIPS Architecture CPU with Pipeline structure with fewer stalls and advanced units to ensure smallest possible CPI. Designed in Verilog and contains simulation and implementation for Xilinx Basys 3 board

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published