Missing a tool or have feedback? Open an issue →

garden of eda

Discover open-source EDA tools

Buzzing This Week

simulator

logisim-evolution

logisim-evolution

Table of contents Features Requirements Downloads Package Manager Nightly builds (unstable) Pictures of Logisim-evolution More Information Bug reports & feature requests For developers How to contribute Credits

logisim evolutioneducationcircuit
7.2k GPL-3.0
hdl framework

chisel

chipsalliance

Chisel: A Modern Hardware Design Language

chiselchisel3scala
4.7k Apache-2.0
synthesis

yosys

YosysHQ

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

4.5k ISC
hdl framework

rocket-chip

chipsalliance

This repository contains the Rocket chip generator necessary to instantiate the RISC-V Rocket Core. For more information on Rocket Chip, please consult our technical report.

scalarocket chipchip generator
3.8k
simulator

verilator

verilator

Verilator open-source SystemVerilog simulator and lint system

verilogsystem verilogverilog simulator
3.7k
simulator

iverilog

steveicarus

1. What is ICARUS Verilog? 2. Building/Installing Icarus Verilog From Source - Compile Time Prerequisites - Compilation - (Optional) Testing - Installation 3. How Icarus Verilog Works - Preprocessing - Parse - Elaboration - Optimization - Code Generation - Attributes 4.

3.5k GPL-2.0
simulator

ghdl

ghdl

This directory contains the sources of GHDL, the open-source analyzer, compiler, simulator and (experimental) synthesizer for VHDL, a Hardware Description Language (HDL).

vhdlghdlsimulator
2.8k GPL-2.0
full flow

OpenROAD

The-OpenROAD-Project

OpenROAD's unified application implementing an RTL-to-GDS Flow. Documentation at https://openroad.readthedocs.io/en/latest/

opendb databaseopenroadlef
2.7k BSD-3-Clause
testbench

cocotb

cocotb

cocotb: Python-based chip (RTL) verification

pythonvhdlverilog
2.4k BSD-3-Clause
hdl framework

chipyard

ucb-bar

An Agile RISC-V SoC Design Framework with in-order cores, out-of-order cores, accelerators, and more

rocket chipchip generatorchisel
2.3k BSD-3-Clause
hdl framework

riscv-boom

riscv-boom

SonicBOOM: The Berkeley Out-of-Order Machine

riscvboomchisel
2.2k BSD-3-Clause
hdl framework

amaranth

amaranth-lang

A modern hardware definition language and toolchain based on Python

fpgahdlamaranth hdl
2.0k BSD-2-Clause
hdl framework

SpinalHDL

SpinalHDL

- A language to describe digital hardware - Compatible with EDA tools, as it generates VHDL/Verilog files - Much more powerful than VHDL, Verilog, and SystemVerilog in its syntax and features - Much less verbose than VHDL, Verilog, and SystemVerilog - Not an HLS, nor based on…

scalartlvhdl
2.0k
language server

verible

chipsalliance

Verible is a suite of SystemVerilog developer tools, including a parser, style-linter, formatter and language server

systemveriloglexeryacc
1.9k
full flow

OpenLane

The-OpenROAD-Project

OpenLane is an automated RTL to GDSII flow based on several components including OpenROAD, Yosys, Magic, Netgen and custom methodology scripts for design exploration and optimization.

asic130nmmagic
1.8k Apache-2.0
place and route

nextpnr

YosysHQ

nextpnr portable FPGA place and route tool

1.7k ISC
hls

xls

google

