Skip to content

5-stage Pipelined Implementation of RV32I ISA; includes single cycle implementation of the same and other assignments from EE2003 Computer Organisation (Fall 2020, IITM)

License

Notifications You must be signed in to change notification settings

arjunmenonv/EE2003-Computer-Organisation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EE2003-Computer-Organisation

This repository contains the HDL models (verilog) of the components of a 5-stage Pipelined implementation of an RV32I (32-bit Integer riscv ISA) processor, along with the corresponding verilog testbenches. Also included is a single cycle implementation which was done as part of assignments for the EE2003 Computer Organisation Course in Fall 2020 at IITMadras.

assign_1: RTL model of a sequential (shift-and-add) multiplier for two 8-bit integers.

assign_2: riscv assembly code for computing the Nth Fibonacci number.

singlecycle_cpu: (Assignments 3, 5 and 6) Implementation of the ALU (Assign3), Load-Store (Assign5) and Branch Instructions (Assign6) of the RV32I instruction set.

Reference for hardware architecture: Computer Organization and Design, RISC-V Edition by David A. Patterson, John L. Hennessy

pipelinedCPU: Extension of the Single Cycle CPU for a 5-stage pipelined design, with Forwarding and Stalling to mitigate Data and Control Hazards.

periphIntfc: Includes bus interface unit, HDL model of a sample output peripheral and a C application for implementing the printf function, interfaced with the single cycle CPU implementation.

synthCPU: Includes tcl and yosys scripts for synthesising the single cycle CPU on a Xilinx Artix-7 class FPGA, along with minor modifications (without affecting functionality) in the HDL model for the register file.

About

5-stage Pipelined Implementation of RV32I ISA; includes single cycle implementation of the same and other assignments from EE2003 Computer Organisation (Fall 2020, IITM)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages