Hello,
1.What is All-X Error ?
X represents 0 or 1 as chapter 8.1 Testing All-X in RAM describes.
2. Is it undetectable by ECC?
Only in some cases:
What this is saying is that the algorithm has a weakness at certain addresses because the check-bits cover both address and data. If the data is all 1 or all 0 at certain specific addresses (and assuming it is not supposed to be) then it won't be detected.
3.What is the use of finding All-X Error ?
Test read the location periodically to make sure if it contains all 1s or all 0s that it is supposed to contain all 0s or all 1s per the application use-case.
4.Does ECC throw a fake error when All-X is detected ? If yes how do we differentiate between the real error and the false one ?
No. The ECC won't be detected.
5.MPC577CSM provides an algorithm for determining addresses for testing All-X in RAM.What should be done once we obtain these addresses ?
Ensure that they contain correct data.
6.Any additional details that need to be considered or any reference documents would be great
The problem is that if something causes a memory location (meaning all the data AND check-bits) to go to all 0s or all 1s, then that won't be detected by ECC because for certain addresses, for example, all 0 data and all 0 checkbits... is valid.
It's kind of like how some multi-bit errors can't be detected because if you flip enough bits you might end up with a data and checkbits that are a valid ECC combination.
But in this case, the problem can occur even if only two bits flip in data+ECC.
The probability of happening this is extremely low.
regards,
Peter