Hardware Description Languages — Tier 3 Index

Hardware Description Languages — Tier 3 Index

  • Type: Family index (Tier 3)
  • Family: Hardware Description Languages (HDLs) and High-Level Synthesis
  • Languages catalogued: 17 (plus 2 ecosystem tools)
  • Last updated: 2026-05-07

Family overview

Hardware Description Languages describe digital circuits at register-transfer or behavioural levels for simulation, synthesis to gates, and formal verification. The field bifurcates into the IEEE-standard mainstream (Verilog, SystemVerilog, VHDL — what every commercial ASIC and most FPGAs ship in) and a long tail of embedded HDLs that host hardware semantics inside a general-purpose host language (Scala for Chisel/SpinalHDL, Python for Amaranth/MyHDL/Magma/PyMTL, Haskell for Clash). A third axis — High-Level Synthesis (HLS) — compiles annotated C/C++/SystemC down to RTL and has slowly become production-credible at Xilinx/AMD, Intel, and Siemens EDA. The EDA tooling itself is overwhelmingly driven by Tcl glue scripts, which is why Tcl persists as a load-bearing language in any serious chip-design flow.

In our deep library

No deep notes yet for this family. Closest cross-links:

  • scala — host for Chisel and SpinalHDL
  • python — host for Amaranth, MyHDL, Magma, PyMTL
  • haskell — host for Clash
  • tcl — the scripting layer of every major EDA tool
  • concurrency-and-actors — OCCAM/CSP lineage

Tier 3 — the family

LanguageFirst releaseStatus 2026NicheWhy it mattersSource URL
Verilog1984Standard (IEEE 1364)RTL design, ASIC/FPGAThe lingua franca of digital design; foundation Cadence built onhttps://en.wikipedia.org/wiki/Verilog
SystemVerilog2005 (IEEE 1800)Dominant verification standardRTL + verification (UVM)Verilog superset with classes, assertions, constrained random — UVM testbenches are written herehttps://en.wikipedia.org/wiki/SystemVerilog
VHDL1987 (IEEE 1076)Standard, Europe/defense-heavyRTL designDoD-pushed Ada-flavoured alternative to Verilog; strong typing, popular in aerospace/defense and EU FPGA shopshttps://en.wikipedia.org/wiki/VHDL
SystemC2000 (IEEE 1666)Living, HLS+TLMTransaction-level modeling, HLSC++ class library for system-level models and HLS input; Accellera-stewardedhttps://systemc.org/
Bluespec (BSV)2000Niche but active; open-sourced 2020High-assurance, RISC-VGuarded atomic actions from MIT; Haskell-flavoured; underpins parts of the open RISC-V ecosystemhttps://github.com/B-Lang-org/bsc
Chisel2012Active (UCB/SiFive)Agile RTL, RISC-VScala-embedded; emits FIRRTL IR; underpins SiFive cores and Chipyardhttps://www.chisel-lang.org/
SpinalHDL2015Active communityPragmatic Scala HDLScala-embedded alternative to Chisel; richer built-in libraries, friendlier waveform/debug storyhttps://spinalhdl.github.io/SpinalDoc-RTD/
Amaranth (ex-nMigen)2020 (renamed)Active (LibreSilicon, ymmv)Python-embedded HDLSuccessor to Migen; clean Python DSL, good open-toolchain (Yosys) integrationhttps://amaranth-lang.org/
Migen2011Superseded by AmaranthPython-embedded HDLPredecessor to Amaranth; still in some legacy SoC repos (M-Labs, LiteX origin)https://github.com/m-labs/migen
MyHDL2003MaintenancePython-embedded HDLPioneer of Python-as-HDL; uses generators for concurrent processes; converts to Verilog/VHDLhttp://www.myhdl.org/
Magma2017Active researchPython-embedded HDLStanford project; emphasis on circuit-as-function and metaprogramminghttps://github.com/phanrahan/magma
PyMTL / PyMTL32014Active (Cornell)Python-embedded HDL + simulationCornell Batten group; integrates simulation, RTL, and Verilog co-simhttps://pymtl.csl.cornell.edu/
Clash2010ActiveHaskell-embedded HDLPure functional HDL; types-as-circuits; compiles to Verilog/VHDL/SystemVeriloghttps://clash-lang.org/
Handel-C1996DefunctHistorical C-to-hardwareOxford/Celoxica; one of the first C-syntax HDLs; influenced modern HLShttps://en.wikipedia.org/wiki/Handel-C
OCCAM1983HistoricalTransputer / CSP ancestorHoare’s CSP made executable on INMOS Transputers; intellectual ancestor of Go channelshttps://en.wikipedia.org/wiki/Occam_(programming_language)
Vivado HLS / Vitis HLS2011Active (AMD/Xilinx)C/C++ → RTL for FPGAMainstream HLS path on AMD FPGAs; pragmas drive pipelining/unrollinghttps://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vitis/vitis-hls.html
Catapult HLS2004Active (Siemens EDA)C++/SystemC → RTL for ASICLong-running HLS for ASIC flows; strong constraint-driven schedulinghttps://eda.sw.siemens.com/en-US/ic/catapult-high-level-synthesis/
Intel HLS / oneAPI FPGA2017Folded into oneAPISYCL/DPC++ → FPGAIntel pivoted from standalone HLS to SYCL-based oneAPI flowhttps://www.intel.com/content/www/us/en/developer/tools/oneapi/fpga.html

