In reply to krgarvens:
If the simulator can pause in between delta cycles and change the value of a wire/signal - then what is to stop UVM using the same API to read and write value to a wire/signal?
I’m not saying UVM uses force, but the the same function will be available via an API, FLI or DPI to produce the same result.
I am not sure what you mean by deposit or freeze.
The simulator will know about the entire hierarchy at run time, from all the UVM objects to the static hdl instantiations. It will be language dependent how well parts of a design have visibility of other parts.
The back door path specifies the route to the instance of the register. In the case of a write, the assignment happens to a internal signal of the register instantaneously. If you are driving that register with an input, on the next clock edge that value will change again.