Uvm Introduction
Uvm Introduction
Uvm Introduction
Methodology
A rough approach
• Run phases:
• Phases that run in parallel with run
phase are time consuming – tasks
are used
• Pre_reset to post_shutdown phases
should be called from test and env to
start sequences. Drivers, monitors
and other components should not
implement these phases.
Get()
Instance Field name Value
sequenc
Test.Env EnvInt 8 monitor
er
Test.Env.Agent AgentString “Trial”
Get()
uvm_config_db driver Agent
Agenda
• Overview
• UVM Testbench architecture
• UVM Classes
• UVM Phases
• Factory in short
• UVM factory
• UVM config db
• Developing flow with sample project
Developing flow with sample project
1. Specification
2. Modeling Data Items for
Generation
3. Transaction-Level
Components
4. Creating the Driver
5. Creating the Sequencer
6. Creating the Monitor
7. Instantiating Components
8. Creating the Agent
9. Creating the Environment
10. Enabling Scenario Creation
11. Managing End of Test
Scoreboard
Scoreboard
Calc Cmp
Req Ans
FF FF
monitor
Demo
• https://www.edaplayground.com/x/3hLb
www.chipverify.com