01背景及動機
3D閃存架構(gòu)中的制程差異增加了壞塊管理的難度。由于不同塊之間的錯誤特征不同,現(xiàn)有的基于P/E次數(shù)的壞塊管理策略下,很難確定合適的P/E閾值。若P/E設(shè)置激進,則增加數(shù)據(jù)丟失的可能性;若P/E設(shè)置保守,則無法充分利用強可靠性閃存塊的壽命,從而降低了SSD的整體使用壽命。本文探討的壞塊管理,本質(zhì)是如何權(quán)衡可靠性和SSD使用壽命?
一個理想的壞塊管理策略是在一個塊失敗之前立即退役,關(guān)鍵是能夠準確地預(yù)測閃存塊何時接近其生命周期的末端。
在本文中,利用閃存塊之間的空間相關(guān)性劃分集群,以集群為粒度進行壞塊管理。如果在塊級存在空間相關(guān)性,那么一個塊的失效是其相鄰塊近期失效的有力指標。本文在海力士3D TLC閃存上進行可靠性實驗,分析相鄰閃存塊之間的錯誤特征,并且表明存在集群相似性,即物理接近的閃存塊具有相似的錯誤特征。
02集群相似性
實驗設(shè)置:從10塊海力士TLC閃存選取40個cluster,每個cluster的選取采用同個plane中的連續(xù)10個塊。對這些塊執(zhí)行編程隨機數(shù)據(jù),然后執(zhí)行擦除,循環(huán)直到報廢。擦除之前數(shù)據(jù)的dwell time為10s。收集對應(yīng)P/E下的比特錯誤率。
結(jié)論:1)對于不同集群中的塊,在P/E周期中的比特錯誤率趨勢可能非常不同;2)對于同一集群中的塊,比特錯誤率趨勢更加相似,即存在集群相似性。
03基于集群的壞塊管理
基于集群相似性,提出了一種基于集群的壞塊管理策略。集群中的閃存塊可靠性及在P/E影響下錯誤率趨勢具有相似性。也就是說,在壞塊管理時,當其中一個閃存塊成為壞塊時,整個集群中的閃存塊全部標記為壞塊。通過這種集群相似性特征來管理壞塊,可以及時標記壞塊,從而在確??煽啃缘那疤嵯?,盡可能提升閃存壽命。
提出的基于集群的壞塊管理策略有兩個關(guān)鍵設(shè)計問題。
1) 集群大小的選擇。集群大小決定了SSD壽命和可靠性之間的權(quán)衡。更大的集群大小會導(dǎo)致更低的故障率(更加保守,并不能完全耗盡每一個閃存塊的壽命),但會以更短的SSD壽命為代價。如何選擇集群相似度強的集群大小,在不犧牲SSD壽命的情況下保證可靠性,對于基于集群的壞塊管理機制的有效性至關(guān)重要。為此,本文提出了一個度量標準來量化集群的相似性,并推導(dǎo)出閃存塊故障率和集群大小之間的相關(guān)性。因此,給定集群大小的可靠性和SSD壽命之間的權(quán)衡可以被定量地評估。
2) 集群退役時對I/O性能的影響。集群退役的時候,該集群的所有有效數(shù)據(jù)需要拷貝到其他集群。由于集群退役而導(dǎo)致的讀寫突發(fā)可能會干擾用戶的I/O請求。為了解決這一問題,本文提出了一種關(guān)鍵塊優(yōu)先調(diào)度策略,當集群中某個塊標記為壞塊時,該塊的數(shù)據(jù)遷移優(yōu)先級高于用戶請求。集群中其余塊在之后SSD空閑時,執(zhí)行關(guān)聯(lián)的讀寫操作。因此,可以盡量減少集群退役時的性能影響。
04實驗測試
實驗一:對比基于集群的管理方法和基于塊的管理方法
權(quán)衡Block usage和Block failure rate。其中,?Block? usage指的是被定義為在SSD不再可用之前所承受的平均P/E。Block failure rate定義為發(fā)生塊故障的塊的比例。
當P/E次數(shù)增加時,塊的使用情況和塊的故障率都會上升?;诩旱膲K管理方法中,可以實現(xiàn)23000P/E次數(shù),并實現(xiàn)block failure rate為0.01。對于基于塊的管理方法,當確保塊失敗率為0.01時,P/E僅為11000。如果要實現(xiàn)23000P/E,塊失敗率為0.09。這表明,所提出的基于集群相似性的方法在塊使用和塊故障率之間實現(xiàn)了更好的權(quán)衡。
為了進行更詳細的分析,從塊管理策略中選擇以下設(shè)置,以查看塊退休率和塊故障率如何隨時間變化。
不同的集群大小如何影響基于集群的管理策略?圖8展示了塊退休率和塊故障率隨時間變化趨勢。評估了五種不同的集群大小,包括1、2、5、10,以及clusterAll表示同一芯片內(nèi)的所有塊視為單個集群。注意,cluster1相當于BlockNoLimit,clusterALL代表集群很大。
當集群大小增加時,壽命降低。然而,對于集群大小為1、2、5、10,差異不顯著。這是因為當集群大小等于10時,集群相似性仍然很強。
隨著集群大小的增加,塊故障率減小。當集群大小等于10時,塊故障率已經(jīng)小于0.01。因此,沒有必要選擇一個更大的集群大小。
實驗二:測試數(shù)據(jù)重新分配的性能情況
比較了基于集群管理策略與基于塊管理策略的I/O性能。該實驗表明,通過關(guān)鍵塊優(yōu)先分配調(diào)度可以減輕基于集群管理策略的I/O影響。下圖表示塊退役前后的I/O延遲。x軸表示分析時間和塊退役之間的時間差,從塊退役前50秒到塊退役后50秒。y軸表示每1000個請求的平均I/O延遲??梢钥吹?,基于集群的方法會引入延遲尖峰。而關(guān)鍵塊優(yōu)先分配解決了此問題。
05總結(jié)
本文發(fā)現(xiàn)物理接近的閃存塊間存在相似的誤差特征(集群相似性),提出一種基于集群的壞塊管理方式,確保閃存可靠性的前提下,提升閃存壽命??紤]到基于集群的管理下,集群退役引起的I/O性能問題,本文還提供了一種針對壞塊重新分配的關(guān)鍵塊優(yōu)先調(diào)度方法。實驗表明所提出的方法可以延長閃存壽命2倍,而不會有任何I/O性能下降。
審核編輯:劉清
-
SSD
+關(guān)注
關(guān)注
20文章
2812瀏覽量
116996 -
TLC
+關(guān)注
關(guān)注
0文章
136瀏覽量
51426 -
延遲器
+關(guān)注
關(guān)注
0文章
5瀏覽量
6681
原文標題:如何解決閃存制程差異下的壞塊管理問題?
文章出處:【微信號:SSDFans,微信公眾號:SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論