Both uvm_config_db and uvm_resource_db share the same underlying
database to store and retrieve information. Infact you can write a
value to the database using uvm_config_db ::set() method and retrieve the information
using uvm_resource_db::read_by_name().
The recommended method is to use uvm_config_db when hierarchical based access is required. When you want to share object and access it from different
location without using the hierarchy you can use uvm_resource_db.
You can set a resource to the resource db using the
uvm_resource_db::set() method
Example
uvm_resource_db# (int)::set("enable","*",1,this);
To retrieve the information from the resource db you can use
uvm_resource_db::read_by_name() method
Example
Bit success;
Success=uvm_resource_db#(int)::read_by_name("enable",get_full_name(),value,this);
If(success==1’b0)
`uvm_error("ERROR","cannot locate the resource ");
`uvm_error("ERROR","cannot locate the resource ");