Lattice iCE40

Registry:

https://registry.platformio.org/platforms/platformio/lattice_ice40

Configuration:

platform = lattice_ice40

The iCE40 family of ultra-low power, non-volatile FPGAs has five devices with densities ranging from 384 to 7680 Look-Up Tables (LUTs). In addition to LUT-based,low-cost programmable logic, these devices feature Embedded Block RAM (EBR), Non-volatile Configuration Memory (NVCM) and Phase Locked Loops (PLLs). These features allow the devices to be used in low-cost, high-volume consumer and system applications.

For more detailed information please visit vendor site.

Examples

Examples are listed from Lattice iCE40 development platform repository:

Stable and upstream versions

You can switch between stable releases of Lattice iCE40 development platform and the latest upstream version using platform option in “platformio.ini” (Project Configuration File) as described below.

Stable

; Latest stable version, NOT recommended
; Pin the version as shown below
[env:latest_stable]
platform = lattice_ice40
board = ...

; Specific version
[env:custom_stable]
platform = lattice_ice40@x.y.z
board = ...

Upstream

[env:upstream_develop]
platform = https://github.com/platformio/platform-lattice_ice40.git
board = ...

Packages

Name

Description

toolchain-icestorm

Tools for analyzing and creating bitstream files for FPGA IceStorm

toolchain-iverilog

Verilog simulation and synthesis tool

Warning

Linux Users:

Windows Users:

Please check that you have a correctly installed USB driver from board manufacturer

Boards

Note

  • You can list pre-configured boards by pio boards command

  • For more detailed board information please scroll the tables below by horizontally.

FPGAwars

Name

Debug

MCU

Frequency

Flash

RAM

IceZUM Alhambra FPGA

No

ICE40-HX1K-TQ144

12MHz

32KB

32KB

Lattice

Name

Debug

MCU

Frequency

Flash

RAM

Lattice iCEstick FPGA Evaluation Kit

No

ICE40-HX1K-TQ144

12MHz

32KB

32KB