Downloaded and integrated latest wiki documentation from the geda website.
[geda-gaf/peter-b.git] / docs / wiki / geda_icarus_vvp_runtime.html
blob0eee6c88c9a89a89183ccd94ae5beea4f16fe58c
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
4 lang="en" dir="ltr">
5 <head>
6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7 <title>geda:icarus_vvp_runtime</title>
8 <meta name="generator" content="DokuWiki Release rc2007-05-24" />
9 <meta name="robots" content="index,follow" />
10 <meta name="date" content="2007-05-24T22:27:24-0400" />
11 <meta name="keywords" content="geda,icarus_vvp_runtime" />
12 <link rel="search" type="application/opensearchdescription+xml" href="http://geda.seul.org/wiki/lib/exe/opensearch.php" title="geda Wiki" />
13 <link rel="start" href="http://geda.seul.org/wiki/" />
14 <link rel="contents" href="http://geda.seul.org/wiki/geda:icarus_vvp_runtime?do=index" title="Index" />
15 <link rel="alternate" type="application/rss+xml" title="Recent Changes" href="http://geda.seul.org/wiki/feed.php" />
16 <link rel="alternate" type="application/rss+xml" title="Current Namespace" href="http://geda.seul.org/wiki/feed.php?mode=list&ns=geda" />
17 <link rel="alternate" type="text/html" title="Plain HTML" href="http://geda.seul.org/wiki/_export/xhtml/geda:icarus_vvp_runtime" />
18 <link rel="alternate" type="text/plain" title="Wiki Markup" href="http://geda.seul.org/wiki/_export/raw/geda:icarus_vvp_runtime" />
19 <link rel="stylesheet" media="all" type="text/css" href="lib/exe/css" />
20 <link rel="stylesheet" media="screen" type="text/css" href="lib/exe/001css" />
21 <link rel="stylesheet" media="print" type="text/css" href="lib/exe/002css" />
22 </head>
23 <body>
24 <div class="dokuwiki export">
28 <h1><a name="icarus_verilog_vvp_runtime_engine_man-page" id="icarus_verilog_vvp_runtime_engine_man-page">Icarus Verilog vvp runtime engine man-page</a></h1>
29 <div class="level1">
30 <pre class="code">vvp(1) $Date: 2005/01/29 06:28:19 $ vvp(1)
34 NAME
35 vvp - Icarus Verilog vvp runtime engine
38 SYNOPSIS
39 vvp [-sv] [-Mpath] [-mmodule] [-llogfile] inputfile [extended-args...]
42 DESCRIPTION
43 vvp is the run time engine that executes the default compiled form gen-
44 erated by Icarus Verilog. The output from the iverilog command is not
45 by itself executable on any platform. Instead, the vvp program is
46 invoked to execute the generated output file.
49 OPTIONS
50 vvp accepts the following options:
52 -llogfile
53 This flag specifies a logfile where all MCI &lt;stdlog&gt; output
54 goes. Specify logfile as ’-’ to send log output to &lt;stderr&gt;.
55 $display and friends send their output both to &lt;stdout&gt; and
56 &lt;stdlog&gt;.
58 -Mpath This flag adds a directory to the path list used to locate VPI
59 modules. The default path includes only the install directory
60 for the system.vpi module, but this flag can add other directo-
61 ries. Multiple paths are allowed, and modules will be searched
62 in order.
64 -mmodule
65 Tell the vvp run time to load the named module before executing
66 the simulation. The system.vpi module is loaded by default, but
67 additional modules, including modules that you compiled
68 locally, can be specified with this flag. Any number of modules
69 can be loaded, and they will be linked in the order they are
70 listed on the command line.
72 Normally, you only need to specify the name of the module,
73 without any directory path or .vpi suffix and the search path
74 is scanned to find the module. However, if the name includes at
75 least one directory character, then the search path is not
76 scanned and the name is assumed to be a complete file name.
78 -s Stop. This will cause the simulation to stop in the beginning,
79 before any events are scheduled. This allows the interactive
80 user to get hold of the simulation just before it starts.
82 -v Turn on verbose messages. This will cause information about run
83 time progress to be printed to standard out.
86 EXTENDED ARGUMENTS
87 The vvp options described above must come before the design file name.
88 After the design file name, however, there may be any number of unspec-
89 ified arguments. These arguments are not interpreted by vvp but are
90 instead passed on to the executed design, and are available via the
91 $test$plusargs and $value$plusargs system functions.
93 Arguments that do not start with the plus(+) character are not avail-
94 able to the $plusargs system tasks, but can still be accessed via PLI
95 code via the vpi_get_vlog_info function. This means that vpi modules
96 may use arguments that do not start with + and be assured that they do
97 not interfere with user defined plus-args.
99 There are a few extended arguments that are interpreted by the standard
100 system.vpi module, which implements the standard system tasks and so is
101 always included. These arguments are described here.
103 -vcd|-vcd-none
104 This extended argument sets the wave dump format to VCD. This
105 is the default in the absence of any IVERILOG_DUMPER environ-
106 ment variable. The VCD dump files are large and ponderous, but
107 are also maximally compatible with third party tools that read
108 waveform dumps.
110 The -vcd-none variant actually suppresses all waveform output. This can
111 make long simulations run faster.
114 -lxt|-lxt-speed|-lxt-space|-lxt-none
115 These extended arguments set the wave dump format to lxt, pos-
116 sibly with format optimizations. The -lxt-space flag sets the
117 output format to lxt with full compression enabled. The result-
118 ing files are quite small. The -lxt-speed chooses the lxt com-
119 pression mode that leads to the best execution time and the
120 fastest read time, at the expense of some file size.
122 The -lxt-none variant actually suppresses all waveform output. This can
123 make long simulations run faster.
126 -lxt2 The LXT2 format is slower then LXT (faster then VCD) but takes
127 less space, and is written out incrementally. Thus, you can
128 view lxt2 files while a simulation is still running (or paused)
129 or if your simulation crashes or is killed, you still have a
130 useful dump.
133 ENVIRONMENT
134 The vvp command also accepts some environment variables that control
135 its behavior. These can be used to make semi-permanent changes.
138 IVERILOG_DUMPER=lxt|lxt2|vcd|none
139 This selects the output format for the waveform output. Nor-
140 mally, waveforms are dumped in vcd format, but this variable
141 can be used to select lxt format, which is far more compact,
142 though limited to gtkwave or compatible viewers. It can also be
143 used to suppress VCD output, a time-saver for regression tests.
146 INTERACTIVE MODE
147 The simulation engine supports an interactive mode. The user may inter-
148 rupt the simulation (typically by typing Ctrl-C) to get to the interac-
149 tive prompt. From that prompt, the help command prints a brief summary
150 of the available commands.
152 The interactive mode may also be entered by a call to the $stop system
153 task from within the simulation, or by a call to the vpi_control VPI
154 function with the vpiStop control argument. These means of entering
155 interactive mode are equivalent.
158 AUTHOR
159 Steve Williams (steve@icarus.com)
162 SEE ALSO
163 iverilog(1), iverilog-vpi(1), &lt;http://www.icarus.com/eda/verilog/&gt;
166 COPYRIGHT
167 Copyright © 2001-2003 Stephen Williams
169 This document can be freely redistributed according to the terms of the
170 GNU General Public License version 2.0
174 Version $Date: 2005/01/29 06:28:19 $ vvp(1)</pre>
176 </div>
177 </div>
178 </body>
179 </html>