Project IceStorm – iCE40 HX1K Overview

Project IceStorm aims at documenting the bitstream format of Lattice iCE40 FPGAs and providing simple tools for analyzing and creating bitstream files. This is work in progress.

This documentation is auto-generated by icebox_html.py from IceBox.
A machine-readable form of the database can be downloaded here.

The iCE40 FPGA fabric is organized into tiles. The configuration bits themself have the same meaning in all tiles of the same type. But the way the tiles are connected to each other depends on the types of neighbouring cells. Furthermore, some wire names are different for e.g. an IO tile on the left border and an IO tile on the top border.

Click on a highlighted tile below to view the bitstream details for the tile. The highlighted tiles cover all combinations of neighbouring cells that can be found in iCE40 FPGAs.

  IO
(1 17)
IO
(2 17)
IO
(3 17)
IO
(4 17)
IO
(5 17)
IO
(6 17)
IO
(7 17)
IO
(8 17)
IO
(9 17)
IO
(10 17)
IO
(11 17)
IO
(12 17)
 
IO
(0 16)
LOGIC
(1 16)
LOGIC
(2 16)
RAMT
(3 16)
LOGIC
(4 16)
LOGIC
(5 16)
LOGIC
(6 16)
LOGIC
(7 16)
LOGIC
(8 16)
LOGIC
(9 16)
RAMT
(10 16)
LOGIC
(11 16)
LOGIC
(12 16)
IO
(13 16)
IO
(0 15)
LOGIC
(1 15)
LOGIC
(2 15)
RAMB
(3 15)
LOGIC
(4 15)
LOGIC
(5 15)
LOGIC
(6 15)
LOGIC
(7 15)
LOGIC
(8 15)
LOGIC
(9 15)
RAMB
(10 15)
LOGIC
(11 15)
LOGIC
(12 15)
IO
(13 15)
IO
(0 14)
LOGIC
(1 14)
LOGIC
(2 14)
RAMT
(3 14)
LOGIC
(4 14)
LOGIC
(5 14)
LOGIC
(6 14)
LOGIC
(7 14)
LOGIC
(8 14)
LOGIC
(9 14)
RAMT
(10 14)
LOGIC
(11 14)
LOGIC
(12 14)
IO
(13 14)
IO
(0 13)
LOGIC
(1 13)
LOGIC
(2 13)
RAMB
(3 13)
LOGIC
(4 13)
LOGIC
(5 13)
LOGIC
(6 13)
LOGIC
(7 13)
LOGIC
(8 13)
LOGIC
(9 13)
RAMB
(10 13)
LOGIC
(11 13)
LOGIC
(12 13)
IO
(13 13)
IO
(0 12)
LOGIC
(1 12)
LOGIC
(2 12)
RAMT
(3 12)
LOGIC
(4 12)
LOGIC
(5 12)
LOGIC
(6 12)
LOGIC
(7 12)
LOGIC
(8 12)
LOGIC
(9 12)
RAMT
(10 12)
LOGIC
(11 12)
LOGIC
(12 12)
IO
(13 12)
IO
(0 11)
LOGIC
(1 11)
LOGIC
(2 11)
RAMB
(3 11)
LOGIC
(4 11)
LOGIC
(5 11)
LOGIC
(6 11)
LOGIC
(7 11)
LOGIC
(8 11)
LOGIC
(9 11)
RAMB
(10 11)
LOGIC
(11 11)
LOGIC
(12 11)
IO
(13 11)
IO
(0 10)
LOGIC
(1 10)
LOGIC
(2 10)
RAMT
(3 10)
LOGIC
(4 10)
LOGIC
(5 10)
LOGIC
(6 10)
LOGIC
(7 10)
LOGIC
(8 10)
LOGIC
(9 10)
RAMT
(10 10)
LOGIC
(11 10)
LOGIC
(12 10)
IO
(13 10)
IO
(0 9)
LOGIC
(1 9)
LOGIC
(2 9)
RAMB
(3 9)
LOGIC
(4 9)
LOGIC
(5 9)
LOGIC
(6 9)
LOGIC
(7 9)
LOGIC
(8 9)
LOGIC
(9 9)
RAMB
(10 9)
LOGIC
(11 9)
LOGIC
(12 9)
IO
(13 9)
IO
(0 8)
LOGIC
(1 8)
LOGIC
(2 8)
RAMT
(3 8)
LOGIC
(4 8)
LOGIC
(5 8)
LOGIC
(6 8)
LOGIC
(7 8)
LOGIC
(8 8)
LOGIC
(9 8)
RAMT
(10 8)
LOGIC
(11 8)
LOGIC
(12 8)
IO
(13 8)
IO
(0 7)
LOGIC
(1 7)
LOGIC
(2 7)
RAMB
(3 7)
LOGIC
(4 7)
LOGIC
(5 7)
LOGIC
(6 7)
LOGIC
(7 7)
LOGIC
(8 7)
LOGIC
(9 7)
RAMB
(10 7)
LOGIC
(11 7)
LOGIC
(12 7)
IO
(13 7)
IO
(0 6)
LOGIC
(1 6)
LOGIC
(2 6)
RAMT
(3 6)
LOGIC
(4 6)
LOGIC
(5 6)
LOGIC
(6 6)
LOGIC
(7 6)
LOGIC
(8 6)
LOGIC
(9 6)
RAMT
(10 6)
LOGIC
(11 6)
LOGIC
(12 6)
IO
(13 6)
IO
(0 5)
LOGIC
(1 5)
LOGIC
(2 5)
RAMB
(3 5)
LOGIC
(4 5)
LOGIC
(5 5)
LOGIC
(6 5)
LOGIC
(7 5)
LOGIC
(8 5)
LOGIC
(9 5)
RAMB
(10 5)
LOGIC
(11 5)
LOGIC
(12 5)
IO
(13 5)
IO
(0 4)
LOGIC
(1 4)
LOGIC
(2 4)
RAMT
(3 4)
LOGIC
(4 4)
LOGIC
(5 4)
LOGIC
(6 4)
LOGIC
(7 4)
LOGIC
(8 4)
LOGIC
(9 4)
RAMT
(10 4)
LOGIC
(11 4)
LOGIC
(12 4)
IO
(13 4)
IO
(0 3)
LOGIC
(1 3)
LOGIC
(2 3)
RAMB
(3 3)
LOGIC
(4 3)
LOGIC
(5 3)
LOGIC
(6 3)
LOGIC
(7 3)
LOGIC
(8 3)
LOGIC
(9 3)
RAMB
(10 3)
LOGIC
(11 3)
LOGIC
(12 3)
IO
(13 3)
IO
(0 2)
LOGIC
(1 2)
LOGIC
(2 2)
RAMT
(3 2)
LOGIC
(4 2)
LOGIC
(5 2)
LOGIC
(6 2)
LOGIC
(7 2)
LOGIC
(8 2)
LOGIC
(9 2)
RAMT
(10 2)
LOGIC
(11 2)
LOGIC
(12 2)
IO
(13 2)
IO
(0 1)
LOGIC
(1 1)
LOGIC
(2 1)
RAMB
(3 1)
LOGIC
(4 1)
LOGIC
(5 1)
LOGIC
(6 1)
LOGIC
(7 1)
LOGIC
(8 1)
LOGIC
(9 1)
RAMB
(10 1)
LOGIC
(11 1)
LOGIC
(12 1)
IO
(13 1)
  IO
(1 0)
IO
(2 0)
IO
(3 0)
IO
(4 0)
IO
(5 0)
IO
(6 0)
IO
(7 0)
IO
(8 0)
IO
(9 0)
IO
(10 0)
IO
(11 0)
IO
(12 0)