黃三維,李英閣,韓國(guó)軍
廣東工業(yè)大學(xué) 信息工程學(xué)院,廣東 廣州 510006
近年來(lái),隨著NAND 閃存存儲(chǔ)容量的快速增長(zhǎng)和成本的大幅下降,以NAND 閃存為存儲(chǔ)介質(zhì)的固態(tài)硬盤(pán)的市場(chǎng)占比已經(jīng)超過(guò)機(jī)械硬盤(pán),成為最主要的數(shù)據(jù)存儲(chǔ)設(shè)備。NAND 閃存存儲(chǔ)密度的提升主要依靠半導(dǎo)體制造精度的提升和每單元存儲(chǔ)多比特技術(shù)的應(yīng)用。提升半導(dǎo)體制造精度是提高NAND 閃存存儲(chǔ)密度最直接的辦法,但推動(dòng)生產(chǎn)精度提升所需的投入越來(lái)越大,半導(dǎo)體制造工藝的發(fā)展已進(jìn)入瓶頸期。每單元存儲(chǔ)多比特的技術(shù)能夠成倍的提升閃存的存儲(chǔ)容量,但是每單元存儲(chǔ)的比特?cái)?shù)的增多也會(huì)使各個(gè)狀態(tài)閾值電壓分布更容易產(chǎn)生重疊,導(dǎo)致誤碼率的增加[1]。
在NAND 閃存存儲(chǔ)容量的增長(zhǎng)速度減慢的同時(shí),當(dāng)今社會(huì)對(duì)于存儲(chǔ)的需求卻與日俱增。因此,為了持續(xù)推動(dòng)NAND 閃存存儲(chǔ)密度的增大,研究者們提出了3D 堆疊技術(shù)。不同于以往存儲(chǔ)單元只分布在平面上,3D 堆疊技術(shù)利用了NAND閃存芯片垂直方向上的空間,將存儲(chǔ)單元在垂直方向進(jìn)行堆疊,從而實(shí)現(xiàn)即使在使用較老的生產(chǎn)工藝的情況下都能極大地提高NAND 閃存的存儲(chǔ)容量[2]。3D 堆疊技術(shù)在使得NAND 閃存的存儲(chǔ)密度得到極大提升的同時(shí),也導(dǎo)致了NAND 閃存的結(jié)構(gòu)更加復(fù)雜、信道噪聲更加多樣,給NAND閃存的可靠性帶來(lái)了更大的挑戰(zhàn)。
2018 年,Wu 等[3]發(fā)現(xiàn)一個(gè)塊的不同層的字線(xiàn)受到讀干擾的影響是非均勻的。2019 年,Luo 等[4]指出3D NAND 閃存相比平面閃存出現(xiàn)3 種新的噪聲,其中1 種為層間制程差異噪聲,即不同層的存儲(chǔ)單元因?yàn)槎询B而產(chǎn)生的物理結(jié)構(gòu)上的差異而產(chǎn)生的噪聲。目前對(duì)層間制程差異噪聲的研究還主要停留在靜態(tài)的分析上,即在一定的情況下不同層的存儲(chǔ)單元的原始誤碼率的差異。本文對(duì)層間差異進(jìn)行動(dòng)態(tài)的分析,即不同層的原始誤碼率和閾值電壓分布差異隨著編程擦除磨損次數(shù)和數(shù)據(jù)保存時(shí)間的變化進(jìn)行了深入分析。
圖1 為3D NAND 閃存基本存儲(chǔ)單元的2 種類(lèi)型,1 種是FG 型,1 種是CT 型。2 種存儲(chǔ)單元都是以圓柱形通道為中心,其他層依次以同心圓的方式一層一層包裹通道,各層從內(nèi)到外依次是:通道屏蔽層、電荷儲(chǔ)存層、絕緣屏蔽層、控制門(mén)[5?6]。
圖1 3D NAND 閃存存儲(chǔ)單元結(jié)構(gòu)及其組織方式
3D NAND 閃存的1 個(gè)塊的不同頁(yè)以一定的規(guī)律分布在不同層的不同字線(xiàn)上。1 個(gè)存儲(chǔ)單元存放1 bit、2 bit、3 bit 數(shù)據(jù)分別稱(chēng)為SLC、MLC、TLC 類(lèi)型存儲(chǔ)單元,分別對(duì)應(yīng)每個(gè)字線(xiàn)劃分為1 個(gè)、2 個(gè)、3 個(gè)邏輯頁(yè),每個(gè)字線(xiàn)的邏輯頁(yè)以地址高低劃分為高頁(yè)、中頁(yè)、低頁(yè)[7]。如圖2,堆疊層數(shù)為64 層、每層有12 個(gè)字線(xiàn)的3D NAND 閃存,其最高和最低的幾層因?yàn)槭艿降脑肼曔^(guò)大而設(shè)計(jì)為SLC 型或者M(jìn)LC 型,中間的層數(shù)為T(mén)LC 型。MLC 類(lèi)型的層使用單步編程,同時(shí)對(duì)低頁(yè)和高頁(yè)進(jìn)行編程。TLC 類(lèi)型的層使用兩步編程方式,第1 步對(duì)低頁(yè)進(jìn)行編程,第2 步對(duì)中頁(yè)和高頁(yè)進(jìn)行編程。
圖2 鎂光MT29F1T08EEHAF 型號(hào)芯片的塊結(jié)構(gòu)
由于3D NAND 閃存的制作工藝問(wèn)題,不同層的存儲(chǔ)單元在物理結(jié)構(gòu)上存在一定的差異,使不同層的存儲(chǔ)單元在特性上產(chǎn)生區(qū)別。在3D NAND閃存的制造過(guò)程中,需要在垂直方向上構(gòu)造通道。理想情況下,垂直通道圓柱體不同部位的直徑應(yīng)該是相等的,但是在實(shí)際生產(chǎn)中,受重力等因素的影響,層數(shù)越高的存儲(chǔ)單元的直徑會(huì)更大。隨著3D NAND 閃存堆疊層數(shù)的不斷上升,通道的高度也會(huì)上升,通道形變程度也會(huì)更加嚴(yán)重[8]。
為了緩解通道的層間差異隨著層數(shù)的增加而不斷增大的問(wèn)題,閃存生產(chǎn)商使用了串堆疊技術(shù)。串堆疊技術(shù)在垂直方向上將3D NAND 閃存分成多個(gè)部分,先對(duì)底部的層進(jìn)行堆疊,然后在已堆疊的層的基礎(chǔ)上繼續(xù)進(jìn)行堆疊,從而降低每次堆疊的通道的高度,降低了存儲(chǔ)單元的層間差異。串堆疊技術(shù)雖然解決了層間差異隨著層數(shù)增加而增大的問(wèn)題,但是也增加了閃存的加工成本。
我們使用NFA100-E 閃存芯片測(cè)試儀作為實(shí)驗(yàn)平臺(tái),實(shí)現(xiàn)閃存芯片的控制功能。NFA100-E 設(shè)備有4 個(gè)獨(dú)立的通道,能夠完成對(duì)芯片的擦除、編程、讀取、寄存器設(shè)置和寄存器讀取操作。首先選取測(cè)試芯片的一些塊作為測(cè)試塊,并通過(guò)實(shí)驗(yàn)平臺(tái)的驅(qū)動(dòng),將在終端機(jī)上生成的測(cè)試數(shù)據(jù)寫(xiě)入到這些測(cè)試塊中。待對(duì)測(cè)試芯片進(jìn)行特定的噪聲處理后,對(duì)芯片進(jìn)行掃描并將數(shù)據(jù)導(dǎo)出到終端機(jī)上,進(jìn)行數(shù)據(jù)分析。
實(shí)驗(yàn)使用的芯片是鎂光的3D NAND 閃存芯片,其參數(shù)如表1 所示。
表1 實(shí)驗(yàn)芯片參數(shù)
實(shí)驗(yàn)芯片為鎂光生產(chǎn)的懸浮柵型3D 閃存芯片,型號(hào)為MT29F081TEEHAF。如圖2 所示,此型號(hào)的芯片在垂直方向上堆疊了66 層,中間的62 層的存儲(chǔ)單元被設(shè)計(jì)為每單元存儲(chǔ)3 bit,上下分別有兩層被設(shè)計(jì)為每單元存儲(chǔ)低于3 bit 的層,一層為每單元存儲(chǔ)1 bit,另一層為每單元存儲(chǔ)2 bit。芯片的每個(gè)塊包含2 304 個(gè)頁(yè),每層有12個(gè)字線(xiàn)。此芯片使用了串堆疊技術(shù),分兩次對(duì)所有的層進(jìn)行堆疊,首先對(duì)下半部分的層進(jìn)行堆疊,然后在已經(jīng)完成堆疊的下半部分層之上進(jìn)行上半部分層的堆疊。
NAND 閃存的存儲(chǔ)單元以其存儲(chǔ)的電荷量表示存儲(chǔ)的數(shù)據(jù)的值,存儲(chǔ)單元存儲(chǔ)的電荷量可以表現(xiàn)為閾值電壓的大小。因此,可以通過(guò)測(cè)量存儲(chǔ)單元閾值電壓的大小從而判斷其存儲(chǔ)的數(shù)據(jù)值。每個(gè)存儲(chǔ)單元的理想狀態(tài)下的閾值電壓應(yīng)接近一個(gè)固定值,但存儲(chǔ)單元受到多種噪聲和干擾的影響,使存儲(chǔ)單元的閾值電壓發(fā)生不同程度的偏移,存儲(chǔ)單元的閾值電壓分布呈現(xiàn)一定的模式。
通過(guò)閃存芯片的參考電壓偏移功能,能夠得到存儲(chǔ)單元在不同參考電壓取值時(shí)的狀態(tài),判斷存儲(chǔ)單元的閾值電壓所在的區(qū)間[9?10]。如圖3 所示,閾值電壓在R1到R2區(qū)間內(nèi)的存儲(chǔ)單元的狀態(tài)為P1,閾值電壓在R2到R3區(qū)間內(nèi)的狀態(tài)為P2,其他狀態(tài)同理。以閾值電壓值在V1到V2區(qū)間內(nèi),狀態(tài)為P2的存儲(chǔ)單元A 為例,在參考電壓R2取值小于等于V1,且R3 取值大于等于V2時(shí),判決為狀態(tài)P2;在R2取值大于等于V2,且R1取值小于等于V1時(shí),判決為狀態(tài)P1。根據(jù)R2取值分別為V1和V2時(shí)判決狀態(tài)的差異,則能夠判斷存儲(chǔ)單元的閾值電壓取值在V1到V2的區(qū)間內(nèi)。為了獲取所有編程狀態(tài)的閾值電壓分布,首先選擇1 個(gè)塊寫(xiě)入隨機(jī)數(shù)據(jù);其次,不斷重復(fù)參考電壓偏移和數(shù)據(jù)讀取操作,以得到存儲(chǔ)單元在不同參考電壓偏移下的讀取數(shù)據(jù);最后,將讀取的數(shù)據(jù)進(jìn)行處理,得到每個(gè)存儲(chǔ)單元閾值電壓所在的區(qū)間。
圖3 通過(guò)參考電壓偏移得到存儲(chǔ)單元的閾值電壓所在區(qū)間
為了能夠快速得到芯片在經(jīng)過(guò)長(zhǎng)時(shí)間電荷泄漏后的性能情況,根據(jù)式(1)的阿倫尼烏斯公式計(jì)算與芯片常溫下的老化時(shí)間等效的高溫下的老化時(shí)間,實(shí)現(xiàn)通過(guò)對(duì)芯片進(jìn)行高溫處理從而加速芯片的老化速度[11]。
本實(shí)驗(yàn)中使用到的高溫等效老化時(shí)間如表2所示。
表2 高溫老化等效時(shí)間
因?yàn)閷?shí)驗(yàn)芯片的一個(gè)塊內(nèi)存在所有層的存儲(chǔ)單元,因此我們以塊為單位進(jìn)行測(cè)試。經(jīng)過(guò)測(cè)試我們發(fā)現(xiàn)實(shí)驗(yàn)芯片每層的12 個(gè)字線(xiàn)在誤碼率和閾值電壓分布上的特性基本一致,又因?yàn)閷?shí)驗(yàn)芯片一個(gè)塊包含的頁(yè)較多,為了加快測(cè)試速度,我們?cè)? 個(gè)塊每層的12 個(gè)字線(xiàn)中抽取了4 個(gè)字線(xiàn)進(jìn)行測(cè)試。為了得到不同噪聲下的閃存可靠性,我們隨機(jī)選取一個(gè)芯片內(nèi)的幾個(gè)塊,并磨損到不同的編程擦除循環(huán)次數(shù);然后對(duì)芯片的幾個(gè)測(cè)試塊的所有頁(yè)寫(xiě)入相同的隨機(jī)生成數(shù)據(jù);最后對(duì)芯片進(jìn)行加熱老化,并在老化到測(cè)試時(shí)間點(diǎn)時(shí)對(duì)每個(gè)塊的測(cè)試頁(yè)進(jìn)行閾值電壓掃描。
在獲取每個(gè)測(cè)試點(diǎn)的數(shù)據(jù)之后,需要對(duì)原始誤碼率和閾值電壓分布進(jìn)行計(jì)算。使用默認(rèn)參考電壓下讀取出的數(shù)據(jù)與隨機(jī)寫(xiě)入數(shù)據(jù)進(jìn)行對(duì)比,計(jì)算得到原始誤碼率。為了便于后續(xù)的分析,使用高斯分布對(duì)掃描得到的閾值電壓分布進(jìn)行擬合。使用內(nèi)德米德單純形法對(duì)掃描得到的分布和構(gòu)建的高斯分布的均方差進(jìn)行最小值優(yōu)化,并使用掃描閾值電壓分布的均值和方差作為初值輸入,得到擬合的高斯分布參數(shù),最后使用計(jì)算得到的高斯分布的參數(shù)構(gòu)建高斯分布作為測(cè)試點(diǎn)的閾值電壓分布[10,12]。
我們從原始誤碼率和閾值電壓分布2 個(gè)方面對(duì)3D NAND 閃存的特性受層間差異的影響進(jìn)行分析。通過(guò)對(duì)測(cè)試分布擬合出來(lái)的高斯分布的均值和方差對(duì)閾值電壓分布進(jìn)行分析,同時(shí)觀(guān)察到在實(shí)驗(yàn)測(cè)試的編程擦除循環(huán)次數(shù)和數(shù)據(jù)保存時(shí)間下,分布的方差變化較小,因此主要對(duì)分布的均值進(jìn)行分析。
如圖4 所示,層間差異將導(dǎo)致不同層的存儲(chǔ)單元的原始誤碼率出現(xiàn)較大的差異。實(shí)驗(yàn)芯片不同層的原始誤碼率有十分明顯的差異,并且在編程擦除循環(huán)次數(shù)增大或者數(shù)據(jù)保存時(shí)間變久之后,不同層的原始誤碼率仍然保持相似的變化規(guī)律。
圖4 不同噪聲下各層的原始誤碼率
從圖4 中觀(guān)察到以下4 個(gè)現(xiàn)象:1) 低頁(yè)、中頁(yè)、高頁(yè)的原始誤碼率隨層數(shù)的變化情況不同,并且串堆疊的高低2 個(gè)串的各層的原始誤碼率的變化也有區(qū)別。2)低頁(yè)、中頁(yè)、高頁(yè)的原始誤碼率在中間相鄰2 個(gè)層都存在非常大的差異。這是因?yàn)閷?shí)驗(yàn)芯片在生產(chǎn)過(guò)程中使用了串堆疊技術(shù),不同串交界處的兩層分別是2 個(gè)串的通道圓柱體半徑最小和最大的2 個(gè)部分,因此這兩層的存儲(chǔ)單元的特性會(huì)產(chǎn)生較大的差異。3)隨著編程擦除循環(huán)次數(shù)的增大,不同層之間的原始誤碼率的差異增大。因?yàn)閷娱g存在差異,不同層受到編程擦除磨損的影響不同,導(dǎo)致經(jīng)過(guò)磨損之后不同層的誤碼率的差異增大。4) 隨著數(shù)據(jù)保存時(shí)間的增大,不同層的誤碼率的差異會(huì)顯著增大,并且編程擦除循環(huán)次數(shù)越大,不同層的原始誤碼率差異越顯著。因?yàn)閷娱g差異導(dǎo)致不同層的存儲(chǔ)單元對(duì)電荷泄漏的屏蔽能力不同,不同層經(jīng)過(guò)一定時(shí)間的電荷泄漏之后的誤碼率也不同。受磨損更嚴(yán)重的層電荷保留能力也越差,誤碼率的增長(zhǎng)也比其他層更多。
圖5 為層間差異將導(dǎo)致不同層的各個(gè)編程狀態(tài)的閾值電壓分布的均值出現(xiàn)較大的差異,但仍然有一定的規(guī)律。串堆疊的高低2 個(gè)串的閾值電壓分布均值變化情況也不相同。
圖5 不同噪聲下各層的閾值電壓分布均值
式中:ms,l為l 層的s狀態(tài)分布的均值,μs為s狀態(tài)各層分布均值的均值,Stotal稱(chēng)為總層間差異。根據(jù)式(2)計(jì)算了各編程狀態(tài)的各層分布均值的方差,并將各狀態(tài)的方差求和記為總層間差異,作為衡量各層閾值電壓分布均值差異大小的指標(biāo)。
計(jì)算了各個(gè)噪聲下的總層間差異后,可以得到圖6。隨著數(shù)據(jù)保存時(shí)間的增大,層間差異將導(dǎo)致不同層的不同編程狀態(tài)的閾值電壓分布的均值的大小的差異更加明顯。層間差異使3D NAND 閃存的不同層的存儲(chǔ)單元的半徑大小出現(xiàn)差異,存儲(chǔ)單元半徑大小的不同會(huì)導(dǎo)致存儲(chǔ)單元的電荷屏蔽層的厚度存在差異,從而導(dǎo)致不同層的存儲(chǔ)單元對(duì)電荷的保留能力產(chǎn)生差別。因此不同層的存儲(chǔ)單元在經(jīng)過(guò)相同的數(shù)據(jù)保存時(shí)間后,其電荷泄漏的嚴(yán)重程度也不相同。數(shù)據(jù)保存時(shí)間越長(zhǎng),不同層的存儲(chǔ)單元因?yàn)殡姾尚孤懂a(chǎn)生的閾值電壓分布偏移情況差異越大。
圖6 各層的閾值電壓分布均值的方差之和
隨著編程擦除循環(huán)次數(shù)的增大,層間差異將導(dǎo)致不同層的不同編程狀態(tài)的閾值電壓分布的均值的差異增大。在一定的編程擦除磨損次數(shù)下,因磨損而產(chǎn)生的屏蔽層陷阱數(shù)量大致相同,屏蔽層的面積較小的存儲(chǔ)單元陷阱的密度更高,也更加容易產(chǎn)生電荷泄漏。在一定的擦除循環(huán)次數(shù)范圍內(nèi),擦除循環(huán)次數(shù)越大,不同層的閾值電壓分布均值的差異也越大。
3D NAND 閃存在堆疊過(guò)程中會(huì)出現(xiàn)垂直通道圓柱體的半徑不一致的情況,導(dǎo)致不同層的存儲(chǔ)單元存在不同程度的差異,使不同層的存儲(chǔ)單元在性能上出現(xiàn)一定的差別。實(shí)驗(yàn)分析得出以下結(jié)論:
1)串堆疊的使用將導(dǎo)致不同串的交界處的幾個(gè)層的原始誤碼率和各個(gè)編程狀態(tài)的閾值電壓分布均值產(chǎn)生較大的差異,并且不同串的相同高度的層的存儲(chǔ)單元性能也存在差異。
2)不同層的存儲(chǔ)單元受到相同的編程擦除磨損后,部分層的性能下降相比其他層更大,并且在一定的擦除循環(huán)次數(shù)范圍內(nèi),擦除循環(huán)次數(shù)越大,不同層性能差異越大。
3)層間差異導(dǎo)致不同層存儲(chǔ)單元對(duì)電荷的保留能力不同,受擦除循環(huán)影響更加嚴(yán)重的層電荷保留能力越差。
本實(shí)驗(yàn)對(duì)使用了串堆疊技術(shù)的3D 閃存芯片不僅進(jìn)行了各層的原始誤碼率測(cè)試,還對(duì)各層的閾值電壓分布進(jìn)行了測(cè)試。相比其他對(duì)3D 閃存層間差異的研究,我們對(duì)層間差異受噪聲的影響進(jìn)行了動(dòng)態(tài)分析。根據(jù)實(shí)驗(yàn)結(jié)果,當(dāng)3D 閃存的擦除循環(huán)次數(shù)達(dá)到一定的次數(shù)或者數(shù)據(jù)保存達(dá)到一定時(shí)間,不同層的差異較大,需要對(duì)不同層使用不同的處理方式。