Difference between set_config_object and uvm_config_db #(...)::set();

Hi,

If i set an handle to some object or an interface using set_config_* , can i retrieve it using uvm_config_db #(…)::get(); or i must use get_config_object?. And also is converse of it is true??
or is their real difference between them ?.

The OVM’s set/get_config_* has been implemented as a wrapper using the uvm_config_db as follows

set_config_int(...) => uvm_config_db#(uvm_bitstream_t)::set(this,...)
set_config_string(...) => uvm_config_db#(string)::set(this,...)
set_config_object(...) => uvm_config_db#(uvm_object)::set(this,...)

set/get_config_* has be deprecated in UVM 1.2.

A warning that you should be aware set_config_int does not map to uvm_config_db#(int)::set(). We recommend against setting/getting individual int’s or strings anyways.

Instead of using uvm_config_db#(uvm_object), you should use the actual type of your configuration object.

In reply to dave_59:

Does this work if we are migrating to UVM-1.1d version? I mean by keeping the same set/get config settings as in OVM

If so , do we need to be using +define+UVM_NO_DEPRECATED ?