一、概述
- UVM就一种验证方法学而言,它的思想却并不是必须要与某一种语言绑定的。因此,UVM的验证方法学通过吸取eRM、AVM、OVM、UVM等之前不同方法学的优点,集众家之所长。
- 所有的验证方法学服务目的都在于提供一些可以重用的类来减轻在项目之间水平复用和垂直复用的工作量,而同时对于验证新人又能提供一套可靠的框架,摆脱搭建房子构思图纸的苦恼。
- UVM面向所有数字设计,涵盖了从模块级到芯片级,ASIC到FPGA,以及控制逻辑、数据通路到处理器验证的全部场景。
- UVM中的Universal(通用)的含义代表的是该方法学可以适用于大多数的验证项目,而它自身提供的基础类库(basic class library)和基本验证结构可以让具有不同软件编程经验的验证人员能够快速构建起一个结构可靠的验证框架。
- UVM的框架构建类和测试类能够减轻环境构建的负担,进而将更多的精力集中在如何制定验证计划和创建测试场景。
- UVM框架,包括UVM的类库和核心机制、核心的UVM组件和层次构建方式、常见的UVM组件间的通信方式、UVM测试场景的构成、UVM的寄存器模型应用。
二、UVM类库地图
- 核心基类
- 工厂(factory)类
- 事务(transaction)和序列(sequence)类
- 结构创建(struct creation)类
- 环境组件(environment component)类
- 通信管道(channel)类
- 信息报告(message report)类
- 寄存器模型(register model)类
- 线程同步(thread synchronizetion)类
- 事务接口(transaction interface)类