https://github.com/osresearch/up5k
Upduino v2 with the ice40 up5k FPGA demos
https://github.com/osresearch/up5k
blinky fpga ice40up5k icestorm nextpnr symbiflow upduino upduino2
Last synced: 3 months ago
JSON representation
Upduino v2 with the ice40 up5k FPGA demos
- Host: GitHub
- URL: https://github.com/osresearch/up5k
- Owner: osresearch
- Created: 2018-12-15T17:46:31.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2023-08-14T19:58:17.000Z (about 2 years ago)
- Last Synced: 2025-03-22T07:29:11.556Z (7 months ago)
- Topics: blinky, fpga, ice40up5k, icestorm, nextpnr, symbiflow, upduino, upduino2
- Language: Verilog
- Homepage:
- Size: 950 KB
- Stars: 82
- Watchers: 8
- Forks: 17
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

Upduino v2 examples with icestorm
====Several demos showing how to use the `icestorm` toolchain with the
Upduino (ice40 UltraPlus 5k) FPGA dev board.| Demo | Description |
|------|-------------|
| `blink` | Flash the RED LED in a pulse-pulse, pulse-pulse pattern |
| `pulse` | Smoothly ramp the RGB LED through a color change pattern |
| `serial` | Print a repeating message on the serial port at 3 Mbs |
| `seral-echo` | Read from the serial port, echo it back at 3 Mbs |
| `spram-demo` | Read from the serial port, buffer in SPRAM, echo it slowly |To flash them, run `sudo make blink.flash`.
You will probably need to be root to flash the board and restore the
`/dev/ttyUSB0` device driver after `iceprog` switches it into SIO mode.Schematics and pinout
====Schematics for the upduino: https://github.com/gtjennings1/UPDuino_v2_0

Note that the `upduino_v2.pcf` file disagrees with the serial port in
the pinout and schematic. The pins were determined through experimentation
and seem to work (and the ones in the pinout do not).UltraPlus 5K overview
===
Overview: http://www.latticesemi.com/Products/FPGAandCPLD/iCE40UltraPlus
Datasheet: http://www.latticesemi.com/-/media/LatticeSemi/Documents/DataSheets/iCE/iCE40-UltraPlus-Family-Data-Sheet.ashx

The eight DSP blocks can do 16x16 multiply and 32-bit accumulate operations.
They can be combined to make 32x32 multipliers, etc.