Advantages of UVM over SV

UVM is a standard verification methodology which is getting standardized as IEEE 1800.12 standard. UVM consists of a defined methodology in terms of architecting testbenches and test cases, and also comes with a library of classes that helps in building efficient constrained random testbenches easily. Some of the advantages are listed below: Modularity and Reusability:…

Static Properties & Methods in SystemVerilog: A Comprehensive Guide

Static Properties & Methods in SystemVerilog: A Comprehensive Guide

Introduction In the world of ASIC Verification, understanding the intricacies of various programming constructs is paramount. Today, we’ll delve deep into the concept of STATIC properties and STATIC methods in SystemVerilog, their significance, and their practical applications. 1. When to Use STATIC Properties and STATIC Methods STATIC properties are particularly useful when we need to share data across all…

Polymorphism:

Polymorphism is the ability  to have the same code act differently based on the type of Object that its being working with. This is a key topic of any Object Oriented Programming language. SystemVerilog enables Polymorphism in two ways:  Dynamic (Run-Time) Static (Compile-Time)  Here we’ll discuss the Dynamic mode of Polymorphism which is supported via “Virtual…

Virtual Vs Pure Virtual Methods:

Before going towards Virtual and Pure Virtual methods let’s understand Virtual Class (Abstract Class) to make it more clear the understanding of exact concepts. Virtual Class (Abstract Class): Abstract class is nothing but a class that can be extended but cannot be instantiated. It’s the intention to be only a base class or prototype class….

Inheritance in SystemVerilog OOPs:

Inheritance in SystemVerilog is the most commonly used principle of Object Oriented Programming (OOP) that facilitates reuse. It’s called Inheritance because it creates new classes taking all the existing Properties and Methods from the Base Class or Super Class. The new Class is called Extended Class or Derived Class. The Extended Class contains everything declared…

Types of Coverage Metrics

Types of Coverage Metrics

Coverage is used as a metric for evaluating the progress of a verification project. Coverage metric forms an important part of measuring progress in constrained random testbenches and also provides good feedback to the quality and effectiveness of constrained random testbenches.  Types of coverage metrics –  Let’s understand the types of coverage more deeply Code…