MLC轉成SLC模式沒有想象的那麼好

2021-10-11 09:13:03 字數 2103 閱讀 6702

序言

mlc可以通過set fetures命令將mlc或者tlc轉換為slc模式,不知道那位有才人起名曰:pslc,應該是pseudo slc的縮寫,濃濃的歧視味道撲面而來。

儘管很多廠商已經開始使用此模式供貨,但目前為止尚未見到任何關於mlc轉為slc之後的有詳實測試資料的關於擦寫次數以及可靠性評估文章。

兵哥希望用真正的測試資料來驗證mlc轉為slc之後,是否與理論上推測的接近。

mlc可以轉slc的理論依據

mlc與slc的區別就在於乙個cell中存幾個bit的資料,mlc存兩個bit,slc存1個bit。對於mlc而言lsb對應的就是slc模式頁,也就是我們常說的lower page,如果僅僅使用lower page而不使用upper page,如下圖所示,每次只將lower page的「1」變成「0」,豈不是最快且需要改變電壓最小的方法?而後面「01」和「00」兩組電壓值都不復存在。當然,不使用upper page就等於另外一半的容量沒有使用,所以,容量只有mlc的一半。

當傳送set features命令之後(首先需要設定feature address,此處不便公開),host將會傳送slc的模式下擦除命令擦除block,然後傳送program命令,將page按slc模式進行program,這樣,block才能轉變成slc模式。

轉換為slc模式以後,trim會永久設定每個cell中預設的bit數量(1個),頁暫存器引數也將會只允許每個cell中乙個bit。 

從理論上講,mlc轉換為slc就是只使用lower page,而不使用upper page。

mlc轉slc模式後真實耐磨度

先看結論,mlc轉為slc之後,p/e cycle次數達到了37827次,而原始誤位元速率到10^(-0.909)時才出現擦寫失敗,這個是很有意義的:

mlc模式下,p/e次數達到5822次時出現擦寫失敗,此時,原始誤位元速率還在10^(-3.537):

測試配置:

mlc和slc都使用同樣的ecc強度,二者使用同樣的pattern:2345689ab為種子產生的偽隨機數:

mlc轉為slc模式之後,只有一半的page在工作(每個block有256個page,只有128個page可以使用):

小結:

1、mlc轉slc有效果,但無法達到真正的slc耐磨度;

2、可靠性方面,slc模式比mlc更可靠;

3、把mlc轉slc的時機非常重要,當mlc接近壽命終結時再轉換slc模式基本沒有效果;

4、從成本角度考慮,花費2倍**,提公升大約6倍左右的壽命是否划算……不好說。

測試侷限:

只使用單一block進行測試,樣本數量太少,不足以說明問題,slc模式下,單一block花費了13小時8分鐘才被磨損到壽命終結。

只使用某一廠商快閃儲存器進行測試,並不代表所有廠商mlc轉slc模式後的水平。

對於那些希望用到slc的可靠性但又負擔不起slc成本的使用者而言,mlc轉換為slc雖然犧牲了一半容量,但**的確便宜了好多倍,目前slc每gb的成本普遍都在usd4或者以上,而mlc每gb連usd0.4都不到(非工業類),即使犧牲一半容量,成本也不到每gb usd1,巨大的成本差異對使用者來說無疑極具吸引力,乙個256gb pslc與slc僅nand flash成本差異可以就可以達到usd500美元以上。

SLC和MLC的區別

slc全稱是single level cell,即單層單元快閃儲存器,而mlc全稱則是multi level cell,即為多層單元快閃儲存器。它們之間的區別,在於slc每乙個單元,只能儲存一位資料,mlc每乙個單元可以儲存兩位資料,mcl的資料密度要比slc大一倍。1.mlc 可是slc的儲存空間...

SLC和MLC的實現機制

nand flash按照內部儲存資料單元的電壓的不同層次,也就是單個記憶體單元中,是儲存1位資料,還是多位資料,可以分為slc和mlc 1.slc,single level cell 單個儲存單元,只儲存一位資料,表示成1或0.就是上面介紹的,對於資料的表示,單個儲存單元中內部所儲存電荷的電壓,和某...

NAND FLASH的MLC和SLC架構區別

目前業內最具爭議的話題莫過於nand快閃儲存器的兩大架構mlc和slc了,這兩種架構最大的區別是訪問技術不同,由此也帶來了製造成本 工藝要求 輔助電路 訪問次數上的迥異。從短期發展來看,slc架構在使用上優勢較為明顯,也因此成為了部分廠商炫耀產品的資本。然而mlc架構具有成本低廉 單片容量較slc成...