论文部分内容阅读
鉴于NAND Flash闪存的可擦除次数有限,不均衡的擦除会降低闪存的可靠性,因此,为了延长闪存的使用寿命,设计一个自适应均衡擦除次数的磨损均衡算法至关重要。混合固态硬盘通常由SLC(Single-Level Cell)和MLC(Multi-Level Cell)闪存构成,SLC和MLC闪存之间的冷热数据分配、闪存间的磨损均衡以及闪存内部的磨损均衡是混合固态硬盘闪存转换层设计的关键问题,针对这些问题,本文主要做了以下工作:1)基于SLC和MLC闪存各自的特点,本文设计了一种阈值随当前读写请求大小动态变化的分离器。SLC适合处理小而热的数据,MLC适合处理大而冷的数据,由于热数据会经常的被读写,如果热数据尽可能的部署在SLC闪存,数据整体的响应时间会大大减少。实验表明本文的动态阈值算法能很好地识别冷热数据。2)针对混合固态中SLC内部磨损度不均衡和闪存利用率低的问题,设计了一种利用基于物理页循环队列的方法来管理SLC闪存。本文通过控制循环队列的长度对SLC中的热数据进行管理,从而提高SLC闪存的利用率。通常而言,SLC闪存耐受性比MLC高10倍到20倍的寿命,混合固态硬盘中SLC和MLC闪存之间极易出现磨损度不同步问题,针对这个问题本文设计了一种流量控制器,通过两者的磨损均衡度和数据的实时热度,来对冷热数据进行选择性的重新分配,能有效平衡两者的磨损度和减少闪存间数据的迁移次数。实验结果表明上述方法可以有效提高SLC内部的磨损均衡度、闪存的利用率以及SLC和MLC闪存之间的磨损均衡度。3)鉴于MLC内部磨损均衡的问题,本文提出了基于逻辑页的热度与物理块的热度相结合的静态磨损算法和动态磨损均衡算法。对数据的热度进行了重新定义,算法除了考虑物理页的因素外,还考虑到逻辑页的本身热度以及逻辑页的更新时间间隔。对于冷热物理块的识别,考虑到了闪存介质的物理特性,来解决物理块擦除不均问题(有些块几乎不被擦除,而有些块反复擦除)。实验结果表明该算法能大大的提高MLC闪存内部磨损均衡度,提高闪存的使用寿命。