TWI505273B - 類比記憶體單元的稀疏程式化 - Google Patents
類比記憶體單元的稀疏程式化 Download PDFInfo
- Publication number
- TWI505273B TWI505273B TW101117442A TW101117442A TWI505273B TW I505273 B TWI505273 B TW I505273B TW 101117442 A TW101117442 A TW 101117442A TW 101117442 A TW101117442 A TW 101117442A TW I505273 B TWI505273 B TW I505273B
- Authority
- TW
- Taiwan
- Prior art keywords
- group
- memory
- memory cells
- data
- storing
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C27/00—Electric analogue stores, e.g. for storing instantaneous values
- G11C27/005—Electric analogue stores, e.g. for storing instantaneous values with non-volatile charge storage, e.g. on floating gate or MNOS
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5641—Multilevel memory having cells with different number of storage levels
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5648—Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Error Detection And Correction (AREA)
- Oscillators With Electromechanical Resonators (AREA)
- Read Only Memory (AREA)
Description
本發明一般而言係關於記憶體裝置,且特定而言係關於用於將資料儲存於類比記憶體單元中之方法及系統。
本申請案主張於2011年5月16日提出申請之美國臨時申請案第61/486,330號之權益,該申請案之揭示內容以引用方式併入本文中。
諸如快閃裝置等某些記憶體裝置包括類比記憶體單元陣列。在某些情形下,陣列中之相鄰記憶體單元可導致相互交叉耦合干擾。此項技術中習知用於減少記憶體裝置中之干擾之各種技術。實例性技術闡述於美國專利申請公開案第2008/0198650、2009/0024905、2009/0158126及2010/0131826號中,該等公開案之揭示內容以引用方式併入本文中。
某些記憶體系統採用用於保護關鍵資訊之方法。舉例而言,其揭示內容以引用方式併入本文中之美國專利申請公開案第2009/0193184號闡述一種具有多位階記憶體單元(MLC)或單位階記憶體單元(SLC)快閃記憶體或此兩者之混合固態磁碟(SSD)。可藉由使用較少記憶體單元狀態之MLC模仿SLC快閃。由於使用較少MLC狀態而改良資料可靠性,且雜訊容限可鬆弛。
本文中所闡述之本發明之一實施例提供一種用於將資料儲存於包含一類比記憶體單元陣列之一記憶體中之方法。
該等記憶體單元之一群組經選擇以使得該群組中之每一記憶體單元具有在該陣列中排除在該群組之外的一或多個鄰近記憶體單元。將資料儲存於該等記憶體單元之該群組中同時將該等鄰近記憶體單元排除在程式化之外,只要將該資料儲存於該等記憶體單元之該群組中即可。
在某些實施例中,選擇該群組包含將該群組中之每一記憶體單元之所有最接近鄰近記憶體單元排除在該群組之外。對於該陣列之至少一部分,選擇該群組可包含將屬於奇數次序字線之所有該等記憶體單元或屬於偶數次序字線之所有該等記憶體單元排除在該群組之外。在另一實施例中,對於該陣列之至少一部分,選擇該群組包含將屬於奇數次序位元線之所有該等記憶體單元或屬於偶數次序位元線之所有該等記憶體單元排除在該群組之外。
在一所揭示實施例中,對於該群組中之每一記憶體單元,選擇該群組包含將毗鄰於該記憶體單元且屬於與該記憶體單元相同之一字線或位元線之任何鄰近記憶體單元排除在該群組之外。在又一實施例中,該陣列中之該等記憶體單元經指派以每記憶體單元保持n
個位元,且儲存資料包含以每記憶體單元僅k
個位元程式化該群組中之該等記憶體單元,k
<n
。
在某些實施例中,儲存資料包含使用將一給定資料頁儲存於一各別字線之所有該等記憶體單元中之程式化命令來寫入該資料。在替代實施例中,儲存資料包含使用將一給定資料頁儲存於一各別字線之奇數次序或偶數次序記憶體
單元中之程式化命令來寫入資料。
在某些實施例中,儲存資料包含將敏感資訊儲存於該等記憶體單元之該群組中。在一實施例中,敏感資訊包含管理資訊及/或斷電資訊。在一所揭示實施例中,儲存資料包含將未應用至儲存於該群組外部之其他資料之一額外保護機制應用至該資料。應用額外保護機制可包含以相對於其他資料較低之一儲存密度儲存資料;藉助相對於其他資料較強之一錯誤校正碼(ECC)編碼資料;及/或使用一程式化脈衝序列來程式化該群組中之該等記憶體單元,該等程式化脈衝以相對於在該群組外部使用之增量較小之一增量增加。
另外,根據本發明之一實施例提供一種包含一介面及儲存電路之資料儲存設備。該介面經組態以與包含一類比記憶體單元陣列之一記憶體通信。該儲存電路經組態以選擇該等記憶體單元之一群組以使得該群組中之每一記憶體單元具有在該陣列中排除在該群組之外的一或多個鄰近記憶體單元,且將資料儲存於該等記憶體單元之該群組中同時將該等鄰近記憶體單元排除在程式化之外,只要將該資料儲存於該等記憶體單元之該群組中即可。
亦根據本發明之一實施例提供一種包含一記憶體及儲存電路之資料儲存設備。該記憶體包含一類比記憶體單元陣列。該儲存電路經組態以選擇該等記憶體單元之一群組以使得該群組中之每一記憶體單元具有在該陣列中排除在該群組之外的一或多個鄰近記憶體單元,且將資料儲存於該
等記憶體單元之該群組中同時將該等鄰近記憶體單元排除在程式化之外,只要將該資料儲存於該等記憶體單元之該群組中即可。
自本發明之實施例之以下詳細說明結合圖式一起將更完全地理解本發明。
通常藉由將記憶體單元程式化至諸如電荷位準或電壓等某些類比值來將資料儲存於類比記憶體單元中。藉由感測該等類比值自記憶體單元中擷取資料。在某些情形下,記憶體單元可造成彼此交叉耦合干擾。此干擾可使自記憶體單元讀取之類比值失真且導致讀取錯誤。
本文中所闡述之本發明之實施例提供用於將資料儲存於類比記憶體單元中之經改良方法及系統。所揭示之技術藉由稀疏地程式化記憶體單元之一群組來儲存資料,以使得每一記憶體單元具有保持未藉助資料程式化之一或多個鄰近者記憶體單元。此類別之程式化幫助減少交叉耦合干擾,此乃因一記憶體單元中之干擾位準通常隨其鄰近者之類比值之量值增長。
下文中闡述稀疏儲存方案之數項實例。舉例而言,與在讀出時間處取消交叉耦合干擾之方案相比,所揭示之方案易於實施且不招致相當大之計算負載。本文中所闡述之稀疏儲存方案在每記憶體單元之未經程式化鄰近者之數目上彼此不同,且因此提供資料可靠性與儲存密度之間的不同
折衷。
本文中所闡述之方法及系統可用於將不同頁儲存於一字線中之記憶體單元之不同子集中(例如,將不同頁儲存於奇數次序及偶數次序記憶體單元中)之記憶體裝置及將一頁儲存於一字線之所有記憶體單元中之所有位元線(ABL)記憶體裝置兩者中。所揭示之技術特別適於儲存諸如管理資訊之敏感資訊,其訛誤將影響大量所儲存資料。
圖1係根據本發明之一實施例示意性地圖解說明一記憶體系統20之一方塊圖。系統20可用於各種主機系統及裝置中,諸如用於計算裝置、蜂巢式電話或其他通信終端機,可拆卸式記憶體模組(有時稱為「USB快閃磁碟機」)、固態磁碟(SSD)、數位相機、音樂及其他媒體播放器及/或其中儲存及擷取資料之其他任何系統或裝置中。
系統20包括一記憶體裝置24,其將資料儲存於一記憶體單元陣列28中。該記憶體陣列包括多個記憶體區塊34。每一記憶體區塊34包括多個類比記憶體單元32。在本專利申請案之上下文中及在專利申請範圍中,術語「類比記憶體單元」用於闡述保持諸如一電壓或電荷之一物理參數之一連續類比值之任一記憶體單元。陣列28可包括任一種類之類比記憶體單元,諸如(舉例而言),NAND、NOR及電荷陷獲快閃(CTF)快閃記憶體單元、相變RAM(PRAM,亦稱為相變記憶體-PCM)、氮化物唯讀記憶體(NROM)、鐵電RAM(FRAM),磁性RAM(MRAM)及/或動態RAM(DRAM)
單元。
儲存於記憶體單元中之電荷位準及/或寫入至記憶體單元中及自記憶體單元讀取之類比電壓或電流在本文中統稱為類比值、類比儲存值或儲存值。舉例而言,儲存值可包括臨限電壓或任何其他適合種類之儲存值。系統20藉由程式化記憶體單元將資料儲存於類比記憶體單元中以採取各別程式化狀態(其亦係稱為程式化位準)。該等程式化狀態選自可能狀態中之一有限集合,且每一程式化狀態對應於某一標稱儲存值。舉例而言,一3位元/每記憶體單元MLC可經程式化以藉由將八個可能標稱儲存值中之一者寫入至該記憶體單元中來採取八個可能程式化狀態中之一者。
記憶體裝置24包括一讀取/寫入(R/W)單位36,其將供儲存於記憶體裝置中之資料轉換至類比儲存值且將其寫入至記憶體單元32中。在替代實施例中,該R/W單位不執行該轉換,而係提供有電壓樣本,亦即,提供有供儲存於記憶體單元中之儲存值。當自陣列28中讀取資料時,R/W單位36將記憶體單元32之儲存值轉換成具有一或多個位元之一解析度之數位樣本。資料通常係寫入至稱為頁之群組中之記憶體單元及自稱為頁之群組中之記憶體單元讀取。在某些實施例中,R/W單位可藉由將一或多個負性抹除脈衝施加至記憶體單元來抹除記憶體單元32之一群組。通常在整體記憶體區塊中執行抹除。
藉由一記憶體控制器40執行將資料儲存於記憶體裝置24中及自記憶體裝置24中擷取資料。該記憶體控制器包括:
一介面44,其用於與記憶體裝置24通信;及一處理器48,其實施各種記憶體管理功能。特定而言,處理器48使用下文詳細闡述之稀疏高可靠性儲存方案來攜載儲存該資料中之至少某些資料。
記憶體控制器40與一主機52通信,以用於接受供儲存於記憶體裝置中之資料且用於輸出自記憶體裝置擷取之資料。記憶體控制器40及特定而言處理器48可用硬體予以實施。另一選擇係,該記憶體控制器可包括運行適合軟體之一微處理器,或硬體與軟體元件之一組合。
圖1之組態係一例示性系統組態,其純粹係出於概念清晰起見而展示。亦可使用任何其他適合記憶體系統組態。為清晰起見,圖中已省略為理解本發明之原理不必要之元件,諸如各種介面、定址電路、計時及定序電路及除錯電路。
儘管圖1之實例展示一單個記憶體裝置24,但系統20可包括由記憶體控制器40控制之多個記憶體裝置。在圖1中所展示之例示性系統組態中,記憶體裝置24及記憶體控制器40實施為兩個單獨積體電路(IC)。然而,在替代實施例中,記憶體裝置及記憶體控制器可整合於一單個多晶片封裝(MCP)或系統單晶片(SoC)中之單獨半導體晶粒上,且可藉由一內部匯流排連接。此外另一選擇係,某些或所有記憶體控制器電路可駐存於其上安置有記憶體陣列之同一晶粒上。此外另一選擇係,某些或所有記憶體控制器40之功能性可用軟體予以實施且由主機系統之一處理器或其他元
件實施。在某些實施例中,主機52及記憶體控制器40可製作於同一晶粒上或製作於同一裝置封裝中之單獨晶粒上。
在某些實施例中,記憶體控制器40包括一通用處理器,其經軟體程式化以實施本文中所闡述之功能。舉例而言,該軟體可經由一網路以電子形式下載至處理器,或者另一選擇係或另外,其可提供及/或儲存於諸如磁性、光學或電子記憶體等非暫時性有形媒體上。
在陣列28之一實例性組態中,記憶體單元32配置成若干列及若干行,且每一記憶體單元包括一浮動閘極電晶體。藉由字線連接每一列中之電晶體之閘極,且藉由位元線連接每一行中之電晶體之源極。記憶體陣列通常劃分為多個頁,亦即,同時程式化及讀取之記憶體單元群組。有時將頁細分為磁區。在某些實施例中,每一頁包括陣列之一整個列。在替代實施例中,每一列(字線)可劃分為兩個或兩個以上頁。舉例而言,在某些裝置中,每一列劃分為兩個頁,一個頁包括奇數次序記憶體單元且另一頁包括偶數次序記憶體單元。
通常,記憶體控制器40將資料程式化於頁單位中,但抹除整體記憶體區塊34。通常,儘管不必要,但一記憶體區塊約為在106
個記憶體單元,而一頁約為103
個至104
個記憶體單元。
記憶體陣列28中之一給定記憶體單元32可經受來自陣列中之相鄰記憶體單元之交叉耦合干擾。在本上下文中,術
語「相鄰記憶體單元」廣泛使用且係指可能對所討論之記憶體單元造成交叉耦合干擾之任一記憶體單元。相鄰記憶體單元可最接近毗鄰於受干擾之記憶體單元(例如,同一位元線上之垂直鄰近者、同一字線上之水平鄰近者或對角鄰近者)或根本不可能導致干擾之非毗鄰記憶體單元。
通常,由某一相鄰記憶體單元導致之干擾位準隨著干擾記憶體單元之類比值之量值增長。因此,藉助資料程式化之一相鄰記憶體單元(且特定而言,藉助對應於一高類比值之資料程式化之一相鄰記憶體單元)通常將導致比一未經程式化記憶體單元更強之干擾。未經程式化記憶體單元通常導致極少或無干擾,此乃因其經設定至由一相對較之負性類比值表示之一經抹除狀態。
在本文中所闡述之某些實施例中,處理器48使用一儲存方案來儲存某一資料,該儲存方案針對每一經程式化記憶體單元保留未藉助資料程式化之一或多個相鄰記憶體單元。換言之,處理器48儲存資料以使得正藉助資料程式化之每一記憶體單元具有保持未經程式化之一或多個鄰近者記憶體單元,只要將資料儲存保持於經程式化記憶體單元中即可。此等儲存方案在本文中稱為稀疏儲存方案。在隨後之說明中,該稀疏儲存方案係經定義的且由記憶體控制器中之處理器48應用。然而,在替代實施例中,該儲存方案可由記憶體裝置中之R/W單位36應用。因此,處理器48及/或單位36在本文中統稱為實施所揭示之儲存技術之儲存電路。
在某些實施例中,處理器48將稀疏儲存方案應用於一選定記憶體單元群組,例如,一字線集合或一記憶體區塊。在此記憶體單元群組中,處理器48選擇用於程式化之記憶體單元之一部分子集,以使該子集中之每一記憶體單元具有排除在該子集之外的至少一個相鄰記憶體單元。處理器48藉由程式化該部分子集中之記憶體單元同時保留未藉助資料程式化之所排除記憶體單元來將資料儲存於該群組中。由於稀疏程式化,每一經程式化記憶體單元遭受相對低之交叉耦合干擾,且因此減少讀取錯誤機率。
在各種實施例中,處理器48可使用各種種類之稀疏程式化方案。在下文給出之實例中,記憶體單元32包括四位階記憶體單元,其每一者儲存兩個資料位元。在每一記憶體單元中,一個位元稱為最低有效位元(LSB)且一個位元稱為最高有效位元(MSB)。將沿每一字線之記憶體單元劃分為偶數次序及奇數次序記憶體單元(亦即,分別屬於偶數次序及奇數次序位元線之記憶體單元)。記憶體控制器將兩個記憶體頁(稱為LSB及MSB頁)儲存於偶數次序記憶體單元中,且將兩個額外頁記憶頁(LSB及MSB)儲存於奇數次序記憶體單元中。然而,此組態純粹係藉由舉例之方式而挑選。在替代實施例中,可使用任何其他適合記憶體組態。
在一項實施例中,處理器48應用下表中所定義之一稀疏儲存方案:
在此方案中,首先將一頁寫入至字線0上之偶數次序位元線之LSB頁,然後寫入至字線0上之偶數次序位元線之MSB頁,然後寫入至字線2上之偶數次序位元線之LSB頁,然後寫入至字線2上之偶數次序位元線之MSB頁,等等。奇數次序字線及奇數次序位元線係根本未經程式化。
如表中可看到,(在偶數次序字線與偶數次序位元線之交叉點上之)經程式化記憶體單元不具有藉助資料程式化之最接近鄰近者(亦即,對角線地、垂直地或水平地直接毗鄰於該記憶體單元之記憶體單元)。因此,該等記憶體單元經歷極少或無交叉耦合干擾。另一方面,此方案僅以記憶體之容量之25%儲存資料-此乃因實際上僅程式化記憶體單元之四分之一。
在另一實施例中,處理器48應用下表中所定義之一稀疏儲存方案:
在此方案中,僅將資料程式化至偶數次序字線上之偶數次序位元線之LSB頁。如在先前方案中,本方案中之經程式化記憶體單元不具有藉助資料程式化之毗鄰鄰近者。因此,記憶體單元經歷極少或無交叉耦合干擾。另外,本方案以1個位元/記憶體單元而非2個位元/記憶體單元之一經減少密度儲存資料(藉由僅儲存LSB頁而不儲存MSB頁),且因此對讀取錯誤更具適應力。高適應力以容量減少為代價而達成-本方案利用記憶體容量之12.5%。
在又一實施例中,處理器48應用下表中所定義之一稀疏儲存方案:
亦在此方案中,僅程式化偶數次序字線。將記憶體頁替代地寫入至偶數次序及奇數次序位元線直至該字線完全經程式化,且然後程式化前進至下一字線。在本實例中,首先藉助四個頁程式化字線0:將一頁寫入至偶數次序位元線之LSB頁,將一第二頁寫入至奇數次序位元線之LSB頁,然後將一頁寫入至偶數次序位元線之MSB頁,且將一第四頁寫入至奇數次序位元線之MSB頁。在字線2上(跳過字線1)重複該程序,等等。
在此稀疏儲存方案中,記憶體單元可遭受某一水平交叉耦合干擾,此乃因亦程式化每一經程式化記憶體單元之水平鄰近者。然而,消除垂直及對角干擾。此方案使用記憶體容量之50%。
在另一替代實施例中,處理器48應用下表中所定義之一稀疏儲存方案:
在此方案中,處理器48程式化偶數次序字線上之偶數次序位元線及奇數次序字線上之奇數次序位元線。程式化LSB頁及MSB頁兩者。在此稀疏儲存方案中,不程式化垂直及水平相鄰記憶體單元,但程式化對角鄰近者。此方案使用記憶體容量之50%。(在一替代但等效實施例中,處理器48可程式化偶數次序字線上之偶數次序位元線及偶數次序字線上之奇數次序位元線。)
在又一實施例中,處理器48應用下表中所定義之一稀疏儲存方案:
此方案類似於先前實例,其中添加僅程式化LSB頁。此稀疏儲存方案已以僅使用記憶體容量之25%為代價改良對干擾之適應力。如在先前方案中,在一替代實施例中,處理器48可程式化奇數次序字線上之偶數次序位元線及偶數次序字線上之奇數次序位元線。
上文所闡述之實例性稀疏程式化方案純粹係出於概念清晰起見而挑選。在替代實施例中,可使用針對每一經程式
化記憶體單元保留至少一個未經程式化相鄰記憶體單元之任何其他適合程式化方案。舉例而言,將上文所闡述之方案應用於支援用於程式化一給定字線上之偶數次序及奇數次序記憶體單元之單獨頁寫入命令之一記憶體中。
在某些實施例中,所揭示之技術用於(例如)藉由每隔一記憶體單元程式化而以同一命令程式化一給定字線之所有記憶體單元(有時稱為所有位元線-ABL-裝置)之記憶體裝置中。此技術幫助減少水平交叉耦合干擾,亦即,來自與受干擾記憶體單元相同之一字線上之水平鄰近者之干擾。
在某些實施例中,處理器48使用本文中所闡述之稀疏程式化方案來增加敏感資訊儲存可靠性(與非敏感資訊相比)。在此等實施例中,稀疏程式化之使用限制於敏感資訊,此乃因此等技術通常一記憶體容量為代價而達成。如此,所揭示之技術可用於陣列28之特定區域中,舉例而言用於每一區塊34中之特定字線集合。在記憶體之其他區域中,處理器48可在利用所有記憶體單元之同時儲存非敏感資料。然而,在替代實施例中,若期望,則可使用所揭示之技術來儲存某些或甚至所有非敏感資料。
所揭示之技術使得處理器48能夠以高可靠性但以極少或無錯誤校正碼(ECC)冗餘來儲存資料。舉例而言,使用約97%之一ECC率之所揭示技術可達成具有25%率之一ECC之有效強度及習用程式化方案。此類別之組態在程式化(程式化較少資料,ECC編碼上花費較少資源及潛時)期間
及讀出(讀取較少資料,ECC解碼上花費較少資源及潛時)期間兩者上具有效能收益。
敏感資訊可包括其丟失或訛誤將影響大量所儲存資料或其丟失或訛誤將導致除彼特定資訊之丟失以外之額外損害或效能降級之任何資訊。敏感資訊之特定實例可包括管理資料,諸如開機碼(特定而言,若限制開機時間以便限定開機碼讀取時間)或對於其而言可靠性通常應頗高且程式化時間頗重要之斷電資料。舉例而言,非敏感資訊可包括自主機接收之使用者資料。另一選擇係,處理器48可使用稀疏程式化來儲存任何其他適合類型之資訊。
在某些實施例中,處理器48組合一稀疏程式化方案與增加儲存可靠性之一或多個額外保護機制。通常,除用於稀疏儲存以外,亦不使用額外保護機制。舉例而言,處理器48可稀疏地並且使用少於指定至記憶體單元32之每記憶體單元之位元數目儲存資料。舉例而言,設想一種其中處理器48使用n
個位元/記憶體單元(例如,使用2 n
個程式化位準)將使用者資料儲存於記憶體單元32中之系統。在某些實施例中,處理器48可使用稀疏程式化並且使用僅k
個位元/記憶體單元(2 k
個程式化位準)來儲存敏感資訊,k
<n
。
作為另一實例,設想一種其中處理器48藉助具有某一冗餘位準(例如,某一碼率)之一ECC來編碼使用者資料之系統。在某些實施例中,處理器48可使用稀疏程式化來儲存敏感資訊並且藉助具有一較高冗餘位準(例如,較低碼率)之一ECC來編碼該敏感資訊。
作為又一實例,設想一種其中R/W單位36在一反覆程式化及驗證(P&V)程序中程式化記憶體單元32之系統。在此一程序中,該R/W單位將量值及/或持續時間逐漸增加之一程式化脈衝序列施加至一記憶體單元群組。在程式化序列期間驗證記憶體單元之類比值,且將後續脈衝僅施加至尚未達到其既定類比值之記憶體單元。
在某些實施例中,處理器48可藉由使用以某一量值及/或持續時間增量按脈衝增加之一脈衝序列程式化記憶體單元來儲存使用者資料,且藉由使用以一較小增量按脈衝增加之一脈衝序列程式化記憶體單元來儲存敏感資訊。該較小增量通常以程式化速度為代價來增加儲存準確度。
在某些實施例中,處理器48可應用上文所闡述之保護機制之或用於連同稀疏程式化一起增加儲存可靠性之任何其他適合保護機制之任何適合組合。
圖2係根據本發明之一實施例示意性地圖解說明用於資料儲存之一方法之一流程圖。該方法以如下操作開始:在一資訊產生步驟60處,記憶體控制器40之處理器48產生欲儲存於記憶體裝置24中之敏感資訊。
在一選擇步驟64處,處理器48選擇記憶體單元之一稀疏子集以用於儲存敏感資訊。在一實施例中,處理器48指派某一記憶體單元群組(例如,一字線集合)以用於儲存敏感資訊。在此群組內,處理器48選擇實際上將程式化之記憶體單元之一部分子集。該群組中之其他記憶體單元將排除在程式化之外,只要將敏感資訊儲存於該部分子集中即
可。
選擇該部分子集以使得該子集(其將被程式化)中之每一記憶體單元具有在該群組中將排除在程式化之外的至少一個鄰近者記憶體單元。處理器48可根據諸如上文所闡述之實例性方案之任一適合稀疏程式化方案選擇該部分子集。在一稀疏程式化步驟68處,處理器48將敏感資訊儲存於記憶體單元之選定子集中。
儘管本文中所闡述之實施例主要論及諸如快閃記憶體之類比記憶體單元之裝置,但亦可在其他應用中(諸如,在三維記憶體裝置中)使用本文中所闡述之方法及系統。
因此,應瞭解,上文所闡述之實施例以舉例方式引用,且本發明不限於上文中已特別展示及闡述之內容。而是,本發明之範疇包含上文中所闡述之各種特徵之組合及子組合兩者,以及熟習此項技術者在閱讀上述說明後想到及未在先前技術中揭示之其變化及修改。本專利申請案中以參考方式併入之文件應視為本申請案之一組成部分,只是在以與本說明中明確或隱含做出之定義衝突之一方式在此等所併入文件中定義任何術語之方面而言,僅應考量本說明書中之定義。
20‧‧‧記憶體系統/系統
24‧‧‧記憶體/記憶體裝置
28‧‧‧陣列/記憶體單元陣列/記憶體陣列
32‧‧‧類比記憶體單元/記憶體單元/記憶體單元
34‧‧‧記憶體區塊/區塊
36‧‧‧讀取/寫入單位/單位
40‧‧‧記憶體控制器
44‧‧‧介面
48‧‧‧處理器
52‧‧‧主機
圖1係根據本發明之一實施例示意性地圖解說明一記憶體系統之一方塊圖;且圖2係根據本發明之一實施例示意性地圖解說明用於資料儲存之一方法之一流程圖。
20‧‧‧記憶體系統/系統
24‧‧‧記憶體/記憶體裝置
28‧‧‧陣列/記憶體單元陣列/記憶體陣列
32‧‧‧類比記憶體單元/記憶體單元
34‧‧‧記憶體區塊/區塊
36‧‧‧讀取/寫入單位/單位
40‧‧‧記憶體控制器
44‧‧‧介面
48‧‧‧處理器
52‧‧‧主機
Claims (24)
- 一種用於資料儲存之方法,其包括:在包括一類比記憶體單元陣列之一記憶體中,選擇該等記憶體單元之一群組以使得該群組中之每一記憶體單元具有在該陣列中排除在該群組之外的一或多個鄰近記憶體單元;及將資料儲存於該等記憶體單元之該群組中同時將該等鄰近記憶體單元排除在程式化之外,只要將該資料儲存於該等記憶體單元之該群組中即可;選擇該等記憶體單元之另一群組;及將資料儲存於該等記憶體單元之該另一群組中;其中將資料儲存於該等記憶體單元之該群組中包含使用以一第一增量而增加之一程式化脈衝序列來程式化該群組中之該等記憶體單元;其中將資料儲存於該等記憶體單元之該另一群組中包含使用以一第二增量而增加之一程式化脈衝序列來程式化該另一群組中之該等記憶體單元;其中該第一增量小於該第二增量。
- 如請求項1之方法,其中選擇該群組包括:將該群組中之每一記憶體單元之所有該等最接近鄰近記憶體單元排除在該群組之外。
- 如請求項1之方法,其中選擇該群組包括:對於該陣列之至少一部分,將屬於奇數次序字線之所有該等記憶體單元或屬於偶數次序字線之所有該等記憶體單元排除在 該群組之外。
- 如請求項1之方法,其中選擇該群組包括:對於該陣列之至少一部分,將屬於奇數次序位元線之所有該等記憶體單元或屬於偶數次序位元線之所有該等記憶體單元排除在該群組之外。
- 如請求項1之方法,其中選擇該群組包括:對於該群組中之每一記憶體單元,將毗鄰於該記憶體單元且屬於與該記憶體單元相同之一字線或位元線之任何鄰近記憶體單元排除在該群組之外。
- 如請求項1至5中任一項之方法,其中將該陣列中之該等記憶體單元指派為每記憶體單元保持n 個位元,且其中儲存該資料包括以每記憶體單元僅k 個位元程式化該群組中之該等記憶體單元,k <n 。
- 如請求項1至5中任一項之方法,其中儲存該資料包括:使用將一給定資料頁儲存於一各別字線之所有該等記憶體單元中之程式化命令來寫入該資料。
- 如請求項1至5中任一項之方法,其中儲存該資料包括:使用將一給定資料頁儲存於一各別字線之奇數次序或偶數次序記憶體單元中之程式化命令來寫入該資料。
- 如請求項1至5中任一項之方法,其中儲存該資料包括:將敏感資訊儲存於該等記憶體單元之該群組中。
- 如請求項9之方法,其中該敏感資訊包括選自由管理資訊及斷電資訊組成之一類型群組之至少一個資訊類型。
- 如請求項1至5中任一項之方法,其中儲存該資料包括: 將未應用至儲存於該群組外部之其他資料之一額外保護機制應用至該資料。
- 如請求項11之方法,其中應用該額外保護機制包括:執行選自由以下各項組成之一動作群組之至少一個動作:以相對於該其他資料較低之一儲存密度儲存該資料;藉助相對於該其他資料較強之一錯誤校正碼(ECC)編碼該資料。
- 一種資料儲存設備,其包括:一介面,其經組態以與包括一類比記憶體單元陣列之一記憶體通信;及儲存電路,其經組態以:選擇該等記憶體單元之一群組以使得該群組中之每一記憶體單元具有在該陣列中排除在該群組之外的一或多個鄰近記憶體單元;選擇該等記憶體單元之另一群組;將資料儲存於該等記憶體單元之該群組中同時將該等鄰近記憶體單元排除在程式化之外,只要將該資料儲存於該等記憶體單元之該群組中即可;及將資料儲存於該等記憶體單元之該另一群組中;其中為將資料儲存於該等記憶體單元之該群組中,該儲存電路進一步經組態以使用以一第一增量而增加之一程式化脈衝序列來程式化該群組中之該等記憶體單元;其中為將資料儲存於該等記憶體單元之該另一群組中,該儲存電路進一步經組態以使用以一第二增量而增 加之一程式化脈衝序列來程式化該另一群組中之該等記憶體單元;其中該第一增量小於該第二增量。
- 如請求項13之設備,其中該儲存電路經組態以將該群組中之每一記憶體單元之所有該等最接近鄰近記憶體單元排除在該群組之外。
- 如請求項13之設備,其中該儲存電路經組態以:對於該陣列之至少一部分,將屬於奇數次序字線之所有該等記憶體單元或屬於偶數次序字線之所有該等記憶體單元排除在該群組之外。
- 如請求項13之設備,其中該儲存電路經組態以:對於該陣列之至少一部分,將屬於奇數次序位元線之所有該等記憶體單元或屬於偶數次序位元線之所有該等記憶體單元排除在該群組之外。
- 如請求項13之設備,其中該儲存電路經組態以:對於該群組中之每一記憶體單元,將毗鄰於該記憶體單元且屬於與該記憶體單元相同之一字線或位元線之任何鄰近記憶體單元排除在該群組之外。
- 如請求項13至17中任一項之設備,其中該陣列中之該等記憶體單元經指派以每記憶體單元保持n 個位元,且其中該儲存電路經組態以藉由以每記憶體單元僅k 個位元程式化該群組中之該等記憶體單元來儲存該資料,k <n 。
- 如請求項13至17中任一項之設備,其中該儲存電路經組 態以使用將一給定資料頁儲存於一各別字線之所有該等記憶體單元中之程式化命令來儲存該資料。
- 如請求項13至17中任一項之設備,其中該儲存電路經組態以使用將一給定資料頁儲存於一各別字線之奇數次序或偶數次序記憶體單元中之程式化命令來儲存該資料。
- 如請求項13至17中任一項之設備,其中該儲存電路經組態以將敏感資訊儲存於該等記憶體單元之該群組中同時將該等鄰近記憶體單元排除在外。
- 如請求項21之設備,其中該敏感資訊包括選自由管理資訊及斷電資訊組成之一類型群組之至少一個資訊類型。
- 如請求項13至17中任一項之設備,其中該儲存電路經組態以將未應用至儲存於該群組外部之其他資料之一額外保護機制應用至該資料。
- 如請求項23之設備,其中該儲存電路經組態以藉由執行選自由以下各項組成之一動作群組之至少一個動作來應用該額外保護機制:以相對於該其他資料較低之一儲存密度儲存該資料;藉助相對於該其他資料較強之一錯誤校正碼(ECC)編碼該資料。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161486330P | 2011-05-16 | 2011-05-16 | |
US13/338,335 US20120297116A1 (en) | 2011-05-16 | 2011-12-28 | Sparse programming of analog memory cells |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201248633A TW201248633A (en) | 2012-12-01 |
TWI505273B true TWI505273B (zh) | 2015-10-21 |
Family
ID=46245823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101117442A TWI505273B (zh) | 2011-05-16 | 2012-05-16 | 類比記憶體單元的稀疏程式化 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20120297116A1 (zh) |
EP (1) | EP2525360B1 (zh) |
KR (1) | KR101343698B1 (zh) |
TW (1) | TWI505273B (zh) |
WO (1) | WO2012156889A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8649200B2 (en) * | 2011-01-27 | 2014-02-11 | Apple Inc. | Enhanced programming and erasure schemes for analog memory cells |
CN104115231B (zh) * | 2011-12-23 | 2017-12-26 | 英特尔公司 | 用于确定对存储器阵列的访问的方法、装置和系统 |
US9696918B2 (en) | 2014-07-13 | 2017-07-04 | Apple Inc. | Protection and recovery from sudden power failure in non-volatile memory devices |
US10734084B2 (en) | 2018-05-31 | 2020-08-04 | Western Digital Technologies, Inc. | Scheme to reduce read disturb for high read intensive blocks in non-volatile memory |
US11373714B2 (en) * | 2018-08-21 | 2022-06-28 | Micron Technology, Inc. | Reduced proximity disturb management via media provisioning and write tracking |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7333364B2 (en) * | 2000-01-06 | 2008-02-19 | Super Talent Electronics, Inc. | Cell-downgrading and reference-voltage adjustment for a multi-bit-cell flash memory |
EP1892720A1 (en) * | 2006-08-24 | 2008-02-27 | STMicroelectronics S.r.l. | A non-volatile, electrically-programmable memory with a plurality of storage densities and data transfer speeds |
US20090043951A1 (en) * | 2007-08-06 | 2009-02-12 | Anobit Technologies Ltd. | Programming schemes for multi-level analog memory cells |
US20090213653A1 (en) * | 2008-02-21 | 2009-08-27 | Anobit Technologies Ltd | Programming of analog memory cells using a single programming pulse per state transition |
US7706182B2 (en) * | 2006-12-03 | 2010-04-27 | Anobit Technologies Ltd. | Adaptive programming of analog memory cells using statistical characteristics |
US20100157675A1 (en) * | 2007-09-19 | 2010-06-24 | Anobit Technologies Ltd | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US20110044102A1 (en) * | 2009-08-19 | 2011-02-24 | Yingda Dong | Selective memory cell program and erase |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090193184A1 (en) | 2003-12-02 | 2009-07-30 | Super Talent Electronics Inc. | Hybrid 2-Level Mapping Tables for Hybrid Block- and Page-Mode Flash-Memory System |
WO2007132457A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Combined distortion estimation and error correction coding for memory devices |
CN103280239B (zh) | 2006-05-12 | 2016-04-06 | 苹果公司 | 存储设备中的失真估计和消除 |
WO2008026203A2 (en) | 2006-08-27 | 2008-03-06 | Anobit Technologies | Estimation of non-linear distortion in memory devices |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
-
2011
- 2011-12-28 US US13/338,335 patent/US20120297116A1/en not_active Abandoned
-
2012
- 2012-05-13 WO PCT/IB2012/052375 patent/WO2012156889A1/en active Application Filing
- 2012-05-15 KR KR1020120051390A patent/KR101343698B1/ko active IP Right Grant
- 2012-05-16 EP EP12168232.2A patent/EP2525360B1/en active Active
- 2012-05-16 TW TW101117442A patent/TWI505273B/zh active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7333364B2 (en) * | 2000-01-06 | 2008-02-19 | Super Talent Electronics, Inc. | Cell-downgrading and reference-voltage adjustment for a multi-bit-cell flash memory |
EP1892720A1 (en) * | 2006-08-24 | 2008-02-27 | STMicroelectronics S.r.l. | A non-volatile, electrically-programmable memory with a plurality of storage densities and data transfer speeds |
US7706182B2 (en) * | 2006-12-03 | 2010-04-27 | Anobit Technologies Ltd. | Adaptive programming of analog memory cells using statistical characteristics |
US20090043951A1 (en) * | 2007-08-06 | 2009-02-12 | Anobit Technologies Ltd. | Programming schemes for multi-level analog memory cells |
US20100157675A1 (en) * | 2007-09-19 | 2010-06-24 | Anobit Technologies Ltd | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US20090213653A1 (en) * | 2008-02-21 | 2009-08-27 | Anobit Technologies Ltd | Programming of analog memory cells using a single programming pulse per state transition |
US20110044102A1 (en) * | 2009-08-19 | 2011-02-24 | Yingda Dong | Selective memory cell program and erase |
Also Published As
Publication number | Publication date |
---|---|
WO2012156889A1 (en) | 2012-11-22 |
TW201248633A (en) | 2012-12-01 |
EP2525360B1 (en) | 2021-03-10 |
US20120297116A1 (en) | 2012-11-22 |
EP2525360A3 (en) | 2013-04-03 |
EP2525360A2 (en) | 2012-11-21 |
KR20120128103A (ko) | 2012-11-26 |
KR101343698B1 (ko) | 2013-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8750046B2 (en) | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N | |
US9230681B2 (en) | Selective activation of programming schemes in analog memory cell arrays | |
US8914670B2 (en) | Redundancy schemes for non-volatile memory using parity zones having new and old parity blocks | |
TWI505273B (zh) | 類比記憶體單元的稀疏程式化 | |
TWI509620B (zh) | 用於非揮發性記憶體之快速安全抹除方案 | |
US10191683B2 (en) | One-pass programming in a multi-level nonvolatile memory device with improved write amplification | |
US9454429B2 (en) | Protection against word line failure in memory devices | |
US9696918B2 (en) | Protection and recovery from sudden power failure in non-volatile memory devices | |
US10714169B1 (en) | System and method for programming non-volatile memory during burst sequential write | |
US20140177335A1 (en) | Nonconsecutive sensing of multilevel memory cells | |
US9263135B2 (en) | Programming schemes for 3-D non-volatile memory | |
US11282580B2 (en) | Data storage device with foggy-fine program sequence for reducing neighbor wordline interference | |
US20240086079A1 (en) | Memory pattern management for improved data retention in memory devices | |
US20230402113A1 (en) | Data latch programming algorithm for multi-bit-per-cell memory devices | |
US20240231693A9 (en) | Write operations on a number of planes | |
US20240134570A1 (en) | Write operations on a number of planes |