inflearn logo

RISC-V CPU Design for FPGA Implementation ① Learning RV32I Instruction Structure and Execution Principles with Python

When people decide to build a CPU, they usually start by looking for a circuit diagram. However, the moment they unfold the schematic, unanswerable questions arise: Why must this block be here? Why are there two ports for reading registers? The answers all lie within the instructions. Once you know what an instruction requires, the necessary circuitry is determined. It doesn't work the other way around. There are already many RISC-V lectures available. However, most of them simply display values on a slide, say "This is how it works," and move on. Students have no way to verify if those values are correct. This course provides a Python-based instruction execution simulator. When you type `run ADD`, the machine code is assembled on the spot, the 32 bits are laid out by field, and you can see exactly how the registers change on your screen. Every number in the textbook is a result of this tool's execution, and it can be reproduced identically on your screen. Commercial debuggers require licenses, and simulators often have installation barriers. This tool only requires Python. You don't need a board, a license, or a complex setup. This is a process of executing all 40 RV32I instructions without skipping a single one, discovering for yourself what the circuit needs to do.

2 learners are taking this course

Level Basic

Course period Unlimited

riscv
riscv
cpu-architecture
cpu-architecture
instruction-set-architecture
instruction-set-architecture
FPGA
FPGA
Computer Architecture
Computer Architecture
riscv
riscv
cpu-architecture
cpu-architecture
instruction-set-architecture
instruction-set-architecture
FPGA
FPGA
Computer Architecture
Computer Architecture

Want to know what questions other learners frequently ask?

No questions have been posted yet.
Post the first question and grow with Inflearn!

Limited time deal

$23.10

19%

$28.60