Difference between revisions of "Hardware Description Language"
Jump to navigation
Jump to search
(→List of HDLs: sortable table + feature matrix) |
(→List of HDLs: replace "type system" with "allows non-synthesizable constructs", which is the more interesting property.) |
||
Line 20: | Line 20: | ||
|+ Caption text | |+ Caption text | ||
|- | |- | ||
! Name !! Simulation !! Synthesis !! | ! Name !! Simulation !! Synthesis !! Allows non-synthesizable constructs | ||
|- | |- | ||
| [https://www.chisel-lang.org/ Chisel] | | [https://www.chisel-lang.org/ Chisel] | ||
Line 40: | Line 40: | ||
| Yes | | Yes | ||
| Yes | | Yes | ||
| | | ? | ||
|- | |- | ||
| [https://github.com/SpinalHDL/SpinalHDL SpinalHDL] | | [https://github.com/SpinalHDL/SpinalHDL SpinalHDL] | ||
| Yes | | Yes | ||
| Yes | | Yes | ||
| | | ? | ||
|} | |} | ||
Revision as of 20:55, 21 March 2025
A hardware description language, or HDL, is a tool to describe the behavior of electronic circuits.
While intended for simulation, most (all?) HDLs are also usable to synthesize physical circuits. However, beware some languages support constructs that cannot actually be translated to a physical circuit.
The most common HDL is Verilog, followed by VHDL. Many other HDLs are translated to Verilog under the hood.
Simulation
Synthesis
List of HDLs
This list is incomplete. Feel free to add more entries.
Name | Simulation | Synthesis | Allows non-synthesizable constructs |
---|---|---|---|
Chisel | ? | ? | ? |
Clash | ? | ? | ? |
MyHDL | ? | ? | ? |
RustHDL | Yes | Yes | ? |
SpinalHDL | Yes | Yes | ? |
See also
External references
- Awesome Hardware Description Languages - a list of HDLs and associated tools