验证学习 UVM
文章平均质量分 56
UVM
海纳百川13
这个作者很懒,什么都没留下…
展开
-
数字验证学习笔记——UVM学习4 phase机制
SV的验证环境构建中,我们可以发现,传统的硬件设计模型在仿真开始前,已经完成例化和连接了;而SV的软件部分对象例化则需要在仿真开始后执行。虽然对象例化通过调用构建函数new()来实现,但是单单通过new()函数无法解决一个重要的问题,就是验证环境在实现层次化时,如何保证例化的先后关系,以及各个组件在例化后的连接。此外如果要实现高级功能,例如在顶层到底层的配置时,SV也无法在底层例化之前完成对底层的配置逻辑。因此UVM在验证环境构建时,引入phase机制,通过该机制很清晰地将UVM仿真阶段层次化。原创 2022-12-04 09:33:26 · 296 阅读 · 0 评论 -
数字验证学习笔记——UVM学习2 覆盖方法
覆盖方法原创 2022-12-01 23:04:33 · 607 阅读 · 0 评论 -
数字验证学习笔记——UVM学习5 config机制
在验证环境得创建过程build phase 中,除了组件的实例化,配置也是必不可少的。为了验证环境的复用性,通过外部的参数设置,使得环境在创建时可以根据不同参数来选择创建得组件类型、组件实例数目、组件之间得连接以及组件得运行模式等。在更细致得环境调节中有更多的变量需要配置,例如for-loop的阈值、字符串名称、随机变量的生成比重等。比起重新编译来调节变量,如果在仿真中可以通过变量设置来修改环境,那么就更灵活了,而UVM config 机制正提供了这样的便捷。原创 2022-12-09 11:23:32 · 380 阅读 · 0 评论 -
数字验证学习笔记——UVM学习1 类库地图&工厂机制
类库地图&工厂机制原创 2022-11-26 14:26:39 · 575 阅读 · 0 评论 -
数字验证学习笔记——UVM学习3 核心基类
UVM世界中的类最初都是从一个uvm_void根类(root class)继承来的,而实际上这个类并没有成员变量和方法。uvm_void只是一个虚类(virtual class),还在等待将来继承于它的子类去开垦。在继承与uvm_void的子类中,有两个类,一个为uvm_object类,另外一个为uvm_port_base类。在uvm世界的类库地图中除过事务接口(transaction interface)类继承于uvm_port_base,其它所有的类都是从uvm_object类一步步继承而来的。从u原创 2022-12-03 21:30:11 · 446 阅读 · 0 评论 -
数字验证学习笔记——UVM学习6 消息管理
- 在一个好的验证系统应该具有消息管理特性,它们是: - 通过一种标准化的方式打印信息 - 过滤(重要级别)信息 - 打印通道 - 这些特性在UVM中均匀支持,UVM提供了一系列丰富的类和方法来生成和过滤消息: - 消息方法 - 消息处理 - 消息机制原创 2022-12-13 23:13:04 · 137 阅读 · 0 评论