Skip to content

Computer Architecture Project - Single Cycle Processor Datapath

Notifications You must be signed in to change notification settings

tyh77/Single-Cycle-Processor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Single-Cycle Processor

This is the VHDL implementation of a MIPS Single-Cycle Processor that I developed for the computer architecture course at my university. The processor is written entirely in VHDL and strictly "structural" in programming style i.e. no control flow (if/elsif/then/else etc.) or sequential statements. This processor fulfills a part of the MIPS instruction set architecture (ISA) and is able to perform arithmetic operations, logic comparison and operations, branch operations, register read/writes, memory read/writes, register-to-memory and memory-to-register operations.

This processor fulfills the following subset of the MIPS instruction set architecture:

  • arithmetic: add, addi, addu, sub, subu
  • logical: and, or, sll
  • data transfer: lw, sw
  • conditional branch: beq, bne, bgtz, slt, sltu

Deployment

This processor was tested and verified using ModelSim. We verify the functionality of the processor by feeding it binary MIPS instructions line-by-line and verify that all the operations are correctly interpreted, executed, and stored: cycle-by-cycle.

The top-level entity of the processor is "processor.vhd"

Built With

  • Notepad++ - Editor used for developing VHDL
  • ModelSim - Simulation tool for testing and verifying valid processor outputs

Acknowledgments

  • Course professor for project guidance
  • Course partners for co-development of the datapath

About

Computer Architecture Project - Single Cycle Processor Datapath

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages