Verissimo SystemVerilog Testbench Linter User Guide
Rev. 24.1.5, 13 March 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. 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