Open Source FPGAs
FPGAs which can be configured with the Open Source Yosys and Nextpnr tools are called Open Source FPGAs.
Lattice Nexus 17 and 40 add two 10Gbit/s MIPI CSI or DSI hard cores and large Block RAMs to the Lattice ECP 5 family. These are needed for some video applications such as fisheye lens dewarping.
NanoXplore offers 3 radiation hardened FPGAs. NG-Mediam with 34,272 LUT-4s, ULTRA300 with 290 496LUT-4s, and NG-ULTRA with 536-928 LUT-4s. The NG-Ultra is Open Source.
GateMate. View
CologneChip’s GateMate is the only low-cost Open Source European FPGA.
Therefore this wiki pays great attention to it. GateMate is a very innovative 20€ FPGA, with a significant ecosystem It is the only low end FPGA with SerDes. Instead of LUT-4s, it has 20,048 Cologne Programable Elements (CPEs). CPEs include 8 input LUT-2 trees and 4 input multiplexers. On Lattice FPGA’s with LUT-4s, it requires 3 LUT-4s to implement a 4 input multiplexer.
Other Open Source FPGAs. View
Other FPGAs are increasingly being supported by Yosys and Nextpnr.
There are experimental versions for Xilinx, Altera Cyclone V, Lattice MachXO2, and a "generic" back-end for user-defined architectures.
Gowin. View
Gowin is a Chinese FPGA manufacturer.
The Gowin Littlebe chips are clearly the price leader in the FPGA market. But there is a very serious bug report they have not responded to. The datasheet lacks critical information; how many resources does it take to build a mux4 or mux32? The github reporitories lack licensing information, putting our projects in legal limbo.
Compared to Gowin, the European made FPGAs are subject to much better environmental and labor laws. Gernany even has labor union representatives on the company boards. If there is a supply disruption, or worse yet another war, good to have local suppliers. And our money should go towards improving European fabs, not asian ones. The money we spend in Europe, gets spent again in Europe, boosting our economies.
And there have been rumours of security issues with their closed source tools, so be sure to use the Open Source Yosys tools with Gowin FPGAs.
Lattice ICE 40. View
Lattice ICE 40 was the initial FPGA supported by the open source Yosys synthesis suite.
ICE 40 is an older slower smaller and less expensive family of FPGAs. Great for educational projects, and simple applications. They are limited to 8K LUTs, and 100 Mhz. Most have small memories, the UP5K also has 1 Mbit of Large RAMs, but they are single port memories, and limited to 50Mhz.
The Pico-Ice and Pico2-Ice are recommended for beginners. Both use the wondrerful Pico Ice SDK. The Upduino 3.1 fixed the bugs of the previous versions, but retained the internal, less accurate oscilator as the default. And only 1 of 4 pins of the FTDI FT232H USB bridge are connected to the FPGA. At least they can be manually connected.
There are many open source circuit boards using Lattice FPGAs, but sadly most are not shipping.
Lattice ECP5. View
Lattice ECP5 is currently my favorite FPGA.
It is at the low end of the market, but has a lot of great functionality. First of all it supports 1080p (1920 * 1080) DVI out at 60 frames per second. ICE40 and GateMate cannot do that. Also it supports SDRAM as video frame buffers at the same 1080p @60FPS rate. This involveds DDR3 800Transactions/s.
It is an older chip, so it supports 3.3 V I/O, as well as lots of other voltages. That makes it easy to interface to the Raspberry Pi ecosystem. In contrast, GateMate and Lattice's NX17/33/40 need level shifters to connect to RPI chips which adds cost, size and complexity to circuit boards
Since it is an older chip, it supports LVDS with 7:1 gearing, which I need for the Sony Block Camera with 30 x physical zoom.