Our Latest News

How Fomu FPGA Revolutionizing the USB Port

What is Fomu FPGA? Fomu is a free hardware platform that allows you to run and debug your FPGA projects without compromising privacy. You can load code on the FPGA through USB and use any code you want. In addition, the ICE40UP5K FPGA has the support of a fully open toolchain, and you don’t need to sign an NDA or download a multi-gigabyte installer to use Fomu.

Fomu FPGA is open source

A programmable FPGA is a computer chip with RISC-V processor architecture. It is an excellent introduction to the processor architecture of the future. The Fomu has an open-source firmware that exposes a USB bootloader and a RISC-V core. Its programmability makes it a perfect tool for evaluating other computer chips or performing various functions.

An open hardware platform is critical to getting the most out of an FPGA, and the Fomu FPGA is no different. The ICE40UP5K FPGA supports an open toolchain fully supported by the Fomu software. Users can load code directly onto the board via USB and experiment with LM32 and OpenRISC softcore. There are no licensing fees or non-disclosure agreements, and you can use the FPGA without downloading any additional software.

Features of Fomu FPGA


The Fomu FPGA is an affordable and customizable digital signal processor that supports Python development. Its features include Single Ported RAM, LiteX CPU, and Field Programmable Gate Array. To learn more about Fomu and its components, keep reading. There is more to it than meets the eye, however. Read on to learn about its specifications and features.

It has 5000 LUTs

The Fomu FPGA has a lot of benefits. First, it fits in a USB Type-A slot. Second, it has an RGB LED that you can control. Third, it has 5000 LUTs, which is enough to power your CPU. Lastly, it is open source, so you can download it without paying a cent. Finally, it is free.

The Fomu uses a Lattice iCE40UP5K for its main chip. It has two-memory configurations – one for the processor register file and the other for temporary memory. The Fomu CPU uses 64 or 128 kilobytes of RAM. It also includes four copper pads near the edge and is designed to run Python and is compatible with open-source software.

It runs RISC-V

The Fomu FPGA is a programmable FPGA device. It’s based on the iCE40UP5K from Lattice and has 128 KB of RAM and 2MB of Flash. Two capacitive touch buttons are also on the board. The hardware is fully open-source and has a RISC-V core. In addition, it supports Python development and is compatible with FmPy.

To run RISC-V software, the Fomu FPGA platform includes a MicroPython interface. This interface interacts with the RISC-V softcore inside the Fomu board. The MicroPython interface reads and writes memory directly. The FPGA depends on LiteX, which puts every device on a 32-bit internal bus called the Wishbone bus. Using the Wishbone bus, Rayming PCB & Assembly can map the peripherals into memory.

Fomu supports a variety of FPGAs, including Xilinx FPGA 7 Chain, CrossLink FPGAs, and Lattice iCE40. The iCE40UP5K is near to being the smallest board. It has 128kB on-chip huge RAM, 5280 logic cells, 30 block RAMs of 512-byte capacity, and eight 16b by 16b multiplier blocks or DSP.

It has 1024 kilo-bits of memory

The Fomu FPGA has 1024 kilo-bits, which is more than enough for most purposes. It fits in a standard USB Type-A slot. It has a user-controllable RGB LED. The chip has a total of 1024 kilo-bits of memory. The processor register file and temporary memory are in a separate memory block. The CPU can use up to 64 or 128 kilo-bits of memory.

The Fomu is compatible with fully open-source hardware. You can load the code via USB. You can use any code. Unlike most other FPGAs, the Fomu does not require a special account, NDA, or multi-gigabyte installer. It can also run Python natively. You can use it in your designs and applications.

It has four copper pads

fomu schematic

The Fomu FPGA has a GPIO port, four copper pads near the edge of the chip, and an RGB LED so the user can control that. Fomu’s chip has 5000 LUTs, enough to run a CPU. Its footprint is also unusual, and the four copper pads are easily accessible. Lastly, the Fomu toolchain is free and open source.


The LiteX CPU is software designed for the FPGAs. This open-source processor includes support for various FPGA chips. Unlike conventional CPUs, LiteX does not define CPU cores or peripherals. Instead, it loads the gateware as a separate layer. CircuitPython then loads on top of this gateware. To install CircuitPython on an FPGA, you need to download dfu-util. This tool will install and configure CircuitPython. Once installed, you will need to update your bootloader and restart the software.

Fomu has a 1024kb memory area and a separate block for the processor register file and temporary memory. The Fomu has four copper pads near the edge of the chip. However, it does not validate capacitive touch solutions. The Fomu is a good choice for anyone who needs access to an FPGA without the hassle of a development board with hundreds of pins.

Fomu’s FPGA offers a high level of flexibility in data storage, processing, and storing. Its bit-level flexibility also makes it easy to implement data types with small data sizes. Additionally, it enables efficient conversion between various data types. Its versatility extends beyond its ML accelerator, including its CPU. It also features a USB-UART serial port.

Single Ported RAM

Fomu is a programmable logic device. It can support memory access and write-forwarding logic. Its single ported memory has a capacity of 128 kilobytes. The ICE40UP5K uses 128 kilobytes of Single Ported RAM. Fomu’s Single Ported RAM can be used to implement a softcore, or CPU core that runs inside the FPGA. This is different from the fixed-chip implementation.

The Fomu is a community-funded project. Backers should expect their boards to ship in July or February. The Fomu EVT will ship in February 2020. Backers can also support the project with a beer pledge. If you want to be part of this campaign, check out the Fomu website. The Kickstarter campaign has already exceeded its funding goal. The Fomu EVT is a bigger board used for development and will be manufactured only in a limited quantity.

Support for Python development

The Fomu is an FPGA-based microcontroller that runs Python natively and has four copper pads near the edge. This FPGA lives in a USB port and is capable of native Python development. This board is also compatible with Python development tools such as FmPy. In addition, Fomu has a large storage space and supports native and cross-platform Python programming. Its large storage space is a significant advantage, as it makes Python development easy and familiar for those who aren’t necessarily familiar with FPGA development.

MicroPython is a smaller Python implementation. The precompiled microPython binary is in the root of the Fomu workshop files. MicroPython contains a Python module and has all the features and functions you would expect from a Python-based programming language. For example, MicroPython for Fomu has predefined RGB LED modes and works with OpenRISC.

Future of Fomu FPGA

As the community-funded Fomu FPGA chip is released, many exciting features are coming soon. First, the FPGA will be hand-assembled in China. This workshop will help you unlock the power of the ICE40UP5K, the Fomu FPGA’s main control chip. In addition, you will learn how to use the board in innovative ways. After completing this workshop, you will be able to create your FPGA products!

The Fomu FPGA evaluation board is a USB-connected programmable FPGA device. It features four buttons and an RGB LED. In addition, a micro-Python port allows you to use Python code on your device. The board is currently available for $39 and ships with a plastic enclosure. Besides being USB-compatible, the Fomu FPGA evaluation board is available for purchase at various online stores.



    We'd love to

    hear from you

    Highlight multiple sections with this eye-catching call to action style.

      Contact Us

      Exhibition Bay South Squre, Fuhai Bao’an Shenzhen China

      • Sales@ebics.com
      • +86.755.27389663