Giter Site home page Giter Site logo

awesome-hdl's Introduction

Awesome Hardware Description Languages Awesome

A curated list of amazingly awesome hardware description language projects.

Hardware developement

HDL doc

HDL simulators and compilers

Meta HDL and Transpilers

  • C++

    • VisualHDL - an integrated development environment (IDE) rapid design for FPGAs
  • Haskell

  • Java

  • JavaScript

    • reqack - elastic circuit toolchain
    • hdl-js - Hardware description language (HDL) parser, and Hardware simulator.
    • shdl - Simple Hardware Description Language
  • Julia

  • Python

    • HWT Meta HDL, verification env. IP-core generator, analysis tools, HDL glue
    • garnet Coarse-Grained Reconfigurable Architecture generator based on magma, 2018+
    • magma - Meta HDL, 2017+
    • migen - Meta HDL, 2013+
    • MyHDL - Process based HDL, verification framework included, 2004+
    • PyRTL - Meta HDL, simulator suitable for research.
    • PyMTL - Process based HDL, verification framework included, 2014+
    • veriloggen - 2015-?, Python, Verilog centric meta HDL with HLS like features
  • Ruby

  • Rust

  • Scala

HLS

  • hlslibs - ac_math, ac_dsp, ac_types
  • legup - 2011-2015, LLVM based c->verilog
  • bambu - 2003-?, GCC based c->verilog
  • augh - c->verilog, DSP support
  • https://github.com/utwente-fmt - abstract hls, verification libraries
  • Shang - 2012-2014, LLVM based, c->verilog
  • xronos - 2012, java, simple HLS
  • Potholes - 2012-2014 - polyhedral model preprocessor, Uses Vivado HLS, PET
  • hls_recurse - 2015-2016 - conversion of recursive fn. for stackless architectures
  • hg_lvl_syn - 2010, ILP, Force Directed scheduler
  • abc <2008-?, A System for Sequential Synthesis and Verification
  • polyphony - 2015-2017, simple python to hdl
  • DelayGraph - 2016, C#, register assignment algorithms
  • ahaHLS - 2019, An open source high level synthesis (HLS) tool using LLVM
  • combinatorylogic/soc - 2019, An experimental System-on-Chip with a custom compiler toolchain.

Other HDL languages

Hardware Intermediate Representations

  • coreir - 2016-?, LLVM HW compiler## License
  • lgraph - 2017-?, A Multi-Language Synthesis and Simulation IR for Hardware Design
  • firrtl - 2016-?, Flexible Intermediate Representation for RTL

Synthesis tools

Libraries with informations about boards/chips

  • loam - Buildsystem for magma
  • litex - Buildsystem for migen

Visualization and Documentation generators

  • bitfield - Javascript bit field diagram renderer
  • d3-wave - Javascript wave graph visualizer for RTL simulations
  • d3-hwschematic - Javascript hierarchycal schematic visualizer for HDLs
  • wavedrom - Javascript wave graph visualizer for documentations and sim.
  • netlistsvg - Javascript schematic visualizer
  • sphinx-hwt - Plugin for sphinx documentation generator which adds shematic into html documentaion.

HDL parsers

  • hdlConvertor - Fast (System) Verilog/VHDL parser writen as C++ extension for Python
  • pyVHDLParser - VHDL parser written in Python
  • rust_hdl - VHDL parser and language server written in Rust

Other Simulation tools

  • midas - FPGA-Accelerated Simulation Framework Automatically Transforming Arbitrary RTL
  • cocotb - A coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python

Open Hardware

License

CC0

To the extent possible under law, Aliaksei Chapyzhenka has waived all copyright and related or neighboring rights to this work.

awesome-hdl's People

Contributors

ben-marshall avatar cjdrake avatar cmarqu avatar drom avatar hungrymonkey avatar nic30 avatar swang203 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.