UVM实战学习笔记<二>

第三章 UVM基础

本章介绍了uvm_componet和uvm_object这两个类的关系和他两的一些特性。
其次是UVM的树形结构。field automaion机制,UVM的打印信息、cconfig_db。
是对第二章中提到的内容的详细介绍。

uvm_component和uvm_object

component其实是派生字object的。因此,component是有一些object没有的功能的。第一,component是可以在new的时候可以传参数parnent,这也说明component是树的节点,是机器而不是物料。第二,component有phase机制,而object没有。
component:driver,monitor,env等“机器”
object: sequence、sequence_item、transtion

他两的宏不一样。
函数
被注册后的都是下面这些函数的操作对象。
clone:开辟一片空间、并把另外一个实例复制到这里。=new+copy
copy:复制
compare:比较。
component不能使用clone,因为component需要指定树根。

UVM的树形结构

1、new的第二个参数:指定树根在哪里,默认this。
2、后面注意与factory的create进行区分比较。
3、可使用的一些函数get_parnet get_child

field automation机制

其实就是注册机制,注册后,可操作copy,compare,print,pack等操作。在注册时,可以根据宏选择是否打开或者关闭某些操作。
在注册的begin和end中还可以使用if
问题 field automation 是在component和object中都可以用还是??

UVM的打印

打印的几个功能:
1、打印可设置等级
2、INFO WARNNING ERROR FATAL可重载,可针对某个componet的某个id
3、可设置ERROR的最大数量
4、可对打印类型设置计数
5、UVM支持断点功能 没具体了解
6、打印信息可以分别导入不同文件
7、可设置打印信息的行为 也没具体了解
上述都可以指定层次和id

config_db

config_db就是收信和寄信的功能,第一个和第二个参数是对方的路径,第三个参数是两者的匹配字,第四个是哟啊作用的数值或者成员。
1、config_db可跨层次的直线,也可以同级别,但是同级别有风险,存在先后关系。
2、cofig_db可多重设置、get谁的可看优先级和时间,优先级是离case近的树近,这个看第一个参数,其实看时间,时间近的有效。有就是同一个地方连续两次set,那肯定后面的覆盖前面的。
3、路径可使用通配符*
4、路径可检查。如何检查:检查是否使用过。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值