论文部分内容阅读
NAND flash作为一种非易失性存储器件,相对于磁盘存储器具有功耗较低、访问速度更快以及良好的抗震特性等优点,因此在信息存储领域尤其是测试信息存储领域取得了广泛应用。其中,MLC(Multi Level Cell)NAND flash由于存储密度为SLC(Single Level Cell)NAND flash数倍,成本较低,已经成为主流的NAND flash存储介质。但是,随着MLC NAND flash存储容量及存储密度增加,基于MLC NAND flash存储系统可靠性问题也日益突出。目前,MLC NAND flash存储系统可靠性问题主要集中在以下三个方面:错误率升高、使用寿命降低及发生意外掉电时数据丢失问题。本论文首先从MLC NAND flash结构及工作原理角度分析了错误率升高、使用寿命降低及对意外掉电敏感问题的内在机理,然后针对这三个可靠性问题,提出了提高存储系统可靠性方法,主要工作如下:首先研究了MLC NAND flash存储系统错误率升高的问题。本文通过分析文件系统不同请求的重要程度,针对传统冗余备份方法会给存储系统带来大量存储空间开销的缺陷,提出了元数据冗余方法,通过仅对系统元数据进行备份降低元数据错误率;为了降低冗余备份方法对系统I/O性能造成的开销,利用MLC NAND flash错误率非对称分布的特性,通过将系统关键数据合理分布于物理存储空间,最终达到降低存储系统错误率,同时不牺牲存储系统I/O性能的目的;设计并实现了实际的硬件实验平台,本文所有实现均基于此硬件实验平台。其次研究了延长MLC NAND flash存储系统使用寿命的方法。NAND flash存储系统的使用寿命与垃圾回收次数直接相关,本文通过对MLC NAND flash存储系统垃圾回收操作及并行访问方法进行分析,针对基于MLC NAND flash的固态盘,将并行访问方法与垃圾回收方法结合,提出了一种垃圾回收相关的并行访问方法。垃圾回收相关的并行访问方法将顺序访问请求队列的请求顺序根据存储系统并行程度重新组织,以实现与串行访问方法相近的垃圾回收开销同时不牺牲存储系统I/O性能,有效地降低了存储系统垃圾回收次数,从而延长了使用寿命。最后研究了MLC NAND flash存储系统意外掉电时数据丢失问题。本文对采用电容作为临时电源的固态盘建立意外掉电模型,分析了固态盘各部分耗能情况,针对以电容作为临时电源的MLC NAND flash存储系统,提出了贪婪备份方法。贪婪备份将电容放电过程与器件特性进行结合,通过动态通道选择策略和快速安全编程策略,避免了存储系统意外掉电时出现的低页破坏现象,同时有效提高了备份效率。