Reply To: AxiStreamReceiver: Multiple Drivers on Transaction Record.
Why OSVVM™? › Forums › OSVVM › AxiStreamReceiver: Multiple Drivers on Transaction Record. › Reply To: AxiStreamReceiver: Multiple Drivers on Transaction Record.
Hi Cols and Nico,
This brings up a bigger question, “how do we debug our simulations when something like this happens?”
First observe the time at which something happens. Look at what transactions were running before that time.
If our simulator supports interactive debugging such as single step and/or breakpoint, then the following may help you find the root cause:
* Run the simulation until it fails and single step beyond the failure point to find which call caused the failure.
* Run until a time value just before the failure happens. If your simulator supports breakpoints, it may be helpful to set them on the transactions that ran just before the time of failure. Single step until the test fails. You can single step over many calls. First we are looking for the call that causes the failure. Once we identify the call, we can step into it as necessary.
If our simulator does not support interactive debugging (such as GHDL), you can probably find this problem doing code analysis. In your editor, find all uses of the transaction record for the first VC. Are any of them outside of a single process? Now do the same for the other transaction record.
Again, if you can share your code with me, I can help you identify the problem.