登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 外文翻译 > 计算机类 > 物联网工程 > 正文

灵活的条带大小和奇偶校验位置的芯片级RAID对SSD可靠性的增强外文翻译资料

 2022-07-31 02:07  

英语原文共 15 页,剩余内容已隐藏,支付完成后下载完整资料


灵活的条带大小和奇偶校验位置的芯片级RAID对SSD可靠性的增强

摘要:从SLC到MLC\TLC闪存技术以牺牲可靠性为代价,低成本增加了SSD容量。为了弥补这一损失的一个方法是采用RAID架构的芯片组成SSD。然而,使用传统的RAID方法可能会由于奇偶校验更新而增加写入的总数,从而可能产生负面影响。在本文中,我们描述弹性条带和随机奇偶(eSAP-RAID),一种允许灵活的条带大小和奇偶校验位置的RAID方案。我们对比使用RAID-5和eSAP-RAID的SSD获得的性能及寿命模型,我们发现与RAID-5相比,eSAP-RAID通过减少奇偶校验写入,带来显著的性能和可靠性提升。我们还实现了用DiskSim与SSD固态硬盘扩展这些计划并用真实负载验证模式。我们还基于eSAP的灵活性讨论了诸如动态条带大小和选择性数据保护的策略。我们表明,通过这样的策略,可以提高其可靠性。

关键词:闪存 可靠性 RAID SSD

1 引言

本文做出三点贡献。首先,我们提出了两种RAID方案的可靠性分析:一个是众所周知的RAID-5方案,另一个是先前提出的新方案[1][2]eSAP-RAID(弹性条带和随机奇偶校验),我们将在后面详细描述。其次,通过使用DiskSim与SSD扩展平台的分析和大量实验,我们显示eSAP通过显着减少奇偶校验开销提供比RAID-5更好的可靠性,减少基于MLC和TLC的SSD的P/E周期。最后,我们通过两个例子,动态条带大小和选择性数据保护显示eSAP的灵活可用性。动态条带大小是调整条带大小以随着磨损增加而提高可靠性的手段,而选择性数据保护是将特定数据用于奇偶校验保护的手段。对于后者,我们特别设计了一种称为Meta-eSAP的方案,通过将eSAP应用于这些类型的数据来增强诸如文件系统的超级块的元数据的可靠性。我们提供定量分析,显示这两种方法在特定的方式可以提高可靠性。

1.1动机:RAID-5是否提高可靠性?

使用诸如MLC / TLC(多/三电平单元)的每单元多位技术的固态驱动器(SSD)允许以比SLC(单电平单元)器件更低的制造价格实现更高的密度。然而,它也使得SSD的编程/擦除(P / E)周期数视技术下降一个或两个数量级,被限制到几千次[3]。因此,这些MLC和TLC器件的使用通常限于消费产品[4],[5],而SLC器件仍然作为企业SSD。闪存器件也具有共同的特征,即它们的位错误率随着P / E周期增加而指数地增加[6],[7]。传统上存储在闪存中每个页的带外(OOB)区域中的纠错码(ECC)已经用于处理这样的位错误[8],[9],[10]。然而,更高密度的3xnm和2xnm NAND技术可预见需要更大ECC随着错误率的增加。这是SSD的一个主要约束,因为存储ECC的OOB区域占据区域越多,用来存储的元数据的空间就越少[11]。此外,ECC不能处理突发错误,也不能处理页面,块或芯片级错误。已经将类似于RAID5的结构应用于SSD内部来缓解当前的ECC限制[12],[13],[14],[15]。

典型的SSD已经采用RAID-0架构,它们在多个芯片上分割数据,同时依靠ECC来纠错。通过将RAID-0 SSD转换为RAID-5 SSD,我们在ECC补充奇偶校验,希望增强纠错。然而,在SSD内使用RAID-5是一把双刃剑,因为它还增加了页写入的总数,因为这些额外的奇偶校验信息占用存储空间加速磨损和误码率(BER)。

图1 常规MLC SSD和采用RAID-5的SSD的(a)UPER和(b)预期P / E周期(表示为ECC)

