Here are some materials for my FPGA workshop. The workshop uses the open source Icestorm toolchain. The hardware is a few Lattice boards (because that’s what I have), as well as some peripherals like OLED displays.
The code is MIT licensed (see LICENSE) unless otherwise stated in the file. Patches welcome!
See also fpga-experiments which is a very messy sandbox where I try out all this stuff.
This tutorial has the following parts:
NandGame
Play the excellent NandGame. Try to get at least to “Data Flip-Flop”.
Bit operations
If you are not familiar with bit operations, learn a bit about them. There are some links and exercises in the bits directory.
Verilog
Move on to Verilog language.
FPGA
Finally, we get to play with real hardware.