[Yaffs] What management for the paired pages in MLC NAND Fla…

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Romain Izard
Date:  
To: yaffs
Subject: [Yaffs] What management for the paired pages in MLC NAND Flash in YAFFS2 ?
Hello,

I'm currently working on a device that has reliability problems on
NAND MLC flash, and that must run in an embedded environment. A former
decision chose UBI+UBIFS for the flash file system, but this is not
working as well as I would like. I fear that the problem is due to the
fact that UBI does not handle the problem of paired pages properly, as
it is stated in the documentation.

The main problem with paired pages is as follows:
- The multiple bits stored in a NAND Flash cells correspond to bits
located in multiple pages in a NAND erase block
- These pages are not contiguous in the writing order of the block,
but are interleaved with other groups of related pages
- An interruption (power cut, reset, etc.) during a write operation
for a page will not only corrupt the contents of this page, but also
the other pages that share the same NAND Flash cells. If the power cut
occurs when we are writing to a page whose group already has
programmed pages before, we will also corrupt those pages.

This problem may not be present in all MLC NAND Flash chips, but it
exits on the Samsung chip I am using, where each cell contains 2 bits,
and writing to the second paired page puts the first one at risk.

I tried to see what was done in YAFFS2 for paired pages management,
but after browsing the documentation, and especially the "NAND Failure
Mitigation" document, I did not see any information on the subject. A
rapid overview of the code did not give any additional information.
However, I noted that even though the documentation states that it is
a work in progress, MLC NAND is considered as working with YAFFS2.

Is this problem managed specifically ? Or is it that the structure of
the file system makes the problem irrelevant ? I'm interested in any
information on this subject.

--
Romain Izard