
Explore how to write assembly instructions, manipulate registers and memory with load and store operations, and use immediate values, addressing, and branching in a hands-on lab.
Add a gpio peripheral to a RISC-V SoC using a simple bus and address decoding. Map a 32-bit register at 0x44000 to control external LEDs.
Explore the uart transmitter interface in a riscv soc from scratch lab, configuring clock frequency and baud rate, and streaming 8-bit data with input valid and output ready signals.
Program the FPGA and observe real-time LED blinking and host PC communication. Tune the build, run synthesis, place and route, assign pins, program with bootie, and verify UART output.
Are you eager to explore electronics or bridge a knowledge gap in System-on-Chip design? Maybe you're a hobbyist eager to build SoCs for your projects. If this sounds like you, welcome!
In this course, we'll dive into creating System-on-Chips. From learning assembly and C code to simulating RTL and seeing the magic of an FPGA.
AGENDA
The agenda for this course is a breakdown of everything you need to know to build the final project.
The final project is a working System-on-chip with some peripherals: mainly a GPIO module and a UART transmitter.
• Section 1: Introduction
• Section 2: Processors
• Section 3: Software, Compiler and Linker
• Section 4: Building simple SoC
• Section 5: Adding a peripheral to the SoC
• Section 6: Accelerated Advanced IP Design for the SoC
• Section 7: UART IP Core
• Section 8: FPGA Emulation
• +10 Labs
You will …
• Learn the first principles of how complex computer chips work.
• Learn how processors execute machine code.
• Learn RISC-V ISA.
• Learn how to work with make files, compilers, and linker scripts.
• Learn how to add external peripherals and use register maps.
• Learn the basics of the FPGA flow.
• Have hands-on experience with designing the RISC-V SoC, Writing and debugging software for it, and implementing it on an FPGA board.
Join a community of enthusiasts and learners. This isn't just theory; you'll gain hands-on knowledge and bring your SoC designs to life!