FPGA shared code for my projects
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build
components
demo
docs
pcf
.gitignore
LICENSE
Makefile
README.md
fpga.mk
fpga.mk.txt
make-deps
text.txt

README.md

FPGA tools

This is some shared code for building FPGA projects using the Icestorm toolchain.

Prerequisites

  • yosys - logic sythesis of Verilog
  • arachne-pnr - placement and routing
  • fpga-icestorm - transferring the design to the FPGA
  • iverilog - simulation and running test benches
  • gtkwave - viewing the simulation results
  • tinyprog - for TinyFPGA BX
  • iCEburn - for iceblink

The build system uses GNU make, bash and sed.

Build system

Just include the following in your Makefile:

include .../fpga.mk

See fpga.mk.txt for list of possible commands.

Components

The components directory contains some useful Verilog modules:

oled.v

Support for WaveShare monochrome and color displays (include with .color(1) or .color(0) parameter).

uart.v

This is a module for UART communication by Tim Goddard, copied here:

keypad.v

This is a module for 16 button keypad, like the one you can find here at SparkFun.

License

You're free to use all of the code under MIT license. See LICENSE for details.

Note that uart.v does not belong to me, as mentioned above.