Professional Documents
Culture Documents
Methodology
Santosh
Introduction
UVM
Typical Verification
Environment
Uvm_transaction
Root base class for all UVM transactions.
Inheriting from uvm_object and adds timing & recording
interface.
Uvm_report_object
Provides reporting facility.
Components can issue various messages with different
severity levels
Configurable actions for individual messages from a
particular component or for all messages from all
components in the environment.
SMSilicon India Pvt. Ltd.
Confidential
Uvm_root
Implicit top-level and phase controller for
all UVM components
An instance is automatically created
Supports other features like Searching
SMSilicon India Pvt. Ltd.
Confidential
UVM Factory
Used to manufacture (create) UVM objects and
components.
User defined objects and components are to be
registered with the factory by macros
uvm_component_registry #(T,Tname)
uvm_object_registry #(T,Tname)
Uvm_driver
Ports to connect sequencer
Tasks to drive signals onto DUT
uvm_monitor
Connected to DUT for monitoring signals
Connected to analysis ports
Uvm_agent
Uvm_env
uvm_sequencer
serves as an arbiter for controlling transaction flow from
multiple stimulus generators
SMSilicon India Pvt. Ltd.
Confidential
Sequencers
uvm_sequencer
#(REQ,RSP)
uvm_push_sequencer
#(REQ,RSP)
Sequence Driver
interface
UVM Reporting
Ex: virtualfunctionvoiduvm_report_info
(stringid,stringmessage,intverbosity=UVM_MEDIUM,stringfile
name="",intline=0)
UVM Phases
New
Creates objects, basic initialization is done
Build
Configuration parameters are applied in creating child classes
All component which are constructed using Create function are created
Connect
Components are connected using TLM ports
All Binding Processes all port, export, and imp connections
Checks whether each ports min and max connection requirements are
met
End
of Elaboration
Start
of Simulation
Extract
All the required information is gathered
Check
Check the results of the extracted information
such as un responded requests in scoreboard,
read statistics registers etc
Report
Reporting pass/fail status.
SMSilicon India Pvt. Ltd.
Confidential
Ubus Example
Ubus is a basic bus arbiter with
priority
Given example DUT supports 2
master with 0 having priority
over 1
Test-bench is designed for
configurable number of master
and slave agents, configurable
coverage and checks
Verification Environment
Protocol Phases
Environment
Create an environment with given
parameters
Scoreboard
Test-case
Objects of environment and scoreboard are
created, and connected
A Test is run by selecting single/multiple
SMSilicon India Pvt. Ltd.
Confidential
sequences to generate the
stimulus