图1a示出了不可校正页错误率(UPER),因为越来越多的字节被写入使用BCH码的常规MLC SSD,其中每512B的ECC具有4位冗余,并且RAID-5强制实施。这些UPER值和图1b的预期P / E周期值是从第5节中的可靠性和寿命分析得出的,我们将在后面详细讨论。还提出了由Gray和van Ingen [16]引起的HDD错误率,以供参考。我们观察到,添加RAID-5后,UPER保持低于HDD直到写入大约275 TB,而对于ECC,它大约写入125 TB开始超过HDD。因此,RAID-5有助于减少UPER。相比之下,从图1b可以看出,对于RAID-5,预期的P / E周期比ECC快,并且RAID-5大约170TB的数据写入时就超过10,000次MLC(多层单元)闪存P / E周期限制。另一方面,ECC写入超过300 TB仍然低于P / E限制。RAID-5的使用使P / E周期数的增加导致更快的磨损。因此,无论RAID是否真的是值得使用的方案,都必须更进一步地分析。

1.2相关工作

在本节中,我们回顾了已经提出的闪存的可靠性方面和可靠性增强方案的研究。我们忽略了有关闪存和SSD的基础知识的讨论。我们将需要这些信息的读者指向Grupp [6],Agrawal et al[17]和Gupta et al[18]等人的工作。

1.2.1 Flash的可靠性

诸如多级单元和TLC(三电平单元)的新闪存存储器技术通过存储每单元多位,特别是对于MLC为2位和对于TLC为3位来增加密度。然而,这带来了可靠性的牺牲,因为 可能的P / E(编程/擦除)周期数减少。虽然单级单元闪存的典型P / E周期在100,000范围内,但MLC和TLC的P / E周期分别下降到10,000和1,000 s范围[3]。P / E周期的这种减少加剧了可靠性问题,因为P / E周期的磨损严重影响了误码率[3,6,7]。

特别地,Mielke等人测量来自不同供应商的闪存芯片的原始误码率并计算应用ECC后观察到的不可校正误码率[7]。后来,Sun等人测量5xnm,4xnm和3xnm MLC闪存芯片的原始误码率,并表明随着闪存单元变小,误码率迅速增加[19]。它们还导出BER对P / E周期的指数增长模型。

已经提出了包括静态和动态的几种损耗均衡方案,试图在块之间均匀分布P / E周期以减少BER [20]。最近,Jimenez等人提出了一种新的磨损非均衡方案,识别和跳过弱页面以延长器件的整体寿命[21]。Yang等人提出了一种可靠性均衡的磨损平衡方案,它可以平衡块之间的误差率,以最大化好块的数量[22]。此外,Jimenez等人提出了一种称为Phoenix的技术,其可以从MLC切换到SLC模式以延长SSD的寿命[23]。Liu等人提出了一种耐用的SSD缓存,可以动态地使用更强的ECC来处理增加的BER [24]。

在这些研究中,显示ECC显着降低了误码率。然而,ECC有其局限性。例如,ECC的检测和校正级别是由存储在OOB区域中的ECC的大小来确定,其尺寸小并且必须与诸如逻辑块地址的其它信息共享,以作为突然的功率损耗的保护。因此,超出ECC容量突发差错不能被校正。在类似的情况下,ECC在页面,块和芯片级错误的情况下没有帮助。为了应对这些类型的突发错误,已经提出了具有RAID架构的SSD [12,13,14 ]。

1.2.2 SSDs中的RAID

已经对由磁盘组成的RAID存储系统进行了许多研究(参见[25]用于注释参考书目)。 虽然我们的研究始于RAID概念,但它与传统RAID研究在两个方面不同。 首先,存储介质是闪存,而不是磁盘。第二,在构成存储设备的组件(即SSD)上采用RAID; 也就是说,我们不是组成一个由SSD设备组成的RAID系统。下面,我们总结一些最近的在SSD内采用RAID方案的研究。

Lee等人将RAID架构应用到它们的闪存感知冗余阵列(FRA)[14]。为了减少RAID-5的奇偶校验更新成本,FRA将奇偶校验块保留在缓冲存储器中推迟它们的写入直到缓冲存储器已满或没有请求到达指定的时间量。Im和Shin提出了部分奇偶校验缓存(PPC),一种产生局部条带的部分奇偶校验的方法[12]。 然而,PPC的限制在于它需要非易失性RAM(NVRAM)来保持这些部分奇偶校验。

