Hi Dhivya,
Calling mirror() function actually lunch a read() on the register and compare the read data to the mirrored value which was set at the end of the previous write call.
In your case it seems that the write command works correctly because your mirrored value is 32’h12341234.
Your problem seems to reside during the read call. The value read is 32’h0!
Have you check the read value from the bus (APB or other) in a wave?
If you see the correct value (32’h12341234) it means that you have an issue with you reg2bus_adapter or the way to update your mirrored values!
Check also that you haven’t done some mistakes with the register access type (for instance write_only instead of read_write).
Regards,
Xavier