WebUSB programmable FPGA development boards. Cloud-based synthesis.
Until recently, FPGA development has suffered from a high barrier to entry for newcomers. In the past, development boards using Xilinx, Lattice, and Altera chipsets easily fetched $250-$2000 price tags. The hardware barrier has been all but eliminated by recent entrants, which include MojoBoard (https://alchitry.com/products/mojo-v3), the IceBreaker (https://www.crowdsupply.com/1bitsquared/icebreaker-fpga), and TinyFPGA (https://tinyfpga.com/) who offer sub-$100 kits.
WebFPGA is a cloud-based development environment for FPGAs with compatible development boards. Our software toolchain uses a recent browser technology called WebUSB to program the FPGA, without any software required other than a modern web browser (Chrome/Opera/Edge75 supported for now). We also provide a browser-less, command-line solution.
“We aim to completely revamp the digital logic development experience. Our cloud-based toolchain performs synthesis on our backend, forwarding the logs and final bitstream to the client for flashing. Local CPU expenditure is zero. WebFPGA is a remote wrapper around these powerful and complex toolchains. Simply feed it your hardware description in Verilog source files and about a minute later it will return a synthesized bitstream, ready for flashing! (VHDL will be supported in the future).”
From the second you receive our board, you will be able to plug it in, synthesize Verilog, and flash it. NO SOFTWARE REQUIRED!
What’s an FPGA?
FPGA is an acronym for “Field Programmable Gate Array”. In essence, the “field programmable” isn’t too relevant other than implying that the whole “gate array” is programmable. The “gate array” is the cool part. Think of the whole chip as an array of logical gates (e.g. AND/OR/etc). These logic gates can be wired up however you may desire. For example, you might decide to write some logic that tints an entire image red. On a CPU, each pixel would need to be tinted one by one. But in digital logic, each pixel can be tinted simultaneously. Microcontollers, CPUs, GPUs, etc. consist of logical gates solidified into an integrated circuit at a silicon foundry. However, with FPGAs, these gates can be reprogrammed on the fly. FPGAs are used to develop specialized, dynamic digital logic systems.
General Specs
- 4-IO bridged communication between MCU and FPGA
- On-board Neopixel RGB LED
- User button
- Reset button
- User Single-Color LED
- On-board precision clock oscillator
FPGA Specs
- Lattice iCE40UP5k FPGA
- 39 IOs (32 accessible)
- 5280 logic cells
- 1 Mbit SRAM
- 120 Kbit Block RAM
- Hardened SPI/I2C macros
- 10 Khz & 48 MHz internal oscillator
- On-board PLL & DSP functions
Microcontroller Specs
- STM32F04-Series MCU
- WebUSB interface
- Fully user-programmable
- 48 MHz internal clock
- 32 KB flash
- 6 KB RAM
- UART/SPI/I2C
- 16 Mbit shared flash
The project is live on kickstarter and has 10 days to end. Pledges start from 29USD for a standalone FPGA board.