1GTKWAVE(1) Simulation Wave Viewer GTKWAVE(1)
2
3
4
6 gtkwave - Visualization tool for VCD, LXT, LXT2, VZT, FST, and GHW
7 files
8
10 gtkwave [option]... [DUMPFILE] [SAVEFILE] [RCFILE]
11
12
14 Visualization tool for VCD, LXT, LXT2, VZT, FST, and GHW. VCD is an
15 industry standard simulation dump format. LXT, LXT2, VZT, and FST have
16 been designed specifically for use with gtkwave. GHW is the native
17 VHDL format generated by GHDL. Native dumpers exist in Icarus Verilog
18 and the open source version of VeriWell for the LXT formats so conver‐
19 sion with vcd2lxt(1) or vcd2lxt2(1) is not necessary to take direct
20 advantage of LXT with those simulators. AET2 files can also be pro‐
21 cessed provided that libae2rw is available but this is only of interest
22 to people who use IBM EDA toolsets.
23
25 -n,--nocli <directory name>
26 Use file requester for dumpfile name.
27
28 -f,--dump <filename>
29 Specify dumpfile name.
30
31 -F,--fastload
32 generate/use VCD recoder fastload files. This is similar to the
33 -g,--giga option, however the spill file generated is not
34 deleted. Reloading the VCD file another time (either through
35 pressing the reload button or by re-invoking gtkwave at a later
36 time) will use this generated spill file rather than read the
37 value change section of the VCD file. This will speed up
38 reloads on large files greatly as only the variable declaration
39 section needs to be parsed. Note that the spill file contains
40 the file size and modification date of the VCD file in order to
41 detect if it is stale and needs to be regenerated.
42
43 -o,--optimize
44 optimize VCD to FST. This will automatically call vcd2fst(1) to
45 perform the file conversion. This option is highly recommended
46 with large VCD files in order to cut down on the memory usage
47 required for file viewing. Can be used in conjunction with
48 -v,--vcd.
49
50 -a,--save <filename>
51 Specify savefile name. Useful suffixes for desktop integration
52 are .gtkw and .sav (deprecated).
53
54 -A,--autosavename
55 Assume savefile is suffix modified dumpfile name (i.e., remove
56 and replace with ".gtkw").
57
58 -r,--rcfile <filename>
59 Specify override .gtkwaverc filename.
60
61 -l,--logfile <filename>
62 Specify simulation logfile name. Multiple logfiles may be spec‐
63 ified by preceding each with the command flag. By selecting the
64 numbers in the text widget, the marker will immediately zoom to
65 the specific time value.
66
67 -d,--defaultskip
68 If there is not a .gtkwaverc file in the home directory or cur‐
69 rent directory and it is not explicitly specified on the command
70 line, when this option is enabled, do not use an implicit con‐
71 figuration file and instead default to the old "whitescreen"
72 behavior.
73
74 -D,--dualid <which>
75 Specify multisession identifier information. The format of
76 "which" is m+nnnnnnnn where m is the session number 0 or 1 and
77 nnnnnnnn is a hexadecimal value indicating the shared memory ID
78 of an array of two gtkwave_dual_ipc_t data structures. The
79 intended use of this flag is for front ends such as twinwave(1).
80
81 -s,--start <time>
82 Specify start time for LXT2/VZT block skip.
83
84 -e,--end <time>
85 Specify end time for LXT2/VZT block skip.
86
87 -t,--stems <filename>
88 Specify stems file for source code annotation. This will auto‐
89 matically launch the rtlbrowse(1) helper process. See
90 xml2stems(1) for information on stems file generation.
91
92 -c,--cpu <numcpus>
93 Specify number of CPUs available for parallelizable ops (e.g.,
94 block prefetching on VZT reads).
95
96 -N,--nowm
97 Disable window manager for most windows. The intended use of
98 this is to be used in conjunction with the --script option, how‐
99 ever this also can be used to reparent into an alternate window
100 manager.
101
102 -M,--nomenus
103 Do not render menubar. This is mainly used for making a
104 restricted applet that cannot initiate file I/O on its own, how‐
105 ever it also can be used as a workaround in earlier versions of
106 GTK+ that do not handle GTKSocket/GTKPlug focus interactions
107 properly.
108
109 -S,--script <filename>
110 Specify Tcl command script file for execution.
111
112 -T,--tcl_init <filename>
113 Specify Tcl command script to be loaded on startup. Implies
114 --wish command flag.
115
116 -W,--wish
117 Enable Tcl command line on stdio. All script commands can be
118 typed in on stdin.
119
120 -R,--repscript <filename>
121 Specify Tcl command script for periodic execution.
122
123 -P,--repperiod <value>
124 Specifies delay in milliseconds between successive executions of
125 the repscript. Default is 500.
126
127 -X,--xid <XID>
128 Specify XID (in hexadecimal) of window for a GtkPlug to connect
129 to. GTKWave does not directly render to a window but instead
130 renders into a GtkPlug expecting a GtkSocket at the other end.
131 Note that there are issues with accelerators working properly so
132 menus are disabled in the componentized version of GTKWave when
133 it functions as a plug-in.
134
135 -1,--rpcid <RPCID>
136 Specify RPCID of GConf (or GSettings) session. This is a deci‐
137 mal value zero or greater and is the identifier used by GConf to
138 know what update data to listen to. This option only works if
139 --with-gconf (or --with-gsettings) was specified during ./con‐
140 figure.
141
142 -2,--chdir <DIRNAME>
143 Specify new current working directory. This is typically used
144 in OSX to run gtkwave if it was compiled and placed in an .app
145 bundle. Note that if the environment variable GTKWAVE_CHDIR is
146 defined, the argument is a dummy argument. This is to support
147 OSX in that the open command has difficulty in passing spaces as
148 command line arguments and it is possible for pwd(1) to return
149 spaces.
150
151 -3,--restore
152 Restore previous default (0) or --rpcid RPCID numbered session.
153 This only works for one dumpfile, savefile, rcfile, and current
154 working directory so it has the effect of restoring the most
155 recently loaded file. If used in conjunction with the --rpcid
156 option, that option must be specified earlier in the command
157 line than the --restore option. If RPCID is not specified, then
158 the default of 0 is used. This option only works if --with-
159 gconf (or --with-gsettings) was specified during ./configure.
160 Note that for GSettings, limitations in its implementation allow
161 it only to restore the previous session.
162
163 -4,--rcvar
164 Specify single rc variable values individually. These take
165 effect after any other rc variables have been loaded from inter‐
166 nal defaults or from configuration files.
167
168 -5,--sstexclude
169 Specify sst exclusion filter filename.
170
171 -6,--dark
172 Set gtk-application-prefer-dark-theme = TRUE.
173
174 -7,--saveonexit
175 At exit, a requester is brought up to prompt user to write a
176 save file. Canceling the requester prevents from writing the
177 file.
178
179 -I,--interactive
180 Specifies that "interactive" VCD mode is to be used which allows
181 a viewer to navigate a VCD trace while GTKWave is processing the
182 VCD file. When this option is used, the filename is overloaded
183 such that it is the hexadecimal value for the shared memory ID
184 of a writer. Note that the shared memory ID can be passed
185 straight from stdin by using the --vcd option; see the manpage
186 for shmidcat(1) for more details.
187
188 -L,--legacy
189 Specifies that the viewer should use legacy VCD mode rather than
190 the VCD recoder. Note that using legacy mode will require con‐
191 siderably more memory than the recoder and its use is discour‐
192 aged for very large traces.
193
194 -g,--giga
195 Specifies that the viewer should use gigabyte mempacking when
196 recoding (possibly slower). This is equivalent to setting the
197 vlist_spill and vlist_prepack flags in the rc file.
198
199 -C,--comphier
200 Specifies that the viewer should use compressed hierarchy names
201 when loading the dumpfile (available for VCD recoder, LXT, LXT2,
202 and VZT). This will use less memory at the expense of compres‐
203 sion/decompression delay.
204
205 -v,--vcd
206 Use stdin as a VCD dumpfile.
207
208 -O,--output <filename>
209 Specify filename for stdout/stderr redirect. To disable mes‐
210 sages to the console, use /dev/null as the filename.
211
212 -z,--slider-zoom
213 Enable slider stretch zoom for the horizontal time slider.
214 Clicking then dragging the very left or right edge of the slider
215 can be used to provide fine-grained real-time zooming.
216
217 -V,--version
218 Display version banner then exit.
219
220 -h,--help
221 Display help then exit.
222
223 -x,--exit
224 Exit after loading trace (for loader benchmarking).
225
227 ~/.gtkwaverc (see manpage gtkwaverc(5))
228
229
231 To run this program the standard way type:
232 gtkwave dumpfile.vcd
233
234 Alternatively you can run it with a save file as:
235 gtkwave dumpfile.vcd dumpfile.gtkw
236
237 To run interactively using shared memory handle 0x00050003:
238 gtkwave -I 00050003 dumpfile.gtkw
239
240 To pick up a dumpfile automatically from a save file (e.g., when
241 launching from an icon):
242 gtkwave --save dumpfile.gtkw
243
244 To run from the app bundle gtkwave.app in OSX using /bin/sh:
245 GTKWAVE_CHDIR=`pwd`;export GTKWAVE_CHDIR;open -n -W -a gtkwave
246 --args --chdir dummy --dump des.vzt --save des.gtkw
247
248 Alternatively, run the following Perl script gtkwave.app/Con‐
249 tents/Resources/bin/gtkwave to process command line arguments from OSX
250 shell scripts.
251
252 Note that to pass non-flag items which start with a dash, that it is
253 required to specify -- in order to turn off flag parsing. A second --
254 will disable parsing of any following arguments such that they can be
255 passed on to Tcl scripts and retrieved via gtkwave::getArgv.
256
257 Command line options are not necessary for representing the dumpfile,
258 savefile, and rcfile names. They are merely provided to allow specify‐
259 ing them out of order.
260
262 AIX requires -bmaxdata:0x80000000 (-bmaxdata:0xd0000000/dsa for AIX
263 5.3) to be added to your list of compiler flags for xlc if you want
264 GTKWave to be able to access more than 256MB of virtual memory. The
265 value shown allows the VMM to use up to 2GB (3.25GB AIX5.3). This may
266 be necessary for very large traces.
267
268 Shift and Page operations using the wave window hscrollbar may be non‐
269 functional as you move away from the dump start for very large traces.
270 A trace that goes out to 45 billion ticks has been known to exhibit
271 this problem. This stems from using the gfloat element of the horizon‐
272 tal slider to encode the time value for the left margin. The result is
273 a loss of precision for very large values. Use the hotkeys or buttons
274 at the top of the screen if this is a problem.
275
276 When running under Cygwin, it is required to enable Cygserver if shared
277 memory IPC is being used. Specifically, this occurs when rtlbrowse(1)
278 is launched as a helper process. See the Cygwin documentation for more
279 information on how to enable Cygserver.
280
282 Anthony Bybell <bybell@rocketmail.com>
283
285 gtkwaverc(5) lxt2vcd(1) vcd2lxt(1) vcd2lxt2(1) vzt2vcd(1) vcd2vzt(1)
286 xml2stems(1) rtlbrowse(1) twinwave(1) shmidcat(1)
287
288
289
290Anthony Bybell 3.3.101 GTKWAVE(1)