This guide describes the steps necessary to setup the FPGA tools, python, nmigen and zadig drivers for the iCEBreaker-fpga development board on Windows 10.
Download the following software:
- git: https://git-scm.com/download/win
- open-tool-forge (fpga-toolchain-windows_amd64-nightly-xxxxxxxx.zip): https://github.com/open-tool-forge/fpga-toolchain/releases
- python (newest python v3 "Windows x86-64 executable installer"): https://www.python.org/downloads/release
- zadig drivers: https://zadig.akeo.ie/
Install the following in whichever order:
- git
- python
Zadig drivers:
- plug in icebreaker to your computer
- wait until it windows recognizes it and indicates that it has finished setting it up
- run zadig driver installer
- in the menu select "show all devices"
- select iCEBreaker (0) device in the drop down menu
- install winusb driver
open-tool-forge and nmigen:
- extract the open-tool-forge zip file
- move the extracted directory to a convenient spot
- open powershell as admin
- run the following command:
Set-ExecutionPolicy Unrestricted
- when asked confirm with
A
- close the admin power shell
- open a normal power shell
- run the following command to add the fpga toolchain to your path:
$env:Path += ";C:\Users\xxxxx\fpga-toolchain-windows_amd64-nightly-yyyyyyyy\fpga-toolchain\bin"
(we assume here that you have copied the extracted toolchain to your home directory and thexxxxx
stand for your username andyyyyyyyy
stands for the date of your toolchain build. - create a python venv:
python -m venv nmigen-venv
- activate the created venv:
.\nmigen-venv\Scripts\Activate.ps1
- install nmigen:
pip install git+https://github.com/nmigen/nmigen.git
pip install git+https://github.com/nmigen/nmigen-boards.git
- Note: If you later get an error that nmigen-yosys package is missing you install it by running:
pip install nmigen-yosys
Build an icebreaker example:
- clone the icebreaker-nmigen-examples repository:
git clone https://github.com/icebreaker-fpga/icebreaker-nmigen-examples.git
- enter the blink example directory:
cd icebreaker-nmigen-examples\blink
- Build and upload the blink example:
python blink.py