TLC固態硬碟用SLC緩存一片罵聲 原來背後還有這樣的故事

固態硬盤的SLC緩存就好像美顏相機,把TLC閃存寫入速度慢的缺陷掩蓋起來,給用戶一個光鮮漂亮的外表。而一旦SLC緩存用盡,就會如素顏照一樣被打回原形。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

巨大的落差使得很多朋友對SLC緩存這個特性深惡痛絕,那為什麼幾乎所有固態硬盤都還要用它呢?難道SLC緩存僅僅是為了跑分這麼一個原因而存在?

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

一個噱頭的開始:MLC變SLC

不可否認的是,SLC緩存誕生之初的確是出於性能,或者說是對漂亮跑分的需求。在被東芝收購之前,OCZ是個以狂熱著稱的第三方固態硬盤製造商。之所以叫他第三方製造商是因為它和現在大多數固態硬盤廠商一樣,不具備自己的閃存製造能力,但比其他廠商高明之處在於擁有自己的固件研發能力,同時還有一個收購來的Indilinx主控硬件團隊。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

OCZ Vertex 4是全球首個應用SLC緩存的固態硬盤,當時使用美光閃存而寫入速度偏低的它為了搏一把而首次將MLC閃存模擬為SLC使用,從而使得寫入速度暴增。當然出來混總是要還的,一旦緩存用完Vertex 4的性能就會大跌。

迫不得已的抉擇:TLC變SLC

如果說MLC閃存使用SLC緩存是噱頭大於實際,TLC的出現使得SLC緩存成為不得不用的救命稻草。這不光是因為TLC閃存的擦寫壽命比MLC更短,更是因為TLC閃存的數據寫入邏輯比MLC要複雜很多倍。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

對於固態硬盤寫入實際是對閃存的編程(Program)。TLC編程複雜而困難,需要分多步編程,一點一點把數據刷上去。在沒有完成全部寫入之前,存儲單元異常斷電會使其中部分寫入的數據變得非常危險。下圖為MLC閃存的兩步編程方式,TLC往往需要4到8步來完成編程寫入,耗時更久,危險性更大。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

此外在很多情況下,當一個閃存Block塊被完全寫滿之前是不能進行讀取的,這幾乎把TLC閃存逼到了幾乎無法使用的邊緣。TLC固態硬盤只能用SLC緩存來緩衝數據,然後從緩存把數據吐出到TLC存儲單元中,一次性寫滿整個Block塊,從而回避這個限制。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

MLC能開TLC?其實是個誤會

既然TLC能被當成SLC用,那麼MLC能不能變成TLC來擴增容量呢?有玩家發現,Intel 600p上的閃存編號就是MLC類型的,但實際上600p是一款TLC固態硬盤。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

這其實是一個美麗的誤會,英特爾與美光在初代3D閃存上發展出了代號為L06B、B0KB和M05B的三兄弟,分別對應MLC、TLC和SLC類型。在某些型號中是可以通過固件開卡來實現自由轉換的,600p並沒有將MLC變成TLC,而是它原本就屬於MLC/TLC兩用型的設計。

存儲極客注意到,國內一些山寨固態硬盤宣稱使用MLC閃存,實際上是用帶有MLC編號的閃存顆粒開卡成TLC,對外宣傳是MLC閃存,實現誤導消費者的目的。具體哪個品牌存儲極客就不點名了,類似這個現象在只看價格不要品質的國產固態硬盤當中非常普遍。

QLC快來了,SLC逃不掉

TLC完成了普及,QLC也快來了:伴隨今年底到明年初的96層3D堆疊技術換代,QLC閃存即將進入公眾視線。東芝已經率先宣佈BiCS4 3D QLC閃存,美光和三星也隨後提出類似技術。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

96層堆疊將帶來更高的存儲密度,從TLC到QLC更是能帶來1.33倍的理論容量提升。目前第一階段的96層3D TLC已經由東芝在XG6 NVMe固態硬盤上率先使用。96層3D QLC產品則計劃在明年上市。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

下圖為東芝96層3D QLC閃存實物,已經送往其合作伙伴進行固件研發和適配工作。不用存儲極客多言,QLC閃存肯定會對SLC緩存有更多的依賴:還是為了保障性能的發揮,家用電腦讀寫壓力不大,SLC緩存除了提升跑分,也會對實際使用性能產生積極影響。

TLC固態硬盤用SLC緩存一片罵聲 原來背後還有這樣的故事

SLC緩存到底是在提升還是揮霍閃存的壽命?

網上有很多言論稱,SLC緩存會增大閃存的磨損,這種理論看上去也是無懈可擊:所有寫入數據必須首先進入SLC緩存區,然後再釋放回TLC形態,等於閃存造成了兩次磨損。不過實際情況是,以SLC方式寫入對閃存單元產生的磨損遠小於直接以TLC方式編程。SLC緩存的擦寫循環次數都在數萬次以上,而如果沒有SLC做緩衝,直接讓隨機寫入的數據進入TLC閃存單元進行編程,產生的寫入放大率會比SLC緩存的釋放過程更高。

此消彼長之下,其實很難說SLC緩存到底是提升了閃存壽命,還是揮霍了原本不多的擦寫次數。考慮到它的諸多作用,綜合來看SLC緩存還是利大於弊的。


分享到:


相關文章: