A completely FOSS toolchain for FPGAs.

SymbiFlow is a group of projects aimed at providing a completely FOSS flow for developing FPGA IP/gateware. We believe this will dramatically broaden the outreach of FPGA platforms and lower entry barriers into FPGA development for both professional engineers and hobbyists.

FPGAs are an exciting and versatile development platform that can be used for addressing a variety of complex tasks, such as:

  • flexible parallel I/O
  • low-latency machine learning
  • robotics and motor control
  • camera interfacing and ISP
  • hardware glue logic
  • general hardware-accelerated parallel processing

A big roadblock to what we believe should be much wider adoption are the specific tools that need to be learned on a per-vendor basis and their proprietary licensing.

By working to implement a vendor neutral and modular flow that is easy to integrate with various types of other tools, and provides an open source, transparent development experience, SymbiFlow is meant to dramatically accelerate software-driven innovation in FPGA development.

SymbiFlow is already enabling new tools, development platforms and communities that build around the end-to-end open flow - and has made significant progress throughout the last few years. But a lot of work is still needed before it becomes a standard like GCC in the software world.

SymbiFlow serves as an umbrella project for several activities, the central of which deals with creating so-called FPGA "architecture definitions", i.e. documentation of how specific FPGAs work internally.

Those definitions serve as input to open source backend tools like nextpnr and Verilog to Routing, and frontend tools like Yosys. QuickLogic’s FPGAs are supported in direct collaboration with the vendor themselves, while support for other vendors is provided within separate collaborating projects targeting different FPGAs - Project X-Ray for Xilinx 7-Series, Project IceStorm for Lattice iCE40, Project Trellis for Lattice ECP5 and Project Oxide for Lattice CrossLink NX FPGAs.

lightbulb_outline View ideas list

Technologies

  • fpga
  • python
  • c/c++
  • verilog

Topics

comment IRC Channel
email Mailing list

SymbiFlow 2021 Projects

  • Arash Ahmadian
    Capturing an abstracted model of Xilinx Artix7 using VTR
    Symbiflow has already produced a model of Xilinx's Artix7 in VTR, but it only limited to single chip description. The aim of this project is to...
close

2021