mwhite_cp Posted June 18, 2012 Report Share Posted June 18, 2012 Dear UVM Gurus, Drivers/Monitors in an agent need programmable register information for their run_phase processes. Right now I am using register model handle inside driver/monitor components. I don't like to reference the register model directly in these components as they should not be dependent on specific register model. What is a better way to handle this? Thanks! Quote Link to comment Share on other sites More sharing options...
bhunter1972 Posted June 18, 2012 Report Share Posted June 18, 2012 You should be able to hold a reference to a generic uvm_reg_block and then be able to call get_reg_by_name, get_field_by_name, etc. However, then you are dependent on knowing the names of a specific register or field within that. In that scenario, you could put strings in the config db, or a factory override of your driver/monitor that handles the places in the code that needs access to these registers. Quote Link to comment Share on other sites More sharing options...
SeanChou Posted June 19, 2012 Report Share Posted June 19, 2012 uvm_config_db could also be used during run phases. just to uvm_config_db::get the configure object and update it with new value anywhere in your code. Quote Link to comment Share on other sites More sharing options...
mwhite_cp Posted June 22, 2012 Author Report Share Posted June 22, 2012 Thank you for the ideas! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.