Ecosystem tools (not languages, but load-bearing)

ToolRoleURL
VerilatorCycle-accurate Verilog→C++ simulator; the open-source workhorsehttps://www.veripool.org/verilator/
YosysOpen-source Verilog synthesis (and SystemVerilog subset); core of the open FPGA toolchainhttps://yosyshq.net/yosys/
TclThe actual interface to Vivado, Quartus, Innovus, Design Compiler, PrimeTime — every EDA tool exposes its API as Tclhttps://en.wikipedia.org/wiki/Tcl

Notable threads

The Scala/Python embedded-HDL movement. Around 2010 a wave of academic groups (UCB, MIT, Stanford, Cornell, M-Labs) decided that writing RTL in 1984-vintage Verilog was holding back hardware productivity the same way Cobol held back software. Their bet: host an HDL inside a modern language with first-class generics, type inference, and unit-testing tools. Chisel (Scala) won the headline brand by powering SiFive’s commercial RISC-V cores, but the same idea recurred in Amaranth (Python), Clash (Haskell), and SpinalHDL (Scala, more pragmatic). Adoption in industry remains uneven — most production ASIC teams still write SystemVerilog because their EDA contracts and verification IP demand it — but the open-source RISC-V world is overwhelmingly Chisel/SpinalHDL/Bluespec.

HLS finally working. For thirty years “C-to-gates” was a punchline. Around 2015 the combination of (a) AMD/Xilinx subsidising HLS for their FPGAs, (b) the rise of streaming/dataflow workloads (video, ML inference, networking) that match HLS’s strengths, and (c) better scheduling algorithms made Vivado/Vitis HLS and Catapult HLS production-grade for some problem classes. It’s still bad at general-purpose CPU control logic, but for image pipelines, ML accelerators, and protocol offloads it’s now competitive with hand-written RTL on time-to-market.

OCCAM’s long shadow. OCCAM ran on the INMOS Transputer in the 1980s — a microprocessor designed around CSP message-passing. The hardware lost the commercial battle but the language model (channels, ALT, parallel composition) reappeared everywhere: Go’s channels, Erlang’s mailboxes, Limbo, Newsqueak, Plan 9. The HDL world keeps the OCCAM lineage alive through Bluespec’s guarded atomic actions and the broader idea that hardware concurrency wants different primitives than threads-with-locks. Cross-link: concurrency-and-actors.

Tcl’s surprising durability. Tcl is regularly mocked as a “1990s scripting curio,” but every major EDA tool — Vivado, Quartus, Synopsys Design Compiler, Cadence Innovus, Mentor Questa — exposes its automation surface as a Tcl interpreter. A working chip designer in 2026 writes more Tcl than they’d care to admit. Replacing it would require coordinated migration across vendors that nobody has commercial incentive to fund.

Citations