Hi community,
Our customer have a question about i.MX6DQ BCH.
Please see chapter 17.6.3 BCH_MODEn in IMX6DQRM Rev.3.
It says "For SLC NAND devices, this value should be programmed to 0 (meaning that the entire page should
consist of bytes of 0xFF." about ERASE_THRESHOLD field.
If we set this value to other than "0" with SLC NAND, what will be happen?
Best Regards,
Satoshi Shimoda
Solved! Go to Solution.
Hello,
Basically, erased page contains 0xFF in data as well as spare area.
This may provide ECC bug, when read an erased page, since ECC
of spare area does not match data. As result, errors may be observed,
when file system erases and reads back the pages to ensure consistency.
Therefore ECC check should not be performed for erased pages. This
requires checking number of zero bits, including possible read errors,
which are set via ERASE_THRESHOLD bit field. If these number of zero
bits are less than ERASE_THRESHOLD, the page is considered erased and
correction algorithm is not tried on that page.
For SLC NAND, setting ERASE_THRESHOLD other than zero may cause
real bad block skipping, and taking it as good one.
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hello,
Basically, erased page contains 0xFF in data as well as spare area.
This may provide ECC bug, when read an erased page, since ECC
of spare area does not match data. As result, errors may be observed,
when file system erases and reads back the pages to ensure consistency.
Therefore ECC check should not be performed for erased pages. This
requires checking number of zero bits, including possible read errors,
which are set via ERASE_THRESHOLD bit field. If these number of zero
bits are less than ERASE_THRESHOLD, the page is considered erased and
correction algorithm is not tried on that page.
For SLC NAND, setting ERASE_THRESHOLD other than zero may cause
real bad block skipping, and taking it as good one.
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------