Skip to main content

Getting Started with UVM: Setup and Supported Simulators

· loading · loading · ·
Education UVM Verification UVM Verification SystemVerilog Simulation
Education UVM Verification
Axolot Logic
Author
Axolot Logic
Digital Design Engineer
Table of Contents
UVM Series - This article is part of a series.
Part 2: This Article

🛠️ Getting Started with UVM: Setup and Supported Simulators
#

This section explains how to set up UVM, which simulators support it, and how to get started with UVM-based verification.


1️⃣ Setting Up UVM
#

Source Code:
UVM is defined by the IEEE 1800.2 standard, and the library implementation is available as open-source from Accellera’s website.

Installation Steps:

  • Download the UVM library (usually provided as SystemVerilog source files).
  • Include the UVM package in your simulator’s compile command (typically using a +incdir+ option).
  • Compile your design and testbench together with the UVM library files.

Most simulators allow specifying the UVM version via a command-line switch or environment variable.


2️⃣ Supported Simulators
#

UVM is supported by a wide range of simulators:

Commercial Simulators:

  • Synopsys VCS
  • Cadence Xcelium
  • Siemens Questa/Modelsim

Vivado XSim:

  • Supports basic UVM testbenches.
  • Good for FPGA users working with Xilinx tools.

EDA Playground:

  • A web-based platform supporting various simulators (including Questa and VCS).
  • Allows you to run and share UVM testbenches online.

📖 Conclusion
#

Setting up UVM is straightforward with the open-source library. Choosing a simulator that supports full SystemVerilog features ensures a smooth UVM experience. Vivado XSim and EDA Playground are convenient options for learning and experimenting with UVM.


UVM Series - This article is part of a series.
Part 2: This Article

Related

Introduction to UVM
· loading · loading
Education UVM Verification UVM Verification SystemVerilog
Education UVM Verification
UVM Phases: Testbench Lifecycle
· loading · loading
Education UVM Verification UVM Verification SystemVerilog Phase Management
Education UVM Verification
UVM Sequence Starting Methods
· loading · loading
Education UVM Verification UVM Verification SystemVerilog Sequence Starting Objection Usage
Education UVM Verification
Understanding uvm_component
· loading · loading
Education UVM Verification UVM Verification SystemVerilog Uvm_component
Education UVM Verification
Understanding uvm_object::print(), sprint(), sformat(), and convert2string()
· loading · loading
Education UVM Verification UVM Verification SystemVerilog Printing Methods
Education UVM Verification
Using the UVM Factory
· loading · loading
Education UVM Verification UVM Verification SystemVerilog Factory Pattern
Education UVM Verification