a53 core have L1, L2 cache and it is used for read/write data between cpu core and ddr memory.
i don't know if other hardware (such as FPGA) write data to ddr memory, how to detect data was modified.
i tested this problem. (use xilinx ZYNQ MPSoC)
1. ARM : write some random data.
2. read data region for caching.
3. FPGA DMA module: transfer these data to DDR memory region by AXI bus.
4. ARM : read transferred data region.
i think read data on step 4 is cached data on step 2, if it couldn't detect ddr data was changed.
but, test result tell me cache is updated. write data/ read data was identical.
of course all read data cache may be removed other data transition, but there is no fault (read/write data was differ) in a long time test.
So my question is DDR data was changed other H/W by data bus(just AXI bus, not CCI), cache controller can detect it ?
or cache controller continuously monitoring DDR memory data which stored in cache?
Right, if H/W does not "know" about modifications of RAM, S/W has to take measures.