天天看點

利用資料壽命增加基于閃存的存儲類存儲器的使用壽命

 本文提出在閃存閑置時利用保留時間的能力,以提高ssd中slc的使用壽命。主要思想是,作為大多數i / o資料典型的工作負載不需要大于幾天的保留時間,我們可以在單元格中使用多個部分程式狀态,并且每兩個狀态每次存儲一位資料。是以我們可以在單元中存儲多個位(每次一個位),每次寫完後并不擦除,這将直接轉化為壽命的增強。這裡所提出的方案稱為密集slc(d-slc)閃存設計,可将ssd壽命提高5.1-8.6倍。

利用資料壽命增加基于閃存的存儲類存儲器的使用壽命

dense-slc nand flash-based ssd

典型的基于閃存的存儲類記憶體(scm)具有層次内部結構:一個快速的單級單元(slc)固态驅動器(ssd)在上層具有數十gb的容量和一個緩慢的多級單元(mlc)ssd,具有太位元組容量低等級。在這種設定中,slc ssd服務的很大一部分傳入的流量對其施加高的寫入壓力,這使寫耐力成為slc ssd部件的重大挑戰(每個閃存單元可以容忍104-105個程式設計/擦除周期)。這個論文針對slc ssd的終身難題,通過放松其停留時間來改善它的機會并對其進行了讨論.

誘因

傳統上預計閃光燈裝置保留資料一年或多年。但是,存儲的資料在ssd scm不需要這種長期的非波動性。在一個分層scm,我們期望slc ssd處理i / o請求具有短期壽命,而i / o請求長期壽命通常由底層mlc ssd處理。作為一個誘因的例子,圖1(左)顯示了資料長壽的cdf用于mds_0中的i / o資料。我們可以看到超過90%的mds_0中的寫資料長達10小時。類似的行為可以在廣泛的企業工作負載環境中出現。

建議

主要的想法是在slc裝置中放寬保留時間,我們可以在單元中有兩個以上的狀态。類似于正常slc,在每個給定的時間,我們使用每兩個狀态來寫入一個位資訊。以這種方式,裝置存儲在需要擦除之前,需要多個位(每次一位)在一個擦除周期期間增加寫入單元的數量,或者增加存儲在其中的最大邏輯頁數一個p / e周期内的實體頁面(我們稱之為“頁面寫入”擦除周期“或pwe,即正常slc閃存中始終為1)。顯然,增加pwe将導緻裝置壽命的改善。

利用資料壽命增加基于閃存的存儲類存儲器的使用壽命

我們提出了每個閃存塊的dense-slc(d-slc)閃存三種模式之一:其中的所有頁面/單元格都處于2種狀态模式(相同)作為傳統的slc),4狀态模式(它有兩個中間狀态;其pwe為三個)或8狀态模式(它具有6個中間狀态;其pwe為7)。8狀态模式塊具有最短的保留時間并且适用于存儲具有短壽命的資料(例如,小于一小時),而2狀态模式塊具有最長的保留時間,适合長壽命的資料(例如,大于3天)。 4狀态模式具有适度的保留時間,被資料使用的壽命為“10小時至3天壽命”。

結論

我們使用disksim與microsoft的ssd擴充為我們的評估建立一個slc ssd。圖1(右)顯示在整個裝置壽命期間mds_0具有2,4和8狀态的塊的百分比。這表明我們提出的閃存可以通過将其存儲為4和8狀态來存儲更多的i / o資料模式塊(與具有2種狀态塊模式的正常slc相比)。由于來自msr劍橋的15個評估工作量套件,我們的d-slc設計将裝置壽命提高了5.1-8.6倍。上文中詳細說明并分析了d-slc設計。d-slc的實作需要硬體/軟體支援,包括校準閃光燈的參數程式設計算法和修改塊選擇和垃圾閃存軟體(ftl)的收集算法。

 作者:蔡卓妍

來源:51cto

繼續閱讀