【UVM源码学习】uvm_pool

简介: 【UVM源码学习】uvm_pool

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实现的主要方法有:



序号 方法 描述
1 get_global_pool 返回global pool,为空的话先new再返回
2 get 返回指定key的item,若item不存在先new再返回
3 get_global 返回global pool中指定key的item,若item不存在先new再返回
4 add 添加item到指定key中,若key的item已存在,则覆盖
5 num 返回pool中非重复key的item总数
6 delete 从pool中删除指定key的item,不存在key会报warning
7 exist 判断pool中是否存在指定key,存在返回1,不存在返回0
8 first 获取pool中第一个item的key,若pool为空返回0,非空返回1
9 last 获取pool中最后一个item的key,若pool为空返回0,非空返回1
10 next 获取pool中下一个item的key,若下一item不存在返回0,存在返回1
11 prev 获取pool中上一个item的key,若下一item不存在返回0,存在返回1
12 get_type_name 获取type_name
13 do_copy 先cast再copy
14 do_print 调用printer打印所有pool中所有key的item


目录
相关文章
|
NoSQL 安全 Linux
Linux 中 core dump 文件的作用和使用方法
Linux 中 core dump 文件的作用和使用方法
3196 1
|
前端开发 Python
【前端验证】通用型顺序比对的uvm scoreboard组件编写
【前端验证】通用型顺序比对的uvm scoreboard组件编写
794 0
|
芯片
芯片验证 | UVM的objection机制
芯片验证 | UVM的objection机制
951 1
|
芯片 异构计算 算法
芯片验证 | Formal验证技术总结
芯片验证 | Formal验证技术总结
1570 0
芯片验证 | Formal验证技术总结
|
编译器 API C语言
芯片验证 | 理解SystemVerilog DPI并不难
芯片验证 | 理解SystemVerilog DPI并不难
2148 0
|
前端开发 Java Go
开发语言详解(python、java、Go(Golong)。。。。)
开发语言详解(python、java、Go(Golong)。。。。)
|
存储 安全
深入理解AMBA总线(四)AHB-lite总线
深入理解AMBA总线(四)AHB-lite总线
2680 0
|
SoC
深入理解AMBA总线(七)AHB设计要点和AHB2APB同步桥设计前言
深入理解AMBA总线(七)AHB设计要点和AHB2APB同步桥设计前言
1495 0
深入理解AMBA总线(七)AHB设计要点和AHB2APB同步桥设计前言
|
存储
【UVM源码学习】uvm_queue
【UVM源码学习】uvm_queue
1325 0