DVT IDE for VS Code SystemVerilog User Guide
Rev. 22.1.23, 16 August 2022

3.2 default.build

.dvt/default.build is an argument file that configures DVT's internal builder. By default, whenever a full build is performed, DVT starts by reading this file. It may contain:

  • comments

  • directives in two forms:

    • +directive+arg1[+arg2+...]

    • -directive arg1[ arg2 ...]

  • top files. Anything that is not a directive or comment is regarded as path to a top file.

Note: Unknown directives are ignored. In general, DVT-specific directives start with +dvt_. Unknown directives that start with this prefix are flagged with a warning.

The internal builder parses each top file, following includes/imports as specified by the language. Some directives ( parsing directives) allow you to control how files are compiled based on their extension, for example using System Verilog 1800-2012 for *.sv, Verilog 2001 for *.v, VHDL 1076-2008 for *.vhdl. The parsing directives are either generic or mode specific.

Note: A project is built by analyzing source code with one or more of DVT's parsers depending on the enabled languages which can be automatically detected or manually enabled.

To manually enable a language parser add the lang directive inside a <name>.ls file corresponding to your current <name>.build file.

lang=vlog,vhdl

When no language is specified it will be automatically detected based on:

  • The nature directive in an Eclipse .project file when migrating from a DVT Eclipse project

  • The top files specified in the <name>.build

  • The file extensions present under the project folder

After the languages are automatically detected they will be serialized inside the <name>.ls file.

The language syntax shortnames are:

Verilog, SystemVerilogvlog
VHDLvhdl

In general, the directives are similar to the arguments (or flags) that you would pass to any compiler/simulator.

A build file may include other argument files and so on. The internal builder follows the included files as it encounters them (as if part of a continuous stream). Note that the way a file is included (for example with '-f' or '-F') has an influence on how paths inside the included files are interpreted. For more details see Including Other Argument Files.

To simplify the flow integration, DVT supports several Compatibility Modes. This capability allows you to reuse existing arguments or argument files that you already use for a particular simulator invocation.