一、uvm_config_db简介
uvm_config_db的全称是configuration database,它是建立在 uvm_resource_db 之上的便利层,resource database储存的是与scope字符串相关联的name-value对(如下图所示) 。
uvm_config_db可以将scope字符串与组件层次结构中的完整层次结构名称相关联,这样就可以通过组件层次来更加方便地访问数据库的条目(储存的信息)。
config_db 是参数化的,它的类型可以是标量、类句柄、队列、列表,甚至是虚拟接口。通过uvm_config_db::set 和 uvm_config_db::get 函数进行全局存储和检索数据库中的信息。
二、set和get函数
1、set函数
set函数的原型为
static function void set(uvm_component cntxt,
string inst_name,
string field_name,
T value);
- 第一个参数cntxt是一个组件,它是访问数据库条目的层级起点;
- 第二个参数inst_name是限制数据库条目可访问性的分层路径;