Verissimo SystemVerilog Testbench Linter User Guide
Rev. 24.1.12, 12 June 2024

3.1.1 From the Command Line

Using dvt_sv_lint_gui.sh

Verissimo can be invoked in GUI mode by running:

$DVT_HOME/bin/dvt_sv_lint_gui.sh ...

Main Use Cases

  • Run a specific ruleset

dvt_sv_lint_gui.sh
  -workspace ~/tmp/my_workspace
  -projectpath ~/tmp/my_project
  -cmd my_compile.args
  -force -start_linting

Arguments

Argument Description
basic Optional. Run Verissimo basic rules instead of all Verissimo rules
cmd <command_file> Mandatory. Compile using the specified compilation arguments file.
compile_waivers <XML file>Optional. Waive compilation errors using the waivers specified in the XML file. Waivers specified with this flag will have the highest precedence. See Compile Waivers.
compliance Optional. Run XVM compliance rules instead of all Verissimo rules.
forceOptional. Used with -cmd to force updating the top files and waivers (in case the top files and, waivers have already been configured).
heap_size <value>Optional. Set the Java heap size. Default is 3072m.
ovmOptional. Run Verissimo OVM lint or OVM compliance (if not specified UVM will be used).
projectpath <dir> Mandatory. Path to the project DVT project.
ruleset <XML file> Optional. XML ruleset file. See Rulesets.
sourcemap <file>Optional. Map file with directories containing the SystemVerilog source files and the map names.
stack_size <value>Optional. Set the Java thread stack size. Default is 4m.
start_linting Optional. Start Verissimo after Eclipse is started and the project configured.
vmargs <args>Optional. Custom vmargs for JVM.
waivers <XML file>Optional. XML waivers file. See Lint Waivers.
workspace <dir> Mandatory. Path to the Eclipse workspace.

Using dvt_cli.sh

You can use the DVT CLI in order to run Verissimo using the dvt_cli.sh or dvt_cli.bat scripts.

Syntax

dvt_cli.sh [...] -lint [lint_argument1=value1,lint_argument2=value2,[...],lint_argumentN=valueN]

Arguments

Argument Description
include_html_code Include the source code in the Verissimo HTML report. Possible values: true or false.
library_kind Possible values: uvm or ovm.
open_report Path to a Verissimo HTML report to be imported.
ruleset_kind One of the following: all, basic, compliance, rtl, dead_code, uvm_ieee, performance, non_standard, custom.
ruleset Only if ruleset_kind=custom. Path to the ruleset XML file.
waivers Path to the waivers XML file.

Examples

Create a SystemVerilog project and start linting with a custom ruleset and waivers specified:

   $> dvt_cli.sh createProject $PROJ/my_project -lang vlog -f $PROJ/my_project/filelist.f -lint ruleset_kind=custom,ruleset=$PROJ/my_project/.dvt/verissimo_ruleset.xml,waivers=$PROJ/my_project/.dvt/verissimo_waivers.xml

Create a SystemVerilog project and import the results from a Verissimo HTML report:

   $> dvt_cli.sh createProject $PROJ/my_project -lang vlog -f $PROJ/my_project/filelist.f -lint open_report=$PROJ/my_project/verissimo_html_report