doubts on NAND Flash

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?

Thanks Kaushik

Reply to
Loading thread data ...

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!)

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

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)

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?).
Reply to
tim (moved to sweden)

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
 Click to see the full signature
Reply to
Tauno Voipio

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.

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.

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

Reply to
Jona Vark

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 kaushik

Reply to

"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.

At least to start with...

Reply to
David Brown

write to

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

Reply to
Jona Vark

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.