mtd/html/tech nand.html,1.1,1.2

gleixner at infradead.org gleixner at infradead.org
Thu Aug 1 04:42:18 EDT 2002


Update of /home/cvs/mtd/html/tech
In directory phoenix.infradead.org:/tmp/cvs-serv3679/mtd/html/tech

Modified Files:
	nand.html 
Log Message:
minor updates and corrections



Index: nand.html
===================================================================
RCS file: /home/cvs/mtd/html/tech/nand.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- nand.html	3 May 2002 14:54:46 -0000	1.1
+++ nand.html	1 Aug 2002 08:42:15 -0000	1.2
@@ -44,22 +44,31 @@
     <td>Fast  </td>
   </tr>
   <tr>
-    <td>Scaling  </td>
-    <td>Difficult  </td>
-    <td>Easy  </td>
-  </tr>
-  <tr>
     <td>Power consumption  </td>
     <td>High  </td>
-    <td>Low  </td>
+    <td>Low, but requires additional RAM  </td>
+  </tr>
+  <tr>
+    <td>Can execute code  </td>
+    <td>Yes  </td>
+    <td>No, but newer chips can execute a small loader out of the first page</td>
   </tr>
+  <tr>
+    <td>Bit twiddling  </td>
+    <td>nearly unrestricted  </td>
+    <td>1-3 times, also known as "partial page program restriction"</td>
+  </tr>      
+  <tr>
+    <td>Bad blocks at ship time  </td>
+    <td>No</td>
+    <td>Allowed</td>
+  </tr>      
 </table>
 
 <p>As NAND Flash is cheaper than NOR Flash and has a very slim interface it was selected as the optimum solution
  for large nonvolatile storage applications such as solid state file storage, digital audio/voice recorder,
  digital still camera and portable applications requiring non-volatility.</p>
-
-                       
+                   
 <hr>
 <h2>NAND Types</h2>
 
@@ -158,6 +167,7 @@
 NTFL is designed for the usage of DiskOnChip devices. JFFS2 supports raw NAND chips and SmartMediaCards at the moment. A JFFS2 support for
 DiskOnChip devices, based on the NAND code, is planned.
 There are some other Open Source projects for NAND filesystem support, but there's no other working solution than JFFS2 at the moment of this writing.
+One of them is <a href=http://www.aleph1.co.uk/armlinux/projects/yaffs>YAFFS</a>, which is available in a beta version.</p>
 </p>
 <p>There is currently no support for the wide spread SmartMedia DOS-FAT filesystem, mainly because it's not a reliable filesystem
 for industrial usage. It's ok for multimedia applications. The hardware support layer is designed to support a implementation of SmartMedia
@@ -269,6 +279,9 @@
 chip on bootup, like the DiskOnChip devices do. This will be a quite complex CPLD. An alternative
 is to use a small e.g. 1MB NOR Flash, which contains the boot code and maybe a compressed kernel
 image. Then you can use JFFS2 on NAND as your root filesystem</p>
+<p>Some newer chips make the first page available for reading after power up. This could be
+helpful for starting a small 256/512 byte bootcode. At the time of this writing there is no
+tested implementation of this.</p>
 <h4>Is there support for 16/32bit wide NAND Flash ?</h4>
 <p>No. The generic NAND driver supports 8 bit wide NAND Flash only. 16 or 32 bit NAND Flash can
 be built by using 2 or 4 chips and connect them to D0-7, D8-D15, D16-D23 and D24-D31 on the data bus.
@@ -278,7 +291,7 @@
 more memory space than on 8 bit NAND. Another point is bad block handling. When a block on 1 chip is bad, the
 corresponding blocks on the other chips are lost too, as you present them as one big block to the filesystem
 driver. The JFFS2 code, which handles the writebuffer and the out of band (spare) area of NAND doesn't support
-16 / 32 bit neither.
+16 / 32 bit neither.</p>
 <h4>How is ensured, that data is written to flash ?</h4>
 <p>As we have to handle a writebuffer for writing only full pages to the chips, there could be a loss of
 data, when the writebuffer is not flushed before power down. There are some mechanisms to ensure,
@@ -310,5 +323,5 @@
 
 
 <hr>
-<address><a href="mailto:tglx at autronix.de">Thomas Gleixner</a></address>
+<address><a href="mailto:tglx at linutronix.de">Thomas Gleixner</a></address>
 $Id$





More information about the linux-mtd-cvs mailing list