Verilator: Fast, Free Verilog HDL Simulator
veripool.org
veripool.org
[1] - http://iverilog.icarus.com/ [2] - http://www.clifford.at/yosys/ [3] - https://github.com/YosysHQ/nextpnr
The driving test bench is C/C++
It is a cycle simulator, not a delta-time simulator: it will
only simulate synthesizable code (not test bench code)
It cannot do back-annotated timing simulations
It cannot use encrypted vendor libraries (no simulations with Xilinx IP, for example)
It has no mixed-HDL language capabilities
It requires Gtkwave to view waveforms with (opinion, but I hate the UI)
It is a terrible recommendation for beginners - you'd be much better served by using Xilinx Vivado's inbuilt simulator and waveform viewer.Is it perfect? Hell no. But it's a bit drastic to throw out an entire catalog of the most battle-tested HDL code in the world, isn't it?
It dumps a value-change file (vcd) which can be viewed by anything, no? Sure it's not very compressed (and the compile-time for vcd-generation is unfortunate), but it's not a show-stopper.
I would be exceedingly happy to find one, however; please let me know.
1) Less verbose and easier to write, but slightly more "error" prone (think: Java vs. Python).
2) More widely used in industry. VHDL is more heavily used in the defense industry (it came out of DoD).
3) Better support for verification (e.g., SystemVerilog).
VHDL only has GHDL. And there's a bunch of small projects to translate synthesizable VHDL into Verilog (to then feed into the aforementioned tooling), but none of them are good.
Former: LTSpice (also runs under wine).
Latter: ngspice