Schematics
iceWerx iCE40 HX8K FPGA module
By taking care of all the multiple power supply,
sequencing and bitstream support, iceWerx
provides an easy to use FPGA module ready to
integrate into your own project.
The iceWerx Module may be soldered directly
to your PCB or mounted in sockets such as the
samtec SQW-118-01-L-D
Uses Lattice ICE40HX8K-CB132
7680 LUT’s
128 Kbits RAM (32 x 4Kbit blocks)
2 PLL’s
63 FPGA I/O’s on module
4 10-bit A/D inputs (via PIC CPU)
Lattice ICE40HX8K documentation is here:
www.latticesemi.com/Products/FPGAandCPLD/iCE40
Oscillator
An on-board 12MHz oscillator feeds pin P7
(GBIN5)
LEDs
Red LED on A5
Green LED on M4
10-bit A/D converters
Accessed via serial commands to PIC CPU
250k baud, 1 start, 8 data, 1 stop, no parity
Tx on in P4, Rx on pin P5
AD1 - send command 0xA1
AD2 - 0xA2
AD3 - 0xA3
AD4 - 0xA4
Receive 2 bytes, high byte first.
Combine for 10 bit right justified result.
8Mb (1MB) SPI Flash
CS – P13
SCK – P12
SDI – P11 (SDO on flash chip)
SDO – M11 (SDI on flash chip)
First three 64k sectors reserved for FPGA
configuration.
The iceFUN module is powered from USB or an external
5v supply. There are on-board 3.3v and 1.2v regulators.
All PIC and FPGA I/O pins are 3.3v, do not connect
these to 5v devices.
IceFun is programmed using iceFUNprog.
Linux users can download the source from our github at
https://github.com/devantech/iceFUNprog
A Windows version (.exe and c# source) is available at
from www.robot-electronics.co.uk/files/iceFUNprog.zip
Any toolchain which generates a binary bit-stream may be
used, such as lattice iCEcube2. Linux users also have the
icestorm tools with yosys and nextpnr.
http://www.clifford.at/icestorm/