「解讀」同是NAND Flash快閃記憶體(SSD)技術,MLC和SLC差距為何如此大?

直到現在,NAND快閃記憶體技術的發展,還是遵循傳統的內存技術發展的軌跡,如SRAM、DRAM、EEPROM(EEPROM)等,在每個存儲單元中存儲一個二進位數據,然而這種類型的NAND技術現在被稱為Single Level Cell或SLC。

在競爭中,為了追求更高的密度和更低的成本,每個單元存儲多個二進位數據的新類型的快閃記憶體單元已經出現,這種類型的NAND快閃記憶體稱為Multi Level Cell或MLC,每個單元存儲兩個比特。市場上也有每個Cell存儲三個比特的Triple Level Cell或TLC顆粒,但TLC的耐久性極低,P/E周期約在300左右,因此,即使在控制器和固件技術的幫助下,TLC NAND不適合用於工業應用。

因此,在這篇文章中,我們將關注SLC與MLC NAND之間的關鍵區別,以及這兩種類型的NAND的技術關鍵點。

每Bit密度和成本

MLC NAND快閃記憶體每單元Cell存儲2比特數據,這種較高的存儲密度意味著,對於相同數量的存儲,MLC設備的存儲物理大小要小於SLC設備,較小的存儲物理尺寸轉換為較小Die尺寸,因此每比特的成本更低。

然而,MLC設備的優勢並不是SLC的2倍。原因是MLC需要更複雜的程序和讀取電路,從而導致這些電路消耗更大的Die空間。

Device級別的性能

為了在一個MLC NAND快閃記憶體單元中存儲2位數據,編程電路必須能夠在設備的浮動門上放置4個精確的電荷量,還是使用與SLC設備相當的電壓閾值窗口。圖1顯示了SLC與MLC的Vt分布。

要實現對Flash設備的浮動門的精確分配電荷,需要一個更複雜、更耗時的編程算法。因此,MLC NAND Flash的編程時間比SLC NAND快閃記憶體要慢4倍

讀取操作也存在類似的性能懲罰,因為讀取感知電路需要較長時間才能準確地區分這四個狀態。因此,MLC NAND Flash的讀取時間要比SLC NAND慢3倍

系統級別的性能

除了上述基本的Device級性能缺陷,由於缺少對一些系統特性的支持,比如複製編程(Copyback)部分編程(Partial),MLC NAND也受到了較低的系統級性能的影響。

Copyback編程允許用戶將一頁的數據從快閃記憶體設備中的一個位置移動到另一個位置,而無需將數據傳輸到內存中或從內存拷出。對於一個2K Byte/page的NAND快閃記憶體Device,Copyback節省了超過170us/page頁的時間,Copyback編程對磨損均衡和讀/寫/更新操作是最有效的。

Partial編程允許用戶只對設備中數據的一部分進行編程。在典型的PC應用編程中,對於一個2K Byte/page NAND Flash來說,一頁數據包含4個數據扇區。部分編程允許用戶一次編寫一個扇區的數據。這對於讀/修改/寫操作或小塊數據傳輸來說非常有用。

由於其獨特的結構和Device特性,MLC NAND對干擾現象更為敏感,訪問數組的一部分可能會對同一數組的其他部分造成干擾。因此,為了儘量減少陣列干擾的可能性,MLC NAND Flash製造商則不選擇或不允許部分編程或複製編程特性。缺少這兩個特性意味著,當用戶需要將數據從設備的一個位置移動到另一個位置時,MLC NAND的速度會變慢。同時也意味著MLC NAND在小塊操作中的性能比SLC NAND更糟糕

耐久力(Endurance)

對NAND快閃記憶體的編程(P/E操作)過程會造成物理氧化層損傷(薄氧化層將浮柵與基板隔開)。這種損害是在Flash日常讀寫使用過程中慢慢累積,最終的結果是隨著編程次數(P/E)的增加,「擦除周期」不斷增加就會導致電壓閾值(電壓閾值是的判定編程和擦出狀態)窗口變窄、移位或收縮,當擦除電壓閾值位移力度超過檢測閾值時,將導致讀取判斷誤差,這一現象如圖2所示(W/E Cycle同P/E Cycle)。

 

針對MLC NAND Flash來說,在相同電壓閾值窗口需要保持4個不同的狀態數據,可用的閾值窗口大小相比SLC NAND Flash,約為其1/2。MLC NAND在編程機制、氧化層損壞程度跟SLC NAND是一樣時,MLC NAND的程序/刪除閾值窗口只有SLC NAND的1/2,這意味著MLC NAND Flash的「擦除窗口窄化」相比MLC NAND更早、更明顯,如圖3所示。

目前,SLC NAND採用的4X/3Xnm技術最低的耐力(P/E Cycle)大約可達7萬,相比之下,MLC NAND目前在2X/1X/1Ynm技術下,大約只有3000 P/E Cycle。這對MLC NAND來說,這不僅僅只是一個量級的低耐力的差別。隨著Flash技術成本下降、擴展性的持續發展,這種差別只會變得更糟,圖4顯示了耐力周期的變化和耐久趨勢。

 

較低的耐久性限制意味著MLC NAND不適用於頻繁更新數據和對應的應用程式,或者需要在高擴展要求下,還追求較高的可靠性的場景。

什麼是企業級MLC

為了解決MLC NAND的低持久耐力問題,主流的Flash製造商提供了所謂的企業MLC(簡稱eMLC)。這種類型的Flash的製造工藝與標準的MLC Flash是相同的,不同的是更好的權衡性能和耐久性,並提供更可靠的P/E算法。eMLC提供了比標準MLC快閃記憶體更高的持久性,而犧牲了較低的性能。性能較低的原因是需要使用更精確的編程算法,來確保足夠的電壓閾值窗口判斷編程(Programming)狀態。

然而,值得注意的是在相同技術節點和狀態下,eMLC的耐久性還不到SLC NAND在的一半。因此,對於那些需要長期耐久的應用,SLC NAND仍然是推薦的選擇。

錯誤率(Error Rates)

正如上一節所提到的,MLC NAND的每個狀態的電壓閾值窗口要比SLC NAND小得多。這樣的結果就導致MLC NAND更容易讀取時發生錯誤,或易受干擾發生錯誤。當由於受到過多重複的P/E周期或因溫度變化,使得閾值電壓分的布而偏移超過檢測閾值時,就會出現數據判定錯誤。

編程(Program)干擾

編程干擾發生在被編程的相鄰Cell中,當鄰近的Cell暴露高於正常水平的電壓水平時,編程干擾就會發生,圖5說明了這個問題。

MLC NAND對編程干擾是比較敏感的,其主要原因歸根揭底就是判定數據每個狀態的電壓閾值窗口比較小。

讀(Read)打擾

在相鄰的Cell之間,由於雜散電荷耦合到未選擇的線圈的浮動門時,讀干擾就發生。讀打擾不像寫干擾那麼嚴重,但隨著Flash幾何尺寸越來越小,這種情況越來越糟,圖6說明了讀打擾。

隨著Flash技術工藝越來越精細,讀、寫干擾,耐久力也會變得更糟,由於相鄰Cell單元的交叉耦合效應會引發乾擾錯誤。圖7顯示了技術節點相對尺和Cell之間的耦合趨勢。

原文網址:https://kknews.cc/code/l25oxqe.html

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★博文作者未開放評論功能