Formalising Flash Memory: First Steps

We present first steps in the construction of formal models of NAND flash memory, based on a recently emerged open standard for such devices. The model is at a level of abstraction that captures the internal architecture of such a device, as well as the commands that are used to operate it. The model is intended as a key step in a plan to develop a verified filestore system, by providing a description of the hardware devices that would be used in it implementation.

[1]  C. A. R. Hoare The Verifying Compiler, a Grand Challenge for Computing Research , 2005, VMCAI.

[2]  David Woodhouse,et al.  JFFS : The Journalling Flash File System , 2001 .

[3]  Maritta Heisel Specification of the Unix File System: A Comparative Case Study , 1995, AMAST.

[4]  P. Krishnan,et al.  Flash memory file caching for mobile computers , 1994, 1994 Proceedings of the Twenty-Seventh Hawaii International Conference on System Sciences.

[5]  Carroll Morgan,et al.  Specification of the UNIX Filing System , 1984, IEEE Transactions on Software Engineering.

[6]  Jim Woodcock,et al.  First Steps in the Verified Software Grand Challenge , 2006, Computer.

[7]  Gerard J. Holzmann,et al.  A mini challenge: build a verifiable filesystem , 2007, Formal Aspects of Computing.

[8]  Kyu Ho Park,et al.  An efficient NAND flash file system for flash memory storage , 2006, IEEE Transactions on Computers.

[9]  Junfeng Yang,et al.  Using model checking to find serious file system errors , 2004, TOCS.

[10]  Viktor Kuncak,et al.  Verifying a File System Implementation , 2004, ICFEM.

[11]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[12]  Tetsuo Endoh,et al.  Reliability issues of flash memory cells , 1993, Proc. IEEE.

[13]  Trevor N. Mudge,et al.  FlashCache: a NAND flash memory file cache for low power web servers , 2006, CASES '06.

[14]  Ana Cavalcanti,et al.  The Unix filing system: a MooZ specification , 1994 .

[15]  Sang-goo Lee,et al.  A new flash memory management for flash storage system , 1999, Proceedings. Twenty-Third Annual International Computer Software and Applications Conference (Cat. No.99CB37032).

[16]  Axel Sikora,et al.  Technologies and reliability of modern embedded flash cells , 2006, Microelectron. Reliab..