[clug] Flash memory: Load-levelling question.

steve jenkin sjenkin at canb.auug.org.au
Thu Mar 26 23:36:06 GMT 2009

With flash (NAND) memory, especially CF, 'load levelling' is critically
important in creating a 'useful life'.

But doesn't it make the assumption that the whole of the array is being
written? Nothing I've read details the algorithms used, so I'm guessing
how it works.

When you've got FAT16 being used in a camera (write-upload-wipe), it's
pretty obvious load-levelling will be a perfect solution because there
is almost no static data 'blocking' writes to cells.

But for an embedded device where:
 - most of the system image is static
 - the image mostly fills the CF

Won't simple load-levelling be of little benefit in this case?

Imagine you've got a 64Mb CF with 63Mb of static image.
Simplistically, all the writes will be confined to 1Mb of free memory.
i.e. just 1-in-64 blocks will be candidates for load-levelling writes.

Why would unaltered cells/blocks be written when they don't have to be??

If someone can point me at a definitive answer, I'd be most appreciative :-)


Steve Jenkin, Info Tech, Systems and Design Specialist.
0412 786 915 (+61 412 786 915)
PO Box 48, Kippax ACT 2615, AUSTRALIA

sjenkin at canb.auug.org.au http://members.tip.net.au/~sjenkin

More information about the linux mailing list