/fomu-hardware

Tomu FPGA (Fomu for short), a FPGA which fits inside your USB port!

Creative Commons Attribution Share Alike 4.0 InternationalCC-BY-SA-4.0

I’m Fomu

I’m Tomu FPGA (Fomu for short!) a tiny FPGA board that fits in your USB port. People sometimes call me "Fomu" for short!

I have four buttons and an RGB LED.

Telling Tomu and Tomu FPGA apart!

Professionally produced Tomu boards have the following color scheme; * Tomu FPGA boards are blue. * Original Tomu boards are green.

However, as people are encouraged to produce their own Tomu boards, please look at the device careful to check what type you have. See the following table for what to look for;

Original Tomu

Tomu FPGA

Board Color

Green

Blue

LEDs

One Green + One Red

One Red Green Blue LED

Components

A single large black IC taking up most of the board.

Multiple little black ICs covering the board.

Test point pattern

FIXME

FIXME

The original Tomu has one large black IC on the board.

Contact

Board Variants

There are several variants of Fomu hardware

  • The hacker version is designed for people who are up to the challenge of building their own board.

  • It has a simpler PCB which makes it cheaper to produce in a small quantities.

  • However, it uses a non-standard footprint for the FPGA WSCP which reduces yield and long term reliability making it unsuitable for mass production.

  • It’s also missing some decoupling capacitors and power filters, which may impact stability

  • Only two SPI wires are connected, meaning it cannot handle quad SPI

  • This is a prototype board designed to fit on top of a Raspberry Pi

  • It does not fit on a USB port

  • The large size makes it easier to debug

  • The schematic serves as the basis for future production boards

  • It uses 6/6 design rules, making it very easy to produce

FPGA Specifications

There are currently two versions of Tomu FPGA. Both boards and based around mostly the same schematic and should be mostly compatible and based around the Lattice iCE40UP5K FPGA and have the same set of features listed below;

  • Lattice iCE40 UltraPlus 5K

    • 5K 4 input LUTs + DSP tiles

    • 128 kilobytes internal SRAM

    • 1024 kilobytes (or more) flash (XIP possible)

  • 1 x RGB LED

  • 2 x touch buttons

up5k

Development Firmware

The Lattice iCE40UP5K has a fully open source VerilogBitstream toolchain.

Supported by the LiteX BuildEnv. The LiteX BuildEnv supports your choice of CPU architecture;

As the board is supported by the LiteX BuildEnv, you can developed;

License

The contents of this repository excluding third_party folder is released under your choice of the following two licences:

  • the "Creative Commons Attribution-ShareAlike 4.0 International License" (CC BY-SA 4.0) full text of this license is included in the LICENSE file and a copy can also be found at http://creativecommons.org/licenses/by-sa/4.0/

  • the "TAPR Open Hardware License" full text of this license is included in the LICENSE.TAPR file and a copy can also be found at http://www.tapr.org/OHL