GTKWave
From Wikipedia, the free encyclopedia
GTKWave | |
![]() |
|
![]() GTKWave viewing many waveforms |
|
Developer: | Tony Bybell |
---|---|
Latest release: | 3.0.24 / April 5, 2007 |
OS: | GNU/Linux, FreeBSD, AIX, Win32, Cygwin, Mac OS |
Use: | Simulator |
License: | GPL |
Website: | home.nc.rr.com/gtkwave/ |
GTKWave is a fully featured GTK+ based wave viewer for Unix and Win32 which reads LXT, LXT2, VZT, and GHW files as well as standard Verilog VCD/EVCD files and allows their viewing. GTKWave is available for GNU/Linux with ports for Windows and Mac.
[edit] Overview
Because GTKWave is designed to handle many signals at once, it has three signal searching modes (Regular Expressions, Hierarchy, and Tree) as well as the ability to display data in many different formats such as signed or unsigned decimal, hexadecimal, octal, ASCII, real number, binary, and even analog. Source code annotation is possible for Verilog; a parser currently does not exist to do this for VHDL however it would not be difficult to integrate such a feature.
[edit] History
The GTKWave 1.3 branch is the only branch currently being developed. A 2.0.x branch, which is a slightly more complicated version, was being developed at one time by Advanced Processor Technologies Group (APT), but this version is no longer in development. In order to reduce confusion as to what version is newer, the 1.3 branch has been actively developed such that new features like source code annotation, embedding of the viewer as a GtkPlug plugin applet in other applications such as TwinWave, and partial loading of dumpfiles have been added and the version number has been promoted to 3.0.x.
Recently, the viewer supports not only post-mortem viewing of VCD files but also interactive viewing of VCD data. With this feature, the output of a simulator can go to a named pipe which can then be fed to the viewer through a shared memory proxy. The user can then navigate the dump as it is being written to the fifo, watch it build in realtime, etc. Coupled with the GtkPlug mechanism, this allows for the viewer to be integrated with other simulators in order to provide an interactive environment all in one window.
shmidcat is a utility provided with GTKWave that facilitates the partial loading of dumpfiles. It uses a shared memory interface in order to provide high performance data sharing with Verilog simulators.
Newer versions of the viewer dynamically recode VCD files using VList structures and compress them with zlib. This increases viewer capacity significantly.