Debian Electronics Project
Summary
FPGA development
Debian FPGA development packages

This metapackage will install Debian packages for FPGA development

Description

For a better overview of the project's availability as a Debian package, each head row has a color code according to this scheme:

If you discover a project which looks like a good candidate for Debian Electronics to you, or if you have prepared an unofficial Debian package, please do not hesitate to send a description of that project to the Debian Electronics mailing list

Links to other tasks

Debian Electronics FPGA development packages

Official Debian packages with high relevance

arachne-pnr
Place and route tool for iCE40 family FPGAs
Versions of package arachne-pnr
ReleaseVersionArchitectures
sid0.1+20190728gitc40fb22-3amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
stretch0.1+20160813git52e69ed-1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
buster0.1+20180909git840bdfd-1amd64,arm64,armhf,i386
bullseye0.1+20190728gitc40fb22-2amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm0.1+20190728gitc40fb22-3amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
trixie0.1+20190728gitc40fb22-3amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
Popcon: 11 users (4 upd.)*
Versions and Archs
License: DFSG free
Git

Arachne-pnr implements the place and route step of the hardware compilation process for FPGAs. It accepts as input a technology-mapped netlist in BLIF format, as output by the Yosys synthesis suite for example. It currently targets the Lattice Semiconductor iCE40 family of FPGAs. Its output is a textual bitstream representation for assembly by the IceStorm icepack command. The output of icepack is a binary bitstream which can be uploaded to a hardware device.

Together, Yosys, arachne-pnr and IceStorm provide an fully open-source Verilog-to-bistream tool chain for iCE40 1K and 8K FPGA development.

The authors of arachne-pnr have now prepared its successor 'nextpnr'.

fpga-icestorm
Tools to handle the bitstream format of Lattice iCE40 FPGAs
Versions of package fpga-icestorm
ReleaseVersionArchitectures
sid0~20230218gitd20a5e9-1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
stretch0~20160913git266e758-3amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
stretch-backports0~20180904git8f61acd-1~bpo9+1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
buster0~20181109git9671b76-1amd64,arm64,armhf,i386
bullseye0~20190913git0ec00d8-2amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm0~20220915gita545498-3amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm-proposed-updates0~20230218gitd20a5e9-1~deb12u1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
trixie0~20230218gitd20a5e9-1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
upstream0.0~git20231212.1a40ae7
Popcon: 157 users (1 upd.)*
Newer upstream!
License: DFSG free
Git

Project IceStorm aims at documenting the bitstream format of Lattice iCE40 FPGAs and providing simple tools for analyzing and creating bitstream files.

The focus of the project is on the iCE40 LP/HX 1K/4K/8K chips. The iCE40 UltraPlus parts are also supported, including DSPs, oscillators, RGB and SPRAM. iCE40 LM, Ultra and UltraLite parts are not yet supported.

This package contains multiple tools needed to handle the bitstream.

fpgatools
tool to program field-programmable gate arrays
Versions of package fpgatools
ReleaseVersionArchitectures
trixie0.0+201212-1.1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
jessie0.0+201212-1amd64,armel,armhf,i386
sid0.0+201212-1.1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
stretch0.0+201212-1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
buster0.0+201212-1amd64,arm64,armhf,i386
bullseye0.0+201212-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm0.0+201212-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
Popcon: 10 users (7 upd.)*
Versions and Archs
License: DFSG free
Git

fpgatools is a toolchain to program field-programmable gate array (FPGA). The only supported chip at this time is the xc6slx9, a cheap but powerful 45nm-generation chip with about 2400 LUTs, block ram and multiply-accumulate devices.

gtkwave
VCD (Value Change Dump) file waveform viewer
Versions of package gtkwave
ReleaseVersionArchitectures
buster3.3.98-1amd64,arm64,armhf,i386
jessie3.3.62-1amd64,armel,armhf,i386
sid3.3.118-0.1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
trixie3.3.118-0.1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
bookworm-proposed-updates3.3.118-0.1~deb12u1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm-security3.3.118-0.1~deb12u1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm3.3.114-2amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bullseye-proposed-updates3.3.104+really3.3.118-0+deb11u1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bullseye-security3.3.104+really3.3.118-0+deb11u1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bullseye3.3.104-2amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
buster-security3.3.98+really3.3.118-0+deb10u1amd64,arm64,armhf,i386
stretch3.3.79-1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
upstream3.3.119
Debtags of package gtkwave:
fieldelectronics
hardwareemulation
interfacex11
roleprogram
scopeutility
uitoolkitgtk
uselearning, viewing
x11application
Popcon: 98 users (351 upd.)*
Newer upstream!
License: DFSG free
Git