基于BER随着P / E周期数的增加而增加的观察,Lee等人提出动态调整条带大小以维持与闪存年龄相似的位错误率[13]。具体来说,在早期使用SSD时,它们使用大的条带大小,因为BER低。然而,随着SSD老化并且因此BER增加,条带大小减小,使得记录更多的奇偶校验块。该方案还使用NVRAM来保持存储器中的奇偶校验以减少奇偶校验更新开销。通过基于仿真的实验,他们展示了如何使用RAID方案的SSD的可靠性对抗P / E周期。

最近的一项研究讨论了在大规模系统上使用专用SSD的RAID-5 [26]。虽然RAID-5不是研究的重点,但本研究揭示了在实际系统中如何使用冗余的示例。

另一个最近的工作不是关于SSD内的RAID,而是关于SSD的RAID与我们的工作密切相关。Moon和Reddy讨论了基于SSD的RAID在可靠性方面的潜在优点和缺点[27]。他们提出一个马尔科夫模型来判断奇偶校验保护和SSD阵列寿命之间的关系。他们的发现是相当有趣的,因为他们表明奇偶校验保护并不总是有益的,特别是在单个阵列中,因为奇偶校验更新增加了写放大和空间消耗,这可能降低SSD阵列的可靠性。换句话说,为了获得RAID的好处,我们必须减少奇偶校验管理开销,特别是读-修改-写开销,这正是我们研究的目标之一。

1.3 文章结构

ESAP-RAID被开发以克服RAID-5的限制[1,2]。在下一节中,我们详细描述eSAP-RAID的操作。在进行比较和分析之前,我们还介绍了SSD内部RAID-5的运作原理。 然后,在第3节中,我们得出RAID-5和eSAP-RAID的性能和寿命模型。我们在第4节和第5节中比较两种RAID方案并验证模型。在第6节中,我们讨论了利用eSAP的灵活性的扩展,特别是动态条带大小和Meta-eSAP,第7节进行总结。

2. 采用RAID-5和eSAP-RAID 的SSD

在本节中,我们将讨论包含RAID-5和eSAP-RAID的SSD的闪存芯片的实现细节。 这里的讨论作为在下面部分中导出的分析模型的基础。

2.1 使用RAID-5的SSD

图2(a)采用常规的RAID-5 SSD内部结构,初始数据分配 (b)如何在更新发生时分配数据和奇偶校验

由五个支持RAID-5的常规芯片组成的SSD的内部示于图2a中。条带0和1包含用户数据D0〜 D3和奇偶校验P0,用户数据D4〜D7和奇偶校验P1。条带映射表(SMT),其数量对表示物理块号(PBN)和闪存芯片中的物理页码(PPN)保存关于每个条带的信息。

现在考虑D1〜D4被修改的情况。常规RAID-5要求将更新的数据写入旧数据所在的位置。对于传统的磁盘,这是一个简单的任务,因为更新的数据将简单地覆盖旧数据。然而,对于闪存,更新的数据必须被写入与旧数据所在的相同芯片内的新位置,因为重写是不可能的,如图2b所示。

然后,必须通过读取-修改-写入或重构-写入来更新奇偶校验。在图2的示例中,条带0将使用重构写入,条带1将使用读取-修改-写入,因为它们最小化读写操作。最后,SMT被修改以反映条带中所做的更改。

这种方法有一些限制。首先,数据和奇偶校验页及其分配给的特定芯片之间的关系是固定的。这可能导致写计数的大差异,这取决于特定页的流行度。特别地,奇偶校验页所在的芯片将更容易磨损,因为它必须更频繁地写入。这些固定关系不仅在SSD的性能和寿命方面具有负面影响,而且它们还使得采用灵活的损耗平衡方案和分配策略来降低清洁成本并且提高SSD的寿命变得困难。第二,当写入不是对现有数据的更新,而是对全新数据的写入时,数据写入可能必须停止,直到条带变满,从而使数据易受攻击。例如,继续图2中的示例,如果只有新数据D8和D9到达,则不能仅利用这些页面来计算奇偶校验,因此这些页面不能被写入,直到形成完整条带,即另外两个新的页面到达。最后,不管是使用读取模式还是重构模式写入,读取现有数据必须在新的奇偶校验计算之前,如在传统的基于磁盘的RAID-5系统中所做的那样。然而,使用eSAP-RAID,我们认为这些读取也是不必要的。

2.2 使用eSAP-RAID的SSD

图3 eSAP-RAID (a)数据页D1~D4更新 (b)新的数据页D8和D9写入

全文共20311字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[142823],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图