TWI360126B - Nonvolatile memory with adaptive operations and me - Google Patents

Nonvolatile memory with adaptive operations and me Download PDF

Info

Publication number
TWI360126B
TWI360126B TW096134735A TW96134735A TWI360126B TW I360126 B TWI360126 B TW I360126B TW 096134735 A TW096134735 A TW 096134735A TW 96134735 A TW96134735 A TW 96134735A TW I360126 B TWI360126 B TW I360126B
Authority
TW
Taiwan
Prior art keywords
data
volatile memory
decoder
output
memory
Prior art date
Application number
TW096134735A
Other languages
English (en)
Other versions
TW200823910A (en
Inventor
Yigal Brandman
Kevin M Conley
Original Assignee
Sandisk Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/536,372 external-priority patent/US20080092015A1/en
Priority claimed from US11/536,347 external-priority patent/US7805663B2/en
Application filed by Sandisk Corp filed Critical Sandisk Corp
Publication of TW200823910A publication Critical patent/TW200823910A/zh
Application granted granted Critical
Publication of TWI360126B publication Critical patent/TWI360126B/zh

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50004Marginal testing, e.g. race, voltage or current testing of threshold voltage
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Error Detection And Correction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

1360126 九、發明說明: 【發明所屬之技術領域】 j 本發明係關於非揮發性記憶體系統與操作非揮發性記憶 體系統之方法》 【先前技術】 非揮發性記憶體系統係用於各種應用中。一些非揮發性 記憶體系統係嵌入於一較大之系統中,如個人電腦。其他 ^ 非揮發性6己憶體系統係可移除式地連接於一主機系统,且 可在不同主機系統間交換。此等可移式記憶體系統之範例 包含S己憶卡與USB快閃驅動器。電子電路卡(包括非揮發性 記憶卡)已根據數種熟知之標準在商業上具體實施。記憶 ' 卡係用於個人電腦、行動電話、個人數位助理(PDA)、數 ' 位相機、數位攝影機、可攜式聲訊播放器及其他用以儲存 大量資料之主機電子器件中。此等記憶卡通常包括一可再 程式化非揮發性半導體記憶胞陣列連同一控制器,其控制 • 及支援記憶胞陣列之操作並與記憶卡所連接之主機連繫。 數個相關型之記憶何於設計為接受該類型f己憶卡之主 機卡插槽中交換之。然而,許多電子記憶卡標準之發展已 創造出在各種程度上互不相容之不同類型的記憶卡。根據 一個標準所做成之記憶卡通常不可用於設計為以另一標準 之記憶卡操作的主機中。記憶卡標準包含pc卡、 C〇mpactFlashTM(CFTM卡)、8_她出^卡、mmcTM卡、 SD 卡μ miniSDT^、用戶識別模組(SIM)、M_ry ^ MS Duo卡以及 micr〇SD/TransFlashTM記憶體模組 124727.doc 1360126 標準。有許多可購自SanDisk公司 p ’、冏 Cruzer® 11下之 USB快閃驅動器產品。 .0 ^ , 仏動态通常比上述之記憶 卡大且在形狀上也不相同。 儲存在非揮發性記憶體系統中 枓在資料被讀取時可 忐包3錯誤位元。重組毀壞資料 „ 知方式包含錯誤校正 碼(ECC)之應用。簡易錯誤校正 .^ ^ ^ ^ $在貧枓被寫入至記憶體 系統時藉由儲存額外之同位位元 __ 求編碼為料,該等同位位 兀汉疋位元群組之同位為所需求 ^ 一 十〈邏輯值。若在儲存期間 貝枓係錯誤的,位兀群組之同位 ^ φ ^ ^ j能改變。在從記憶體系 統中瀆取資料時’位元群組 一 U位再次由ECC計算之。由 於貧料之毀壞,所計算之同位 況,且ECC可能㈣毀壞。 彳σ所需求之同位狀 功至少兩個功能:錯__誤校正。此等 能力通常以可被谓測為錯誤並隨後校正的位元 數量來測置。偵測能力可相 寸4穴於校正能力。血形的 ECC可偵測之錯誤位元數量 /、 吾 咨以 置间於其可校正之錯誤位元數 ':一資料位元與同位位元之集合有時稱為一字一早期 之耗例為(7,4)漢明碼,其具有 中Α七個伤_ 、 百偵而至多達母字(在此範例 ^ , 此刀以及在七個位元的字中 权正一個錯誤之能力。 甲 更複雜之ECC可在每字中校 ^ ^ ^ π、早個錯誤,但它佶 碹漶庙夕_ 更加複雜。—般的作法係以不正 == 接受地小相似度來復原資料。然而,隨著 曰、置增加’可靠之資料復原的機率亦快速地減少, I24727.doc 1360126 或在額外的硬體及/或效能之關聯成本變得過分地高。 在半導體記憶體器件(包含EEPR〇M系統)中資料可由 電晶體之臨界電虔來表示。不同的數位資㈣存值通常相 對應於不同的電壓範圍。若在讀取操作期間電壓位準因一 些原因從其較佳範圍移出,錯誤將發生。 偵測,且在一些情況中此等錯誤可被校正 錯誤可由ECC所 【發明内容】
在一非揮發性記憶體系統中,一鲚钟罝 ^ τ 现早凡收集有關解碼 器從非揮發性記憶體陣列中解碼資料的統計資訊’該解碼 器提供相似度值作為其輸出。依照統計資訊,改變記憶體 陣列之至少一個操作參數。 在一個範例中’被改變之參數係關聯於寫入資料至記憶 體陣列中。明確言之,用以程式化資料至記憶體陣列中的 若干連續電壓脈波之間之差可根據統計資訊而改變之。 在另一範例中,被改變之參數係關聯於從記憶體陣列中 讀取資料。明確言之,用以從非揮發性記憶體陣列中讀取 資料之分辨率可根據統計資訊而改變之。 【實施方式】 在許多非揮發性記憶體中,從記憶體陣列中所讀取之資 料可能具有錯誤。意即,被程式化至記憶體陣列之輸入資 料的個別位元,之後可能被讀取為不同的邏輯值。圖i顯 示在一指出記憶胞狀態之物理參數(臨界電壓,VT)與記憶 胞可能被程式化為的若干邏輯值之間的關係。在此範例 中’ 一記憶胞中僅儲存兩個狀態。因此,一記憶胞儲存一
124727.doc Q 1360126 個位元的資料。程式化為邏輯0狀態的記憶胞一般比邏輯 ι(未程式化的)狀態的記憶胞具有較高的臨界電壓。在一替 代方案t,邏輯1狀態為記憶胞之未程式化狀態。圖丨之縱 軸私出基於所期望臨界電壓分佈,在任何特定臨界電壓上 讀取記憶胞之相似度。第一相似度函數顯示其為程式化為 邏輯1之記憶胞,而第二相似度函數為程式化為邏輯〇之記 憶胞。然而,此等函數之間具有某種程度之重疊。區別電 壓VD係用以讀取此等記憶胞。具有低於ν〇之臨界電壓的 記憶胞被視為在狀態1,而具有高於VD之臨界電壓的記憶 胞被視為在狀態0。如圖i顯示,此可能不總是正確的。由 於函數間之重疊,具有一個非零之相似度使得程式化為邏 輯1狀態之記憶胞將被讀取為具有大於Vd之臨界電壓,且 亦將被讀取為在邏輯〇狀態。類似地,具有一個非零之相 似度使得程式化為邏輯〇狀態之記憶胞將被讀取.為具有邏 輯1狀態。 函數間之重疊因數個原因而發生,包括在記憶體陣列中 之物理缺陷及在記憶體陣列中後續程式化或讀取操作所致 程式化記憶胞之干擾。重疊亦可因為普遍缺乏將大量記憶 胞維持在一非常緊凑的臨界電壓範圍内之能力而發生。某 些程式化技術可允許臨界電壓之函數變窄(具有較小的標 準誤差)。然而,此程式化可能花費較多時間。在一些記 憶體系統中’ -記憶胞中儲存多於一個的位元。一般來 說’期望儘可能儲存越多個位元於—記憶胞中越佳。為有 效地使用可㈣界電壓範圍,鄰近狀態之函數可能因此大 124727.doc 工360126 量重疊。 非揮發性記憶體系統通常採用ECC方法來克服發生於讀 取自記憶體陣列之資料的錯誤。此等方法一般根據編碼系 統從擬儲存於記憶體陣列中的輸入資料計算一些額外的 CC位元。其匕ECC方案可以更複雜之方式對映輸入資料 至輸出資料。ECC位元一般與輸入資料一同儲存,但可分 別儲存。輸入資料與ECC位元梢後從非揮發性記憶體陣列 中起被讀取’而解碼器使用資料與ECC位元兩者來檢查 疋否有任何錯誤存在。在一些情況中,此等ECC位元亦可 用以識別錯誤的位元。錯誤位元之後藉由改變其狀態(從 "〇"改變為"1"或從"1”改變為"〇")而被校正。附加ECC位元 至資料位元上並非在將資料儲存於非揮發性記憶體前編碼 資料之唯一方法。例如,資料位元可根據一方案被編碼, 該方案提供下列變換:00變換為im,〇1變換為11〇〇,1〇 變換為0011 ’及11變換為0000。 圖2顯示一被儲存於記憶體系統200之輸入資料的範例。 輸入資料首先由一包含一編碼器2〇3之ECC單元2〇1所接 收。輸入資料可為被儲存於記憶體系統2〇〇之主機資料, 或可為由一記憶體控制器產生之資料。圖2之範例顯示四 個輸入資料位元1〇〇1。編碼器2〇3之後使用一編碼方案從 輪入資料位7L計算ECC位元(1111)。一編碼方案之一個範 例為產生所選擇資料位元群組之同位位元的ECC位元。 輪入資料位元與ECC位元兩者之後被傳送至一包含一調 變器207的調變/解調單元205。調變器207將ECC單元201所 124727.doc 1360126 傳送之數位資料轉換為寫入於記憶體陣列209中之形式。 在一個方案中,數位資料被變換為在複數個記憶胞中的複 數個臨界電壓值。因此,用以將數位資料轉換為一在記憶 胞中所儲存臨界電壓之各種電路可被視為形成一調變器。 在圖2之範例中,各記憶胞可容納一個位元之資料。因 此’各δ己憶胞可具有在兩個範圍中之一的一臨界電磨,如 圖1所顯示一個範圍表示邏輯"丨”狀態而另一個範圍表示邏 輯”〇”狀態。儲存邏輯”丨,,狀態之記憶胞具有一小於 Vd(<Vd)之臨界電壓,而儲存邏輯”〇”狀態之記憶胞具有一 大於vD(>vD)之臨界電壓。若干記憶胞可被程式化並驗證 為一高於VD之標稱臨界電壓,以至少在起初確保在若干程 式化為兩個邏輯狀態之記憶胞之間具有一些較佳之隔離。 資料可被儲存於記憶體陣列209中一段時間。在此期 間,可旎發生各種事件而使記憶胞之臨界電壓改變。明確 言之,涉及程式化與讀取之操作可能需要以一影響其他先 前已程式化之記憶胞的方式施加電壓至字線與位元線。此 等干擾尤其常見於縮小器件尺寸以使鄰接記憶胞之間的交 互作用變得顯著之情況中。電荷亦可能在—段長時間之後 喪失β此等無法保留資料之情形亦可造成資料在被讀取時 改變。由於此等改變’資料位元可能在被讀出時具有與原 本所程式化之資料位元不同之狀態。在圖2之範例中,一 個輸入資料位元211原本被寫人時具有—大於Vd(> Vd)之臨 界值,卻在被讀取時具有一小於Vd(<Vd)之臨界值。 記憶胞之臨界電壓由一在調變/解調單元2〇5中之解調器 124727.doc 丄卿126 213轉換為若干位元之資料。此與調變器所執行之程序相 反解調器213可包含感測放大器,其從記憶體陣列中 -記憶胞讀取m電流,並從讀取值中取得記憶胞之 狀〜、在圖2之範例中,一具有小於vd(<Vd)之臨界電壓的 • 記憶胞產生-解調輸出"1",而-具有大於Vd(>Vd)之臨界 冑壓的記憶胞產生-解調輸出”0"。此產生所顯示之輸出 序列11011111。由於被儲存於記憶體陣列2〇9中此序列 _ 之第二個位元20 8為錯誤的。 解調213之輸出被傳送至一ECC單元2〇1中之解碼器 215。解碼器215從資料位元與Ecc位元判斷是否有具有任 何錯S。若有少量錯誤存在於編碼之校正能力β,錯誤將 被校正。若有大量錯誤存在於編碼之债測能力内,其將被 · _但不會被校正1錯誤之數量超過編碼之们則能力, 錯誤可能不會被偵測&可能導致錯誤之校正。纟圖2之範 =中’帛一個位几之錯誤被偵測及校正。此從解碼器川 • 提供一與輸入序列相同之輸出(1〇。1)。由於解碼器215僅接 收表示輸人資料m與ECC位元之資料位元,且解碼器 215輸出一相對應於輸入資料位元的校正後序列之資料位 ’元(或若錯誤之數量過高則無法產生_輸出),記憶體系統 • 200之解碼被視為係硬式輸入硬式輸出之解碼。 記憶體系統200之一帛代記憶體系統顯示於圖3及圖4 中。圖3顯示與圖軸之函數’具有Vd=〇,且以低於% 之臨界電壓表示邏輯0,而以高於%之電壓表示邏輯丄。在 此不顯示一單一電壓Vd將臨界電壓劃分為兩個不同範圍, 124727.doc 1360126 而由實際電壓量指出臨界電壓。相對應於邏輯"之函數 係以高於〇伏特為中心’而相對應於邏輯"〇"之函數係以低 於0伏特為中心。 圖4顯示一記憶體系統421,其使用類似於記憶體系統 200所使用之資料儲存程序(使用相同輸入資料位元與ECC 位元)與不同之項取程序。明確言之,記憶體系統42 1非 僅判斷臨界電壓是否高於或低於一特定值,而係如圖3所 示讀取臨界電壓。將瞭解到實際臨界電壓並非必然被讀 取。記憶胞操作之其他方法可用以儲存及擷取資料(如電 流感測)。電壓感測僅係用做為一範例。一般來說,臨界 電壓係參照至一電晶體開啟時之閘極電壓。圖4顯示發生 中之一讀取,其比先前範例提供更多詳細資訊。此可被視 為一具有比圖2更高分辨率之讀取(及一比程式化所用者分 辨更多狀態之分辨率)。如在先前範例中,錯誤發生於所 讀取資料中。在此,相對應於第二及第三個位元之讀取值 係錯誤的。第二及第三個位元原為邏輯"〇"且原藉由程式 化一記憶胞以具有一小於VD之臨界電壓來儲存之,但該等 圮憶胞被讀取為具有高於VD(VD==0伏特)之臨界電壓005伏 特與0.10伏特。 由一連串之讀取操作從圖4之記憶體陣列423中所讀取之 原始電壓被傳送至一調變/解調單元427中之解調器425。 原始電壓具有一有限分辨率,其由類比轉換至數位的分辨 率所指定。在此,原始資料被轉換為相似度資料。明確言 之,各記憶胞讀取值被轉換為一相似度而使相對應位元為 124727.doc -13- 1360126 一或零。來自記憶體陣列的一連串讀取值(0 75、0.05、 0·10、0·15、1·25、1.0、3.0與〇.5伏特)不僅可指出記憶胞 之狀態’還可用以對於該狀態提供某程度之確定性。此可 被表示為一相似度而以一特定位元來程式化一記憶胞。因 此’接近0伏特之讀取值可產生低相似度值,而較遠離於〇 伏特之讀取值產生較高相似度值。所示之相似度值為對數 相似度比率(於以下詳細解釋)。此提供負數至邏輯〇狀態之 έ己憶胞’而提供正數至邏輯1狀態之記憶胞,其中數字的 大小指出狀態被正確地識別之相似度。第二及第三個相似 度值(〇·1、0.2)指出邏輯"1"。第二及第三個值指出相當低 的相似度。 相似度值被傳送至ECC單元431中之解碼器429(在一些 情況中,從原始值中獲得相似度值可視為在解碼器中被執 行)。ECC單元431亦包含編碼器432。解碼器429對相似度 值執行解碼操作。此種解碼器可視為一軟式輸入解碼器。 一般來說,軟式輸入係參照至一輸入,其包含一些有關將 被解碼資料之品質資訊。被提供為軟式輸入之額外資訊一 般允許解碼器獲得較佳之結果。解碼器可使用軟式輸入來 執行解碼計算以提供所計算相似度值做為輸出。此被視為 一軟式輸出,而此種解碼器被視為一軟式輸入軟式輸出 (SISO)解碼器。此輸出之後可再次被用做為對sis〇解碼器 之輸入,以反覆解碼並改善結果。SIS0解碼器可形成一較 大解碼器之部份,該較大解碼器提供一 元。—器-般提供良好效能,而在一=另; 124727.doc -14· 禮Γ㈣人硬式輸出解碼所可能提供者更佳之效能。明 =:,料相同數量之額外負擔(ECC位元之數量), SISOM碼:可提供更大之錯誤校正能力。為有效地使用 碼器’可具體實施-適合之編碼/解碼方案且適應 、調,Μ在無過度的複雜性亦不需要過度的時間來從記 情況下’有效地獲得—軟式輸入。 一個,、體實施例巾’ SISQ解碼器之軟式輸人係'藉由以
一分辨率讀取非揮純記憶时财之資料而提供,該分 辨率比其用以程式化記憶體時分辨更大量之狀因此, 可藉由程式化一記憶胞為兩個臨界電壓範圍中之一個來寫 广資料’且其後藉由分辨三個或更多個臨界電壓範圍而被 邊取。用於讀取之臨界電壓範圍數量通常將為用於程式化 之臨界電壓範圍數量的好幾倍(例如兩倍)。然而並非總是 如此。
CC單元可被形成為一專屬電路,或此功能可由控制器 中之細體執行。控制器通常為一特殊用途積體電路 (ASIC),其具有為特定功能(如ECC)所設計之電路,亦具 有韌體用來管理控制器操作。因此,編碼器/解碼器可由 記憶體控制器中之硬體與韌體之組合所形成。編碼器/解 碼益(ECC單元)可替代地被置於記憶體晶片上。調變/解調 單兀可位於一記憶體晶片、一控制器晶片、—另外之晶片 或些組合上。一般來說,調變/解調單元將包含在記憶 體晶片上之至少一些組件(如連接至記憶體陣列之週邊電 路)。當圖4指出被讀取至一高分辨率之臨界電壓(一類比讀 124727.doc •15- 1360126 取)’所選擇之分辨率的程度可取決於一些因素,包含所 使用非揮發性記憶體之類型。 圖5顯示ECC單元431更加詳細之圖示,尤其是解碼器 429。解碼器429包含一 SISO解碼器532以及一軟硬轉換器 534。SISO解碼H -般接受原始相似度資料,並對原始相 似度資料執行ECC計算以提供所計算相似度資料。所^算 相似度資料可被視為-軟輸出。在許多情況中,此種軟輸 • 出之後被提供為對於SIS〇解碼器之輸入,而執行第二個解 碼反覆運算。SISO解碼器可執行連續的反覆運算直到達到 至少一個先決條件。例如,一先決條件可能為所有位元具 # 一大於某最小值之相似度。-先決條件亦可為一相似度 值之聚t ’如-平均相似度值…先決條件可能為從一2 " &覆運算到下-個反覆運算之結果的收斂(意即,持續反 覆運算直到從額外反覆運算中改善極少為止卜一先決條 件可能為完成-先決數量之反覆運算。亦可使用此等條件 • 之組合。解碼係使用一資料中所編碼之型樣來執行,該資 料係由編碼器432在資料被儲存前對其執行編碼之結果。 編碼器432與解碼器429兩者皆被視為Ecc單元a〗之部 份。 有效的解碼取決於具有一適合之編碼/解碼方案。各種 方案已知為以一種適合在SIS〇解碼器(如sis〇解碼器Η” 中後續解碼之方式來編碼資料。編碼/解碼方案包含但不 限於渴輪碼、乘積碼、BCH碼、里德所羅門碼⑽碼)、迴 旋碼(見美國專利申請案第11/383,4〇1號及第i咖,4〇5 124727.doc -16· 1360126 號)、漢明碼以及低密度同位檢查碼(LDPC碼)。申請於或 與本申請案約相同曰期之美國專利申請案第11/536,286號 及第11/536,327號名稱為"用於非揮發性記憶體之軟輸入軟 輸出解碼器(Soft-input soft-output decoder for nonvolatile memory)"及"用於非揮發性記憶體之軟輸入軟輸出解碼之 方法(Methods of soft-input soft-output decoding for nonvolatile memory)”中,提供LDPC碼與渦輪碼以及其如 φ 何可與SISO解碼使用之更詳細說明。 圖0顯示根據本發明之一具體實施例的一記憶體系統 651,該具體實施例包含一具有一連接於SIS〇解碼器7之 統計單元655的解碼器653。統計單元655從SISO解碼器657 接收有關由SISO解碼器657所實行之解碼操作的資料。明 - 確言之,統計單元655可收集由SISO解碼器657所實行之操 作的統計資料,以獲得8180解碼器657從解調器659所接收 資料之品質的一或數個統計指標。資料品質之一個測量為 • 資料的信號雜訊比(SNR)。SNR或其他品質測量可在一段 時間後對於SISO解碼器所解碼之所有資料獲得之。另一選 擇為,另外的品質指標可對於記憶體陣列之不同部份計算 之。品質指標可透過大量資料獲得,以使用統計上充足的 總體。S質指標可從在一反覆解碼方t中達到一先決條件 所需反覆運算之平均數量而獲得。品質指標可從校正所需 之速率、校正之平均漢明距離、所執行之校正類型或一些 其他有關SISO解碼器所解碼之統計數值而獲得。 -般來說,特;t解碼器能夠解碼具有從—範圍之SNR到 124727.doc •17· 1360126 某最大值之SNR的資料。在一些記憶體系統中係可能以影 -響軟輸入之SNR的方式來改變操作參數。然而,提供較佳 (較高)之SNR可能需要更多複雜度或更多時間或複雜度與 時間兩者。因此,一般會在獲得一良好之SNR與在操作記 憶體系統上花費額外時間與複雜度之間做衡量。若解碼器 能夠可靠地在高於某最小值之Snr的情況下校正資料,其 可能有效地以提供接近最小值之SNR之方式來操作記憶體 系統。一特定SNR(或SNR範圍)可被選為一解碼器輸入之 目標SNR(目標範圍)。記憶體中資料的SNR通常隨著使用 而下降。因此,記憶體可能在起初提供具有高SNR之資料 而在之後提供具有低SNR之資料。在一個範例中,操作參 數係調適於將SNR維持在一目標值或在一目標範圍内。當 吕己憶體系統係新的且傾向具有一高SNR時,操作參數可被 没疋在適當位準以維持一目標SNR或SNR範圍。之後,在 一些使用過後,記憶艚傾而蚣山曰士 u .
124727.doc ,程式化與讀取操作係根據來自統計單 變在其他$巳例中,其他操作參數可被改 -18- 1360126 變。 可被改變之記憶體陣列操作參數的一個範例為用以程式 化記憶胞之電壓脈波的脈波高度。在一個程式化方案中, 記憶胞之程式化係藉由施加一連串增加之電壓脈波至記憶 胞控制閘’直到記憶胞被驗證為已達到某目標臨界電麼為 止。圖7顯示-用以程式化記憶胞之一連串程式化電塵脈 波之範例。在各電壓脈波之間執行一驗證操作,以驗證記 憶胞是否已達到一先決臨界電壓。連續的程式化電壓脈波 以一增加量ΔΥ增加。此增加量之大小可影響從記憶體陣 列中所讀取資料之品質。一般來說,Δν若小,個別邏輯 狀態之臨界電壓分佈則將為狹窄(小標準誤差),以致減少 資料的錯誤讀取。然而,Δν若小,則會因此增加程式化 記憶胞至一特定臨界電壓所需之脈波數量以及時間。在一 個具體實施例中,增加量之大小係依照來自統計單元 之品質指標而選擇。明確言之’若統計單元指出係高 於目標,則AV之大小可被增加,從而減少從記憶體陣列 所讀取資料之SNR。若統計單元指出SNR係低於目標,則 △v可被減少,從而減少從記憶體陣列所讀取資料之snr。 △V之大小起初可能被設定為一相對大的先決值,因為 s己憶體系統之SNR起初傾向為高的。當記憶體被使用,從 陣列讀取之資料的SNR傾向下降。此下降被統計單元655 所偵測,而減少Δν之大小以為回應。因此,統計單元655 提供一回饋彳§號至一執行記憶體陣列663上操作之調變器 661中的程式化電路,而程式化電路依照回饋信號改變記 124727.doc •19- 1360126 憶體陣列663之至少-個操作參數。其他關聯於程式化之 操作參數可依照來自統計單元665之信號被修改。 可被改變之操作參數的另一範例為讀取操作之分辨率。 圖8顯不其中記憶胞被程式化為四個狀態之一個的範例。 彡個連續的讀取被執行讀取分辨四個相對應於四個 程式化狀態之臨界電壓範圍,第二讀取進一步將第一讀取 之臨界電壓範圍分辨成三個範圍,而第三讀取進一步分辨 • &等範圍。此等讀取分別增加了從記憶體系統輸出資料所 需之時間。更乡的讀取一般提供一更高之分辨率,其給予 sIS〇解碼器更多資訊並允許SIS〇解碼器更佳地校正資 料。然而,高分辨率讀取耗費更多的時間。例如,用以辨 別兩個狀態之單一讀取可能需要25微秒來完成,而用以辨 . 別四個狀態之三個讀取可能需要75微秒《在—個範例中, 已執行之讀取數量係由來自統計單元655之信號所決定。 因此若統a十單元655指出一高SNR,則可能減少讀取之 § 數量從而節省時間。若統計單元655指出一低snr,則可 此增加璜取之數量,從而增加SIS〇解碼器可用之資訊並因 此補償了低随。在其他記憶體中,係使用其他讀取系統 而不顯示如圖8之讀取型樣。一般來說,在此等記憶體 中較南之77辨率需要較多時間或較多的複雜度。因此, 降低分辨率一般將允許更快速、或更簡易、或更快速又更 簡易之讀取。 在個範例中,讀取分辨率起初被設定至—先決位準。 田統》k訊被統計單元所收集時,此數字可被改變。例 124727.doc 1360126 如’從記憶體陣列所輸出資料的SNR可能在記憶體被使用 時下降,而為了補償可增加讀取分辨率。因此,統計單元 知供一回饋彳§號,且依照回饋信號改變記憶體陣列之操作 參數。亦可依照來自統計單元655之信號改變記憶體陣列 663其他關聯於讀取或寫入之操作參數。 圖8之讀取方案可與一 NAND型快閃記憶體一起使用。此 為使用連接成串列之記憶胞串的記憶體之一種類型。各種
NAND型快閃記憶體設計與操作NAND型快閃記憶體之方 法說月於美國專利第7,888621號、第7〇92,29〇號及第 6,983,428號中。 在一些情況中,ECC單元可使用多於一個編碼器及多力 一個解碼器以提供串接式編碼與解碼。統計單元可在此酉 置中被提供為從一或多個解碼器收集統計資訊。另一選奉 為,另外的統計單元可被提供至不同之解碼器,其中各舍 计單提供一或多個另外之輸出。
來自統汁單兀之信號可被提供至影響記憶體陣列之操七 參?的記憶體系統中之任何電路。此包含位於調變器、每 D己隐體陣列、ECC單元或任何在記憶體控制器申之 電路内之電路。多於_個信號可由統計單 ::::::例:,一_及讀取分辨Si 於相同a/ ·早Γ所提供之^號被改變,或其可依照可基 、"5不同統計資訊之另外信號被改變。 清況中,統計單元被形成為控制器ASIC之部 刀。、,先計單以由專屬電路、控制器中之㈣或—專屬電 124727.doc -21- 路與勃體之組合所形成。另-選擇為,統計單元可與控制 器分別而形成於專屬晶片或其他之上。 以上各種範例係參照快閃記憶體。然而,各種其他非揮 發性記憶ϋ目前正被使用+,且纟此所述之技術可應用於 任何適合之非揮發性記龍系統巾憶體系統可包 含但不限於基於鐵電儲存(鐵電隨機存取記憶體(fram或 FeRAM))之記憶體系統、基於磁阻储存(磁阻隨機存取記憶 體(MRAM))之記憶體系統以及基於相變之記憶體(相變隨 機存取§己憶體(PRAM)或雙向通用記憶體(〇um))。 在此所參照之所有專利案、專利申請案、文章、書籍、 說明書、其他出版品、文件及物件在此以引用之方式全面 性地全部併入本文中。若任何所引用之出版品、文件或物 件及本文件之文子之間對於用語之定義或使用有任何程度 之不一致或衝突,應以本發明中用語之定義或使用為準。 雖然本發明之各種態樣係以有關某些較佳具體實施例說 明’應了解本發明有權在隨附申請專利範圍之完整範圍内 受到保護。 【圖式簡單說明】 圖1顯示在一非揮發性記憶體中程式化為邏輯丨狀態與邏 輯〇狀態的記憶胞臨界電壓之相似度函數,其包含一用以 區別邏輯1與邏輯0狀態之電壓VD。 圖2顯示一包含一記憶體陣列、調變器/解調器電路與編 碼器/解碼器電路之記憶體系統的組件。 圖3顯示程式化為邏輯1狀態與邏輯〇狀態的記憶胞讀取 124727.doc -22- ^60126 臨界電壓之相似度函數,其顯示臨界電壓值。 圖4顯示一包含一記憶體陣列、調變器/解調器電路與編 碼器/解碼器電路之記憶體系統的組件, 八T —解調器提 供相似度值至一解碼器。 圖5顯示一具有—軟式輸入軟式輸出(SISO)解碼考夕 ECC單元。 疋 圖6顯示-記憶體系統,其包含_咖解碼器以
供一信號至一調變器與一解調器之統計單元。 圖7顯示用以程式化一非撢發性 * ^Λ ^ ^ 平么注记隐體中記憶胞之一連 串增加電壓之脈波,脈波間 <间的電壓差根據來自統計單元 之k號被修改。 圖8顯示程式化為四個邏輯 之相彻庠八使 ^ B w°己隐胞讀取臨界電壓 之相似度分佈,並顯示在連 ^ ^ ^ 續讀取知作中所讀取記憶胞之 L界電壓,讀取操作之數 故。 彳據來自統計單位之信號被修 【主要元件符號說明】 200 記憶體系統 201 ECC單元 203 編碼器 205 調變/解調單;? 207 調變器 209 記憶體陣列 211 輸入資料位元 213 解調器 124727.doc •23 - 1360126 215 421 423 425 427 429 431 432 532 534 651 ' 653 • 655 657 659 • 661 663 解碼器 記憶體系統 記憶體陣列 解調器 調變/解調單元 解碼器 ECC單元 編碼 SISO解碼器 軟硬轉換器 記憶體系統 解碼器 統計單元 SISO解碼器 解調器 調變器 記憶體陣列 124727.doc -24·

Claims (1)

  1. 第096134735號專利申諳牵 、申請專概® ·· ㈣4她嶋本⑽年 種官理一非揮發性記憶體列之方法,其包 從一非揮發性記憶體陣列中讀取所儲存資料; 使用—解碼器解碼該資料,該解碼器之—輸出包含相 對應於所儲存資料位元之若干相似度值,該輸出係用以 推導出所校正資料; 收集有闕該解碼器所解碼該所儲存資料之統 以及 丨貝讯, 依照該統計資訊,改變該非揮發性記憶體陣列之至w、 —個操作參數。 乂 2· 月求項1之方法,其中該至少一個參數包含—分辨 率^其用於該非揮發性記憶體陣列中之一讀取操作。 々。月求項1之方法’其中該至少一個參數包含一在若干 連、只電壓脈波之間的電壓差,該等電壓脈波係用於該非 4 f魏記憶體陣列中之—程式化操作。 種^理—非揮發性記憶體陣列中資料之方法,其包 L玄非揮發性記憶體陣列中讀取所儲存資料; 從"玄所储存資料推導出原始機率資訊·’ 二原始機率資訊提供至_解碼器,該解碼器從該原 °機率資。il及從該所儲存資料+之—所解碼型樣來計算 輸出機率資訊; 1"算。亥所儲存資料之品質資訊,該品質資訊反映該解 碼器所執行之校正數量;以及 124727-1000830.doc 1360126 依照該品曾咨μ # μ斗a加^ 4 — 貢讯改變該非揮發性記憶體陣列之至少一 個操作參數。 5.如請求項4之文·、丄 石法,其中該品質資訊係與其他所儲存資 料之品質資訊—起儲存及統計分析,依照該統計分析改 變該至少一個操作參數。 6· 如請求項4之士、+ 万法,其中該輸出機率資訊被提供做為該 解碼器之一_! ,,而使該解碼器執行至少兩個反覆的叶 算該所儲存資料之輸出機率資訊。 D 7.如請求項 # 方法,其中執行重複之反覆計算輸出機率 貝机直到符合—先決條件為止。 丰 8 · 如請求項7 $ *、+ , 條件之’ 品f資訊係從在符合該先決 ^該數個所執行反覆計算中所導出。 :::::之方法’其中該品質資訊係從在符合該先決 條件之則從該數個所執行校正令所導出。 、 10.如請求項7之方法,苴中 ^ 行的校正之類型所導係從該解碼器所執 η.ι請求項4之方法,其中該至少一個操 列之電壓脈波,該等雷廢晰、ώ〆 致〜響一序 列之一記憶胞。 。己隐體陣 12.如清求項4之方法,里由枯= 辨率,其用& 乂 一個操作參數包含一八 其用以知取儲存於該記憶體 乃 資料。 〜 5己憶胞中之 13. —種非揮發性記憶體系统,其包括: 一館存複數個資料位元之非揮發性記憶體陣列,· I24727-1000830.doc 貝取屯路#。於该非揮發性記憶體陣列及用於自 該非揮發性記憶體陣列讀取所儲存資料; 解寻器’、自該非揮發性記憶體陣列解碼該所儲存資 料,及輸出指出對應於若干所儲存資料位元之相似度的若 干^似度值。,該輸出係用以推導出所校正資料;以及 統冲單TL纟收集有關該解碼器所執行之該儲存資 料之解碼的資訊’並基於該所故集資訊提供—輸出該 輸出被提供至改變該非揮發性記憶體陣列之至少一操作 參數的至少一個電路以回應於該統計資訊。 14.如請求項13之非揮發性記憶體系統,該輸出被提供至該 讀取電路,該讀取電路修改讀取分辨率以回應於該輸 出。 15.如請求項14之非揮發性記憶㈣統,進—步包括一連接 於該非揮發性記憶體陣列之程式化電路,該輸出被提供 至該程式化電路,該程式化電路修改—程式化電壓以回 應於該輸出。 16·如請求項15之非揮發性記憶體系統,其中修改該程式化 電Μ以降低用以程式化該非揮發性記憶體'的若干連續電 壓脈波之間之電壓差。 17.如請求項13之非揮發性記憶體系統,進一步包括: 根據一編碼方案編碼資料之編竭器; 其中該解碼器藉由執行兩個或更多個解碼反覆運算, 從該非揮發性記憶體陣列中解碼該所編碼資料,一特定 反覆運算之輸出資料被提供做為一後續反覆運算之輸入 124727-1000830.doc 1360126 <年七月>日轸正替換頁 資料;以及 其中該統計單元從該解碼中推導出該所編碼資料之資 料。。質的至少-個測量,並提供—輸出至控制該記憶體 陣列之操作的該至少一個電路。 18. 如請求項17之非揮發性記憶體系統,進一步包括一寫入 電路’其將該所編媽資料寫人至該非揮發性記憶體陣 列,該輸出被提供至該寫入電路。 19. 如請求項17之非揮發性記憶體系統 至該讀取電路。 其中該輪出被提供 124727-1000830.doc
TW096134735A 2006-09-28 2007-09-17 Nonvolatile memory with adaptive operations and me TWI360126B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/536,372 US20080092015A1 (en) 2006-09-28 2006-09-28 Nonvolatile memory with adaptive operation
US11/536,347 US7805663B2 (en) 2006-09-28 2006-09-28 Methods of adapting operation of nonvolatile memory

Publications (2)

Publication Number Publication Date
TW200823910A TW200823910A (en) 2008-06-01
TWI360126B true TWI360126B (en) 2012-03-11

Family

ID=39269078

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096134735A TWI360126B (en) 2006-09-28 2007-09-17 Nonvolatile memory with adaptive operations and me

Country Status (5)

Country Link
EP (1) EP2067144A2 (zh)
JP (1) JP5297380B2 (zh)
KR (1) KR101144096B1 (zh)
TW (1) TWI360126B (zh)
WO (1) WO2008042598A2 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7818653B2 (en) 2006-09-28 2010-10-19 Sandisk Corporation Methods of soft-input soft-output decoding for nonvolatile memory
US7904783B2 (en) 2006-09-28 2011-03-08 Sandisk Corporation Soft-input soft-output decoder for nonvolatile memory
US7805663B2 (en) 2006-09-28 2010-09-28 Sandisk Corporation Methods of adapting operation of nonvolatile memory
WO2010002945A1 (en) 2008-07-01 2010-01-07 Lsi Corporation Methods and apparatus for intercell interference mitigation using modulation coding
US8458536B2 (en) 2008-07-17 2013-06-04 Marvell World Trade Ltd. Data recovery in solid state memory devices
US8406048B2 (en) * 2008-08-08 2013-03-26 Marvell World Trade Ltd. Accessing memory using fractional reference voltages
US8675417B2 (en) * 2008-09-28 2014-03-18 Ramot At Tel Aviv University Ltd. Method and system for adaptive coding in flash memories
US8671327B2 (en) 2008-09-28 2014-03-11 Sandisk Technologies Inc. Method and system for adaptive coding in flash memories
US8107306B2 (en) 2009-03-27 2012-01-31 Analog Devices, Inc. Storage devices with soft processing
JP2011203833A (ja) * 2010-03-24 2011-10-13 Toshiba Corp メモリシステム
US8429500B2 (en) 2010-03-31 2013-04-23 Lsi Corporation Methods and apparatus for computing a probability value of a received value in communication or storage systems
US8775913B2 (en) 2010-03-31 2014-07-08 Lsi Corporation Methods and apparatus for computing soft data or log likelihood ratios for received values in communication or storage systems
US8504885B2 (en) 2010-03-31 2013-08-06 Lsi Corporation Methods and apparatus for approximating a probability density function or distribution for a received value in communication or storage systems
US8386895B2 (en) 2010-05-19 2013-02-26 Micron Technology, Inc. Enhanced multilevel memory
US8499227B2 (en) * 2010-09-23 2013-07-30 Micron Technology, Inc. Memory quality monitor based compensation method and apparatus
WO2012042444A1 (en) 2010-09-29 2012-04-05 International Business Machines Corporation Decoding in solid state memory devices
KR101792868B1 (ko) * 2010-11-25 2017-11-02 삼성전자주식회사 플래시 메모리 장치 및 그것의 읽기 방법
US9030870B2 (en) * 2011-08-26 2015-05-12 Micron Technology, Inc. Threshold voltage compensation in a multilevel memory
EP2917837B1 (en) * 2012-11-09 2019-01-02 Coherent Logix Incorporated Real time analysis and control for a multiprocessor system
US10467090B2 (en) 2016-03-02 2019-11-05 Toshiba Memory Corporation Memory controller and decoding method
JP7066584B2 (ja) * 2018-09-18 2022-05-13 キオクシア株式会社 メモリシステム
KR20210085284A (ko) 2019-12-30 2021-07-08 삼성전자주식회사 Pim 메모리 디바이스, pim 메모리 디바이스를 포함하는 컴퓨팅 시스템 및 pim 메모리 디바이스의 동작 방법
KR102611823B1 (ko) * 2023-03-17 2023-12-08 주식회사 프라터 Ldpc 디코더의 tdmp 알고리즘에 의한 패리티 검사 행렬의 디코딩 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279133B1 (en) * 1997-12-31 2001-08-21 Kawasaki Steel Corporation Method and apparatus for significantly improving the reliability of multilevel memory architecture
JP2001266499A (ja) * 2000-03-23 2001-09-28 Sony Corp データ記録装置及びデータ記録方法、データ再生装置及びデータ再生方法、並びに、データ記録再生装置及びデータ記録再生方法
JP2001266498A (ja) * 2000-03-23 2001-09-28 Sony Corp データ再生装置及びデータ再生方法、並びに、データ記録再生装置及びデータ記録再生方法
JP2003203435A (ja) * 2002-01-09 2003-07-18 Fujitsu Ltd データ再生装置
US6751766B2 (en) * 2002-05-20 2004-06-15 Sandisk Corporation Increasing the effectiveness of error correction codes and operating multi-level memory systems by using information about the quality of the stored data
JP2005078721A (ja) * 2003-09-01 2005-03-24 Nippon Telegr & Teleph Corp <Ntt> 誤り訂正方法およびメモリ回路
JP4444755B2 (ja) * 2004-08-17 2010-03-31 Kddi株式会社 連接符号システムおよび連接符号処理方法、復号装置
JP5177991B2 (ja) * 2006-10-25 2013-04-10 株式会社東芝 不揮発性半導体記憶装置

Also Published As

Publication number Publication date
JP2010505200A (ja) 2010-02-18
TW200823910A (en) 2008-06-01
JP5297380B2 (ja) 2013-09-25
KR20090096412A (ko) 2009-09-10
KR101144096B1 (ko) 2012-07-10
EP2067144A2 (en) 2009-06-10
WO2008042598A3 (en) 2008-06-19
WO2008042598A2 (en) 2008-04-10

Similar Documents

Publication Publication Date Title
TWI360126B (en) Nonvolatile memory with adaptive operations and me
US7805663B2 (en) Methods of adapting operation of nonvolatile memory
TWI353521B (en) Soft-input soft-output decoder for nonvolatile mem
US9043678B2 (en) Detecting effect of corrupting event on preloaded data in non-volatile memory
TWI390533B (zh) 管理一快閃記憶體陣列之方法,從一快閃記憶體陣列讀取資料之方法,及快閃記憶體系統
US20080092015A1 (en) Nonvolatile memory with adaptive operation
US8112689B2 (en) ECC controller for use in flash memory device and memory system including the same
US9195539B2 (en) Method for reading data from block of flash memory and associated memory device
CN107408069B (zh) 用于检测和缓解闪速存储器中的位线开路的装置和方法
US8862967B2 (en) Statistical distribution based variable-bit error correction coding
US10395754B2 (en) Method for decoding bits in a solid state drive, and related solid state drive
US9990247B2 (en) Write mapping to mitigate hard errors via soft-decision decoding
US20140365847A1 (en) Systems and methods for error correction and decoding on multi-level physical media
US10803971B2 (en) Device for supporting error correction code and test method thereof
CN107368386B (zh) 用于处理从非易失性存储器阵列检索的状态置信度数据的方法和设备
US20080082897A1 (en) Soft-Input Soft-Output Decoder for Nonvolatile Memory
KR20160013843A (ko) 판독 전압들의 업데이트
TW201133500A (en) Semiconductor memory system having ECC circuit and method of controlling thereof
US8316279B2 (en) Method of estimating and correcting errors in memory cells
KR20150008393A (ko) 멀티-레벨 셀 메모리로부터의 데이터 판독
US20200301602A1 (en) Nonvolatile memory
EP2587377A2 (en) Memory system and method for recording/reproducing data thereof
TWI385512B (zh) 在非揮發性半導體記憶體陣列中儲存資料及解碼儲存其中的資料之方法、非揮發性半導體及快閃記憶體系統、及管理快閃記憶體中之資料的方法
CN106847342A (zh) 非易失性存储器装置及其空页检测方法
US20180091171A1 (en) Memory controller, semiconductor memory system and operating method thereof

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees