2026-08-22
Channel: FPGA Discovery (Learning How to Work with FPGAs) (2370 subscribers)
This is the payoff episode of a three-part series that walks you all the way from SPI flash protocol theory into a working Verilog controller running on real hardware. Parts 1 and 2 covered the flash memory datasheet and the SPI transaction model; Part 3 is where the abstractions turn into synthesizable RTL.
What makes this worth watching is the ground-up approach. Rather than dropping a vendor IP core into a block diagram, the author designs the state machine, chip-select timing, and shift-register logic by hand. That means you actually learn why a flash controller needs particular clock relationships, how command/address/data phases get serialized onto MOSI, and how to sample MISO correctly across clock domains.
SPI flash is one of those interfaces every FPGA developer eventually has to touch — for bitstream storage, configuration data, or non-volatile logs — and understanding it at the RTL level pays off any time you need to debug a boot failure or squeeze extra throughput out of a design. The series format also means you can back up to Part 1 if the protocol layer isn't already familiar, or jump straight in if you just want the Verilog.
