schedule8:09 AM
calendar_todayWednesday, January 1, 2026
location_onUganda • EAT (UTC+3)

HDL: From Zero to Mastery

Your Complete FPGA Learning Journey

Welcome, David!
A fresh start to the new year. Today, you begin mastering FPGAs.

Your Goal

  • → Build industrial controllers with MODBUS, CAN Bus, RS-485
  • → Run Rust on a soft-core CPU inside your FPGA
  • → Create USB devices for personal research
  • → Control multiple Picos from a central FPGA hub
auto_awesome

Why You're Here

For years, you've watched others build hardware that thinks, chips that reason, and devices that bridge the digital and physical worlds. You've read the success stories, seen the possibilities, and felt that pull toward something more fundamental than software alone.

Today marks the end of spectating. January 1, 2026 is your line in the sand.

You're not here to dabble. You're here to master FPGAs, to think in hardware, and to build systems that run at the speed of electrons.

The journey ahead:

  • check_circleWeek 1-2: The foundations. It will feel slow. That's normal.
  • check_circleWeek 3-6: Your first real circuits. LEDs, counters, interfaces.
  • check_circleWeek 7-9: Communication protocols. The industrial world opens up.
  • check_circleWeek 10-12: Your masterpiece. A complete system running Rust on hardware you designed.

By April 2026, you won't just understand FPGAs. You'll wield them.

construction

What You'll Build in 2026

Six milestone projects that take you from blinking LEDs to running Rust on custom silicon

lightbulbWeek 3

LED Controller with PWM

Your first synthesizable design. Breathing LEDs controlled by custom logic.

Read Morearrow_forward
cableWeek 5

UART Serial Bridge

Connect your FPGA to the world. Send and receive data at 115200 baud.

Read Morearrow_forward
memoryWeek 7

SPI Flash Controller

Read and write to external memory. Handle real-world timing constraints.

Read Morearrow_forward
precision_manufacturingWeek 9

MODBUS RTU Controller

Industrial automation protocol. Control PLCs and sensors.

Read Morearrow_forward
hubWeek 10

Multi-Pico Orchestrator

Central FPGA hub managing multiple Raspberry Pi Picos via UART and SPI.

Read Morearrow_forward
rocket_launchWeek 12

RISC-V Soft Core + Rust

Your masterpiece: A CPU you instantiated, running Rust code you wrote, on an FPGA you programmed.

Read Morearrow_forward

Each project builds on the last. By April, you'll have a portfolio that proves you don't just read about hardware—you create it.

Phase 1: Fundamentals

Weeks 1-2 • 5 Essential Lessons

psychology
1

The Mental Model

Understanding what HDL actually is (not programming!)

Master the fundamental mental shift from sequential programming to parallel hardware description. This is the key to everything.

check_circleWhy HDL is not programming
check_circleThinking in parallel circuits
check_circleUnderstanding gates and wires
check_circleYour first mental model
code
2

Your First Module

Writing and understanding basic Verilog modules

Write your first Verilog module with proper syntax. Learn module structure, ports, and basic assignments.

check_circleModule declaration syntax
check_circleInput and output ports
check_circleWire vs reg fundamentals
check_circleSimple combinational logic
science
3

Simulation & Testbenches

Testing your designs before hardware

Learn to write testbenches and simulate your designs. See waveforms and verify behavior before touching hardware.

check_circleWriting testbenches in Verilog
check_circleUsing Icarus Verilog simulator
check_circleReading GTKWave waveforms
check_circleDebugging with simulation
swap_horiz
4

Combinational vs Sequential

The two fundamental types of logic

Understand the critical difference between combinational and sequential logic. Learn when to use each type.

check_circleAlways blocks and sensitivity
check_circleBlocking vs non-blocking
check_circleClock domains and registers
check_circleEdge-triggered logic
refresh
5

Counters & State Machines

Building your first sequential circuits

Design counters and finite state machines. These patterns form the foundation of all digital systems.

check_circleBinary counters with enable
check_circleState machine design patterns
check_circleOne-hot vs binary encoding
check_circleReal-world state machine example
lock

Phase 2: Real Hardware

Unlocks after completing Phase 1 • UART, SPI, I2C implementations