bughound Posted November 9, 2015 Report Share Posted November 9, 2015 I've encountered a rather nasty issue with the UVM 1.2 BCL where changing the `uvm_info verbosity from UVM_NONE to UVM_LOW for the same random seed yields different simulation results. Mantis bug logged here: https://accellera.mantishub.com/view.php?id=5482 This is not good practice, BUT - It is possible for the random stability to be affected, for example, if within the `uvm_info macro, a function is called that allocates a new object or randomizes, thus altering the RNG. Example: `uvm_info("SOME_ID", $psprintf("Some number is: %0d", get_some_number()), UVM_LOW) function int get_some_number(); some_object obj = new(); get_some_number = $urandom; endfunction I understand that some effort has been put in to revamping the message reporting mechanism from 1.1 to 1.2, as well as improving the random stability with the insertion of get/set_randstate guards. If this is something that is completely unavoidable in UVM, then it might be a good idea to add this to the UVM User Guide as an example of bad coding. Quote Link to comment Share on other sites More sharing options...
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.