The UVM (Universal Verification Methodology) library is typically included with most commercial and open-source digital design verification tools, such as Cadence Incisive, Mentor Graphics Questa, or Synopsys VCS. The UVM library provides a set of SystemVerilog classes and components that can be used to create modular and reusable testbenches for digital designs.

To install the UVM library, you typically need to follow these steps:

  • Install a compatible digital design verification tool on your computer, such as Cadence Incisive, Mentor Graphics Questa, or Synopsys VCS. You can download trial versions of these tools from their respective websites.
  • Check if the UVM library is included with the tool. Most modern digital design verification tools include the UVM library as a standard feature.
  • If the UVM library is not included with the tool, you can download it separately from the Accellera Systems Initiative website. The UVM library is an open-source library that is freely available to download and use.
  • Once you have the UVM library installed on your computer, you can start using it to create testbenches for your digital designs. You will need to import the UVM classes and components into your SystemVerilog testbench code, and then use them to create the various testbench components, such as drivers, monitors, and agents.

What are the ways to practice UVM ?

To start practicing UVM, you would need one of the following :

  • Linux terminal with a suitable simulator
  • Use UVM libraries with Modelsim in Windows
  • EDA Playground


Step 1

Click here to download UVM source files


Go to Accellera and download the UVM 1.2 Reference Implementation

Click on Class Library Code and your download will start. Note that it is in .tar.gz format.

Step 2

Copy the file uvm-1.2.tar.gz into your Linux local workarea, using WinSCP or something similar.

Step 3

Access your workarea through a Linux terminal and extract the .tar.gz file by executing the command

$> tar -xvf uvm-1.2.tar.gz 
and you'll see the folder uvm-1.2 in the same folder.

Step 4

Now all you need to do is include the path to uvm-1.2 directory by using -incdir [path to uvm-1.2] for ncsim or a similar switch for your EDA tool and run the simulation. Or, you can set up an environment variable called $UVM_HOME that points to the folder uvm-1.2 and use -incdir $UVM_HOME.
To set up the environment variable, find which shell you are using

$> echo $0
Choose the appropriate command style for your shell and execute it.
# Choose this for tcsh
$> setenv UVM_HOME  [path_to_your_workarea]/uvm-1.2

# Choose this for bash
$> export UVM_HOME=[path_to_your_workarea]/uvm-1.2
Yes, installing UVM is as simple as that !