2017-09-15 3 views
0

Est-il possible de supprimer unest-il possible de supprimer une entrée uvm_config_db?

uvm_config_db#(uvm_bitstream_t)::set 
entrée

afin que

uvm_config_db#(uvm_bitstream_t)::exists 

return 0?

J'ai essayé de placer à null mais qu'on trouve encore revenir 1.

Merci à l'avance

Rajdeep

+0

Je ne sais pas, mais si vous pouvez elabore plus sur le but? –

+0

@KaranShah, cela montre juste un seul bit, si l'élément stocké est un objet, et je suis sûr qu'il ne serait pas nécessaire par ailleurs, alors la suppression de l'entrée config_db peut offrir une réduction significative de l'empreinte mémoire. Je pensais que définir null devrait le faire, mais config_db traite null comme une valeur valide. – justrajdeep

+0

Ok. Je ne pense pas qu'il existe un moyen de supprimer les éléments stockés. –

Répondre

1

Non, il est impossible. Les seules méthodes pour uvm_config_db sont set, get, exists et wait_modified. Il n'est pas très commun d'utiliser des types complexes avec config_db.

Si le type utilisé a un constructeur (i.e. peut être NULL), vous pouvez tester comme ceci:

if (uvm_config_db(mytype)::get(..., myobj) && myobj !=null) 
    //Entry exists and not null 
else 
    // Entry does not exist or is null