New OSHW iCE40 FPGA evaluation board project


iCE40HX1K-EVB is small 5×5 cm development board for Lattice iCE40 FPGAs.

For these who do not know yet, this is the only FPGA which has Open Source tools -> Icestorm which allows you to program iCE40.

Above you can see the preliminary PCB component arrangement. Here is the schematic:


The development board have these features:

  • iCE40HX1K-VQ100
  • 16Mbit Serial Flash for the FPGA configuration and user data
  • SRAM 256K x 16 bit
  • two LEDs
  • two buttons
  • 100Mhz Oscillator
  • power supply with DCDC 1.2V/1A and 3.3V/1A
  • Male EXT connector with 34 pin containing 24 FPGA signals, 5V, 3.3V, CLK, 2x LEDs
  • Programming 10 pin adapter

The purpose of the male right hand 34 pin connector is to allow additional expansion modules to be connected.

The additional modules with have FEMALE 34 pin connector on left hand side and MALE 34 pin connector with all signals on the right hand side, so many modules could stack together.

We work on these modules now:

  • 2×5 centimeter fast ADC board with ADC08100 100Msps 8bit ADC, as we will make ADC addressable, many ADCs could stack together to make multi channel fast ADC digital storage oscilloscope
  • 2×5 centimeters fast DAC board with THS5641A 100Msps 8bit DAC, also addressable
  • 4×5 centimeters board with VGA and PS2 for experimenting with video generation and keyboard inputs
  • 2×5 centimeter board with level shifter 1.2-5.5V with adjustable levels 8/16 bit for logic analyzer with wide working levels
  • 4×5 centimeter board with buttons, LEDs for user interface

The main board is already uploaded on GitHub

The FPGA programming on original Lattice icestick development board is done with FTDI USB to SPI converter, but we avoid this unreliable company in our designs.

You can run the Icestorm on A20-OLinuxino-MICRO and we preparing patch which to allow iceprog to run on OLinuXino and program the iCE40 via the UEXT connector.

For these who want to use USB programmer we prepare patch for using OLIMEXINO-32U4 (or any other Arduino) as programmer, sure OLIMEXINO is most convenient to be used as programmer as already have UEXT connector which to wire directly to iCE40 10 pin programming port.


EDIT: At TuxCon in July we will have FPGA workshop with this board – we will teach you FPGA basics, how they are programming and first steps with verilog, at the end you will make your own first Verilog program and program it at iCE40HX1K-EVB. We are going to prepare examples how to use the ADC/DAC/VGA/PS2 etc add-on boards.

22 Comments (+add yours?)

  1. anonima
    Feb 12, 2016 @ 14:17:53



  2. Martin Ayotte
    Feb 12, 2016 @ 16:35:18

    Interesting !


  3. zoobab
    Feb 12, 2016 @ 17:41:33

    Which firmware do you use for the 32U4 flasher?


  4. zoobab
    Feb 12, 2016 @ 17:43:33

    “or any other Arduino” if the code is some PDE file, it could be ported to for ESP8266 with a simple copy/paste, no makefile and toolchain problems.


  5. ignat99
    Feb 13, 2016 @ 13:23:50

    By Olemex iCE40HX1K-EVB board can be done only FM radio.

    The configuration, which bring real benefits like solution for industrial SDR.
    For example:

    That is OSHW of 2013.


  6. kostas
    Feb 14, 2016 @ 12:56:08

    Any 8k board on schedule?


    • OLIMEX Ltd
      Feb 14, 2016 @ 17:53:10

      let’s first make the 1K board, our aim so far is to cover first steps with FPGAs, if everything works we can make 8K board too, but to keep same connectors and re-use the add-on modules


  7. EmmanuelF
    Feb 26, 2016 @ 22:32:21

    Do you still continue with samsung part for the SRAM ? Could you consider using a L (low power) part version for embedded applications ? (low power with data retention in standby mode to be able to use a backup battery).


    • Andreas Seltenreich
      Mar 02, 2017 @ 00:13:58

      Low-power asynchronous SRAMs have abysmal cycle times, don’t they?
      In FPGA designs, I want my SRAM to be as fast and power hungry as possible.
      A logic analyzer or forth CPU would be no fun with a slow part.


      • EmmanuelF
        Mar 02, 2017 @ 01:21:07

        10ns is to slow ?? see Cypress CY7S series with it 15-25µA deep-sleep current.

      • Andreas Seltenreich
        Mar 02, 2017 @ 21:22:18

        Interesting part. Last time I checked – TBH, years ago – there was no such critter around and low power meant 70ns or worse. Thanks.

  8. Viorel Bianu
    Mar 10, 2016 @ 20:30:57

    Very interesting!


  9. Trackback: A Perfect Storm | The Bot Threads
  10. Trackback: News – icoBoard
  11. Jonathan Beri
    Nov 08, 2016 @ 16:09:43

    Has there been any progress on the oscilloscope or logic analyzer samples?


  12. Jaan Kokk
    Oct 07, 2019 @ 14:07:46

    I am also looking for some ADC (oscilloscope) examples… I see there are a placeholder for a link at the product homepage but not anything more…


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: