Background : Some customer want to test the LPDDR4/X ECC feature based on the i.MX93 chip, But, for now, Our DDR Config Tool do not release this test chosen. And our ECC guide only tell the ECC feature function, does not tell the customer how to test it. So in this article, Will show you more details about ECC feature and how to run the ECC test use uboot command. But I won't put the source code of the test here, You can download the binary run the test on the i.MX93 EVK board.
HW : i.MX93 EVK board with 2GB LPDDR4
SW : 6.1.1-1.0.0
ECC Introduce
what is ECC?
ECC is the abbreviation of Error Correction Code. Its function is to automatically detect and repair some minor errors in the memory to prevent data errors.
How does ECC work?
We can think of it as an "automatic proofreader", and its workflow is roughly as follows:
When writing data:
The memory controller generates a "check code" (similar to the fingerprint of the data) for each piece of data.
This check code will be stored together with the data.
When reading data:
The memory controller will recalculate the "fingerprint".
Then compare the previously stored check code to see if there is any difference.
If a difference is found:
If it is just a 1-bit error, ECC can automatically correct it. But, If there are multiple errors, ECC can at least detect them and issue a warning.
ECC test step:
1. Flash the attachment file to the imx93 board.
2. Enter the uboot, run the "ecc --help" command, you will see the below help output message
3. For example : ecc 0x80000000 0x90000000, it will test the ecc feature with on bit error detect and correct , 2 bits errors detect with 256MB DRM size.
if you need this ECC_ test binary file, please contact me, i will share it to you
View full article