.. _UVVM Support:

UVVM Support
============


DVT provides two build config directives to help you build your project with an `UVVM <https://github.com/UVVM/UVVM_All>`_ library:

-  ``+dvt_init_uvvm``, required to compile UVVM library sources.
-  ``+dvt_init_uvvm_vvc``, required to compile UVVM VVC library sources. This directive should be used with for each VVC.

By default, the UVVM library code is loaded from the DVT installation. You can point to a different location by setting the ``$UVVM_HOME`` environment variable.

.. code-block:: 

 +dvt_init_uvvm
 +dvt_setenv+UVVM_HOME=/path/to/different/uvvm/sources

.. note:: 
    When compiling a VVC, dvt_init_uvvm_vvc and VVC source files must be in the same library. For example:

    .. code-block:: 
    
        +dvt_init_uvvm_vvc -work vvc_lib
        +dvt_init -work vvc_lib /path/to/vvc/files

DVT comes with a built-in UVVM :ref:`Predefined Projects`, :ref:`Project Templates` and several :ref:`Code Templates`, which help you create UVVM test bench components.

A built-in UVVM :ref:`Smart Log Filters<Smart Log - Filters>` is available for DVT Generic :ref:`Run Configurations`.
