/fomu_quickstart

A quickstart project for a fomu PVT

Primary LanguageShell

FOMU quickstart

Note: this quickstart only works on linux so far. Pull requests are very welcome

This is a quickstart project you can use for your fomu PVT board.

Note: this project is specifically set up for the PVT version. The difference between the multiple boards are outlined here.

All information in this project can be found in the workshop and in the example project.

To modify this project for other fomu versions (evt1, evt2, evt3, hacker), see the original makefile

Getting started

Simply run source env.sh. This script will check if the fomu toolchain is present in tools/fomu-toolchain. If the toolchain is not there, it will ask you to download it. The download is about 300MB.

Every time you start a new terminal session, you should run source env.h again.

Developing verilog

Several good verilog resources exist:

Building your verilog code

Run make in this project should create an build directory. This directory will contain:

  • out.json - Your .v file turned into a diagram (?), created by yosys
  • out.asc - A route diagram, generated by nextpnr-ice40
  • out.bin - A binary stream of the diagram, created by icepack
  • out.dfu - The binary file, but modified so that the dfu tools can upload it

Resources

The fomu uses an fpga called "iCE40" datasheet

Cleaning the project

Run make clean to clean the project.

Changing toolchain location

By default the toolchain will be installed in tools/fomu-toolchain. You can manually download and configure a toolchain: