Access register/field value in DUT without acquiring the XatomicX

Hi,
I have a scenario where my checker calls mirror of a register and then compares the mirrored value to the register value in verification. The issue is that the test randomly reads this register and sometimes the semaphore is acquired by the read method of the register and the mirror is stuck. When the semaphore is released, mirror is executed but the value of the register in DUT changed and the comparison between mirrored value and verification value fails.

Is there a way to access the register DUT value without acquiring the XatomicX semaphore?