Skip to content

Implementation of a multi-cycle RISC-V processor for executing a RISC-V assembly code

Notifications You must be signed in to change notification settings

parhamsoltani/Multicycle_RISCV

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multi-cycle RISC-V Processor

This project focuses on designing and implementing a multi-cycle RISC-V processor using microprogrammed control. The processor is capable of executing R-type and I-type instructions, along with some other B_type like BNE and BGE.

Description

The processor consists of three main units: Memory, Data path and Controller.

In the multi-cycle design, a combined memory for instructions and data is used for more realistic and feasible operation. This enables reading the instruction in one cycle and reading or writing the data in another cycle. Data path design focuses on the design of ALU and other functional units as well as accessing the registers and memory. Control path design focuses on the design of the state machines to decode instructions and generate the sequence of control signals necessary to appropriately manipulate the data path.

figure1

figure2

figure3

Processsor Output:

RISCV_Core_Waveform

About

Implementation of a multi-cycle RISC-V processor for executing a RISC-V assembly code

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published