In reply to chr_sue:
In reply to UVM_LOVE:
One of the key things is to hold the registers in the DUT and in the shadow synchronous.
With set or randomize from a sequence the content of the shadow changes, but the DUT have then other content. The shadow content will be considered as the desired values. mirror reads the content from RTL registers. This is now the mirrored value. Now we have to make sure both values are the same. To synchronize the register content you have to call update.
I know how they work, But I can’t understand why do they need for register test.
We can just register test in DUT without RAL model by putting the randomized value or intention value.