Could you please help me to clarify/collect all the required information in order to handle the following correctable errors:
Group1 - 6 FMC - correctable error: bus1 and bus2 interfaces (does not include accesses to EEPROM bank)
Group1 - 26 RAM even bank (B0TCM) - correctable error
Group1 - 28 RAM odd bank (B1TCM) - correctable error
Group1 - 35 FMC - correctable error (EEPROM bank access)
For me it is important to know how the mechanisms work and which user actions/configurations are required in each case.
Where is this info available? Is there a document that explain the operation of the different mechanisms? Implementation examples?
Some points to clarify are e.g.:
---------------------------------------------------------------------------------------------------------------------------------
In case of RAM single error correction:
1. Is the ECC/data really restored/fixed by the CPU in RAM so that in the next read access to the same memory location the error is not present/detected? or, is the value just buffered internally in the correction mechanism? How does it work? If the data is just buffered, could this affect future double error detection? How?
If the idea is to correct all the detected single errors and continue with safe operation, which is the approach to follow?
e.g.:
- Every time there is a single error correction, shall the user read the correctable error address register and clear the error flags to allow the correction mechanism to keep operation?
- The user can just disregard all the corrected errors without any actions like reading the correctable error address and clearing the error flags?
---------------------------------------------------------------------------------------------------------------------------------
In general:
is the any TI/ARM/... DETAILED document where the user can understand how all the detection/correction mechanisms work?
Thank you