![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
uvm读书笔记
读书点滴
这个作者很懒,什么都没留下…
展开
-
UVM读书笔记-field automation 机制
field automation 机制作用uvm_object核心方法主要提供与数据操作的相关服务,Copy、Clone、Compare、Print、Pack/Unpack。为了减少用户负担,UVM通过field automation 机制,使用户在注册UVM类的同时也可以声明今后会参与到对象复制、克隆、打印等操作的成员变量。不声明的化,不会自动参与对象复制、克隆、打印等操作。应用场所域的自动化宏声明应该在uvm_object或者uvm_componet注册时发生,即在`uvm_obje原创 2020-10-15 19:27:46 · 1641 阅读 · 0 评论 -
UVM实战读书笔记-UVM各个组件介绍
uvm_monitor作用验证平台必须监测DUT的行为,用于收集DUT的端口数据,并将其转换成transaction交给后续的组件,所以monitor需要一个虚拟接口。特性所有的monitor类应该派生自uvm_monitor;它是一个component,要使用uvm_component_utils宏注册实现方式由于monitor需要时刻收集数据,永不停歇,所以在main_phase中使用while(1)循环来实现这一目的。uvm_driver作用因为driver只.原创 2020-10-15 19:25:20 · 3170 阅读 · 0 评论 -
UVM实战读书笔记-如何记忆类的派生关系
如何记住《UVM实战》中的这个类图呢?巧用顺口溜,记忆类的派生关系:VO一竖分两支; 左边TI sequence,右边RC sequencerIC 对面碰一碰。解释:VO一竖分两支;其中V 是uvm_void中void的缩写,O是指uvm_object的object缩写,VO联系起来,让你联想到VO手机。分两支,左右分出了两条派生关系。左边TI sequenceT是uvm_transaction中transaction缩写,I是uvm_sequenc...原创 2020-09-14 19:42:45 · 507 阅读 · 0 评论 -
UVM实战读书笔记 -run_test的作用是什么?创建实例和启动平台
创建实例根据一个字符串创建类的实例,无论传递给run_test的参数是什么, 创建的实例的名字都为uvm_test_top。根据类名创建一个类的实例, 这是uvm_component_utils宏所带来的效果, 同时也是factory机制给读者的最初印象。 只有在类定义时声明了这个宏, 才能使用这个功能。 所以从某种程度上来说, 这个宏起到了注册的作用。 只有经过注册的类, 才能使用这个功能, 否则根本不能使用。 请记住一点: 所有派生自uvm_component及其派生类的类都应该使用uvm_原创 2020-09-13 20:08:36 · 5543 阅读 · 0 评论 -
UVM实战-P_SEQUENCER
作用:为了能更好的在sequence中访问启动该sequence的sequencer类中的变量,我们引用了p_sequencer。常规做法:如果不使用p_sequencer,我们想要在sequence访问启动该sequence的sequencer类中的变量,该怎么做呢?在sequence中的body中,定义一个启动该sequence的sequencer类的变量,然后通过cast进行类型转换后,就可以进行访问。详细参考张强《UVM实战》中代码使用:若在sequence访问启动该se原创 2020-09-11 20:01:12 · 3829 阅读 · 0 评论 -
如何快速的入门UVM?
学习SV建议在学习之前,要对SV的类有一定的了解,如果你对SV不是很熟悉,强烈推荐路桑的SV的免费学习视频-芯片验证V0系列课程。链接如下:https://ke.qq.com/course/334853?taid=4341584871365637UVM入门其次建议阅读《TheUVM Primer》,该书籍深入浅出的介绍了测试平台是如何进行一步步演变的,非常通俗易懂。同时该书籍配备工程代码,该工程代码可以直接在windows平台上跑通,比如modelsim 10.4 ,quetsim ..原创 2020-07-21 19:57:10 · 1533 阅读 · 0 评论