基于相鄰數(shù)據(jù)的復(fù)合讀取的產(chǎn)生的制作方法
【專利說明】基于相鄰數(shù)據(jù)的復(fù)合讀取的產(chǎn)生
[0001]相關(guān)申請的交叉引用
[0002]本申請要求于2013年2月19日提交的發(fā)明名稱為“用于基于NAND的存儲器件的電容耦合的讀取側(cè)補償(READ-SIDE COMPENSAT1N OF CAPACTIVE COUPLING FORNAND-BASED STORAGE DEVICES) ”的第 61/766,614 號(代理人案卷號 LINKP132+)的美國臨時專利申請的優(yōu)先權(quán),該美國臨時專利申請出于所有目的通過引用合并于此。
【背景技術(shù)】
[0003]在單元的寫入(通過將電荷注入到單元的浮柵上而完成)將電荷加至一個或更多個鄰近單元的浮柵的NAND閃存中存在電容耦合的問題。隨著NAND閃存工藝的幾何結(jié)構(gòu)減小,NAND單元之間的空間減小,因此加劇了該效應(yīng)。能夠減弱浮柵單元中的電容耦合的技術(shù)將是所期望的。在某些情況下,這些新技術(shù)可以應(yīng)用于其他領(lǐng)域。
【附圖說明】
[0004]在以下詳細描述和附圖中公開了本發(fā)明的各種實施例。
[0005]圖1是說明產(chǎn)生復(fù)合讀取的過程的實施例的流程圖。
[0006]圖2是說明被配置為產(chǎn)生復(fù)合讀取的讀取處理器的實施例的示圖。
[0007]圖3A是說明硬輸出復(fù)合讀取發(fā)生器的實施例的示圖。
[0008]圖3B是說明軟輸出復(fù)合讀取發(fā)生器的實施例的示圖。
[0009]圖3C是示出對于給定單元的基于干擾源相鄰體(aggressor neighbor)的數(shù)量而被選擇性輸入的部分原始讀取的實施例的示圖。
[0010]圖4是說明與浮柵晶體管相關(guān)的電壓分布的實施例的示圖。
[0011]圖5是說明與兩步寫入過程相關(guān)的四個條件分布的實施例的示圖。
[0012]圖6是說明干擾源相鄰體對受害單元貢獻不同量的電容耦合的實施例的示圖。
[0013]圖7是示出在受害頁中浮柵單元的總耦合系數(shù)的實施例的示圖。
[0014]圖8是示出三維NAND單元的實施例的示圖。
[0015]圖9是說明與三維NAND單元的受害組相關(guān)的電壓分布的實施例的示圖。
[0016]圖10是說明與三維NAND相關(guān)的復(fù)合讀取發(fā)生器的實施例的示圖。
[0017]圖11是說明產(chǎn)生復(fù)合讀取的過程的實施例的流程圖。
[0018]圖12是說明執(zhí)行不同相鄰體不同程度地影響受害組中的單元的分類的過程的實施例的流程圖。
【具體實施方式】
[0019]可以以許多方式(包括如過程、設(shè)備、系統(tǒng)、物的組合、在計算機可讀存儲介質(zhì)上實施的計算機程序產(chǎn)品和/或處理器(諸如被配置為執(zhí)行存儲在處理器上和/或由耦接至處理器的存儲器提供的指令的處理器))實現(xiàn)本發(fā)明。在本說明書中,這些實施方式或本發(fā)明可采用的任何其他形式可以稱為技術(shù)。總體而言,在本發(fā)明的范圍內(nèi),可以改變公開過程的步驟的順序。除非另有說明,否則被描述成配置為執(zhí)行任務(wù)的組件(諸如處理器或存儲器)可以實施為一般組件(被臨時配置為在給定時間執(zhí)行該任務(wù))或?qū)S媒M件(被制造為執(zhí)行該任務(wù))。如這里所使用的,術(shù)語“處理器”是指被配置為處理數(shù)據(jù)(諸如計算機程序指令)的一個或更多個器件、電路和/或處理核。
[0020]以下連同說明本發(fā)明原理的附圖來提供本發(fā)明的一個或更多個實施例的詳細描述。雖然結(jié)合這樣的實施例描述本發(fā)明,但是本發(fā)明不限于任何實施例。本發(fā)明的范圍僅由權(quán)利要求限制,本發(fā)明包含許多替代、修改和等價物。在以下描述中闡述了許多具體細節(jié),以提供對本發(fā)明的全面理解。出于示例的目的來提供這些細節(jié),并且可以在不存在一些或全部這些具體細節(jié)的情況下根據(jù)權(quán)利要求來實踐本發(fā)明。出于清楚的目的,未詳細描述在與本發(fā)明相關(guān)的技術(shù)領(lǐng)域中已知的技術(shù)材料,從而沒有不必要地使本發(fā)明不清楚。
[0021]圖1是說明產(chǎn)生復(fù)合讀取的過程的實施例的流程圖。在一些實施例中,在錯誤恢復(fù)期間使用所示的過程,例如,在片段不能被成功地糾錯譯碼時(例如,在固態(tài)存儲器的N個讀取利用N個不同讀取閾值之后,其中,N個不同讀取閾值導致將被返回的N個不同組的硬讀取值)。
[0022]在100處,利用第一讀取閾值來讀取一個或更多個單元的受害組以獲得包括一個或更多個值的第一原始讀取。為了清楚地區(qū)分復(fù)合讀取和從固態(tài)儲存器讀回的初始的、未修改的信息,后者在本文中被稱為“原始讀取”。在各種實施例中,單元的受害組可以包括頁或片段。
[0023]在102處,利用第二讀取閾值來讀取單元的受害組以獲得包括一個或更多個值的第二原始讀取。在步驟100處獲得的第一原始讀取中的值的數(shù)量(即,長度)以及在步驟102處獲得的第二原始讀取中的值的數(shù)量與受害組中的單元的數(shù)量相等。由于在步驟100和步驟102處所用的兩個讀取閾值不同,因此第一原始讀取和第二原始讀取應(yīng)當不相同。可以使用任何合適的讀取閾值產(chǎn)生技術(shù)來提取或選擇第一讀取閾值和第二讀取閾值。
[0024]在104處,獲得與一個或更多個單元的相鄰組對應(yīng)的相鄰讀取,其中,該一個或更多個單元的相鄰組與單元的受害組有關(guān)。單元的相鄰組(對其來講,在104處獲得相鄰讀取)可能影響從單元的受害組讀回的一個或更多個值。在各種實施例中,在步驟104處使用各種技術(shù)來獲得相鄰讀取。在一個示例中,對固態(tài)儲存器中的單元的相鄰組觸發(fā)實時讀取。在另一示例中,單元的相鄰組由主機或應(yīng)用程序預(yù)先期望,并且讀取處理器成功地糾錯譯碼相鄰讀取(例如,一個或更多個糾錯碼表示沒有錯誤)。在一些這樣的實施例中,從存儲成功編碼的數(shù)據(jù)的緩沖器獲得相鄰讀取。
[0025]在一些實施例中,單元的一個以上的相鄰組能夠或可能影響單元的受害組,因此在步驟104處獲得多個相鄰讀取。例如,在步驟104處可以獲得與左相鄰體有關(guān)的一個讀取和與右相鄰體有關(guān)的一個讀取。或者,在另一示例中,在104處獲得與頂部相鄰體有關(guān)的一個讀取和與底部相鄰體有關(guān)的一個讀取。
[0026]在106處,產(chǎn)生復(fù)合讀取,包括通過至少部分地基于相鄰讀取從至少第一可能值和第二可能值中選擇。復(fù)合讀取是其中組件選自兩個或更多個可能性的讀取。在一些實施例中(例如,其中復(fù)合讀取包括硬值的實施例),可能值(例如,直接)來自第一原始讀取和第二原始讀取。例如,步驟106可以看作是多路復(fù)用器,其中,多路復(fù)用器的輸出是復(fù)合讀取,多路復(fù)用器的輸入是兩個或更多個原始讀取,多路復(fù)用器的選擇(一個或多個)是一個或更多個相鄰讀取。在一些實施例中(例如,其中復(fù)合讀取包括軟值的實施例),步驟106中的可能值包括從第一原始讀取和第二原始讀取(例如,選擇部分)產(chǎn)生的可能的LLR值。在一些實施例中,在步驟106處產(chǎn)生復(fù)合讀取包括利用三個或更多個原始讀取和/或利用兩個或更多個相鄰讀取。
[0027]下面的附圖示出了執(zhí)行圖1的流程的示例讀取處理器。
[0028]圖2是說明被配置為產(chǎn)生復(fù)合讀取的讀取處理器的實施例的示圖。為了更加清楚地描述本技術(shù),不必示出與復(fù)合讀取的產(chǎn)生和/或復(fù)合讀取的使用不直接相關(guān)的其他組件。例如,未示出相應(yīng)的寫入處理器,但是該省略并不意在進行限制。在一些實施例中,利用半導體器件(諸如現(xiàn)場可編程門陣列(FPGA)或?qū)S眉呻娐?ASIC))來實施讀取處理器200。在一些實施例中,固態(tài)存儲器250包括浮柵晶體管。在一些其他實施例中,固態(tài)存儲器250包括三維NAND。
[0029]為了清楚地描述復(fù)合讀取產(chǎn)生技術(shù),該圖將被描述成僅一個相鄰讀取和僅受害組的兩個原始讀取用于產(chǎn)生復(fù)合讀取。當然,并非總是如此,在一些實施例中,兩個或更多個相鄰讀取(例如,與可能影響單元的受害組的單元的兩個或更多個相鄰組相關(guān))和/或單元的受害組的三個或更多個原始讀取可以用于產(chǎn)生復(fù)合讀取。
[0030]在所示示例中,讀取處理器200始于非復(fù)合模式。期望讀取固態(tài)存儲器250中的單元的受害組。由控制器210指示讀取閾值發(fā)生器202來利用使能信號和模式信號(被設(shè)置為“非復(fù)合”)產(chǎn)生讀取閾值。在非復(fù)合模式下,由于未使用相鄰組信號(由控制器210輸出),因此讀取閾值發(fā)生器202忽略該信號。由于復(fù)合讀取的產(chǎn)生獨立于讀取閾值產(chǎn)生技術(shù),因此讀取閾值發(fā)生器202包括任何合適的讀取閾值產(chǎn)生技術(shù)。在非復(fù)合模式下,產(chǎn)生單個讀取閾值,且該讀取閾值用于讀取固態(tài)存儲器250中的單元的受害組。在該示例中,存儲器接口 201用于與固態(tài)存儲器250通信。
[0031]固態(tài)存儲器250返回硬讀取值,其中,硬讀取值的值取決于所用的讀取閾值。在一些實施例中,固態(tài)存儲器250包括被配置為每單元存儲一比特的單層單元(SLC)。在這樣的實施例中,每個硬讀取值是O或I。在一些實施例中,固態(tài)存儲器250包括被配置為每單元存儲兩比特的多層單元(MLC)。在一些實施例中,即使在一個單元包含兩比特信息時,也將該單元的讀取和寫入二者分離為兩個不同的邏輯頁(例如,X和y)。因此,利用每單元一比特寫入(讀取)頁X,利用每單元一比特寫入(讀取)頁y。因此,對控制器來說相對明顯的是,兩比特一直被物理地存儲在單個單元中。
[0032]在非復(fù)合模式下,軟讀取值發(fā)生器206將來自固態(tài)存儲器250的硬讀取值作為輸入,且忽略來自復(fù)合讀取發(fā)生器204的復(fù)合讀取。由于復(fù)合讀取的產(chǎn)生獨立于軟讀取值產(chǎn)生技術(shù),因此軟讀取值發(fā)生器206可以采用任何合適的技術(shù)。與硬讀取值(從固態(tài)存儲器250輸入)對應(yīng)的軟讀取值由軟讀取值發(fā)生器206輸出,且傳輸至糾錯譯碼器208。注意,軟讀取值發(fā)生器206是可選擇的(例如,如果糾錯譯碼器208是硬輸入譯碼器)。如果這樣的話,在非復(fù)合模式下,硬讀取值可以從存儲器接口 201直接傳輸至糾錯譯碼