Skip to content

a smiple 8bit cpu implemented in verilog and tested on FPGA for understanding how CPU works

Notifications You must be signed in to change notification settings

mohdfahad12328/scpu

Repository files navigation

SCPU

"scpu"

Introduction

SCPU is a simple 8-bit CPU which is inspired by RISC and CISC Architectures and designs

Implementation of SCPU is done in verilog and tested on FPGA

  • Here is the ppt for mid report of project ppt

Features

  • 8-bit data bus
  • 16-bit address bus (64kb RAM space)
  • 8 8-bit general purpose registers (r0 to r7)
  • separate buses for data and address
    • so pair of consecutive registers can used as pointers
  • many instructions can directly work on data from memory unlike in RISC machines
  • memory mapped IO
  • tools such as assembler are provided

Instructions

ISA

opcodes can be found in google sheets inst

Architecture

Examples

finding nth fibonacci number

fib_res

Future Goals

  • implement stack and remaining ALU operations
  • Emulator for testing without hardware
  • More test cases
  • adding more hardware features
    • UART boot loader
    • interrupts

Contribution

I am open for ideas, discussions and any kind of contribution

About Me

I started learning about how CPU works and how to use an FPGA to implement the hardware. lot more to learn and really excited about it

You can contact me on twitter