doubts on NAND Flash

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
Hi all,
 i have few doubts on NAND flash technology:
1. why do NAND flashes have bad blocks, while NOR dont.(is it true?)
2. what is meant by 'journalling file system'( regarding teh file
system usage)?

 i am new to file systems and OS concepts. so i do have some doubts on
them too.
1. where does the 'file system' sit? for eg., if we are using a flash
memory card for a PC, will it sit on flash or/and on hard-disk?
2. on what basis should we choose a file system for flash?


Re: doubts on NAND Flash

Quoted text here. Click to load it

Because the spec allows for it.

All silicon can have bad areas in it, if the bad area falls in a
necessary part of the product then it goes in the dumpster
the yield goes down and the unit cost goes up.  By specifying
the product to work around the bad areas, all the parts can
be shipped[1], the yield goes up and the unit cost is less.

This gives Nand another advantage.  In both Nand and
Nor, blocks will go bad during use (the most common failure
mode is to get stuck bits which won't erase).  The Nand
spec 'automatically' handles this, but if working with Nor
you have to develop your own mechansim for dealing with
bad blocks (or not!)

Quoted text here. Click to load it

No idea.  Not a name that I recognise.  Googling gave me
lots of hits.

Quoted text here. Click to load it

For a fixed flash, this is up to you, but for a removable flash
it has to sit on the flash (doesn't it?) (and presumably, if there
is any chance of removing the disk, it has to be on the flash)

Quoted text here. Click to load it

Um, what are your priorities.  Sorry, this is a near
impossible question for a third party to answer on
so little info.


[1] Unless the bad area is the first block (or is that page?).

Re: doubts on NAND Flash

Quoted text here. Click to load it

Flash translation layers (code) can handle these errors in blocks but there
is no automatic error handling in the NAND flash itself. YOu must keep track
of bad blocks and avoid erasing or programming them.

Quoted text here. Click to load it

The best file system for NAND is one that does NOT repetetively use write to
the same areas of the flash. The idea is to spread the erase/writes out
evenly across the chip.
This may be what you are referring to.

Quoted text here. Click to load it

First block is ALWAYS guaranteed to be flawless from the factory.

Re: doubts on NAND Flash
Quoted text here. Click to load it


Quoted text here. Click to load it

"Write levelling" is, I believe, the term for spreading erase and write
operations out throughout the chip.  "Journalling" means that any
changes to the file system are logged before the change is actually
made, in a way that it is always possible to get back to a consistant
state despite errors during the erase/write cycles (such as turning the
power off during a write).  This can be either data journalling (which
ensures that a data file is either completely the old version, or
completely the new version) or meta-data journalling (which only ensures
the integrity of the file structures).  Meta-data journalling is by far
the most common - data journalling is normally too expensive (in time,
erase/write cycles, and spare flash) and frequently inappropriate anyway.

"Write levelling" and "journalling" are orthogonal concepts in theory,
but often turn up together in practice.  For example, FAT file systems
provide neither, while jffs2 provides both.

Quoted text here. Click to load it

At least to start with...

Re: doubts on NAND Flash

Quoted text here. Click to load it
write to

Thank you for that clarification. After responding I thought a moment and
realized I had responded too quickly.

Re: doubts on NAND Flash
Quoted text here. Click to load it

1.what are the general considerations while choosing a file system?

on what you said about 'where the file system should sit', i have
another question:
if i have a removable flash, and i use a particular flash file system
and put it on to flash. that means to say the OS which i am using
should be able to recognize that fie system. is it that way?
if i use a fixed flash onto an embedded system, then it should sit on
the flash. right?

thank you

Re: doubts on NAND Flash
Quoted text here. Click to load it

A journaling file system first records a write operation
it's about to do into a special area on the file system called
the journal.

It then performs the write to the target area, and lastly
erases the journal.

The purpose of journaling is to get fast recovery if a
write operation is aborted before all parts of it are done.
The journal contains the details of what was being written
at the moment of the interruption.

There are two kinds of data in a file system:

  - the data itself (payload),
  - metadata, the data about the file system structure.

A journaling file system can journal the metadata or
all the data. The metadata-only file journaling system
simplifies recovery after a crash, but there is not
the data protection full journaling gives. It's quite
obvious that the full journaling is the slower of the
two options, and it also needs more space for the journal.



Tauno Voipio
tauno voipio (at) iki fi

Site Timeline