The Technology
In NAND Flash memory, one cannot selectively or incrementally reduce the charge levels. Therefore, if a page cannot be written to because the level of at least one of its cells must be reduced, a blank page is used and the current one is retired for eventual erasure. With the growing fragility and reduced endurance of such cells as technology is shrunk and the number of charge levels is increased, it is highly desirable to increase the effective endurance (number of erasure cycles).
Our key observation is that the fact that certain data couldn’t be written to a given data-containing page does not imply that other data cannot; in conjunction with write-once-memory (WOM) codes, this is not a negligible option.
Our approach is that, upon failing to write a page in place, we try several retired pages before grabbing a blank one. The order in which we try pages is based on indicators for the likelihood that writing the data to them will succeed. Furthermore, we can keep several retired pages cached in fast memory in order to expedite the writability test, so there is essentially no performance penalty.
Advantages
- Increasing the effective endurance of the memory chip.
Applications and Opportunities
- NAND flash memory