In reply to chr_sue:
I am using read/write() for backdoor.
I don’t see any error messages. From my logs:
Here I am doing FD write → BD read → BD write → BD read (all via write() and read()):
UVM_INFO @ 15660: reporter [RegMem] backdoor_read from register_test_top.abc_top.o_dummy
UVM_INFO @ 15660: reporter [RegMem] returned backdoor value 0xdeadbe11
UVM_INFO @ 15660: reporter [RegModel] Read register via DPI backdoor: regmodel.abc_top.DUMMY=deadbe11
UVM_INFO @ 15660: reporter [RegMem] backdoor_write to register_test_top.abc_top.o_dummy
UVM_INFO @ 15660: reporter [RegModel] Wrote register via DPI backdoor: regmodel.abc_top.DUMMY=0xbaddc0de
UVM_INFO @ 15660: [backdoor_write] Writing baddc0de to register: DUMMY
UVM_INFO @ 15660: reporter [RegMem] backdoor_read from register_test_top.abc_top.o_dummy
UVM_INFO @ 15660: reporter [RegMem] returned backdoor value 0xdeadbe11
UVM_INFO @ 15660: reporter [RegModel] Read register via DPI backdoor: regmodel.abc_top.DUMMY=deadbe11