PaRsk: PArallel-RiSK, A Pseudo-Hypervisor in hardware

I heard you like Risc, so I put risk in your Risc. :srs:
Ref: Hackers - Technobabble - YouTube
Languages: Mostly SV/C
Dev Board: Nexys A7: 100T

Your first projects aren’t the greatest things in the world, and they may have no money value, they may go nowhere, but that is how you learn – you put so much effort into making something right if it is for yourself.
— Steve Wozniak

Goals & Features : :innocent:

  1. Bare minimum Instruction sets “G + A + C” (General Compute, Atomic, Compress)
  2. RISC-V cores from scratch. SW Emulation >> HW
  3. Dynamically combine or remove cores from an user’s instance. (post bitstream)
  4. Isolated cores.
  5. Access cores via HW gui or over IP
  6. Half decent documentation. (It’s important.)
  7. Performance and efficiency metrics
  8. Website with webcam display for FPGA and an embedded VM
  9. Emulator testing with Gitlab CI
  10. Learn and help others learn.
  11. Finish it.
  • How do you design a RISC-V Processor? Where do you start?
    The entirety of the PaRsk Project, including the learning process; will be documented(or I will at least try to). Which makes learning about RISC-V design a more streamlined, concise, and fun. I assume the reader has a basic understanding of FPGAs, computer architecture & design, and HDLs. If not, feel free to review the links below.

  • RISC-V is open source; the future of efficient processing. And what is open source should be open to the public to easily learn. So tag along and join my on this RISC journey!

Handy Links:
The RISC-V Instruction Specs
RISC-V Main Github Page
RISC-V Reference Card (Instruction set cheat sheet)
Wiki: RISC Extension Naming Scheme
Paper: Optimized RISC-V Five-Sage Pipelining
YouTube Playlist: LMARV-1 Hardware RISC-V! (contains bugs, but is fixed)
YouTube Playlist: LMARV-1: reboot/redesign
PDF: RISC-V CPU Control, Pipelining Single-Cycle RV32-I
YouTube Playlist: Ben Eater’s 8-Bit Breadboard CPU!
YouTube Playlist: MIPS Single-Cycle Architecture
YouTube Playlist: [CSCE 611 Fall 2020]

Comp Design Refreshers:
YouTube: MIPS Data Path & Layout (not RISC-V)
Break down of an ISA Data path This video goes in depth, but it’s a bit dry.

Recommended Books:
Digital Design and Computer Architecture (Good intro, but uses MIPS for CPU portion)
Great Book on SystemVerilog: Simulation & Synthesis
Computer Architecture: A Quantitative Approach – 6th Edition


Just now really starting to really get the ball rolling :confused:
I’m doing this project on an iPad…
I’m working on it here! :

Even made a twitter account for it! : (still figuring it out)