利用Haralampos(Haris)Pozidis博士在IBM的非易失性存儲器研究成果,IBM公司日前在IEEE國際存儲器研討會上披露了一整套技術細節,據稱已經成功立足高溫環境在4Mcell(相當于32 Mbit)相變存儲器(簡稱PCM)陣列內實現可靠的三層單元存儲效果,且其使用壽命周期可達100萬次。
可以說IBM公司在三層單元PCM領域的成就、突破乃至發展轉折點將成為重要的技術里程碑,意味著PCM將帶來幾乎無窮的可能性。
圖一:(a)PCM顯示出8層特性,圖中曲線則為eM指標度量感線(黑色);(b)圖中所示變化為各層在編程后70秒到10天間的實際效果;(c)各層感線變化為25攝氏度到75攝氏度間的測量結果。
這意味著現在我們可以將三層單元PCM-MLC放置在尺寸約等于3D堆疊單層單元PCM的面積之上,從而進一步實現存儲級內存(簡稱SCM)等應用方式與解決方案。值得強調的是,MLC閃存存儲器屬于單bit設備的衍生產物,而非并行開發成果。
Haris Pozidis博士,IBM公非易失性存儲器司蘇黎士研究部門經理。
圖一(a)所示為PCM單元所能實現的八種獨立電阻狀態。要對這些電阻狀態加以利用,技術人員需要應對圖一(b)中的問題并在圖一(c)設定的溫度條件下正常起效。IBM公司在解決這些問題中獲得的成果可以總結為三大關鍵性創新方案:一組位移免疫型單元狀態指標、一組位移容錯編碼以及一套檢測方案。
過去,IBM公司曾經發布過該團隊的技術開發進展,其利用一系列技術手段對PCM面臨的問題加以解決。具體來講,最大的難題源自位移、溫度變化以及寫入/擦除生命周期。而這也是藍色巨人第一次在單一三層單元解決方案中對這些難題同時進行解決。IBM公司的科學家們現在設定了獨立PCM運作與混合應用兩類構想,其中后者旨在將PCM與閃存加以結合,而PCM則充當速度極快的緩存機制。
IBM Research 的相變存儲器(簡稱PCM)單元芯片(上圖所示),用于演示PCM如何以可靠方式實現三層單元數據存儲。IBM方面表示:“PCM不會在斷電后造成數據丟失,這一點與DRAM不同,而且該項技術擁有至少1000萬次寫入壽命周期,遠高于目前常見U盤的最高3000次寫入周期。”
我就多層PCM與堆疊式3D交叉點單層單元存儲器間的幾項重要指標向Haris Pozidis進行了求證:
“3D交叉點技術基于存儲器單元與二極管的堆疊設計。這類方案的主要問題在于生產效率低下,即設備的整體產量受限于每一單層的生產能力。在另一方面,MLC/TLC(單層)技術則不會受到這方面問題的影響。多bit技術的另一大優勢在于,三層單元實現的容量能夠將每bit存儲成本削減至三分之一(理論上),而3D交叉點技術采用的雙層技術則只能將每bit存儲成本削減至二分之一。從理論上講,為了實現對等的每bit存儲成本,3DXP技術需要進行三層堆疊,但這又會進一步加劇之前提到的產能受限問題。”
為了在兩方面皆取得最佳效果,我詢問Haris是否有可能以3D堆疊結構構建三層單元或者多bit PCM。
“是的,從理論上講確實可行。為了在TLC層中進行編程,技術人員需要能夠執行迭代式編程與驗證步驟,而這些編程步驟同時也需要能夠控制流經單元的電流。這些在堆疊式結構當中并不是問題,因為其中會利用某種形式的二極管進行元件訪問。驗證步驟同樣可以實現,但需要強調的是,其需要提供一種相對準確的單元狀態測量方式,即無法單純使用簡單的填制閾值機制;對于二層單元結構來講,其需要設置至少3個閾值,在TLC中則需要7個閾值。”
IBM公司所演示的多bit PCM芯片原型方案意味著,藍色巨人已經成功在4-bank交叉架構當中實現了2 x 2 Mcell陣列。該存儲器陣列尺寸為2 x 1000 微米 x 800微米。各PCM單元被整合至采用90納米CMOS技術的原型芯片當中。此次公布的細節信息主要立足于完整陣列內的64Kcell子集。
適應感應級別
盡管過去已經有多個團隊演示過PCM單元實現多層存儲的能力,甚至曾經出現過高達100層結構,但相關成果往往由于實現條件過于苛刻而無法在真實世界中進行商業推廣。由位移引發的高電阻狀態不穩定令制造材料成為最大的難題。具體來講,所謂位移效應是指MLC設備在某一級別進行編程后,可能會位移至更高級別并由此導致讀取結果出錯。第二項難題則在于設備中的單一級別集合會隨時間推移而發生擴展。第三項難題在于電導率——即與位移類似的電阻值浮動——可能與溫度存在反相關性。
IBM公司科學家Nikolaos Papndreou手持PCM芯片在放大鏡下展示。
為了解決這些問題,IBM公司開發出一項新型指標以測量單元級別。這項指標被稱為eM,目前已經被應用于三層單元(相當于8級別)解決方案當中。其最初公布于二層單元機制內,用于以非線性方式隨時間推移讀取電流,如圖一所示,同時利用時鐘計數作為感量。
這項“eM”指標攻克了上述難題,同時解決了早期MLC指標——即R與M指標——的局限,且能夠同時處理處于高電阻與低電阻狀態的多個單元。
這套解決方案的下一層面針對位移與溫度變更造成的阻值影響,二者可謂將其投入實際應用前必須克服的兩大障礙。其概念非常簡單,即在讀取過程中建立多項讀取感應等級的直方圖,同時調整感值等級以確保其最佳定位符合直方圖區間。這項自適應技術概要如圖二所示。
圖二:阻值等級自適應方法示意圖。
碼字與碼本
在此次公布的MLC-PCM當中,IBM公司已經利用自己開發的一項技術取代了用戶數據碼字。其使用自有數據通信機制,IBM此前曾借此從高噪或衰減信號中提取數據。IBM公司的編碼方 案在H Pozidis博士的論文中亦有詳盡說明,其在使用MLC存儲器時會考慮PCM設備會在溫度變化時表現出同樣的位移或阻值變化方向,從而保證讀取 內容的正確性。因此,如果所有碼字始終只包含8套針對每種數據類型的4種符號組合,則其應該能夠在溫度變化導致位移或變化后繼續保證讀取正確。
為了理解三層單元存儲器與碼字機制的使用方式,大家可以參考圖三所示的二層單元(即每單元4種阻值級別)。用戶數據中的每24 bit都由編碼器/調制器將其擴展為32 bit等效碼字。每條碼字屬于初始級別矢量0000111122223333的排列之一。每條碼字占用16個MLC存儲單元,即32 bit。
圖三:二層單元系統內經由存儲器的排列調制數據示意圖。
初始矢量能夠提供6300多萬條碼字,而每條碼字使用32 bit(或者該存儲器內的16個單元)。每條碼字內只包含4個四級別實例,即只能存儲[Log2(6300萬)]或者用戶數據內的24 bit(最多)內容。這意味著用戶數據不受限制,且能夠在每個2 bit內容納任意數字、對等級別、組合及碼字。
在簡單的二層單元系統示例當中,其實際編碼效率為32/24或者每符號(級別)1.5 bit。如圖二所示,存儲器讀取到的級別數據受到了位移與信噪的影響。由于級別的相對順序始終保持不變,因此可以利用一套排序算法快速確定4個不同級別的 各自位置,并通過枚舉方式提供可能性最高的用戶數據流。
盡管IBM公司最新發布的8級別(三層單元)機制采用了更為復雜的碼字計算方式,但其基本原理與二層單 元完全一致。其采用所謂碼聯機制(即一組初始向量)。在三層單元存儲器當中,其利用長度為32的排列碼配合一條包含4組(每組8級別,即0到7)信息的初 始向量。全部超過單一初始向量的排列亦形成獨立聯合,其中對用戶數據進行映射。不過對排列聯碼的解碼過程較之于單一排列碼本解碼要復雜得多。(其中單一是 指基于單一初始向量的碼值。)
結合eM指標,級別自適應與碼字機制能夠帶來低于10-4錯誤比率,而在編程完成后的106秒周期后,其錯誤比率仍然只略高于10-4水平。
接下來,利用迭代序列將排列調制后的數據寫入至存儲器內——與閃存不同,PCM的每個迭代步驟都可用于增加或者減少單元電阻。每個步驟的具體幅度由實際值與目標值間的差值決定。實驗證據證明,所有單元中有99%能夠在15次迭代步驟以內達到目標電阻級別。
IBM方面并沒有公布三層單元原型芯片的讀取訪問時長,不過其提到二層單元陣列為450納秒,而三層單 元的讀取時長基本應該保持一致。讀取與寫入時長都將包含對存儲器內數據執行枚舉算法或者將用戶數據轉換為碼字的過程。另外,寫入時間還將包含設置目標級別 所必需的寫入驗證迭代外加晶體相變時間。
其枚舉算法最多占用32個時鐘周期,再加上設定級別時所涉及的至少15次單元寫入迭代。由于缺少時鐘速率方面的專業知識,我們很難就此給出較為準確的寫入時間或者估計值。不過可以肯定的是,其讀取與寫入操作時長將成為重要的性能指標。
此次展示的三單元設備采用“演示”架構,因此我向Pozidis博士求證,IBM公司是否會繼續使用這套演示架構,抑或會進一步升級解決方案以實現更具線性的穿孔設備結構?他的回答是:
“這套解決方案已經適用于穿孔設備結構——我們已經在CIC 2015大會上與SK海力士聯合發布了相關論文。”
在硬件分區迭代方面,迭代驗證寫入控制器預計將內置于芯片當中,而IBM公司計劃將排列調制器/解調器放置在芯片外的存儲控制器當中。這種處理方式的原因之一在于允許用戶選擇其它不同形式的調制機制。
我們向Haris博士提出最后一個問題:您(IBM)在三層單元PCM之外還有哪些進一步發展計劃?
“很明顯,我們希望與存儲供應商建立合作關系,從而共同開發或交付這項技術的授權許可。我們認為我們已經將多bit技術推向了新的成熟度水平。在將其投入半導體制造環境下進行生產時,其它實際問題當然也可能出現,但屆時我們會繼續想辦法加以解決。”