论文部分内容阅读
本文旨在探讨NAND Flash存储管理软件,即NAND Flash文件系统的设计和实现。该软件用于隐藏NAND Flash设备的特异性,并将其封装成标准的块设备形式,以与通用的基于块设备的文件系统接口。作为当前最新型的半导体非易失性存储设备之一,NAND Flash具有与EPROM相似的制备工艺和擦写特性。与传统的块型磁存储设备相比,NAND Flash在写入数据之前需要先执行擦除操作,并且其中可擦除单元擦除次数存在耐久度上限。鉴于此,若要使用通用的文件系统软件来管理NAND Flash上的数据,就需要在二者之间插入一个用于存储管理和接口转换的中间层,即NAND Flash文件系统。NAND Flash文件系统除了执行接口转换功能之外,还需要根据Flash特性,在内部完成Flash接口驱动、存储块重映射、无效块回收、平衡擦写、错误恢复等功能。本文将分析这些功能需求的定义,以及相关的实现算法;之后根据上述分析,结合实际的项目应用环境给出一个设计实例,以供参考;最后对软件的运行性能进行了测试和评估。所实现的NAND Flash文件系统运行在VxWorks操作系统环境下。其对上层文件系统提供符合VxWorks标准的块设备接口,对下则执行NAND Flash存储管理功能和块回收。经测试,软件经压缩之后的代码长度少于15KB;软件运行过程中占用系统动态存储区少于36KB;所实现的NAND Flash数据写入速率约为1MBps,读出速率约为2MBps,完全满足项目的应用要求。