ranjisan Posted March 14, 2011 Report Posted March 14, 2011 Hi, I was going through the implementation of update() method for the register model. The uvm_user_guide_1.0 says " update() method invokes the write() method if the desired value (previously modified using set() or randomize()) is different from the mirrored value" But the implementation of update does not seem to take care of desired as well as mirrored value together. update() method invokes write() method even when desired and mirrored values are the same. Is this what expected? Quote
vishal.jain Posted March 16, 2011 Report Posted March 16, 2011 Hi Ranjisan, I guess update on 'register' will happen irrespective of mirrored value. What you described happens when user tries to do 'block' (register file) update. If registers desired value equals the expected value, that particular register would get dropped from update. -Vishal Quote
janick Posted March 17, 2011 Report Posted March 17, 2011 It would help, when you discuss specific code segment, to quote the file name and method name and maybe show the actual code... After reviewing the implementation of uvm_reg::update(), I see that it is lacking a call to uvm_reg::needs_update(). I'll file a Mantis on this one. Thank you. Quote
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.