When I use a Zynq-7000 PS DDR controller in ECC mode and an error occurs, the uncorrectable error counter and related ECC status registers are not updated.
These can include:
However, exceptions are still triggered to the CPU or other masters. How can I resolve this?
This issue is caused by the counters being held in a clear condition in the ps7_init function.
To work around the issue, release the clear register in the ps7_ddr_ecc_init() function of ps7_init.c:
A similar fix can be made in ps7_init.tcl for debugging sessions.
This issue is planned to be fixed starting in Vivado 2016.3.