ranjisan Posted February 11, 2011 Report Share Posted February 11, 2011 Hi, I have found that all_dropped has been defined as a callback in uvm which user can extend and modify. But all of the functionality required is alredy defined inside all_dropped() function. So why was it made as a callback? What additional logics could be written inside this all_dropped callback. thanks Ranjith S Quote Link to comment Share on other sites More sharing options...
SeanChou Posted February 13, 2011 Report Share Posted February 13, 2011 I am not sure if it is the only concern. to override all drop in uvm_test_done or hook callback are almost the same if only one modification. however, when more modifications are needs. callback would be better solution since users could hook multiple callback objects here. Quote Link to comment Share on other sites More sharing options...
ranjisan Posted February 14, 2011 Author Report Share Posted February 14, 2011 Hi, Thanks a lot for your SeanChou. I was trying to understand this objection area in more detail. My basic doubt was that what was the intention of the uvm source code developers to make the all_dropped as a callback? What are all the things that they think to be added besides the source code in all_dropped function? Quote Link to comment Share on other sites More sharing options...
SeanChou Posted February 14, 2011 Report Share Posted February 14, 2011 This could be specified from user, some hints: 1. to report or check some status before simulation termination. 2. objection needs not to be used to terminate the simulation, it could be used in other similar scenario (voting). then this callback should be important. Quote Link to comment Share on other sites More sharing options...
uwes Posted February 16, 2011 Report Share Posted February 16, 2011 hi, the baseline scenario for objections (voting/consensus) is a barrier with N participating objects. apart from the "uvm_test_done" barrier with a result of "ending a simulation" you could have barriers to progress your test scenario from one phase (lets say config) to a new phase (lets say data-traffic), or you could use a custom objection to have traffic send as long as necessary - once all agree a particular device doesnt need to send traffic anymore you switch it off via all_objections_dropped regards /uwe 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.