gtkwave is a viewer for VCD (Value Change Dump) files which are usually created by digital circuit simulators. (These files have no connection to video CDs!)

Screenshots of package gtkwave
iverilog
Icarus verilog compiler
Versions of package iverilog
ReleaseVersionArchitectures
sid12.0-2amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
jessie0.9.7-1amd64,armel,armhf,i386
stretch10.1-0.1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
buster10.2-1.1amd64,arm64,armhf,i386
bullseye11.0-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm11.0-1.1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
trixie12.0-2amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
Debtags of package iverilog:
fieldelectronics
interfacecommandline
roleprogram
Popcon: 64 users (28 upd.)*
Versions and Archs
License: DFSG free
Git

Icarus Verilog is intended to compile all of the Verilog HDL as described in the IEEE-1364 standard. It is not quite there yet. It does currently handle a mix of structural and behavioral constructs.

The compiler can target either simulation, or netlist (EDIF).

nextpnr-ice40
FPGA place and route tool for Lattice iCE40
Versions of package nextpnr-ice40
ReleaseVersionArchitectures
bullseye0.0~git20210102.9b96280-1amd64,arm64,i386,mips64el,mipsel,ppc64el,s390x
sid0.6-3amd64,arm64,i386,mips64el,ppc64el,riscv64,s390x
trixie0.6-3amd64,arm64,i386,mips64el,ppc64el,s390x
bookworm0.4-1amd64,arm64,i386,mips64el,mipsel,ppc64el,s390x
upstream0.7
Popcon: 0 users (1 upd.)*
Newer upstream!
License: DFSG free
Git

nextpnr is a FPGA place and route tool. Its purpose is to turn a topological description of digital hardware produced by an FPGA logic synthesis tool such as yosys into an elaborate map of connections between the hardwired functional units available inside the FPGA's fabric.

In order to verify the fully implemented design for proper operation at high speed timing-analysis of the design is also supported.

nextpnr-ice40 supports the Lattice iCE40 series of FPGAs and uses the hardware description chipdb from the fpga-icestorm package.

This package supports only the command-line interface, there is also a GUI version in the nextpnr-ice40-qt package.

Please cite: Myrtle Shah, Eddie Hung, Claire Xenia Wolf, Serge Bazanski, Dan Gisselquist and Miodrag Milanović: Yosys+nextpnr: an Open Source Framework from Verilog to Bitstream for Commercial FPGAs. (eprint) arxiv.org (2019)
Registry entries: SciCrunch 
verilator
fast free Verilog simulator
Versions of package verilator
ReleaseVersionArchitectures
stretch3.900-1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
buster4.010-1amd64,arm64,armhf,i386
bookworm5.006-3amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bullseye4.038-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
trixie5.020-1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
sid5.020-1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
jessie3.864-1amd64,armel,armhf,i386
upstream5.024
Debtags of package verilator:
fieldelectronics
interfacecommandline
roleprogram
usesimulating
Popcon: 45 users (7 upd.)*
Newer upstream!
License: DFSG free
Git

Verilator is the fastest free Verilog HDL simulator, and beats many commercial simulators. It compiles synthesizable Verilog (not test-bench code!), plus some PSL, SystemVerilog and Synthesis assertions into C++ or SystemC code. It is designed for large projects where fast simulation performance is of primary concern, and is especially well suited to generate executable models of CPUs for embedded software design teams.

yosys
Framework for Verilog RTL synthesis
Versions of package yosys
ReleaseVersionArchitectures
bullseye0.9-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
buster0.8-1amd64,arm64,armhf,i386
stretch-backports0.8-1~bpo9+1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
stretch0.7-2+deb9u1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
experimental0.33-6~exp2amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64
sid0.33-5amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64
trixie0.33-5amd64,arm64,armel,armhf,i386,mips64el,ppc64el
bookworm0.23-6amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el
buster-backports0.9-1~bpo10+1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
upstream0.40
Popcon: 31 users (25 upd.)*
Newer upstream!
License: DFSG free
Git

This is a framework for Verilog RTL synthesis. It currently has extensive Verilog-2005 support and provides a basic set of synthesis algorithms for various application domains.

Yosys can be adapted to perform any synthesis job by combining the existing passes (algorithms) using synthesis scripts and adding additional passes as needed by extending the yosys C++ code base.

Registry entries: SciCrunch 
Screenshots of package yosys
*Popularitycontest results: number of people who use this package regularly (number of people who upgraded this package recently) out of 237252