go-board-code/README.md

1.3 KiB

Go Board code reworking

This code is a reworking of the code for the Go Board FPGA beginner's board.

The original code comes from two sources:

Where possible I tried to:

  • use more consistent variable and constant names
  • fix missing inferred wires (the Pong project had a lot of these)
  • avoid run-on lines of code
  • avoid one-liner conditional bodies, opting for begin...end blocks everywhere

All of these can be built with Yosys and tested with Icarus Verilog. The Makefile is one I've been dragging along across all projects. It can fire off both a build-and-install to the Go Board, as well as run the test suite and open up GTKWave so you can inspect the signals. You do not need Lattice iCECube2 or have to jump through their licensing hoops, and you will have a hard time getting it to run on modern Linux anyway!

sipo_shift_register_test.sv shows how to create your own assert for Icarus Verilog, taken from an idea from here: https://stackoverflow.com/a/13906120

Have fun.

John