ghdl
Analyze, compile, and simulate VHDL designs
TLDR
Analyze a VHDL source file and produce an object file
Elaborate a design (where design is the name of a configuration unit, entity unit or architecture unit)
Run an elaborated design
Run an elaborated design and dump output to a waveform file
Check the syntax of a VHDL source file
Display help
SYNOPSIS
ghdl command [options] VHDL files
PARAMETERS
--analyze
Analyze the VHDL files.
--elaborate
Elaborate the design.
--run
Run the simulation.
--simulate
Synonym for --run.
--synth
Generate code for synthesis.
--v87
Use the VHDL-87 standard.
--v93
Use the VHDL-93 standard.
--v02
Use the VHDL-2002 standard.
--v08
Use the VHDL-2008 standard.
--ieee=synopsys
Use Synopsys ieee library.
--work=library_name
Specify the working library.
--std=standard
Specify the VHDL standard to use.
--help
Display help information.
-o
Specify the output file name.
DESCRIPTION
GHDL is an open-source VHDL simulator. It analyzes, elaborates, simulates, and compiles VHDL code. It is a powerful tool for verifying hardware designs before they are implemented in physical hardware. GHDL supports multiple backends, including code generation for other simulators or synthesis tools. It uses the GNU GCC or LLVM compiler to compile the generated code, resulting in fast and efficient simulation. GHDL is compliant with multiple VHDL standards (IEEE 1076), including VHDL-87, VHDL-93, VHDL-2002, and VHDL-2008.
It's a valuable tool for hardware engineers, students, and anyone working with VHDL.
CAVEATS
GHDL requires a working GCC or LLVM installation.
CODE GENERATION
The '--synth' option allows GHDL to generate code compatible with various synthesis tools. The output format depends on the target synthesis tool.
LIBRARIES
VHDL designs often rely on pre-compiled libraries. GHDL provides mechanisms to manage and use these libraries, including standard libraries like IEEE and vendor-specific libraries.
HISTORY
GHDL was initially developed by Tristan Gingold as part of his PhD thesis. It has evolved over the years with contributions from numerous developers. Originally, GHDL was based on the GCC compiler. Later, support for LLVM was added, providing alternative backend options. GHDL has become a widely used tool in the open-source hardware community.
SEE ALSO
gcc(1), llvm(1)