Jump to content

bug in uvm_reg_block - lock_model() function?

Recommended Posts

In the uvm_reg_block::lock_model() , there is a check for duplicate names of the reg block. This check uses get_name(). Shouldn't it be using get_full_name() ??


the error that results is : `uvm_error("UVM/REG/DUPLROOT",

$sformatf("There are %0d root register models named \"%s\". The names of the root register models have to be unique",
n, get_name()))


-even when i have multiple instances of the uvm_reg_block in different heirarchies.

Link to comment
Share on other sites



i think the check is correct. uvm_reg_block's kind of behave like uvm_components. both cannot have same named entities at a particular level of the hierarchy because they form a tree. they can only use the same name in different branches of the tree.  


when a uvm_reg_block is configured one of the args is the parent. if you instantiate a reg_block you are not just instantiating it in that scope you are also building a "global" hierarchy of uvm_reg_blocks. therefore the name of the reg_block has to be unique among all of the parents children. 



Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...