Skip to content

A trivial riscv cpu with tomasulo algorithm implemented in Verilog HDL. Support out-of-order execution and pipline and can run in FPGA with at 100MHz.

License

Notifications You must be signed in to change notification settings

cla7aye15I4nd/trivial-riscv-cpu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

trivial-riscv

This project is a trivial riscv cpu with tomasulo implemented in Verilog HDL, which is a course project of Computer Architecture, ACM Class @ SJTU.

越是强大的设计,有时可能会令人越痛苦

Design

  • name: Error Isla
  • ISA: RISCV 32I
  • tomasulo algorithm (out-of-order execution)
  • 3-stages pipeline (fetch, dispatch, execute)
  • 2-set associative 512B Instruction Cache (Replacing Policy: FIFO)
  • IF Prefetch: Non-stop fetching instruction
  • multiple ALU(Arithmetic Logic Unit)
  • Segment LED timer, LED light game
  • Direct map Data Cache
  • Store Buffer

Performance

  • stably running on FPGA (200MHz, 81920 hours)
  • IPC = analysing

Todo

  • Load buffer
  • Instruction dual issue
  • Branch Prediction(BTB)
  • Interactive IO

Reference

About

A trivial riscv cpu with tomasulo algorithm implemented in Verilog HDL. Support out-of-order execution and pipline and can run in FPGA with at 100MHz.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published