1. 什么是UVM?
- UVM(Universal Verification Methodology)= 通用验证方法学
- 基于SystemVerilog,UVM是基于SystemVerilog语言而实现的验证方法学
2. UVM的特点
- 一个标准的验证平台的模板
- 一套完整的源码库
- 支持受约束随机激励的产生
- 支持覆盖率驱动的验证模式
- 代码可重用,平台可移植
3. UVM提供的资源
UVM的基础是一个源码库 ,这个源码库为用户提供了各种资源
3.1 编程指导
3.1.1 理念
3.1.2 功能
- UVM factory
- UVM TLM
- 信息服务(方便取出需要的信息)
- configuration机制(对象的替换、变量的改变)
- phase(控制整个验证平台的执行)
- RAL
- ……
3.2 验证组件
选用合适的类,来构建自己的验证平台
- uvm_component
- uvm_driver
- uvm_monitor
- uvm_sequencer
- uvm_agent
- uvm_env
- uvm_test
- ……
3.3 验证激励
方便对事务进行建模
- uvm_sequencer
- uvm_sequencer_item
- ……
3.4 通信机制
方便实现各个总线之间数据通信
- uvm_*_port
- uvm_*_export
- uvm_*_import
- ……
3.5 宏
方便实现各种操作
- `uvm_info()
- `uvm_component_utils()
- `uvm_field_*()
- ……
总结:UVM验证平台是一种可重用性极强的验证平台,每个基于UVM的验证平台结构大同小异。