WebFPGA: Rapid FPGA Development System on the cloud

WebFPGA: Rapid FPGA Development System on the cloud

1491
Views
0 Comments

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.

Device Features

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
FPGA Device; 32 GPIOS and 5,280 Logic Cells

The project is live on kickstarter and has 10 days to end. Pledges start from 29USD for a standalone FPGA board.

Mike is the founder and editor of Electronics-Lab.com, an electronics engineering community/news and project sharing platform. He studied Electronics and Physics and enjoys everything that has moving electrons and fun. His interests lying on solar cells, microcontrollers and switchmode power supplies. Feel free to reach him for feedback, random tips or just to say hello :-)

view all posts by admin

Leave a Reply

Archives