class uvm_pool #(type KEY=int,T=uvm_void) extends uvm_object
资源类是一个参数类,每一个特定类型的资源类(参数类型确定的话)采用single模式,全局唯一
资源类中核心的是联合数组 T pool [KEY];
两个核心的静态方法
1:get_global_pool:获取全局唯一的pool(资源池)
2:get_global:获取全局唯一的资源(T对象,即pool【key】)。
class uvm_object_string_pool#(type T=uvm_object) extends uvm_pool #(string,T)
两个主要的资源池
uvm_barrier_pool //核心资源池 uvm_barrier pool[string]
uvm_event_pool //核心资源池 uvm_event#(uvm_object) pool[string]
用法例子
uvm_event e1=uvm_event_pool.get_global("e1")
uvm_barrier b1=uvm_barrier_pool.get_global("b1")
本文深入探讨了UVM资源池的实现原理与使用方法。详细介绍了资源类的单例模式特性,以及如何通过get_global_pool和get_global方法获取全局唯一资源。文章还列举了uvm_barrier_pool和uvm_event_pool两个核心资源池的实例应用。
1066

被折叠的 条评论
为什么被折叠?



