FPGA
An FPGA is a fabric of lookup tables, registers, and routing that a bitstream configures into digital hardware. It doesn’t have an instruction set; it becomes one. Load a soft core and the same board is a RISC-V machine — a simple RV32 core fits in a few thousand lookup tables and runs around 50 MHz on hobby-class parts, and people have run Linux this way.
The tooling divides the field. Lattice’s ECP5 is the part the fully open toolchain grew up around — yosys for synthesis, nextpnr for place-and-route — at some cost in logic density and speed against the vendor tools. The bigger vendor ecosystems, like Microchip’s Libero for the PolarFire parts, trade that openness for larger silicon and a steeper on-ramp.
In the lab
- Microchip PolarFire SoC Icicle Kit RISC-V cores next to FPGA fabric on one die.
- ULX3S A Lattice ECP5 board supported by fully open FPGA toolchains.