xenial (1) vvp.1.gz

Provided by: iverilog_0.9.7-1_amd64 bug

NAME

       vvp - Icarus Verilog vvp runtime engine

SYNOPSIS

       vvp [-sv] [-Mpath] [-mmodule] [-llogfile] inputfile [extended-args...]

DESCRIPTION

       vvp  is  the  run  time  engine  that executes the default compiled form generated by Icarus Verilog. The
       output from the iverilog command is not by itself executable on any platform. Instead, the vvp program is
       invoked to execute the generated output file.

OPTIONS

       vvp accepts the following options:

       -llogfile
               This flag specifies a logfile where all MCI <stdlog> output goes.  Specify logfile as '-' to send
               log output to <stderr>.  $display and friends send their output both to <stdout> and <stdlog>.

       -Mpath  This flag adds a directory to the path list used to locate VPI modules. The default path includes
               only  the  install  directory for the system.vpi module, but this flag can add other directories.
               Multiple paths are allowed, and modules will be searched in order.

       -mmodule
               Tell the vvp run time to load the named module before executing the  simulation.  The  system.vpi
               module is loaded by default, but additional modules, including modules that you compiled locally,
               can be specified with this flag. Any number of modules can be loaded, and they will be linked  in
               the order they are listed on the command line.

               Normally,  you  only  need  to specify the name of the module, without any directory path or .vpi
               suffix and the search path is scanned to find the module. However, if the name includes at  least
               one  directory  character,  then  the  search path is not scanned and the name is assumed to be a
               complete file name.

       -n      This flag makes $stop or a <Control-C> a synonym for $finish.  It can be used to give the program
               a more meaningful interface when running in a non-interactive environment.

       -N      This  flag  does  the same thing as -n, but results in an exit code of 1 if the stimulation calls
               $stop.  It can be used to indicate a simulation failure when running a testbench.

       -s      Stop. This will cause the simulation to stop in the beginning, before any events  are  scheduled.
               This allows the interactive user to get hold of the simulation just before it starts.

       -v      Turn  on  verbose  messages. This will cause information about run time progress to be printed to
               standard out.

       -V      Print the version of the runtime, and exit.

EXTENDED ARGUMENTS

       The vvp options described above must come before the design file  name.   After  the  design  file  name,
       however, there may be any number of unspecified arguments. These arguments are not interpreted by vvp but
       are  instead  passed  on  to  the  executed  design,  and  are  available  via  the  $test$plusargs   and
       $value$plusargs system functions.

       Arguments  that  do not start with the plus(+) character are not available to the $plusargs system tasks,
       but can still be accessed via PLI code via the vpi_get_vlog_info function. This means  that  vpi  modules
       may  use  arguments  that do not start with + and be assured that they do not interfere with user defined
       plus-args.

       There are a few extended arguments  that  are  interpreted  by  the  standard  system.vpi  module,  which
       implements the standard system tasks and so is always included. These arguments are described here.

       -vcd    This  extended  argument  sets the wave dump format to VCD. This is the default in the absence of
               any IVERILOG_DUMPER environment variable. The VCD dump files are large  and  ponderous,  but  are
               also maximally compatible with third party tools that read waveform dumps.

       -lxt|-lxt-speed|-lxt-space
               These extended arguments set the wave dump format to lxt, possibly with format optimizations. The
               -lxt-space flag sets the output format to lxt with full compression enabled. The resulting  files
               are quite small. The -lxt-speed chooses the lxt compression mode that leads to the best execution
               time and the fastest read time, at the expense of some file size.

       -lxt2|-lx2
               The LXT2 format is slower then LXT (faster then VCD) but takes less space,  and  is  written  out
               incrementally.  Thus,  you can view lxt2 files while a simulation is still running (or paused) or
               if your simulation crashes or is killed, you still have a useful dump.

       -none   This flag can be used by itself or appended to the end of the above dumpers (vcd/lxt/lxt2/lx2) to
               suppress all waveform output. This can make long simulations run faster.

       -sdf-warn
               When  loading  an  SDF  annotation  file,  this option causes the annotator to print warnings for
               questionable but non-fatal issues.

       -sdf-info
               When loading an SDF annotation file, this option causes the annotator to print information  about
               the annotation.

       -sdf-verbose
               This is shorthand for -sdf-info -sdf-warn.

ENVIRONMENT

       The  vvp  command also accepts some environment variables that control its behavior. These can be used to
       make semi-permanent changes.

       IVERILOG_DUMPER=lxt|lxt2|lx2|vcd|none
               This selects the output format for the waveform output. Normally, waveforms  are  dumped  in  vcd
               format,  but  this  variable  can be used to select lxt format, which is far more compact, though
               limited to gtkwave or compatible viewers. It can also be used to suppress  VCD  output,  a  time-
               saver for regression tests.

INTERACTIVE MODE

       The  simulation  engine supports an interactive mode. The user may interrupt the simulation (typically by
       typing <Control-C>) to get to the interactive prompt. From that prompt, the help command prints  a  brief
       summary of the available commands.

       The  interactive  mode may also be entered by a call to the $stop system task from within the simulation,
       or by a call to the vpi_control VPI function with the vpiStop control argument. These means  of  entering
       interactive mode are equivalent.

AUTHOR

       Steve Williams (steve@icarus.com)

SEE ALSO

       iverilog(1), iverilog-vpi(1), <http://www.icarus.com/eda/verilog/>

       Copyright ©  2001-2009 Stephen Williams

       This document can be freely redistributed according to the terms of the
       GNU General Public License version 2.0

                                                April 17th, 2009                                          vvp(1)