In reply to cuonghl:
- First loop: read function (line 166) is finished but predictor haven’t received trans from monitor bus because of delay
- Sencond loop: write function (line 159) set new desired value of register, but this value is overriden by predictor of read funtion from the first loop. Therefore, I got error because get() function doesn’t return correct value.
Do you see any warnings like? “Trying to predict value of register ‘FOO’ while it is being accessed”
Does the subsequent rg.write() complete before the monitor reports the prior read?
If the read predict happens before the following write(), you should of course have no problems.
If the read predict happens during the following write(), you should see the above warning, but still it should work.
If the read predict happens after the following write() returns, I’d expect to see what you’re describing. Which would seem like a bug in your monitor.