Multiple .build Files

You can have multiple build files inside the .dvt directory, and tell DVT which one to use for compilation by using the Set current build button from the toolbar:

../../_images/dvt-set-current-build.png

The current build name is saved in the .dvt/build.config.xml file.

The project state is saved per build file after each build, and this allows you to easily switch between multiple views of the project (see Build Persistence for more information).

Use cases

Depending on your current focus (browsing the design, writing testbench code, debugging) you only want to load in DVT the relevant code

rtl.build contains all directives needed to compile the design

testbench.build contains all the directives needed to compile the verification environment

default.build includes both the rtl.build and testbench.build

Quickly switch between synthesizable and non-synthesizable version of the design hierarchy

default.build contains all directives needed to compile all the code

synth.build contains +dvt_preprocess_translate_pragmas+synthesis and a -f directive to include default.build

You switch often between several versions of the same code base. The paths to the few different files are controlled by the $VERSION environment variable.

compile.f contains directives needed to compile all the code

version1.build contains +dvt_setenv+VERSION=1 and a -f directive to include compile.f

version2.build contains +dvt_setenv+VERSION=2 and a -f directive to include compile.f

You want to change the active build before launching DVT, as designers compile just the RTL by rtl.build, while others all.build.

Change the build name in .dvt/build.config.xml before launching DVT, for example by a wrapper script run_dvt.sh -rtl.