Prev: PowerPC books ARM
Next: crc32 calculation
From: kaimi on 31 Mar 2010 10:11 Hi all, I'm very new to NAND flash. I've come across this: http://www.samsung.com/global/business/semiconductor/products/fusionmemory/Products_FAQs_Reliability.html " Q 01.What is the NOP? A 01. NOP is an acronym for the 'Number Of Partial programs'. It indicates how many times users can program on a single page. SAMSUNG guarantees 'NOP 8' on the 70nm and the 90nm products while 'NOP 4' is guaranteed on later products. NOP depends on the characteristic of the NAND core, and SAMSUNG cannot guarantee the exact value if users program multiple times on a page. " There's no ambiguity in the answer. But it's still surprising me about the fact that I can't re-program a location (a page) in NAND flash more than such a tiny number of times. Do I understand it right? If so, is NAND supposed to be a storage/read-only only memory where data should only be written once? I know many memory cards are made out of NAND flash. They couldn't be the NAND mentioned in the above FAQ??? Thanks for reading and explainations would be very much appreciated. --------------------------------------- Posted through http://www.EmbeddedRelated.com
From: Boudewijn Dijkstra on 31 Mar 2010 10:31 Op Wed, 31 Mar 2010 16:11:55 +0200 schreef kaimi <kaimi2005(a)n_o_s_p_a_m.yahoo.com>: > Hi all, > > I'm very new to NAND flash. I've come across this: > > http://www.samsung.com/global/business/semiconductor/products/fusionmemory/Products_FAQs_Reliability.html > > " > Q 01.What is the NOP? > A 01. > NOP is an acronym for the 'Number Of Partial programs'. It indicates how > many times users can program on a single page. SAMSUNG guarantees 'NOP 8' > on the 70nm and the 90nm products while 'NOP 4' is guaranteed on later > products. NOP depends on the characteristic of the NAND core, and SAMSUNG > cannot guarantee the exact value if users program multiple times on a > page. > " > > There's no ambiguity in the answer. But it's still surprising me about > the > fact that I can't re-program a location (a page) in NAND flash more than > such a tiny number of times. Do I understand it right? If so, is NAND > supposed to be a storage/read-only only memory where data should only be > written once? I know many memory cards are made out of NAND flash. They > couldn't be the NAND mentioned in the above FAQ??? > > Thanks for reading and explainations would be very much appreciated. They are talking about _partial_ programming, a.k.a. programming _on_ a page. After a page is erased, it becomes writeable, but if you wait long between writes, it becomes less writeable until you cannot write to it anymore. -- Gemaakt met Opera's revolutionaire e-mailprogramma: http://www.opera.com/mail/ (remove the obvious prefix to reply by mail)
From: kaimi on 31 Mar 2010 10:53 >They are talking about _partial_ programming, a.k.a. programming _on_ a >page. After a page is erased, it becomes writeable, but if you wait long >between writes, it becomes less writeable until you cannot write to it >anymore. > I think "number of times", not "how long between each times" was mentioned in the FAQ. It complicates my not-understanding now ;) --------------------------------------- Posted through http://www.EmbeddedRelated.com
From: Anders.Montonen on 31 Mar 2010 11:43 kaimi <kaimi2005(a)n_o_s_p_a_m.yahoo.com> wrote: >>They are talking about _partial_ programming, a.k.a. programming _on_ a >>page. After a page is erased, it becomes writeable, but if you wait long >>between writes, it becomes less writeable until you cannot write to it >>anymore. > I think "number of times", not "how long between each times" was mentioned > in the FAQ. It complicates my not-understanding now ;) I think they mean that after partially programming a page NOP times the whole page must be reprogrammed or the data may be corrupted. -a
From: Marc Jet on 31 Mar 2010 12:05
Kaimi, You can think of it like this: When you erase and programm a page, everything is fine. But if you re- program it (without erasing), then the previous information "suffers" a little bit. It's still in good shape when you do that once or twice. But it's definetly not reliable anymore if you do it more than 8 times. You will get lots of read errors. A page is usually just 512 bytes, so you probably won't need to partial-program it often. The normal approach is to write new information to new pages. When the flash block is full and much of it is stale information, you copy the active information to another block and erase the old one. This puts all pages back to "virgin" state. Partial programming is useful when you create a journalled filesystem. Often you want to write only a small amount of data. If the data fits into the "current" page (and the page has not yet been written 8 times), then it can be appended using a partial write. I hope this makes it clearer for you. Best regards Marc |