Docs | Quick Start [](https://bit.ly/learn-xls) | Tutorials

compilerhigh level synthesishls
1.5k Apache-2.0
build tool

fusesoc

olofk

Package manager and build abstraction tool for FPGA/ASIC development

pythonedareuse
1.4k BSD-2-Clause
testbench

wireguard-fpga

chili-chips-ba

Full-throttle, wire-speed hardware implementation of Wireguard VPN, using low-cost Artix7 FPGA with opensource toolchain. If you seek security and privacy, nothing is private in our codebase. Our door is wide open for backdoor scrutiny, be it related to RTL, embedded, build, bitstream or any other aspect of design and delivery package. Bujrum!

cocotbembeddedfpga
1.3k BSD-3-Clause
uncategorized

VeriGPU

hughperkins

OpenSource GPU, in Verilog, loosely based on RISC-V ISA

verilogrisc vrisc v assembly
1.3k MIT
full flow

vtr-verilog-to-routing

verilog-to-routing

Verilog to Routing -- Open Source CAD Flow for FPGA Research

vtrfpgacad
1.2k
synthesis

abc

berkeley-abc

ABC: System for Sequential Logic Synthesis and Formal Verification

1.2k
simulator

metroboy

aappleby

A repository of gate-level simulators and tools for the original Game Boy.

veriloggameboygameboy emulator
1.2k
build tool

siliconcompiler

siliconcompiler

SiliconCompiler is a modular hardware build system ("make for silicon"). The project philosophy is to "make the complex possible while keeping the simple simple".

asiccmoseda
1.2k Apache-2.0
language server

slang

MikePopoloski

SystemVerilog compiler and language services

verilogcompilersystemverilog
1.1k MIT
full flow

apio

FPGAwars

:seedling: Open source ecosystem for open FPGA boards

apiocliicestorm
985 GPL-3.0
waveform viewer

gtkwave

gtkwave

GTKWave is a fully featured GTK+ based wave viewer for Unix and Win32 which reads LXT, LXT2, VZT, FST, and GHW files as well as standard Verilog VCD/EVCD files and allows their viewing.

fstghwvcd
978 GPL-2.0
hdl framework

veryl

veryl-lang

Veryl: A Modern Hardware Description Language

rtlrustsystemverilog
949
simulator

nvc

nickg

NVC supports almost all of VHDL-2008 with the exception of PSL, and it has been successfully used to simulate several real-world designs. Experimental support for Verilog and VHDL-2019 is under development.

vhdlsimulatorcompiler
834 GPL-3.0
testbench

vunit

VUnit

VUnit is a unit testing framework for VHDL/SystemVerilog

vhdlverificationsystemverilog hdl
827
build tool

edalize

olofk

An abstraction library for interfacing EDA tools

edafpgafossi
770 BSD-2-Clause
hls

PipelineC

JulianKemmerer

A C-like hardware description language (HDL) adding high level synthesis(HLS)-like automatic pipelining as a language construct/compiler feature.

fpgahardware description languagevhdl
721 GPL-3.0
static timing

OpenTimer

OpenTimer

A High-performance Timing Analysis Tool for VLSI Systems

static timing analysisstavlsi
700
simulator

riscv_vhdl

sergeykhbr

Portable RISC-V System-on-Chip implementation: RTL, debugger and simulators

riscvsocvhdl
687 Apache-2.0
full flow

OpenROAD-flow-scripts

The-OpenROAD-Project

OpenROAD's scripts implementing an RTL-to-GDS Flow. Documentation at https://openroad-flow-scripts.readthedocs.io/en/latest/

edartltcl
646
formal verification

awesome-open-hardware-verification

ben-marshall

A List of Free and Open Source Hardware Verification Tools and Frameworks

hardwareverificationvhdl
609 MIT
hls

calyx

calyxir

Intermediate Language (IL) for Hardware Accelerator Generators

high level synthesisfpga programmingopen source hardware
597 MIT
hls

dace

spcl

DaCe - Data Centric Parallel Programming

high performance computingprogramming languagecuda
584 BSD-3-Clause
uncategorized

qkeras

google

QKeras: a quantization deep learning library for Tensorflow Keras

deep learningquantizationquantized neural networks
582 Apache-2.0
static timing

OpenSTA

The-OpenROAD-Project

OpenSTA is a gate level static timing verifier. As a stand-alone executable it can be used to verify the timing of a design using standard file formats.

582 GPL-3.0
language server

svls

dalance

Download from release page, and extract to the directory in PATH.

rustverilogsystemverilog
575 MIT
formal verification

sby

YosysHQ

SymbiYosys (sby) -- Front-end for Yosys-based formal verification flows

514
language server

rust_hdl

VHDL-LS

A fast VHDL language server and analysis library written in Rust

vhdllanguage servervhdl parser
490
language server

sv-parser

dalance

SystemVerilog parser library fully compliant with IEEE 1800-2017

rustrust crateverilog
472
hdl framework

surf

slaclab

A huge VHDL library for FPGA and digital ASIC development

asicfirmwarefpga
464
uncategorized

rggen

rggen

Code generation tool for control and status registers

verilogsystemveriloguvm
463 MIT
hdl framework

pymtl3

pymtl

Pymtl 3 (Mamba), an open-source Python-based hardware generation, simulation, and verification framework

pymtlhardware generationpython
455 BSD-3-Clause
uncategorized

async_fifo

dpretet

A dual clock asynchronous FIFO written in verilog, tested with Icarus Verilog

verilogverificationverilog hdl
454
full flow

f4pga

chipsalliance

This is the top-level repository for the F4PGA project, which is a Workgroup under the CHIPS Alliance; consisting of members from different backgrounds, including FPGA vendors, industrial users and academia (see Documentation > Community); who collaborate to build a more open…

symbiflowsphinxdocumentation
438 Apache-2.0
full flow

librelane

librelane

ASIC implementation flow infrastructure, successor to OpenLane

asicasic designchip design
422 Apache-2.0
full flow

caravel

efabless

Caravel is a standard SoC template with on chip resources to control and read/write operations from a user-dedicated space.

magicyosyscaravel
393 Apache-2.0
hls

gemm_hls

spcl

Scalable systolic array-based matrix-matrix multiplication implemented in Vivado HLS for Xilinx FPGAs.

hlshigh level synthesisvivado hls
385 BSD-3-Clause
hls

allo

cornell-zhang

Allo Accelerator Design and Programming Framework (PLDI'24)

compilerdslfpga
385 Apache-2.0
language server

svlint

dalance

SystemVerilog linter compliant with IEEE1800-2017. Written in Rust, based on sv-parser. Svlint is also integrated with most text editors via svls.

rustverilogsystemverilog
383 MIT
simulator

forth-cpu

howerj

A Forth CPU and System on a Chip, based on the J1, written in VHDL

vhdlforthsimulator
375
hls

nngen

NNgen

NNgen: A Fully-Customizable Hardware Synthesis Compiler for Deep Neural Network

neural networkhigh level synthesishardware
366 Apache-2.0
full flow

openlane2

chipfoundry

The next generation of OpenLane, rewritten from scratch with a modular architecture

asicdrceda
351 Apache-2.0
hls

hlslib

definelicht

A collection of extensions for Vitis and Intel FPGA OpenCL to improve developer quality of life.

vivado hlssdaccelcmake
341 BSD-3-Clause
build tool

VeeRwolf

chipsalliance

VeeRwolf is a FuseSoC-based reference platform for the VeeR family of RISC-V cores. Currently, VeeR EH1 and VeeR EL2 are supported. See CPU configuration to learn how to switch between them.

toolsfusesocswerv
341
waveform viewer

vaporview

Lramseyer

Vaporview is an open source waveform viewer extension for VScode.

design verificationhardware simulationlogic analyzer
339 AGPL-3.0
hls

heterocl

cornell-zhang

HeteroCL: A Multi-Paradigm Programming Infrastructure for Software-Defined Heterogeneous Computing (FPGA'19 Best Paper)

fpgadslpython
339 Apache-2.0
build tool

Cores-VeeR-EL2

chipsalliance

This repository contains the VeeR EL2 RISC-V Core design RTL.

el2verilatorwestern digital
339 Apache-2.0
hls

PandA-bambu

ferrandi

The primary objective of the PandA project is to develop a usable framework that will enable the research of new ideas in the HW-SW Co-Design field.

high level synthesishw acceleratorsfpga
335 GPL-3.0
hls

veriloggen

PyHDI

Veriloggen: A Mixed-Paradigm Hardware Construction Framework

verilog hdlpythonpyverilog
325 Apache-2.0
hdl framework

f4pga-arch-defs

f4pga

FOSS architecture definitions of FPGA hardware useful for doing PnR device generation.

fpgaice40sphinx
307 ISC
hdl framework

PyRTL

UCSBarchlab

A collection of classes providing simple hardware specification, simulation, tracing, and testing suitable for teaching and research. Simplicity, usability, clarity, and extensibility are the overarching goals, rather than performance or optimization.

pyrtlpythonhdl
301 BSD-3-Clause
uncategorized

systemrdl-compiler

SystemRDL

SystemRDL 2.0 language compiler front-end

systemrdl compilerhardware description languageasic
279 MIT
hdl framework

raster-i

raster-gpu

A 3D FPGA GPU for real-time rasterization with a tile-based deferred rendering (TBDR) architecture, featuring transform & lighting (T&L), back-face culling, MSAA anti-aliasing, ordered dithering, etc.

fpgagpuchisel
263 MIT
testbench

OSVVM

OSVVM

OSVVM Utility Library: AlertLogPkg, CoveragePkg, RandomPkg, ScoreboardGenericPkg, MemoryPkg, TbUtilPkg, TranscriptPkg, ...

verification methodologiestestbenchcoverage
260
uncategorized

kactus2dev

kactus2

Kactus2 is a graphical EDA tool based on the IP-XACT standard.

ip xactedareuse
255 GPL-2.0
testbench

eurorack-pmod

apfaudio

A eurorack-friendly audio frontend compatible with many FPGA boards, based on the AK4619VN audio CODEC.

electronicseurorackfpga
233
uncategorized

axi-crossbar

dpretet

Parametric AXI4 crossbar in SystemVerilog

axi4axi4 liteaxi4 protocol
232 MIT
hdl framework

constellation

ucb-bar

A Chisel RTL generator for network-on-chip interconnects

chiselhardwareinterconnect
230 BSD-3-Clause
simulator

hwt

Nic30

VHDL/Verilog/SystemC code generator, simulator API written in python/c++

verilogvhdlfpga
225 MIT
hdl framework

hdl_checker

suoto

Repurposing existing HDL tools to help writing better code

vhdlmodelsimxilinx
221 GPL-3.0
uncategorized

hdl-modules

hdl-modules

A collection of reusable, high-quality, peer-reviewed VHDL building blocks.

alteraamdasic
209 BSD-3-Clause
uncategorized

open-register-design-tool

Juniper

Tool to generate register RTL, models, and docs using SystemRDL or JSpec input

systemrdljspeceda
207 Apache-2.0
synthesis

lstools-showcase

lsils

Showcase examples for EPFL logic synthesis libraries

logic synthesisexamples
206 MIT
uncategorized

PeakRDL

SystemRDL

Control and status register code generator toolchain

asicfpgaeda
196 LGPL-3.0
hdl framework

essent

ucsc-vama

Looking for RepCut, the parallelized version? Please check the repcut branch!

firrtlrtlchisel
193
uncategorized

openasip

cpc

Open Application-Specific Instruction Set processor tools (OpenASIP)

asic designfpgahardware accelerators
185
waveform viewer

wal

ics-jku

WAL enables programmable waveform analysis.

edahardwarertl
181 BSD-3-Clause
waveform viewer

surfer

surfer-project

Modern Rust-based waveform viewer for VCD/FST files, with web and desktop builds.

181 European Union Public License 1.2
hls

CHARM

arc-research-lab

CHARM: Composing Heterogeneous Accelerators on Heterogeneous SoC Architecture

deeplearningfpgaheterogeneous computing
172 MIT
uncategorized

universal_NPU-CNN_accelerator

thousrm

hardware design of universal NPU(CNN accelerator) for various convolution neural network

cnnhardware designnpu
172 MIT
uncategorized

DFFRAM

AUCOHL

Standard Cell Library based Memory Compiler using FF/Latch cells

verilogvlsivlsi physical design
168 Apache-2.0
hdl framework

chiselverify

chiselverify

A dynamic verification library for Chisel.

scalaverificationcoverage
162 BSD-2-Clause
uncategorized

verilog-generator

Eriemon

Agent skill for Verilog-2001 RTL generation and FPGA design workflows.

agent skillcodex skilleda
160 Apache-2.0
uncategorized

ice-chips-verilog

TimRudy

IceChips is a library of all common discrete logic devices in Verilog

7400verilog componentseda
155 GPL-3.0
hls

dahlia

cucapra

Time-sensitive affine types for predictable hardware generation

high level synthesisfpga programmingopen source hardware
152 MIT
synthesis

OpenABC

NYU-MLDA

OpenABC-D is a large-scale labeled dataset generated by synthesizing open source hardware IPs. This dataset can be used for various graph level prediction problems in chip design.

electronics designlogic synthesisgraph machine learning
149 BSD-3-Clause
uncategorized

vpm

getinstachip

VPM is a powerful package manager for Verilog projects, currently being piloted at Stanford and UC Berkeley. It's designed to streamline the management, reuse, and communication of IP cores and dependencies in hardware design workflows, significantly accelerating your design…

asicclieda
146 MIT
hdl framework

pygears

bogdanvuk

PyGears is a free framework that lets you design hardware using high-level Python constructs and compile it to synthesizable SystemVerilog or Verilog code. There is a built-in simulator that lets you use arbitrary Python code with its vast set of libraries to verify your…

hardwaredesignpython
145 MIT
testbench

pyvsc

fvutils

Python packages providing a library for Verification Stimulus and Coverage

verification stimuluscoverageconstraints
145 Apache-2.0
uncategorized

naja

najaeda

Netlist API (and more) for EDA flow development

netlistedasemiconductor
139 Apache-2.0
hdl framework

FPGA-Application-Development-and-Simulation

loykylewong

《FPGA应用开发和仿真》(机械工业出版社2018年第1版 ISBN:9787111582786)的源码。Source Code of the book FPGA Application Development and Simulation(CHS).

fpgaverilogsystemverilog
136 MIT
language server

svlangserver

imc-trading

A language server for systemverilog that has been tested to work with coc.nvim, VSCode, Sublime Text 4, emacs, and Neovim

134 MIT
hdl framework

fpga-tidbits

maltanar

A collection of Chisel hardware generators for small but useful components for FPGA projects.

fpgachiselhardware libraries
129 BSD-2-Clause
testbench

cocotb-coverage

mciepluc

Functional Coverage and Constrained Randomization Extensions for Cocotb

cocotbmdvverification
126 BSD-2-Clause
uncategorized

cgra4ml

KastnerRG

An Open Workflow to Build Custom SoCs and run Deep Models at the Edge

aiaxi streamcnn
119 Apache-2.0
hdl framework

HDLGen

WilsonChen003

HDLGen is an HDL generation tool, supporting embedded Perl or Python script, reduce manual work & improve effiency with a few embedded functions, with ZERO learning-curve

automationhdlperl
114
uncategorized

spydrnet

byuccl

A flexible framework for analyzing and transforming FPGA netlists. Official repository.

edacadcircuit
114 BSD-3-Clause
synthesis

LSOracle

lnis-uofu

The Logic Synthesis oracle is a framework developed on the top of EPFL logic synthesis libraries to unlock efficient logic manipulation by using different logic optimizers.To do so, the flow splits a design into different partitions and selects different optimizers for different…

logic synthesis
113 MIT
full flow

toolchain-installer

openXC7

Convenience script to install the nextpnr-xilinx toolchain for Kintex7, Artix7, Spartan7 and Zynq7

fpgainstallertoolchain
111 BSD-3-Clause
hls

polyphony

polyphony-dev

Polyphony is Python based High-Level Synthesis compiler.

pythonfpgahigh level synthesis
110 MIT
testbench

10g-low-latency-ethernet

ttchisholm

For more information, refer to my blog series for this project - Designing a Low Latency 10G Ethernet Core - Part 1 (Introduction)

cocotbethernetfpga
109 MIT
hdl framework

chiselv

carlosedp

A RISC-V Core (RV32I) written in Chisel HDL

riscvfpgacore
108 MIT
formal verification

rIC3

gipsyh

LLM-Assisted Hardware Formal Verification Tool

ic3model checkingformal verification
106 GPL-3.0
hls

HiSparse

cornell-zhang

High-Performance Sparse Linear Algebra on HBM-Equipped FPGAs Using HLS

fpga programminghigh level synthesisopen source hardware
101 BSD-3-Clause
hls

vericert

ymherklotz

A formally verified high-level synthesis tool based on CompCert and written in Coq.

high level synthesiscoq
98 GPL-3.0
synthesis

fiction

cda-tum

An open-source design automation framework for Field-coupled Nanotechnologies

emerging technanocomputingfcn
91 MIT
synthesis

also

nbulsi

ALSO is based on the EPFL Logic Synthesis Libraries, we aim to exploit advanced logic synthesis tools for both modern FPGA and emerging nanotechnologies.

logic synthesismajority based boolean function
89 MIT
uncategorized

hdl-registers

hdl-registers

An open-source HDL register code generator fast enough to run in real time.

asicaxieda
89 BSD-3-Clause
simulator

issie

tomcl

Issie - an intuitive cross-platform hardware design application. https://tomcl.github.io/issie

digitallogiceditor
88 GPL-3.0
synthesis

aigverse

marcelwa

A Python library for working with logic networks, synthesis, and optimization.

aigaigermachine learning
85 MIT
uncategorized

yosys-f4pga-plugins

chipsalliance

Plugins for Yosys developed as part of the F4PGA project.

yosysyosys plugineda
84 Apache-2.0
waveform viewer

fliplot

raczben

HTML based waveform viewer for HDL simulators.

vcdwaveformwaveform viewer
81 Apache-2.0
simulator

svut

dpretet

SVUT is a simple framework to create Verilog/SystemVerilog unit tests. Just focus on your tests!

verilogsystemverilogtdd
80 MIT
testbench

cocotb-bus

cocotb

Pre-packaged testbenching tools and reusable bus interfaces for cocotb

testbenchbusinterface
78
synthesis

workcraft

workcraft

Toolset to capture, simulate, synthesize and verify graph models

cadedaformal specification
77 MIT
testbench

cocotb-vivado

themperek

Limited python / cocotb interface to Xilinx/AMD Vivado simulator.

cocotbpythonsimulation
76 Apache-2.0
ip core

PoC

VHDL

IP Core Library - Published and maintained by the Open Source VHDL Group

alteraasiccollection
76
simulator

vga-playground

TinyTapeout

Playground for VGA projects on Tiny Tapeout

hdlsimulationsimulator
75 GPL-3.0
testbench

RTLStructLib

Weiyet

Highly optimized (trying my best), synthesizable data structures module/IP library for hardware design

cocotbdata structuresrtl
68 MIT
synthesis

OpenPhySyn

scale-lab

OpenPhySyn is a physical synthesis optimization kit developed at Brown University SCALE lab as part of the OpenROAD flow.

physical synthesislogic synthesisphysical design
67 BSD-3-Clause
synthesis

kitty

lsils

kitty is a C++-17 truth table library. It provides efficient implementations for basic truth table manipulations and various algorithms.

logic synthesisboolean functionalgorithms
66 MIT
hdl framework

spade

spade-lang

A Hardware Description Language that doesn't make you want to pull your hair out | read-only mirror of https://gitlab.com/spade-lang/spade/

65 MIT
uncategorized

PeakRDL-html

SystemRDL

Generate address space documentation HTML from compiled SystemRDL input

asicfpgaeda
63 LGPL-3.0
full flow

piel

daquintero

Photonic Integrated ELectronics. Microservices to codesign photonics, electronics, quantum, and more.

gdsfactoryopenroadcodesign
62 MIT
uncategorized

PeakRDL-uvm

SystemRDL

Generate UVM register model from compiled SystemRDL input

uvm register modeluvm ral modelasic
61 LGPL-3.0
waveform viewer

tywaves-chisel

rameloni

A repository that implements Tywaves: enabling a type-based waveform debugging for Chisel and Tydi-Chisel. Mapping from Chisel level code to values dumped by simulators is now possible thanks to Tywaves!

chiselchisel3simulator
59 Apache-2.0
build tool

Hog

Hog-CERN

Coordinating firmware development among many international collaborators is becoming a very widespread problem.

51 Apache-2.0
hdl framework

apytypes

apytypes

APyTypes - Algorithmic data types for Python

fixed pointfixed point arithmeticfloating point
42 MIT
hdl framework

firesim-lab

pentarisc

A framework for building and running custom target designs with FireSim.

4 Apache-2.0
waveform viewer

VCD Anon

surfer-project

1 European Union Public License 1.2
full flow

B-ASIC

da

Toolbox for Python 3 that simplifies design and optimization of signal processing circuits for ASIC or FPGA implementation.

pythondspasic
0 MIT