QLC快閃記憶體能用嗎?聊聊關於固態硬碟的那些事

gzpony發表於2018-07-24

  今年7月,東芝與西數率先宣佈了96層堆疊3D QLC快閃記憶體技術,單晶片就能做到1.33Tb(166GB),單個封裝可以做到266TB的驚人容量。做成2.5寸的SSD,容量要達到10TB也不是很難的事情。

  隨後,Intel和三星也展示了同樣是96層堆疊的3D QLC快閃記憶體技術,儲存密度上也是遠比原有的TLC快閃記憶體產品更加優秀。一時間QLC有山雨欲來之勢,大容量SSD的普及似乎已經觸手可及。

  然而消費者對於QLC 快閃記憶體並不買賬,很多人質疑其可靠性以及效能相比MLC和TLC倒退太多,難堪大用。

  有鑑於此,我們就和讀者聊聊QLC的實用性以及其他一些和固態硬碟相關的事情。

  一、QLC可靠性的確很差? 但是未來依然是它的

  SLC每Cell只能存放1bit資料,電壓只有0、1兩種變化。由於結構簡單,使得可擦寫壽命達到了10萬次,而單Cell讀寫速度也有35/25MB/s。

  MLC每Cell可以存放2bit資料,相同面積下可以做出2倍於SLC的容量,但是有00、01、10、11四種電壓變化,相比SLC需要更復雜的的電壓控制,加壓過程用時也變長,因此在可靠性上只有SLC的1/10。目前的MLC產品可擦寫測試通常在3000~10000次之間,讀寫速度也降到了SLC快閃記憶體1/3的樣子。

  TLC每Cell可以存放3bits資料,相同面積下,容量可以比MLC提高50%,但是卻有8種電壓變化,可靠性進一步降低,一般在300~1000次之間。單Cell讀取速度仍然有10MB/s,而寫入速度就大幅度降低,不到SLC是1/10,僅有1.5MB/s。

  QLC每Cell可以存放4bits資料,相比TLC,儲存密度又提高了33%,但是電壓變化卻有16種之多,導致可擦寫壽命僅有100~150次。單Cell的讀寫速度目前沒有廠商公開資料,預計相比TLC還要進一步降低。

  由於SLC快閃記憶體超強的可靠性以及遠高於其他快閃記憶體顆粒的讀寫速度,通常被當作MLC、TLC SSD的快取來使用。目前市面上的SSD產品,一般都整合了8~50GB的SLC快閃記憶體作為快取。平時我們的讀寫操作都是在SLC快取裡面進行,但是當一次性寫入的資料超過SLC快取容量的時候,SSD的寫入效能會大幅度降低,特別是TLC SSD在這種情況下,寫入速度基本上都是可憐的幾十MB/s(快閃記憶體顆粒的擦除速度很慢,比寫入速度更慢,所以SLC快取寫滿後需要一定的時間才能完全釋放供下次使用)。

  雖然目前各大廠商都在積極推出QLC顆粒的SSD產品,但實際上,相對TLC顆粒,它僅能提高1/3的儲存密度,而壽命卻縮短了將近10倍!

  看上去QLC快閃記憶體得到的容量相比損失的壽命而言似乎是得不償失。但是SSD的使用壽命除了快閃記憶體顆粒的可擦寫次數之外,還有很重要的一點,就是SSD自身的容量。

  (即便不進行大容量資料複製操作,使用電腦時,系統盤也有產生一定的寫入量。主要是來自於虛擬記憶體、瀏覽器快取、windows系統使用以及執行應用程式時所產生的臨時檔案。根據每個人使用環境不同,一般來說,每天的寫入量大概在10~50GB之間。上表的使用年限即是以每天50GB寫入量為基準計算)

  MLC的使用壽命就不說了,即便128GB容量,理論上寫入壽命也能達到20年以上。

  對於TLC來說,當SSD容量達到了1TB的時候,寫入壽命也遠遠超過了128GB的MLC。

  但是QLC就沒這麼簡單了。由於只有100次可擦寫壽命,用QLC顆粒做出來的128GB SSD的寫入量最高只能達到13TB,重度玩家使用不到一年就報廢了。當SSD容量增加到1TB的時候,寫入量能達到102TB,重度使用下也能堅持5-6年。依此類推,10TB的QLC SSD的寫入壽命足夠正常玩家使用56年。至於100TB的QLC SSD…….

  總體來說,QLC顆粒不適合做小容量SSD產品。但是當SSD容量達到2TB甚至更多的時候,就不必太在意他到底是用的TLC,還是QLC,放心使用就行了。

  由於成本和容量上優勢,未來民用級的大容量SSD產品將會大量使用QLC顆粒。

  二、養成正常使用習慣 讓SSD更長壽更快速

  1、固態硬碟分割槽4K對齊? BiOS開啟AHCI選項

  SSD 4K對齊以及在BIOS開啟ACHI選項的對SSD效能的影響,相信大部分玩家都有所瞭解, 下圖是2種情況下的速度差異。

  沒有AHCI與4K對齊時,在AS SSD Benchmark軟體中,會出現pciide-BAD以及31K-BAD的紅字。此時的效能慘不忍睹,只發揮了SDD 1/3不到的效能。

  目前新出的主機板基本上預設就開啟了AHCI選項,所以SSD到手之後只需要在分割槽時注意4K對其就行了。

  2、保證SSD至少有20%的可用容量

  有一個朋友,他120G的固態硬碟(實際可用容量112GB),可用空間被他用的只剩下不到5GB,C盤D盤都是紅彤彤的。這種做法對硬碟的危害極大,不僅是壽命,就連速度也會大打折扣。

  我們知道快閃記憶體顆粒有P/E擦寫次數限制,因此目前的SSD都有帶有均衡擦寫技術,複製到SSD的資料不會像機械硬碟那樣連續放在一起。當一塊區塊當前寫入資料之後,馬上刪除掉,下次再寫入時,主控會將資料存放在其他區域, 以保持每個區塊的寫入次數處於一個均衡的水準,不會讓一個區塊反覆被擦寫提前報廢掉。

  從前面我們知道,日常使用時,每天會向SSD寫入10~50GB的臨時檔案資料。如果整個SSD只剩下5GB的可用空間,而每天至少要寫入10GB資料,TLC快閃記憶體300次的可擦寫壽命很快就會被消耗殆盡,所以固態硬碟一定至少要保留20%的可用空間。

  上面說了對固態硬碟壽命的影響,下面再來說說可用空間不足對速度的影響。

  (由於沒有足夠時間做測試,引入了國外某媒體的測試資料)

  以上是SSD容量被使用50~100%時,讀寫速度的變化情況。當可用空間還剩50%的時候,?速度比可用空間用完時要快10倍左右。為什麼同樣一塊固態硬碟裝滿資料程度不同,效能會有如此大的差距?

  快閃記憶體顆粒中資料刪除不是以單個的位元組為單位而是以固定的區塊為單位,區塊大大小為256K~20MB之間。由於快閃記憶體區塊資料不可直接覆寫,因此所有的SSD都存在一個寫入放大率的問題。

  當4KB資料要寫入快閃記憶體區塊時,如果整個區塊正好是空的,那麼4K資料就直接寫入,寫入放大率就是1。

  當4KB資料要寫入快閃記憶體區塊時,如果64KB的區塊已經存放了48K的資料,那麼不好意思,需要將原有的48K資料先複製到記憶體,然後主控將快閃記憶體區塊的資料全部擦除,最後才會將要寫入的4K資料與原有的48K資料一起寫入快閃記憶體。實際上一共寫入了52KB的資料,此時的寫入放大率就是52/4=13。

  SSD的可用空間越多,出現這種情況的機率越低。當SSD可用空間所剩無幾的時候,寫入放大率會隨之變大,SSD的讀寫速度則會急劇降低。

  其實SSD廠商也有考慮到上面的情況,通常會給SSD預留一些額外冗餘空間。比如240GB的SSD一般會有16GB冗餘空間,480GB SSD一般有32GB冗餘空間,但這點空間能起到的作用很有限。

  為了讓SSD一直暢快執行,為了能讓SSD能使用壽命更長久,請一定一定要給SSD保留至少20%的可用空間。

  智慧手機快閃記憶體也是使用的MLC與TLC顆粒,所以以上結論同樣適用於智慧手機。當您的智慧手機用起來越來越慢的時候,請檢查一下可用儲存空間是否足夠。

相關文章