固態硬碟能用多久?談快閃記憶體品質和LDPC糾錯

今天我們來談談閃存品質如何影響固態硬盤,今天的討論將不再侷限於寫入壽命或可以擦寫多少次這樣簡單的層面。

閃存的品質

過去我們經常談原片和白片。這種非此即彼的二分法比較容易被大家理解,原片的高品質被所有人認同,而對於白片的爭論就比較多。其實白片和原片一樣,都有等級之分。

固態硬盤能用多久?談閃存品質和LDPC糾錯

並不是所有白片都是原廠篩剩下的次品,有些情況下原廠可能會直接出售晶圓。這些晶圓在出廠時就包含了一張map,將晶圓上每個晶粒的情況做出了標記。

固態硬盤能用多久?談閃存品質和LDPC糾錯

第三方的封測廠根據Map摘取芯片進行封裝,閃存芯片的分級篩選還需要結合主控一起進行,最終制造出符合特定使用條件的合格閃存顆粒。

固態硬盤能用多久?談閃存品質和LDPC糾錯

跟晶圓製造階段是相比,芯片封裝相對簡單的工藝流程,相關技術已經被很多第三方企業掌握,還能根據需要實現MCP多芯片封裝。下圖是江波龍將Marvell 88NV1160主控與美光3D TLC閃存融合封裝的單顆粒NVMe固態硬盤——FORESEE P900。

固態硬盤能用多久?談閃存品質和LDPC糾錯

閃存原廠數量畢竟有限,採購晶圓後摘取合格晶粒(Good Die)自行封裝,可以發揮封裝階段的成本優勢,起到了豐富市場選擇的作用,同時也促使固態硬盤價格能夠覆蓋到各種人群的偏好範圍。

固態硬盤能用多久?談閃存品質和LDPC糾錯

針尖上跳舞:一步都不允許出錯

雖然公版方案使得製造固態硬盤的入門門檻降低了需多,但固態硬盤對閃存品質的要求並沒有降低。由於閃存自身的工作特點,固態硬盤主控對閃存的使用受到種種制約。從最簡單的來說,閃存必須先擦除才能進行寫入,所以固態硬盤中沒有真正的覆蓋寫入,所有針對原有數據的修改都將被重定向到新的閃存位置上。由FTL管理邏輯地址與閃存物理地址的對應關係。

固態硬盤能用多久?談閃存品質和LDPC糾錯

這就像酒店房間管理,下午2點之前就到達酒店辦理入住,這時給你預留的房間還沒有打掃,所以前臺給你安排新的房間,並在系統中做了記錄。

固態硬盤能用多久?談閃存品質和LDPC糾錯

原有數據因為發生變化而成為無效的"垃圾"內容,但主控卻不能命令閃存直接將這個存儲單元擦除掉——閃存的最小擦除單位Block塊要比最小寫入單位Page頁大數千倍。隨著已使用和已變成垃圾的位置越來越多,主控所能輾轉騰挪的空間變得越來越小,所以必須要有垃圾回收來整理出足夠數量的、可用於直接寫入的空白塊。

固態硬盤能用多久?談閃存品質和LDPC糾錯

在讀取原來block中有效塊、寫入新位置、擦除原來Block的垃圾回收過程中,不能有一絲一毫的錯誤發生。

固態硬盤能用多久?談閃存品質和LDPC糾錯

機械盤異常斷電丟失的可能僅僅是未保存的文件,而固態硬盤遇到異常斷電或運行異常,丟失的還可能包括到恰好跟正寫入的數據處於同個page或block的老數據——即便那些老數據早就正常寫入進去,依然有可能在這次異常中被破壞。

通過篩選的閃存顆粒在製成SSD之後,對於成品還需要進行高溫老化測試。下圖是浦科特介紹的老化測試。使用Flexstar專用設備能夠對SSD進行溫度、電源循環、數據讀寫、極限電壓等方面的測試,驗證SSD在磨損均衡、數據錯誤率、組件失效率、寫入耐久與數據保持時間等方面的表現。

固態硬盤能用多久?談閃存品質和LDPC糾錯

並非萬能的LDPC糾錯

固態硬盤對可靠性的要求極高,閃存寫入和讀出數據的過程,都有糾錯引擎的參與來確保數據無誤。LDPC糾錯近幾年才應用都固態硬盤當中,被稱為拯救TLC閃存的功臣。藉此機會簡單聊聊大家眼中神秘的LDPC。

LDPC是一種迭代算法。如果你不明白迭代的含義,推薦看一部名為"明日邊緣"的電影,它講述的是男主有機會一次次回到前一天,通過反覆嘗試各種可能,試圖救下必將死在明天的女主。小編覺得這部2014年的電影很有意思,即便不是為了理解迭代的含義,如果有沒看過的朋友也可以回去看一看。

固態硬盤能用多久?談閃存品質和LDPC糾錯

好了扯遠了,言歸正傳,LDPC是通過迭代的方式反覆嘗試解碼,在這個過程中通過軟數據(Soft Data,SD)的幫助一步步接近正確的讀取結果。

固態硬盤能用多久?談閃存品質和LDPC糾錯

這裡又出現一個叫"軟數據"的名詞。所謂軟數據,可以理解成瞎子摸象——手感。得到的信息量很大,但並不直觀,需要經過進一步綜合判斷才能分析出結果。

固態硬盤能用多久?談閃存品質和LDPC糾錯

閃存單元內存儲的是電子,根據電子的多寡來表達不同的數據。現在還做不到直接數閃存單元中電子的數目,只能通過位線上的電流來感知和判斷,並將它們轉換為0和1的二進制數據。下圖是最簡單的SLC閃存模型:

固態硬盤能用多久?談閃存品質和LDPC糾錯

SLC閃存的一個單元只需要表達0或1兩種狀態,到了MLC之後要表達的狀態數量就增加到了4個(00,01,10,11),TLC時代更是增加到8個狀態。後邊還要16種狀態的QLC閃存。沒有LDPC這種強大的糾錯算法是萬萬不行的。

固態硬盤能用多久?談閃存品質和LDPC糾錯

LDPC糾錯在軟糾錯階段可以通過不同的讀取參數去獲得關於閃存的更多數據,根據自己的經驗去嘗試判讀,如果ECC驗證不通過,就換個"姿勢"進行更多的嘗試。這裡判讀所依據的經驗是"Log-likelihood ratio(LLR)",中文名叫對數似然比。

固態硬盤能用多久?談閃存品質和LDPC糾錯

對數似然比是一個經驗豐富的老司機,能夠僅憑一個模糊的畫面就能把車牌號猜個八九不離十。當然經驗再豐富也有翻車的時候,不要緊,LDPC糾錯可以繼續迭代,接著嘗試,直到得出正確答案,或者因迭代次數達到限制而糾錯失敗。

固態硬盤能用多久?談閃存品質和LDPC糾錯

SSD的閃存品質不好會容易翻車:壞就壞在對數似然比這個老司機身上。對數似然比與閃存的特性有關,可以想象只開美系車的老司機,讓他猜日本的車牌號是很難猜對的。

固態硬盤能用多久?談閃存品質和LDPC糾錯

對數似然比這些經驗性的信息,是在主控及固件的設計階段就預設好的,需要根據閃存的不同進行適配。這是一個經驗活兒。天下閃存製造商雖然只有寥寥數家,但即便是同一家閃存廠的產品,不同品質等級的脾氣秉性也很難料。這裡邊的問題就複雜了,我就放張龍生九子的圖片吧。

固態硬盤能用多久?談閃存品質和LDPC糾錯

現在我們知道,閃存的品質不是簡單的PE次數,它會影響到LDPC糾錯的效果,反過來影響到閃存能夠用多久。即便神如LDPC,如果閃存品質不佳,也可能因偏離固件的設計而失控。

閃存出錯的累加效應

通常的情況下,每一筆寫入和讀取的數據都會經過糾錯引擎的檢查。

固態硬盤能用多久?談閃存品質和LDPC糾錯

但某些時候為了更好的性能也會有無主控糾錯引擎參與的數據遷移發生,譬如說使用到Copy Back(閃迪稱為On Chip Copy)的磨損均衡或者SLC緩存釋放過程。

固態硬盤能用多久?談閃存品質和LDPC糾錯

因為Copy Back的數據遷移過程只侷限在芯片內部,不需要主控的過多參與,所以釋放了主控壓力,提升了SSD的效能表現,但也因此失去了檢查錯誤的機會,有可能導致閃存錯誤的逐漸累加,直到下次主控要求讀取時才發現已經超出了糾錯能力範圍。

為了兼顧性能與數據安全,一些固態硬盤會採用適時切換的方式,在閃存較新的時候採用Copy Back模式提升性能表現,當閃存磨損達到一定程度後改回傳統模式保護數據安全。PCEVA之前在飢餓鯊TR150固態硬盤的耐久度測試中就發現,該固態硬盤在主機寫入量超過標定TBW之後,就會關閉Copy Back模式。

固態硬盤能用多久?談閃存品質和LDPC糾錯

固態硬盤能用多久?談閃存品質和LDPC糾錯

如果閃存品質不確定,沒有辦法找到一個合理的均衡點,就有可能無法發揮出閃存的全部壽命潛力。

總結:因為NAND塊擦除的特性,必須要有很多複雜的算法與糾錯輔助來保證運行時的效能與穩定性。NAND閃存雖然是非易失性存儲器,但在記錄數據的過程中依然充滿風險,除了用戶直接請求的寫入之外,SSD內部的磨損均衡、垃圾回收以及基於數據保持目的的刷新都會產生背景寫入。SSD作為一個精密的整體,主控的先進糾錯技術只是一個輔助,關鍵還是要看閃存品質以及固件的成熟度。

打個比方,師太親身經歷的事情:朋友開了個烤串店,大家都去捧場,但越吃越鹹,老闆解釋說:肉不新鮮,多放點鹽遮遮味……大家以為就是個玩笑沒當真,但回家全都拉了肚子……劣質的NAND就像這個不新鮮的肉串,雖然有各種算法與糾錯輔助能一定程度遮蓋不新鮮的味道,但你吃下去還是要拉肚子的。

以上是小編多年測試SSD後的心得。水平有限,文中若有錯誤歡迎大牛指正。那麼結尾部分再說些大白話吧,目的是讓沒有專業知識的人也都能看懂:

我們還能得到幾個延伸的結論:

1、SSD跑分其實很扯淡,跑的不過是緩存在極短時間內的爆發力,無法真實體現SSD在實際工作中的狀態。這也是AS SSD的測試結果不靠譜的原因之一。

2、家用固態硬盤沒事別瞎折騰,一邊刪除一邊寫入的事儘量少幹,如果寫入時候有卡頓,千萬不要著急的按重啟,多等會,因為塊擦除延遲是比較高的。想騙保的同學看到這裡會有所領悟吧,不過這僅針對使用劣質NAND的SSD,優質NAND+健壯度高的固件,這麼做也很難搞壞。

3、如果非要買低端的SSD,也儘量選有芯片sorting能力的工廠出的產品。已知大陸工廠有這個能力的包括江波龍,臺灣的華泰電子等也給很多品牌提供封測服務。我們把這個能力當做一個最基本的及格線,凡是及格線之下的都是不推薦的,比如那些使用拆板、降級顆粒不做sorting卻成天自稱一線原廠顆粒的品牌……


分享到:


相關文章: