Re: Some news for this: [PATCH] [MTD] BLOCK_RO: Readonly Block Device Layer Over MTD ?

Ricard Wanderlof
2007-11-26T09:43:04Z

On Fri, 23 Nov 2007, David Brown wrote:

> Flash should be reasonably immune to degradation from reads. In fact,
> it is fairly resiliant to degradation at all.

I beg to differ; we ran some tests here on a 256 Mbit NAND flash where I
work which showed a marked degradation in read integrity if the block had
been written many times. For this particular chip in the setup used, after
100 000 read/write cycles, non-correctable ECC errors started popping up
after about 43 million reads. For blocks that had only been written a
couple of times, we didn't detect any read errors whatsoever after 4.5e+10
reads (during three months of continuous reading of the same block).

I would however love to see some hard data, or at least an application
note, on the frequency of various errors. Most of the information I've
seen is of the 'it is a known fact that ...' - type, without any
references. And the data sheets seem very silent on this subject, only
acknowledging the fact that bit flips do occur.

> In NAND, the primary cause of read failures is caused by writes (and
> rewrites) of subsequent pages within a block. These can cause bit flips in
> earlier written pages. This gets worse with higher density, and is the
> main reason the higher density devices have greater restrictions on
> rewrites.

This is very interesting. This is something we did not address during our
tests mentioned above.

It implies that having a device partitioned into a read-only and a
read-write partition, would have very few bit flips occurring in the
read-only partition even if the read-write partition was rewritten very
frequently (since partitions must be multiples of the block size).

/Ricard
--
Ricard Wolf Wanderlöf ricardw(at)axis.com
Axis Communications AB, Lund, Sweden www.axis.com
Phone +46 46 272 2016 Fax +46 46 13 61 30