uvm_pool.svh中实现了两个class,其一是uvm_pool,另一是在uvm_pool基础上派生出可通过字符串对动态关联数组进行索引的通用类uvm_object_string_pool。uvm中用到uvm_object_string_pool的地方有uvm_event_pool、uvm_barrier_pool等。 uvm_pool直接派生自uvm_object,实现了一个动
- uvm_pool:这是 uvm_pool 的数据类型,定义了一个基本的 uvm_pool 结构。 - uvm_pool_base:这是 uvm_pool 的基类,定义了一些通用的方法和属性。 - uvm_pool_整治:这是 uvm_pool 的具体子类,继承自 uvm_pool_base,实现了具体的功能。 【3.uvm_pool 的实例化方法】 要使用 uvm_pool,首先需要实例化一...
1.uvm_event的使用 在uvm中只需要将 uvm_event放到 uvm_event_pool中即可,这在进行移植验证环境时,是非常便利的事情,并且我们在使用时,也不需要关心event的路径,只需要从event_pool中get到这个event就可以了。比如说,我们在tc里的main_phase中发完包之后,一般都会设置drain_time来等待dut将数据吐完,我们就可以...
(1)通过uvm_event_pool::get_global_pool()函数获取全局的单实例类uvm_event_pool类型对象的句柄; (2)两个initial块中调用get_global_pool返回同一个uvm_event_pool类型对象的句柄; (3)通过uvm_event_pool.get(“ev”)可以得到一个名字为”ev”的uvm_event对象的句柄;如果名字为"ev"的uvm_event对象不存在,...
在UVM中,通过将uvm_event添加到uvm_event_pool,使得在移植验证环境时更加便捷。使用uvm_event_pool时,无需关注事件路径,直接从池中获取事件即可。例如,假若在测试案例(tc)的main_phase阶段完成数据发送后,通常会设置drain_time等待DUT完成数据输出。此时,在scoreboard中设置一个uvm_event等待数据接收...
常见的uvm_event使用方法 首先从常见的uvm_event达成同步的方式讲起: moduletest importuvm_pkg::*; initialbegin // get a reference to the global singleton object by // calling a static method uvm_event_pool ev_pool = uvm_event_pool::get_global_pool();// ...
uvm_event_pool. The uvm_event_pool is a pool that stores the uvm_events.uvm_event synchronize the two processes processes to trigger and wait for a trigger
51CTO博客已为您找到关于uvm_event_pool的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及uvm_event_pool问答内容。更多uvm_event_pool相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。
typedef uvm_object_string_pool #(uvm_event#(uvm_object)) uvm_event_pool; 以uvm_event#(uvm_object)作为参数,继承自uvm_object_string_pool,该类的继承关系如下图所示: uvm_object_string_pool#(T)包含的常用方法有:get()、delete()等。 get()根据输入字符串返回一个T类型的对象,delete()删除指定字符...
A UVM event pool manages a pool of events that can be accessed using a string name. Each of the two agents in this example gets the same event from the pool (different parts of the testbench just have to agree on the name they will use). The `uvm_event_pool` class acts as an ...