(home)

Learning About GtkWave

Introduction

Notes about my use of GTKWave, mainly in relation to its use while Learning About IcarusVerilog.

Showing Signals in GtkWave

In some versions of GtkWave (pre-3.0?) the signal selection dialog isn't shown by default so it looks like there's no signals in your data file. Turns out what you need to do is open the following menu item: Search > Signal Search Tree . Alternatively you can use one of the other Signal Search Xxxxx menu items. (Note: The post in the link mistakenly refers to version 3.81 rather than version 1.3.81.)

Later versions (see below) automatically show the signal selection interface.

Gaining a more usable GtkWave

I'm using Ubuntu 7.04 (Feisty) which comes with gtkwave 1.3.81 in the repository. It has a couple of annoying usability issues, namely:

The first issue is fixed by gtkwave 3.0.27 which can be found in the Gutsy (7.10) release and installed on Feisty without issue (Ubuntu Gutsy gtkwave 3.0.27). There's still no easy way to reload the data file in this version. (See how to install .deb from local disk.)

I then tried installing gtkwave 3.1.1 from Hardy but ran into a failed dependency on libatk. I don't know if that version has reload.

Finally, I gave up on packaged releases and just installed from gtkwave 3.1.4 source. I needed to install gperf 3.0.2 and libgtk2.0-dev 2.10.11 (to avoid No package 'gtk+-2.0' found error) from the standard repository in order for compilation to succeed. This version simplifies the UI and adds reload functionality in addition to other features.

Here's a screenshot of gtkwave 3.1.4 in action:

GtkWave preferences

Find out how to edit your .gtkwaverc file to modify some preferences, including keyboard shortcuts.

If you compiled from source you'll need to copy the sample '.gtkwaverc' file from the root directory of the source install.

code@rancidbacon.com