TWI570560B - 為動態讀取所使用之清除技術 - Google Patents
為動態讀取所使用之清除技術 Download PDFInfo
- Publication number
- TWI570560B TWI570560B TW101142508A TW101142508A TWI570560B TW I570560 B TWI570560 B TW I570560B TW 101142508 A TW101142508 A TW 101142508A TW 101142508 A TW101142508 A TW 101142508A TW I570560 B TWI570560 B TW I570560B
- Authority
- TW
- Taiwan
- Prior art keywords
- read
- data
- memory
- block
- case
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- 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/5642—Sensing or reading circuits; Data output 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/26—Sensing or reading circuits; Data output 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/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- 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/563—Multilevel memory reading aspects
- G11C2211/5634—Reference cells
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明一般而言係關於非揮發性快閃記憶體系統之操作,且更特定而言係關於再新及校正儲存於非揮發性快閃記憶體系統中(特別具有極大記憶體胞區塊之記憶體系統中)之資料之技術。
現今使用諸多商業上成功之非揮發性記憶體產品,特別以小外觀尺寸卡之形式之非揮發性記憶體產品,其採用形成於一或多個積體電路晶片上之一快閃EEPROM(電可抹除及可程式化唯讀記憶體)胞陣列。通常(但未必)在一單獨積體電路晶片上之一記憶體控制器與該卡以可抽換方式連接至之一主機介接並控制該卡內之記憶體陣列之操作。此一控制器通常包含一微處理器、某一非揮發性唯讀記憶體(ROM)、一揮發性隨機存取記憶體(RAM)及一或多個特殊電路,諸如在程式化及讀取資料期間在資料通過控制器時依據資料計算一錯誤校正碼(ECC)之一個特殊電路。某些市售卡係CompactFlashTM(CF)卡、多媒體卡(MMC)、安全數位(SD)卡、智慧媒體卡、人員標籤(P-Tag)及記憶體棒卡。主機包含個人電腦、筆記型電腦、個人數位助理(PDA)、各種資料通信裝置、數位相機、蜂巢式電話、可攜式音訊播放器、汽車音響系統及類似類型之設備。除記憶體卡實施方案之外,另一選擇為,此類型之記憶體亦可嵌入至各種類型之主機系統中。
已發現兩種一般記憶體胞陣列架構用於商業應用:NOR及NAND。在一典型NOR陣列中,記憶體胞連接於沿一行方向延伸之毗鄰位元線源極與汲極擴散部之間,其中控制閘極連接至沿記憶體胞之列延伸之字線。一記憶體胞包含定位於源極與汲極之間的記憶體胞通道區域之至少一部分上方之至少一個儲存元件。因此,該等儲存元件上之一經程式化電荷位準控制記憶體胞之一操作特性,因此可藉由施加適當電壓至所定址記憶體胞來讀取該等記憶體胞。第5,070,032、5,095,344、5,313,421、5,315,541、5,343,063、5,661,053及6,222,762號美國專利中給出此等記憶體胞之實例、其在記憶體系統中之使用及其製造方法。
NAND陣列利用兩個以上(諸如16個或32個)記憶體胞之串聯串連同個別位元線與一參考電位之間的一或多個選擇電晶體一起連接來形成記憶體胞之行。字線延伸跨越大量此等行內之記憶體胞。在程式化期間,藉由致使該串中之其餘記憶體胞皆硬導通以使得流動穿過一串之電流取決於儲存於所定址記憶體胞中之電荷位準來讀取及驗證一行內之一個別記憶體胞。在第5,570,315、5,774,397、6,046,935及6,522,580號美國專利中發現NAND架構陣列之實例及其作為一記憶體系統之部分之操作。
如前文所提及專利中所論述之當前快閃EEPROM陣列之電荷儲存元件係最常用導電浮動閘極,其通常由經導電摻雜多晶矽材料形成。在快閃EEPROM系統中有用之一替代類型之記憶體胞利用一不導電介電材料來代替導電浮動閘
極以按一非揮發性方式儲存電荷。一由氧化矽、氮化矽及氧化矽(ONO)形成之一個三層電介質夾在一導電控制閘極與記憶體胞通道上方之一半導電基板之一表面之間。藉由將電子自記憶體胞通道注入至氮化物中而程式化該記憶體胞,其中該等電子被陷獲並儲存於一有限區域中,且藉由將熱電洞注入至氮化物中而抹除。第2003/0109093號美國公開專利申請案中闡述採用介電儲存元件之數種特定記憶體胞結構及陣列。
如在大多數積體電路應用中,關於快閃EEPROM記憶體胞陣列,亦存在縮小實施某一積體電路功能所需之矽基板面積之壓力。不斷期望增加可儲存於一矽基板之一既定面積中之數位資料量以便增加一既定大小記憶體卡及其他類型之封裝之儲存容量,或者既增加容量且亦減小大小。增加資料之儲存密度之一種方式係每記憶體胞及/或每儲存單元或元件儲存一個以上資料位元。此可藉由將一儲存元件電荷位準電壓範圍之一窗劃分成兩種以上狀態來達成。使用四種此等狀態允許每一記憶體胞儲存兩個資料位元,使用八種狀態允許每儲存元件儲存三個資料位元等等。第5,043,940及5,172,338號美國專利中闡述使用浮動閘極之多狀態快閃EEPROM結構及其操作,且前述第10/280,352號美國申請案中闡述使用介電浮動閘極之結構。出於各種原因,一多狀態記憶體胞陣列之選定部分亦可以第5,930,167及6,456,528號美國專利中闡述之一方式按兩種狀態(二進制)來操作。
將一典型快閃EEPROM陣列之記憶體胞劃分成一起抹除之離散記憶體胞區塊。亦即,該區塊係抹除單元,即可同時抹除之最小數目個記憶體胞。每一區塊通常儲存一或多個資料頁,該頁係最小程式化及讀取單元,但可在不同子陣列或平面中並列地程式化或讀取一個以上頁。每一頁通常儲存一或多個資料區段,區段之大小由主機系統界定。一實例性區段包含512個使用者資料位元組(遵循關於磁碟機建立之一標準)加上關於使用者資料及/或其中儲存有使用者資料之區塊之附加項資訊之某一數目個位元組。此等記憶體通常在每一區塊內組態有16個、32個或更多個頁,且每一頁儲存一個或僅幾個主機資料區段。
為增加在將使用者資料程式化至記憶體陣列中及自記憶體陣列讀取使用者資料期間之並列程度,通常將陣列劃分成若干子陣列(通常稱為平面),該等子陣列含有其自身之資料暫存器及其他電路以允許並列操作,以使得可同時將資料區段程式化至數個或所有平面中之每一者,或者自數個或所有平面中之每一者讀取資料區段。可將一單個積體電路上之一陣列實體劃分成若干平面,或每一平面可由一單獨一或多個積體電路晶片形成。第5,798,968及5,890,192號美國專利中闡述此一記憶體實施方案之實例。
為進一步高效管理記憶體,可將實體區塊邏輯鏈接在一起以形成虛擬區塊或元區塊。亦即,將每一元區塊界定為包含每一平面之一個區塊。第WO 02/058074號國際專利申請公開案中闡述元區塊之使用。元區塊由一主機邏輯區塊
位址識別為用於程式化及讀取資料之一目的地。類似地,一元區塊中之所有區塊皆一起被抹除。與此大區塊及/或元區塊一起操作之一記憶體系統中之控制器執行若干功能,包含自一主機接收之邏輯區塊位址(LBA)與記憶體胞陣列內之實體區塊編號(PBN)之間的轉譯。通常藉由區塊位址內之偏移來識別區塊內之個別頁。位址轉譯通常涉及使用一邏輯區塊編號(LBN)及邏輯頁之中間項。
儲存於一元區塊中之資料經常更新,更新之可能性隨元區塊之資料容量而增加。一個邏輯元區塊之經更新區段通常寫入至另一實體元區塊。作為同一程式化操作之部分,亦通常將未經改變區段自原始實體元區塊複製至新實體元區塊以整合該資料。另一選擇為,未經改變資料可保留在原始元區塊中直至與經更新資料稍後整合至一單個元區塊中為止。
通常用維持於一經抹除區塊集區中之某些額外區塊來操作大區塊或元區塊系統。當正更新少於一區塊之容量之一或多個資料頁時,通常將經更新頁寫入至該集區之一經抹除區塊,且然後將未經改變頁之資料自原始區塊複製至抹除集區區塊。前述公開之第WO 02/058074號國際申請案中闡述此技術之變化。隨時間推移,作為重新寫入及更新主機資料檔案之一結果,諸多區塊可以相對小數目之其含有有效資料之頁及含有不再係當前資料之資料之其餘頁而結束。為能夠高效地使用陣列之資料儲存容量,不時地將有效資料之邏輯相關資料頁自多個區塊當中之片段集聚在一
起並一起整合至較少數目個區塊中。此程序通常稱作「廢棄項目收集」。
個別快閃EEPROM記憶體胞將表示一或多個資料位元之一電荷量儲存於一電荷儲存元件或單元中。一儲存元件之電荷位準可控制其記憶體胞之臨限電壓(通常指代為VT),該臨限電壓用作讀取記憶體胞之儲存狀態之一基礎。通常將一臨限電壓窗劃分成若干範圍,一個範圍用於記憶體胞之兩種或兩種以上儲存狀態中之每一者。此等範圍由防護帶分離,防護帶包含允許判定個別記憶體胞之儲存狀態之一標稱感測位準。此等儲存位準由於在鄰近或其他相關記憶體胞、頁或區塊中執行之電荷干擾程式化、讀取或抹除操作而移位。舉例而言,將與一第二組記憶體胞共用一線或電路之一組記憶體胞程式化可干擾該第二組之電荷位準。此寄生干擾之最終結果為:若不對儲存系統控制器之部分採取校正動作,則可損壞未操作之所曝露區中之資料,且在一極端情形中,超出連同該資料一起儲存之任何錯誤校正碼(ECC)之校正能力。因此,此資料損壞將對使用者造成資料損失,因此使得儲存系統不可靠。一特定記憶體胞陣列中之此等干擾之廣度及本質取決於其特定架構、結構及操作。
因此,在干擾操作致使電荷位準完全移位出其所界定範圍外,然後在此情形中讀出錯誤資料之前,不時地將移位電荷位準恢復至其狀態範圍之中心係有益的。第5,532,962及5,909,449號美國專利中闡述此一程序(稱作資料再新或
清除)。作為此程序之一進一步態樣,在使用錯誤校正碼(ECC)之記憶體系統中,可藉由使用ECC來校正自該記憶體讀取之某一數目個錯誤資料位元,且然後將經校正資料重新寫入至該記憶體之一先前經抹除部分。重新寫入資料致使經寫入記憶體胞臨限位準中之每一者處於其指定狀態範圍內,此乃因資料程式化通常涉及交替調整所儲存電荷並讀取-驗證所得記憶體胞臨限位準直至其達到表示儲存於該記憶體胞中之資料之所期望範圍為止。
本發明呈現一種操作一非揮發性記憶體系統之方法。該記憶體維持用於一預設讀取案例及複數個相異經移位讀取案例之一組讀取參數。對於該記憶體之一或多個區塊之每一實體劃分區,該記憶體亦維持實體單元與一讀取案例之間的一對應性以在讀取該實體單元時使用。該記憶體使用一資料頁所屬的實體單元之對應讀取案例來針對該頁執行一讀取操作、判定該讀取操作是成功還是產生一失敗結果及回應於產生一失敗結果之一讀取操作,選擇可讀取該頁之一經移位讀取案例。基於選定之該經移位讀取案例,該記憶體判定是否再新該頁所屬的區塊。
取決於特定應用,可個別地或以各種組合形式一起實施前述特徵。下文對本文中之清除系統之例示性實例之說明中包含該清除系統之額外態樣、優點及特徵,下文說明應連同附圖一起。本文中所提及之所有專利、專利申請案、文章及其他公開案皆以此引用方式藉此整體併入本文中以
用於所有目的。
首先參見圖1A,一快閃記憶體包含一記憶體胞陣列及一控制器。在所展示之實例中,兩個積體電路裝置(晶片)11及13包含一記憶體胞陣列15及各種邏輯電路17。邏輯電路17透過資料、命令及狀態電路與一單獨晶片上之一控制器19介接,且亦將定址、資料傳送及感測以及其他支援提供至陣列13。取決於所提供之儲存容量,記憶體陣列晶片之一數目可自一個至諸多個。另一選擇為,可將控制器及部分或整個陣列組合至一單個積體電路晶片上,但此當前不係一經濟替代方案。
一典型控制器19包含一微處理器21;一唯讀記憶體(ROM)23,其主要用以儲存韌體;及一緩衝器記憶體(RAM)25,其主要用於暫時儲存寫入至記憶體晶片11及13或自記憶體晶片11及13讀出之使用者資料。電路27與記憶體陣列晶片介接,且電路29透過連接31與一主機介接。在此實例中,資料之完整性藉由藉助專用於計算碼之電路33來計算ECC而判定。當正將使用者資料自主機傳送至快閃記憶體陣列以供儲存時,該電路依據該資料計算一ECC並將碼儲存於該記憶體中。當稍後自該記憶體讀取彼使用者資料時,使用者資料再次通過電路33,電路33藉由同一演算法來計算ECC並比較彼碼與所計算且與該資料一起儲存之碼。若二者相當,則確認該資料之完整性。若二者不
同,則取決於所利用之特定ECC演算法,可識別並校正彼等錯誤之位元,且最多至由該演算法支援之一數目。
圖1A之記憶體之連接31與一主機系統之連接31'配合,圖1B中給出該主機系統之一實例。資料透過介面電路35在主機與圖1A之記憶體之間進行傳送。一典型主機亦包含一微處理器37、用於儲存韌體碼之一ROM 39及RAM 41。取決於特定主機系統,其他電路及子系統43通常包含一大容量磁性資料儲存磁碟機、用於一鍵盤之介面電路、一監視器及諸如此類。此等主機之某些實例包含桌上型電腦、膝上型電腦、手持電腦、掌上型電腦、個人數位助理(PDA)、MP3及其他音訊播放器、數位相機、視訊攝影機、電子遊戲機、無線及有線電話裝置、應答機、語音記錄器、網路路由器及其他裝置。
圖1A之記憶體可實施為呈可與圖1B之主機以可抽換方式連接之一形式的含有控制器及所有其記憶體陣列電路裝置之一小封閉式卡。亦即,配合連接31與連接31'允許一卡被分離且移動至另一主機,或藉由將另一卡連接至該主機而替換。另一選擇為,可將記憶體陣列裝置包封於可與含有控制器及連接31之一卡以電及機械方式連接之一單獨卡中。作為一進一步替代方案,可將圖1A之記憶體嵌入圖1B之主機內,其中永久地製成連接31及31'。在此情形中,記憶體通常連同其他組件一起含於該主機之一封殼內。
此說明中所使用之某些術語可受益於某一解釋。一「區
段」指代在主機讀取及寫入操作期間所存取之可獨立定址資料單元。一個資料區段之大小通常為512個位元組。
如本文中所使用之「記憶體系統」係由一或多個非揮發性記憶體裝置與將資料儲存至該記憶體及自該記憶體擷取資料所需之硬體及/或軟體組成之一系統。可在完全專用於資料儲存之一子系統上或在主機系統自身上實施總體記憶體系統功能性之變化部分。該記憶體系統可(諸如)以一極小卡之形式嵌入一主機系統中或可移除。一可移除記憶體系統之部分自身可係可移除的,舉例而言,如可自控制器部分移除儲存媒體一樣。一主機系統之特定專用於一記憶體系統中之資料儲存之任一部分亦視為記憶體系統之一部分。除駐存於主機系統上之任一硬體之外,此主機功能性亦可包含專門軟體程式庫、驅動程式或應用程式。
出於在本文中使用之目的,一「主機系統」係如下之一系統:其通常具有除資料儲存之外的一功能性,但其亦連接至記憶體系統或具有嵌入於其中之一記憶體系統。可存在其唯一用途係資料儲存之主機系統。
可在具有各種特定組態之系統中實施用於再新(refreshing)及清除儲存於本文中所闡述之快閃記憶體中之資料之各種技術,圖2至圖6中給出該等系統之實例。圖2圖解說明其中將記憶體胞分組為若干區塊之一記憶體陣列之一部分,每一區塊中之記憶體胞可作為一單個抹除操作之部分一起抹除(通常同時抹除)。實體區塊係最小抹除單元。
圖2之個別記憶體胞區塊之大小可變化,但一種商業實
踐形式係在一個別區塊中包含一單個資料區段。圖3中圖解說明此一資料區段之內容。使用者資料51通常為512個位元組。除使用者資料51之外係附加項資料,附加項資料包含依據使用者資料計算之一ECC 53、與區段資料及/或其中程式化區段之區塊相關之參數55及依據參數55計算之一ECC 57以及可能包含之任何其他附加項資料。參數55可包含與區塊所經歷之程式化/抹除循環之數目相關之一數量(「熱計數」),此數量在每一循環或一預設定數目個循環之後被更新。此經歷數量之一項使用係規律地將邏輯區塊位址重新映射至不同實體區塊位址,以便均勻使用(平均抹寫)所有區塊。該經歷數量之另一使用係依據不同區段所經歷之循環之數目來改變電壓及程式化、讀取及/或抹除之其他參數。下文闡述該等經歷數量在識別待清除之區塊之程序中之額外使用。
參數55亦可包含指派給記憶體胞之儲存狀態中之每一者之位元值之一指示,通常稱為其「旋轉」。亦即,將資料之邏輯狀態映射至不同實體儲存狀態。此亦在平均抹寫方面具有一有益效應。亦可在指示狀況或狀態之參數55中包含一或多個旗標。欲用於程式化及/或抹除區塊之電壓位準之指示亦可儲存於參數55內,此等電壓在該區塊所經歷之循環之數目及其他因素改變時被更新。附加項參數55之其他實例包含該區塊內之任何缺陷記憶體胞之一識別、映射至此實體區塊中之資料區塊之邏輯位址及在該主區塊有缺陷之情形中之任何替代實體區塊之位址。在任何記憶體
系統中使用之參數55之特定組合將根據設計而變化。此外,亦可將某些或所有附加項資料儲存於專用於此一功能之實體區塊中,而非儲存於含有使用者資料或附加項資料與其相關之區塊中。
圖4之一多區段實體區塊不同於圖2之單個資料區段區塊。一實例性區塊59(其仍為最小抹除單元)含有四個頁0至3,該等頁中之每一者皆為最小程式化單元。一或多個主機資料區段通常連同包含依據該區段之資料計算之至少ECC之附加項資料一起儲存於每一頁中,且可呈圖3之資料區段之形式。當更新少於所有頁之資料時,通常將經更新資料儲存於一經抹除區塊集區之一經抹除區塊之一頁中,並將其餘未經改變頁中之資料自原始區塊複製至新區塊中。然後,抹除該原始區塊。此大區塊管理技術之變化形式包含將經更新資料寫入至另一區塊之一頁中,而不自原始區塊移動資料或抹除資料。此產生具有相同邏輯位址之多個頁。最新資料頁藉由某些方便技術來識別,諸如記錄為區段或頁附加項資料中之一欄位之程式化時間。
圖5中圖解說明一進一步多區段實體區塊配置。此處,將總記憶體胞陣列實體劃分成兩個或兩個以上平面,圖解說明四個平面0至3。每一平面係一記憶體胞子陣列,其具有其自身之資料暫存器、感測放大器、定址解碼器及諸如此類,以便能夠極大地獨立於其他平面而操作。所有平面可提供於一單個積體電路裝置上或多個裝置上,一實例係自一或多個相異積體電路裝置形成每一平面。圖5之系統
中之每一區塊含有16個頁P0至P15,每一頁具有一個、兩個或兩個以上主機資料區段及某些附加項資料之一容量。
圖6中圖解說明又一記憶體胞配置。每一實體平面含有大量記憶體胞區塊。為增加操作之並列程度,將不同平面內之區塊邏輯鏈接以形成元區塊。此一元區塊在圖6中圖解說明為由平面0之區塊3、平面1之區塊1、平面2之區塊1及平面3之區塊2形成。每一元區塊可邏輯定址,且記憶體控制器指派並追蹤形成個別元區塊之區塊。主機系統較佳與資料單元等於個別元區塊之容量之記憶體系統介接。圖6之此一邏輯資料區塊61(舉例而言)藉由一邏輯區塊位址(LBA)來識別,該邏輯區塊位址藉由控制器映射成構成元區塊之區塊之實體區塊編號(PBN)。一起抹除元區塊之所有區塊,且較佳同時程式化及讀取每一區塊之頁。
存在諸多不同記憶體陣列架構、組態及特定記憶體胞結構,其可經採用以實施上文關於圖2至圖6所闡述之記憶體。為圖解說明幾種干擾機制,圖7中展示NAND類型之一記憶體陣列之一個區塊。串聯連接之記憶體胞之大量行定向之串連接於一電壓VSS之一電壓源65與位元線BL0至BLN中之一者之間,該等位元線BL0至BLN又與電路67連接,電路67含有位址解碼器、驅動器、讀取感測放大器及諸如此類。特定而言,此一串含有串聯連接於該等串之相對端處之選擇電晶體77與79之間的電荷儲存電晶體70、71、72及74。在此實例中,每一串含有16個儲存電晶體,但其他數目亦係可能的。字線WL0至WL15延伸跨越每一
串之一個儲存電晶體,且連接至電路81,電路81含有該等字線之位址解碼器及電壓源驅動器。線83及84上之電壓控制將區塊中之所有串透過其選擇電晶體一起連接至電壓源65及/或位元線BL0至BLN。資料及位址來自記憶體控制器。
區塊之電荷儲存電晶體(記憶體胞)之每一列形成一起程式化及讀取之一頁。將一適當電壓施加至此一頁之字線(WL)以用於程式化或讀取其資料,同時選擇施加至其餘字線之電壓以使得其各別儲存電晶體導通。在程式化或讀取儲存電晶體之一個列(頁)之過程中,未選定列上之先前所儲存電荷位準可因電壓跨越所有串而施加且施加至其字線而受到干擾。
存在兩個主要清除階段:讀取階段及校正動作階段。清除讀取與其他系統讀取之區別在於:清除讀取通常涉及選擇及讀取記憶體系統之區中之資料,其既不與完成一特定主機操作直接相關亦不與若干其他系統操作中之任何操作(諸如平均抹寫)直接相關。清除讀取之另一明顯特徵為:系統不自所讀取之資料集聚有用資訊,而是資料完整性檢查之結果係該操作之目標。對該系統之部分之後續動作由該完整性檢查之結果引導,而非特定由資料自身引導。若資料未能通過該完整性檢查且需要校正動作,則該系統可隨後需要使用來自所讀取之資料(諸如附加項資料)之某些資訊。不完成一特定主機操作且不自記憶體獲得任何有用
資料之此等特徵係清除讀取與由該系統執行之其他資料讀取之間的基本差異。
選擇欲清除讀取之特定區通常由以記憶體裝置之實體特性之上下文中之系統操作之正常過程執行之讀取、寫入及抹除操作之位置及次數引導。通常,將對由於其他區中之操作已曝露於電壓、電流或串擾之記憶體陣列之區執行清除讀取。另一選擇為,清除讀取位置可與其他記憶體操作解耦,且經做出以遵循一判定性或隨機序列。然而,此可導致系統效能之一損失,此乃因將必須執行較多讀取以取得較受干擾區之相同覆蓋量。
清除讀取之一額外態樣係選擇何時執行清除讀取操作。一般而言,可回應於任何數目個因素來起始清除操作,諸如主機操作之一數目;實體讀取、寫入及/或抹除操作之一數目;一時間週期;主機之使用特性;或者某些隨機或偽隨機序列,該隨機或偽隨機序列之產生及檢查可與上述各項中之任一項相關聯。
清除寫入與其他系統寫入之區別在於:清除寫入通常由於在一清除讀取期間所讀取之資料之一失敗之完整性檢查而執行。一清除寫入在清除讀取之上下文中僅係唯一的。可執行具有與清除寫入類似之機制但並非出於彼特定目的而實施之其他寫入操作。在一項實例中,寫入操作可自正常記憶體系統操作之過程中所執行之讀取或寫入操作之後的失敗之完整性檢查而產生。在另一實例中,出於再新目的,可在不存在清除讀取之情況下讀取及重新寫入資料,
其中寫入決策並非基於資料完整性檢查,而是基於某些其他因素。此一因素可係存在具有高使用或曝露之陣列之一區,在此情形中,可重新寫入或移動該區內之資料。可以一判定性或隨機方式來進行資料之一連續移動或再新。可出於平均抹寫之所預期目的讀取及重新寫入資料,但此具有以克服干擾問題之一方式再新資料之一意外益處。
實際上,當一資料單元滿足進行清除之其他準則時,可使用該資料單元之相對新度來判定是否起始彼資料單元之清除。亦即,若近期已作為一平均抹寫、資料整合(廢棄項目收集)、預清除或其他操作之部分再程式化一資料單元,則可跳過當前清除,此乃因近期已再新彼等資料。舉例而言,可藉助與資料單元一起儲存的諸如在區塊之附加項資料之部分中之經歷計數(「熱計數」)或時間戳記來維持各個資料單元之相對新度。另一選擇為,可根據儲存於實體區塊中之資料之新度而將該等實體區塊分組,其中將一區塊所屬的群組儲存為該區塊之附加項資料。然後,可使用否則變為用於清除之候選者之區塊之相對新度作為選擇實際清除之彼等區塊之一因素。然後,藉由將清除操作限於已儲存足夠長時間以致其所儲存電荷位準可能已被充分干擾而需要注意之彼等資料單元來改良系統效能。
為監視所儲存資料之相對新度,邏輯區塊或實體區塊可基於該等區塊已再程式化之近期程度而有效地被分組為若干組。可將一初始相對熱計數值賦予整個記憶體陣列內之所有區塊或(另一選擇為)該陣列之一平面、區或其他部分
內之區塊,且每當再程式化一區塊時,該相對熱計數便可更新至最近經移動組或群組之值。一旦某一數目個區塊處於最近再程式化之群組中,便可遞增該最近再程式化之群組值,且可將隨後再程式化之任何區塊更新至該新群組值。因此,可形成在最近再程式化之區塊與最早再程式化之區塊之間具有一相對明顯差別之相異群組。一般而言,允許一區塊之相對熱計數值翻轉以准許使用一相對小數目之欄位。
當利用相對熱計數時,實質上所有區塊可當一特定實例中存在八個可能值(例如,「0」至「7」之值)時以一基值「0」開始。可使用該等八個值中之七個值,而保留一個值以提供表示最近程式化之區塊之值與識別含有最早資料之區塊之值之間的一間隙。在此實例中,寫入之區塊接收一新值「1」以指示其係最近被程式化的。一旦已將某一數目個區塊更新至新值「1」,隨後程式化之區塊便可接收一新值「2」。一旦已將值「2」指派給某一數目個區塊,便可最終將一值「3」指派給新再程式化之區塊。在某一時刻,該計數將翻轉以使得最早使用之區塊具有一值「2」,最近程式化之區塊具有一值「0」,且值「1」提供二者之間的一間隙以使得明確地識別具有最早及最新資料之區塊之值。最終,將透過一主機寫入、清除、平均抹寫或其他機制重新寫入最早值格中之所有區塊。在上述實例中,然後值格「2」將為空,且彼值可充當間隙,而值格「1」可用於識別最近寫入之區塊。當在其他準則之基
礎上,一區塊變為用於一清除操作之一候選者時,若其相對熱計數將其放置於較近期再程式化之區塊之群組中之一者中,則可跳過其之清除。
另一選擇為,可維持用於邏輯區塊或實體區塊或者兩者之絕對熱計數,在此情形中,系統可較佳使用此等熱計數來做出清除決策。亦即,當再程式化一區塊時,遞增、遞減或以其他方式維持其絕對熱計數以提供已再程式化該區塊之總次數之一指示。與具有指示少量再程式化操作之絕對熱計數之區塊相比,通常已較近期地再程式化具有指示大量再程式化操作之絕對熱計數之區塊。因此,可跳過對儲存於具有相對大量再程式化操作之區塊中之資料之清除,此乃因不可能已顯著干擾該資料。
存在可替代地執行之諸多特定清除演算法及相關記憶體操作。清除可由記憶體系統控制器來控制,或另一選擇為,在記憶體胞積體電路裝置(晶片)中之每一者上受控制,或者甚至由主機部分或完全地控制。該記憶體系統可與主機以可移除方式可連接,或另一選擇為,可嵌入主機內。
可以若干不同方式實施一清除操作之讀取階段。可調諧清除速率以使效能最佳化同時維持一規定位準之資料完整性。舉例而言,可調諧執行清除操作之速率及一次所讀取資料區段之數目二者。此調諧可作為清除演算法之部分而自動發生。舉例而言,可使清除之速率及位置與記憶體之不同區中之不均勻干擾曝露率相匹配。亦可延期清除讀取
以便使系統效能最佳化或滿足特定即時需要。
亦存在實施清除讀取之方式之各種替代方式。舉例而言,可藉助標稱參考位準及藉助邊際參考位準兩者來讀取一組資料。限度量可以所遇到之特定干擾機制為目標。舉例而言,若所讀取資料無法由ECC來校正,則具有較寬限度之一讀取可能夠恢復該資料。若在沒有任何錯誤之情況下正常地讀取資料,則具有較窄限度之一讀取可提供該資料之品質之資訊。
在完成一清除讀取之後,做出是否進入校正動作之一決策。此一決策可基於之因素當中包含一活動階,該活動階基於已偵測到之錯誤之位元之一數目及/或一型樣。
校正動作最通常包含在記憶體中之相同位置或一不同位置中重新寫入所讀取資料。可延期此等清除寫入以便使系統效能最佳化或滿足特定即時需要。另外,校正動作可包含在一清除寫入操作期間旋轉資料;亦即,自其原有狀態改變表示特定所儲存資料之記憶體胞狀態。校正動作亦可包含將認為易受干擾之記憶體胞、行或其他結構映射出系統。
大部分主機協定具有至記憶體系統之一抽象介面以使得該記憶體通常由主機按邏輯區塊位址編號(LBA)來定址。存在替代等效定址模式,諸如ATA主機協定中之磁柱-磁頭-區段,但基本概念在於:主機不知曉記憶體系統已儲存一既定主機資料區段之實體位置。主機系統可獲得一線性相連獨立邏輯區塊位址組,以在該等位址處儲存及擷取
資料區段。此等經抽象主機協定通常需要在記憶體系統上存在一控制器以便控制記憶體操作、執行映射功能性、資料管理、錯誤恢復等等。藉助此等經抽象主機協定操作之記憶體系統較佳依靠該記憶體系統中之控制器來執行清除操作,此乃因主機通常不知曉該記憶體系統之實體態樣。
另一方面,某些主機協定具有其中主機自身執行記憶體管理功能之一介面。符合此等協定之記憶體系統通常具有最小控制器功能(既然有)。可存在可由記憶體系統而非主機系統執行之功能性之變化部分,諸如但不限於ECC產生、ECC檢查或ECC校正。以此等主機記憶體所管理協定來操作之記憶體系統將通常依靠主機來執行清除操作,此乃因該記憶體系統通常具有不足以執行清除操作之邏輯。
某些記憶體系統具有一專用控制器,該專用控制器之用途係操作記憶體裝置及執行記憶體管理功能性。其他記憶體系統不具有專用記憶體控制器,而是依靠主機基礎結構之部分來執行記憶體管理操作。作為一實例,一非揮發性記憶體裝置可直接連接至主機系統中之一個一般用途微處理器,其中記憶體管理功能性由軟體執行。在不具有控制器之此等記憶體系統中,負責記憶體管理操作之相同子系統亦較佳執行清除功能性。
對於不具有一控制器之記憶體系統,可將控制器功能性整合至一非揮發性記憶體裝置(積體電路晶片)自身中。在一極端實例中,可將整個控制器整合於一記憶體裝置上。
記憶體系統可嵌入主機系統中且在變化程度上使功能性
整合至一般用途之主機子系統或具有其他功能性之主機子系統中。在此等嵌入式記憶體系統中,通常遵循相同主機協定,但可能未必皆係該情形。然而,作為一一般規則,需要同一組之功能性來操作記憶體系統。
雖然記憶體系統通常在一經抽象主機協定之情形中執行清除操作,但主機系統可透過使用一特殊命令或其他預定義介面異動來起始此等系統中之清除操作係可能的。實施此功能性之一個原因可係主機系統最知曉在其期間將不存取記憶體系統以儲存或擷取資料之時間週期,且主機系統可在此等時間週期期間利用該機會來起始一清除操作。以此方式,可在對效能之最小影響之情況下增加系統之總體可靠性。用於起始一清除操作之機制可特定用於清除之目的,或者其可係一個一般用途機制以用於將內務操作可用之時間通知給記憶體系統。在用於起始一清除操作之機制係一般用途機制之情形中,清除操作可係由記憶體系統在此等時間週期期間執行之數種操作中之一者。
由一既定記憶體操作所致之區域曝露通常係廣泛的,以使得每當執行一操作時便清除整個所曝露區域係不實際的。通常,將選定所曝露區之僅一部分用於清除,且必須設定清除速率以使得清除操作將在錯誤之位元數目及經移位記憶體胞之位準超過記憶體系統上可用之任何恢復方案之前偵測最受干擾區。
執行清除操作之速率係影響資料完整性及記憶體系統效能兩者之一重要參數。清除速率越高,在錯誤之位元數目
及經移位記憶體胞之位準超過記憶體系統上可用之任何恢復方案之前在一資料區塊中偵測到受干擾記憶體胞之可能性越大。然而,清除速率越高,隨著增加專用於此操作之記憶體及控制器時間量,記憶體系統之效能之降級越嚴重。為保證資料完整性之一所期望位準同時儘可能犧牲極少效能,將清除速率最佳化為所需之最小裸速率,使得任何防護帶皆被認為係適當的。可執行清除操作之速率可按以下兩種方式變化:1)選擇執行一清除操作之時間,及2)選擇一次欲清除讀取之區段之一數目。
在產品之壽命內,維護資料完整性所需之清除速率改變係可能的。舉例而言,隨著記憶體胞變得更加循環,干擾率可增加或減小。若在生產時設定一固定清除速率,則為在記憶體系統之壽命內維持記憶體系統完整性,將必須使用在記憶體系統之壽命內所需之最高速率。此將導致一較高清除速率(此時一較低速率將係足夠的),從而導致與在記憶體系統壽命中之某些時間所需之犧牲相比記憶體系統效能之一較高犧牲。存在在一記憶體系統之壽命內調諧清除速率之數種方法。
在製造記憶體系統時設定一可變清除速率係可能的。進行此之一種方法係提供一速率值表,該速率值表藉助影響干擾率之任何度量來設定不同清除速率。一實例係含有針對由記憶體陣列之各個部分所經歷之不同程式化/抹除循環計數之清除速率之一表。若該記憶體系統維持循環計數,則將基於該陣列之一既定區域之最差情形或平均循環
計數值自該表選擇該清除速率參數。
另一方法係允許記憶體系統基於先前清除操作之結果來自我調整清除速率。舉例而言,若記憶體系統維持一清除操作記錄並判定需要校正動作之清除操作之一極低百分比,則記憶體系統可調低其執行清除讀取之速率。另一方面,若判定需要校正動作之清除操作之一極高百分比,則記憶體系統可調高其執行清除讀取之速率。記憶體系統可調整清除速率之另一度量係在先前清除操作期間在個別儲存元件中偵測到之移位量或錯誤之位元數目。在上述情形中之任何情形中,該系統可藉助每一新結果來自適應地調整清除速率參數,或其可記錄該資訊供用於週期性調整。
存在可用於選擇何時執行一清除操作之數種技術,其之某些實例為:1)隨機或偽隨機,2)基於主機操作之數目,3)基於對記憶體裝置之操作之數目,4)基於一時間間隔。可使用上文所闡述方法中之任何方法來調諧執行清除操作之速率。下文假定:在生產時提供清除決策所需之任何參數。可存在針對讀取、寫入及抹除操作之不同速率參數,此乃因此等操作中之每一者可以不同速率干擾記憶體。
若系統可獲得或系統產生隨機數(RN)或偽隨機數(PRN),則可使用隨機數或偽隨機數來判定清除操作之頻率。下文闡述用於使用一RN或PRN序列來決策是否執行一清除操作之若干方法。所有以下方法皆假定以某一規律間隔檢查RN,且基於RN值之某種測試來決策是執行還是不執行清除。
使用一隨機數來判定清除速率之一種方法係藉助含有設定為值1之某一位元數目及設定為零之其餘部分之一遮罩參數來執行一RN或PRN之一邏輯AND。是執行還是不執行一清除之決策將基於該AND操作產生一零值還是一非零值。與具有較多零之一遮罩值相比,具有較多1之一遮罩參數較不頻繁地產生一零值。下表展示在不同八位元遮罩值之情況下之近似清除速率,其中假定一零AND結果致使一清除操作。注意,關於一真隨機序列,僅具有值1之位元數目(而非該值自身)影響速率,因此該表中之值僅係例示性值。
另一相關方法係計數值1之一RN中之位元數目以判定是否執行一清除操作。再次,可比較該RN中之位元數目與指示一臨限值之一遮罩值。又一方法需要比較一RN之值
與一清除速率參數之值。是執行還是不執行一清除之決策將基於該RN是否在數值上超過該臨限值。舉例而言,對於一臨限值為5,RN將高於時間之5/256。
另一選擇為,清除速率可與所執行之主機操作之數目相關聯。舉例而言,每N次主機讀取、寫入及/或抹除操作可執行一次清除操作,其中N為設定清除速率之一速率參數。此外,清除速率可與所執行之記憶體操作之數目相關聯。舉例而言,每NR次讀取、NW次寫入及/或NE次抹除操作可執行一次清除操作,其中NR、NW及NE為設定清除速率之速率參數。作為一進一步替代方案,在記憶體系統包含量測時間間隔之一方法之情況下,則可以某一規律時間間隔T來執行清除,其中T為經提供以設定清除速率之一參數。
為維持記憶體系統之效能,可期望甚至在已做出執行一清除讀取之決策之後延期一清除讀取。進行此之原因可包含即時考量因素。舉例而言,一主機可需要一特定資料傳送,且在某些時間,專用於清除之資源可影響記憶體系統滿足所保證資料速率之能力。出於此一目的,記憶體系統可使清除操作參數成隊列以供稍後在執行清除將不影響主機之效能之一時間進行處理。該等清除操作可延期直至稍後主機命令處理中之某時、該命令處理之後的某時或直至一稍後主機命令。在此一情形中,儲存已決策之清除操作參數且在主機最方便之一稍後時間處理該等清除操作參數。
由於在一既定時間可清除記憶體陣列之一所曝露區域之僅一部分,因此達成適當覆蓋之一個重要態樣係一旦已做出執行一清除之決策便選擇欲抹除之地方。選擇欲抹除之地方通常與對記憶體裝置進行讀取、寫入及/或抹除操作之位置相關。該選擇中蘊含著知曉在其內一既定記憶體操作將干擾其他儲存元件之區域。使欲清除之區與操作之區相關允許清除操作變得最高效,此乃因不對不可能受干擾之記憶體之區執行清除操作。
選擇欲抹除之位置之一種方法需要使用一RN或PRN以自一既定操作之曝露區內選擇一位置。平均而言,經歷最大曝露之區將具有選定用於清除之最大機會。假定某些區將比其他區更經常被選擇且僅平均而言將存在均勻覆蓋,則將調整清除速率以計及預期最差情形隨機數覆蓋。
選擇欲清除之位置之另一方法需要判定性地移動穿過一所曝露區域。然而,此方法將需要記錄記憶體操作及清除操作兩者以確保完全覆蓋。
若記錄對記憶體之活動,則可取得對一既定區經受至潛在干擾操作之曝露量之一度量。假定此資訊,記憶體系統可在該記錄中搜尋已經受最大曝露之區,且將清除操作限於彼等區。此方法在判定欲清除之速率及位置中可用於引導上述方法中之任何方法。通常可透過維持循環計數資訊來追蹤程式化/抹除循環。然而,記錄讀取活動通常係不實際的,因此不可能使用此方法來追蹤讀取曝露。
另一選擇為,校正動作之位置可被記錄且用作對比其他
區更易受干擾或比其他區經受更大曝露之區之一引導。記憶體系統可使用此資訊來加權欲清除之區之挑選,特別對於比其他區已更頻繁地需要校正動作之區。
在未維持干擾曝露之潛在區之知識之系統中,可獨立於此知識而使用隨機方法或判定性方法。在此情形中,不管主機活動在何處致使記憶體系統之操作發生,在整個記憶體系統中皆執行清除。然而,將清除速率調整為足夠高以確保充分覆蓋。通常,此係一極大資源浪費,此乃因記憶體系統之某些區將經歷比其他區多得多之曝露,且較佳係清除操作之主要集中區。
一清除操作之目的係在錯誤之位元數目及經移位記憶體胞之位準超過記憶體系統上可用之任何恢復方案之前偵測受干擾儲存元件。為此,通常期望儘可能早地且在用於一既定電壓臨限位準之許多防護帶因干擾而丟失之前偵測干擾。
如上文在背景技術中所闡述,快閃記憶體通常以離散狀態或電荷儲存位準範圍來儲存資料,該等狀態中之每一者皆藉由某一防護帶與其他狀態分離。通常在每一狀態之間存在一標稱鑑別感測位準,高於該位準時,則認為一儲存元件處於一種狀態,且低於該位準時,則認為該儲存元件處於另一狀態。當一既定儲存元件受到干擾時,已程式化或抹除至之位準可開始移位。若該儲存元件之位準接近該鑑別感測位準或交越其,則該儲存元件之位準產生處於一狀態之資料,該狀態不同於其曾程式化或抹除至之狀態。
該錯誤自身通常將表現為資料中之一或多個錯誤之位元,且通常將透過使用覆蓋該資料欄位之ECC而偵測。
邊際化或偏置讀取條件以使得鑑別感測位準較朝向一種狀態或另一狀態而移位將致使即使移位量在標稱讀取條件下將不導致一錯誤,受干擾儲存元件亦經感測為處於錯誤狀態。此允許系統在移位接近將在正常記憶體系統操作期間導致錯誤之點之前偵測該移位。
若已知干擾機制以一特定方式影響資料儲存位準,則可藉由朝向所預期位準移位邊際化讀取條件來對彼等特定干擾機制進行目標偵測。雖然理想情況將係在一單個組之限度條件下以具有一單個讀取操作之所預期干擾機制為目標,但此通常可係不可能的。可需要在不同條件下執行多次讀取操作。舉例而言,存在於一記憶體中之不同干擾機制致使儲存元件變得被更多程式化或被更多抹除係可能的。高於及低於一鑑別位準之兩種儲存元件皆可朝向該鑑別位準移位,在此情形中,可需要首先檢查儲存位準自一種狀態朝向一鑑別位準之一移位,且然後檢查儲存位準自另一狀態朝向該鑑別位準之移位。
存在兩種個別資料品質度量,其可用作臨限值以判定是否應採取校正動作:1)透過使用ECC來偵測資料錯誤,及2)儘管幾乎未偵測到或未偵測到資料錯誤,但在電荷儲存位準導致資料讀取錯誤之前可偵測到電荷儲存位準之一移位。
如上文所論述,可邊際化清除讀取條件,以便以特定所
預期干擾機制為目標,或僅檢查所儲存位準之充分限度。不管在標稱條件下還是在邊際條件下讀取資料,是否採取校正動作之決策可基於在清除讀取操作期間偵測到之錯誤之位元數目。舉例而言,若錯誤之位元數目低於系統之ECC校正能力,則系統可決策延期校正動作,或完全忽略該錯誤。
除使用錯誤之位元數目作為一臨限值來起始校正動作之外,系統亦可基於其他因素(諸如錯誤之位元型樣)來做出進行校正之決策。舉例而言,ECC校正能力可係對位元錯誤型樣敏感的,或位元錯誤型樣可指示非揮發性記憶體中之一特定已知干擾機制。可存在用於使臨限值基於位元錯誤型樣之其他原因。通常在ECC校正操作期間揭露位元錯誤型樣。
出於效能目的,即使已判定需要校正動作,亦可期望延期一清除校正動作。進行此之原因可包含即時考量因素。舉例而言,一主機可需要一特定資料傳送,且在某些時間,專用於清除校正動作之資源可影響記憶體系統滿足所保證資料速率之能力。出於此一目的,記憶體系統可使清除校正動作操作參數成隊列以供稍後在執行清除校正動作將不影響主機之效能之一時間進行處理。該等清除校正動作操作可延期直至稍後主機命令處理中之某時、該命令處理之後的某時或直至一稍後主機命令。主點在於將儲存清除操作參數且在主機最方便之一稍後時間處理該等清除操作參數。
存在兩種顯著相異極端之記憶體架構,該等記憶體架構中之每一者導致將主機資料映射至記憶體裝置上之實體位置及管理及存取曾程式化之資料之不同方法。兩種架構之間的基本差異與最小抹除單元之大小及其與主機協定資料區段之大小之關係相關。
若最小抹除單元之大小接近主機資料區段之大小,則可實施一直接定址方案,在該直接定址方案中,通常將一既定主機資料區段映射至主機將該既定主機資料區段寫入至之相同實體位置。在此一方案中,通常在將取代資料寫入先前內容之位置中之前自該實體位置抹除該等先前內容。若最小抹除單元之大小大於一主機區段之大小,則此重新寫入可需要讀取-修改-寫入。在此定址方案中,可將主機區段重新映射至儲存系統內之替代位置,但此通常僅作為一缺陷管理操作之部分或出於某些其他系統可靠性目的發生於區段重新指派期間。在此映射之後,該主機區段將通常保持映射至該新實體位置直至某些其他重新指派事件。在此一直接位址映射方案中,由一干擾所致之校正動作通常需要抹除來自經判定已受到干擾之實體位置之內容,且將該等內容重新寫入至同一位置。將以與系統所採用之一般異常處置一致之一方式來處置在重新寫入期間之任何錯誤,該等異常處置包含但不限於重新抹除及重新寫入、重新指派、更改抹除或寫入參數等等。
另一方面,若最小抹除單元之大小比主機區段之大小大得多,則通常實施一抹除-集用定址方案。此一定址方案
亦可藉助亦具有一小最小抹除單元之記憶體來實施。在一抹除-集用方案中,通常將主機區段分組成若干邏輯區塊,該等邏輯區塊然後映射成實體抹除單元。一既定主機資料區段由一抹除單元內之其他主機資料區段環繞。當主機寫入一既定資料區段時,讀取環繞目標區段之所有區段、抹除該區塊且然後將所有區段寫入回至該抹除單元(其中該一個主機區段含有新資料)將係不實際的。為避免此等過多附加項操作,一抹除-集用方案通常維持處於經抹除狀態之某一數目個抹除單元供用於在寫入新版本之資料時保持該等新版本之資料之目的。出於資料管理目的,通常將區段一起分組成若干邏輯群組,且一般而言,系統將試圖維持區段在同一邏輯群組中的實體接近性。通常出於允許高寫入並列性之目的,可組合若干抹除單元以形成一邏輯結構,稱作一元區塊或虛擬區塊。通常,來自主機之新資料將寫入至一經抹除位置。在某一時刻,將來自同一邏輯群組的尚未用新資料取代之其他區段複製至同一元區塊中,或連同新寫入資料一起複製至另一元區塊中。稍後,一旦一既定元區塊中或一抹除單元中之所有資料皆已被取代或複製至其他地方,該元區塊或抹除單元將被抹除且將被視為經抹除抹除單元之集區之部分。在此一抹除-集用定址方案中,由一干擾所致之校正動作通常需要將受影響資料複製至記憶體系統上之另一位置,連同系統所需的供用於正常記憶體系統行為之任何資料整合。
然而,可與由主機活動或一般資料管理所致之寫入操作
不同地處理在一清除操作期間需要校正動作之資料。可將資料寫入至一特殊位置,該特殊位置保留用於保持此資料達一短時間量直至系統方便整合該等資料與邏輯相連資料為止,該區保持保留或按需求而分配。在某些情況下,該系統將亦可僅抹除資料並將資料重新寫入至同一位置。舉例而言,若駐存於實體區塊中之其他資料極少或沒有,則可將其他資料永久地移動至其他地方,或在抹除期間暫時儲存於其他地方(可能在揮發性記憶體中),並連同需要校正動作之資料一起寫回。將以與系統所採用之一般異常處置一致之一方式來處置在資料寫入期間之任何錯誤,該等異常處置包含但不限於重新寫入、重新指派、寫入至一新位置、更改抹除或寫入參數、受迫旋轉資料極性等等。
某些個別儲存元件、儲存元件群組或其他結構可比其他儲存元件、儲存元件群組或結構更易受干擾。作為此等結構及分組可能之一實例,快閃記憶體儲存元件可經配置以共用一共同汲極、源極或閘極線,且由於程序中之變化,與平均值相比,此一組連接之儲存元件可經歷至潛在干擾信號之一較強曝露。同樣地,由於用於形成陣列之程序中之變化,與其他儲存元件相比,個別儲存元件更易受影響。儲存系統可經設計以永久地映射出或重新指派被認為易受干擾之此等區。在一極端情形中,可在第一次發生一清除校正動作後旋即重新映射任何儲存元件或其他結構。舉例而言,若冗餘儲存元件可用,則可映射出含有需要ECC校正之位元之彼等儲存元件。在其他實施例中,可記
錄且稍後分析校正動作之位置供用於在一稍後時間重新映射儲存元件或分組之目的。該分析可涉及一既定分組已需要校正動作之次數之一臨限值。在某些情形中,可需要藉助記憶體裝置之實體態樣之知識來分析所記錄資料,以便偵測所預期實體結構(諸如連接之儲存元件)之存在。重新映射儲存元件或儲存元件分組之方式取決於記憶體系統之實施方案。舉例而言,含有一邏輯區段之一實體區可含有冗餘儲存元件供用於替換被映射出之儲存元件之目的。在另一實例中,若一整個區段或區段群組已需要校正動作,則可映射出該整個區段或區段群組。
清除操作可在主機操作之背景中或在主機操作之間執行。可期望取決於主機已請求之操作類型來改變清除操作之行為。舉例而言,在執行一主機讀取命令期間可不方便發生清除校正動作,在此情形中,可延期校正動作至記憶體系統更方便之一時間。
干擾避免之一替代方法係在不具有判定資料是否錯誤之首先檢查之情況下移動已經受潛在干擾曝露之資料。存在選擇欲移動之資料之頻率及位置之諸多方法,上文闡述了大多數方法。
圖8之一流程圖概述一實例性快閃記憶體清除演算法中之主要步驟。一第一步驟91監視記憶體系統之活動以判定何時發生一清除操作之一觸發事件。此一觸發事件可係以下各項中之一或多者:
1.當該陣列之一既定區塊或其他單元內發生可干擾其他單元之電荷位準之一資料讀取、資料寫入或抹除操作時。該操作之強度及/或持續時間在判定是否觸發一清除操作以及該陣列對干擾之敏感性(諸如當記憶體以具有界定個別狀態之窄電荷位準範圍之多狀態方式操作時)中可係重要的。
2.當一既定單元之一正常系統讀取操作讀取具有至少一個或預設定數目個位元錯誤之資料時。
3.當限度讀取(其中參考位準經設定以讀取比正常讀取操作窄之一經程式化分佈)展示經程式化記憶體胞之臨限位準(儘管不存在位元錯誤)並非最佳時。
4.在自最後清除操作經過一預定義時間間隔之後。
5.當主機起始一清除操作時。
總體目標係足夠經常地開始一清除操作以在受干擾資料變得如此眾多以致超過記憶體系統中可用之任何恢復方案(ECC及諸如此類)之前偵測到受干擾資料。
一旦偵測到一清除觸發事件,下一步驟93便判定在記憶體陣列內用於執行一清除操作之位置。實例性候選者可經判定如下:
1.在既定單元外之區塊或其他單元,其與該既定單元共用位元線、字線或其他信號線,在讀取、寫入或抹除操作期間其上施加有電壓或電流。
2.在該既定單元外之其他單元,其具有與該既定單元之彼等信號線場耦合之信號線以使得二者之間存在串
擾。
3.此(此等)其他單元被程式化還是被抹除可判定其是否潛在地受到對該既定單元之操作影響。
4.受到潛在影響之單元可取決於該操作係讀取、寫入還是抹除。
5.若在所讀取資料中發現錯誤由該既定單元之一正常系統讀取觸發,則將該既定單元識別為用於一清除操作。
6.候選區塊中之資料之相對新度可用於消除較近期已重新寫入之彼等候選區塊。
識別作為用於清除之候選者之記憶區塊或其他單元未必後續接著執行清除。如由下一步驟95所指示,在某些情況下,可延期起始清除操作,該等情況之實例為:
1.可延期清除讀取以便使系統效能最佳化或滿足記憶體系統之特定即時操作需要。
2.自調諧清除:可動態地調整執行清除操作之速率以最佳地平衡維持效能及資料完整性。
3.可部分依據經識別為潛在地受影響之單元之特性來判定執行一清除操作之緊急性,該等特性諸如單元之經歷位準(程式化/抹除循環之數目)及致使該清除操作被觸發之事件之類型。
4.可將一清除觸發事件進一步限於以一判定性、隨機或偽隨機方式發生:(a)在規定數目個主機操作之後;
(b)在規定數目個實體讀取、寫入及/或抹除操作之後;(c)在一規定時間週期之後;(d)基於主機之使用特性;或(e)一隨機或偽隨機序列,該隨機或偽隨機序列之產生及檢查可與上述各項中之任一項相關聯。
在下一步驟97中,選擇在步驟93中經識別為用於清除之候選者之記憶體之所有區塊或其他單元或者區塊或其他單元中之僅某些供用於清除操作。選擇準則包含:
1.可選擇在任一操作中將被識別為用於清除之所判定單元之數目以平衡清除所花費之時間對系統效能之影響與維持資料完整性之需要。
2.維持此平衡之方式可係針對當前清除操作識別若干單元,此識別取決於記憶體之使用年限、所識別單元經歷之程式化/抹除循環之數目、已觸發該清除操作之事件類型及對所識別單元中之資料採取必需校正動作之一歷史。
3.一清除操作中所包含之單元之數目可取決於記憶體之使用年限、既定單元經歷之程式化/抹除循環之數目及觸發該清除操作之事件類型。
4.另一選擇為,可藉由以與正常使用不相關之一方式遵循一判定性、隨機或偽隨機序列針對清除來選擇少於所有所識別單元。
接下來,如由一步驟99所指示,根據下述各項自選定單元讀取資料(清除讀取):
1.一清除讀取不與完成任何特定主機操作或與其他系統操作(諸如平均抹寫)直接相關,但通常以與正常資料讀取相同之方式來執行。
2.在如下特定情況中可執行限度讀取(藉助不同於正常資料讀取之彼等參考位準之參考位準來讀取):(a)作為對具有待由ECC來校正之太多錯誤之資料之一第二讀取,其中鬆弛該第二讀取中之參考位準以讀取比正常讀取寬之一經程式化分佈(或另一選擇為,可在下文所論述之資料校正步驟107中實施);或(b)當預期將由觸發事件引發之特定干擾機制可能使經程式化位準顯著移位時,初始讀取可係具有較寬參考位準之一限度讀取;或(c)作為對不具有位元錯誤或具有可由ECC校正之幾個位元錯誤之資料之一第二讀取以便識別儲存為已移位遠離最佳位準之電荷位準之資料,其中將此第二讀取之參考位準縮緊以讀取比正常讀取窄之一分佈。(稍後關於圖10進一步論述限度清除讀取)。
3.作為讀取一區塊之資料之部分,亦讀取附加項資料。若在標頭中儲存資料之相對新度,則可使用該相對新度來識別不需要被抹除之新近重新寫入區塊。
下一步驟101估計所讀取資料之完整性。作為清除讀取之部分,一ECC可依據自記憶體單元讀取之使用者資料來計算並與在程式化期間較早所計算且連同該使用者資料一起儲存之ECC進行比較。只要不存在位元錯誤或存在可由
ECC校正之小數目個錯誤,便不需要做出如上文所述的具有經鬆弛參考位準之第二邊際讀取。
可視情況做出之一額外讀取具有追蹤記憶體胞之位準(假定在記憶體陣列中)以查看其所儲存值是否已改變。通常包含追蹤記憶體胞以建立用於讀取記憶體胞之參考位準。
一旦讀取資料且已知所讀取資料之錯誤(若有)之數目,下一步驟103便判定校正動作是否既係必需的且亦係期望的。某些考量因素如下:
1.一種方法係校正具有任何數目個位元錯誤之資料,因此致使清除最顯著地影響記憶體系統效能。
2.另一方法係放棄校正資料,除非資料位元錯誤之數目超過每單元讀取之某一臨限值N,因此減小清除對效能之影響。
3.亦可使用藉由比較ECC而判定之錯誤資料位元之型樣來判定是否期望校正該資料。
4.較佳不清除近期重新寫入(相對高新度程度)之資料。通常,當判定是否校正錯誤資料時,較佳平衡完成清除操作對效能之影響與該等錯誤對目前及未來資料完整性之嚴重性。
在下一步驟105中,判定是執行清除校正動作還是延期其直至一稍後時間。在做出此決策中之考量因素中之一者與在步驟95中相同,即為滿足記憶體系統此時之特定即時
操作需求而延期。通常,若與在當前時間完成清除操作相比,清除操作之稍後完成將導致對系統效能之一較小影響,則較佳延期完成該清除操作。通常不期望中斷控制器之正常處理以執行一清除,尤其當由於欲由ECC校正之一大數目個錯誤、需要整合資料及諸如此類而使該清除操作將花費比通常情況多之時間時亦如此。當延期時,藉由清除讀取所讀取之資料、其位址、由ECC分析所判定之任何錯誤及在前述步驟中形成之清除操作之其他參數得以暫時儲存。然後,當對系統效能之影響較小時,稍後讀取此等資料及參數並完成該清除操作。
當欲完成清除操作時,在下一步驟107中校正資料。在此情形中,藉由使用ECC來校正資料。若未作為上文之步驟99之部分執行,則若一正常讀取或清除讀取產生比可由所使用之ECC校正之錯誤之位元多之錯誤之位元,則可需要一或多個限度讀取(其中鬆弛參考位準以讀取比在先前讀取期間所使用之程式化分佈寬之一程式化分佈)來恢復資料。然後,在一步驟109中,採取適當校正動作。此可包含在曾讀取資料之相同位置中重新寫入經校正資料。當然,此需要首先抹除重新寫入資料之區塊,在圖2之記憶體配置中此可係實際的,其中每一經校正資料區段皆填滿一記憶體胞區塊。但在圖5及圖6之大區塊記憶體配置中此並不高效,除非存在已校正之足夠經校正資料區段,該等區段需要藉助邏輯連續位址來重新寫入以填滿或接近填滿一區塊。
另一選擇為,亦可將經校正資料重新寫入至與在清除操作中較早讀取資料之位置不同之一位置中。當記憶體配置利用如圖5及圖6中所展示之大儲存區塊時,可在待重新寫入之資料小於一區塊之容量時採用先前所闡述之抹除集區或其他大區塊管理技術。舉例而言,欲校正含有16個、32個或32個以上頁之一區塊之僅一個或兩個頁中之資料並不罕見。對於此等情形,一區塊可專用於陣列之一或多個平面中供用於暫時儲存一頁或幾頁之經校正資料。然後,在方便進行此時,諸如在由記憶體之正常操作期間之其他因素起始之資料整合(廢棄項目收集)期間,組合所重新寫入資料與儲存於原始區塊之頁中之未經校正資料。另一選擇為,可藉由此專用區塊變滿或在將資料之標的頁寫入至該專用區塊之後經過一預設定時間量之後,或者在系統操作方便之其他時間起始此整合。
可方便利用一共用指定實體區塊或若干共用指定實體區塊來暫時儲存來自諸多其他區塊之頁之資料之清除重新寫入,且然後稍後整合所重新寫入頁之資料與來自其原始區塊之其他頁之資料。舉例而言,將來自區塊1及2之頁之清除重新寫入暫時儲存於一暫時區塊3中。稍後,將區塊1之清除重新寫入自區塊3複製至一經抹除區塊4中,且亦將區塊1之其餘未經改變頁複製至區塊3中以整合映射至實體區塊1中之資料。然後,在另一經抹除區塊5中進行相同操作,其中整合儲存於區塊3中之區塊2之清除重新寫入與來自區塊2之未經改變資料頁。
在圖6之利用元區塊之系統中,可在每一平面中存在此一專用區塊以儲存來自彼平面中之其他區塊之重新寫入資料,或可在整個系統中存在一單個專用區塊,其中來自任一平面中之所有頁之經校正資料皆寫入至該專用區塊中。所挑選之特定操作取決於個別區塊中之頁之數目、整個記憶體陣列中之頁之數目及其資料將藉由清除程序來校正之頁之所預期數目及頻率之一預測。具有使其易受干擾之一結構及/或一操作之一記憶體陣列將需要比其他記憶體陣列多之專用區塊。若清除讀取揭露無資料錯誤但正執行清除操作以便將經移位所儲存電壓位準移動回至其狀態範圍之中間,則僅重新寫入所讀取資料,此乃因顯然不需要校正。
使用某些記憶體系統之方式導致極少干擾。然後,偶爾實施清除程序,此乃因存在將認識到之極少觸發事件。另外,不管經清除資料最初駐存於其中之實體區塊如何,將相對小重新寫入資料量一起永久地儲存於一或多個指定實體區塊中係實際的。在此情形中,經清除資料之頁不與其他邏輯相連資料之頁一起重新組合至實體區塊中,如清除程序中之一步驟。校正動作之另一元素係藉助與最初寫入資料不同之一旋轉來重新寫入經校正資料。舉例而言,可將一四狀態系統之四種類比儲存狀態範圍分別最初指定為表示00、01、10及11,且在重新寫入後旋即指定為表示11、10、01及00。該轉換由記憶體控制器使用保持作為附加項資料或其他資料之部分之特定旋轉之資料在讀取資料
時做出。資料旋轉有益地應用於重新寫入經校正資料及不需要校正之資料兩者。
可包含之校正動作之一進一步元素係映射出建立受干擾影響比平均而言大得多之一歷史之記憶體之頁或區塊。此藉由監視該陣列之各個頁、區塊、平面及/或其他所界定區域中之資料錯誤之數目來偵測。當然,應小心以防止映射出因除對干擾之一較高敏感性之外的原因(諸如由於比平均而言更多地或與平均而言不同地使用一區塊)而經歷資料錯誤之頁或區塊。
清除演算法通常由記憶體控制器來控制,但另一選擇為,可由主機來控制。當由記憶體控制器控制時,將該演算法編碼成記憶體系統韌體,該記憶體系統韌體在記憶體之操作期間通常由微處理器21(圖1A)自控制器RAM 25執行。
所利用之特定清除演算法取決於記憶體系統之某些特性,特別記憶體裝置11及13(圖1A)之某些特性。實例性特性如下:(a)儲存於程式化之記憶體單元(通常為一頁)中之主機資料區段之數目;(b)記憶體胞之儲存狀態之數目及指定用於每一儲存狀態之臨限範圍之廣度;(c)程式化之單元(通常為一頁)是包含一單個主機資料區段還是多個主機資料區段;(d)一抹除單元(通常為一區塊)中程式化之單元(通常為
一頁)之數目;及(e)記憶體胞之密度以及一個單元中之一操作在另一單元中導致資料干擾之廣度及特定傾向。
圖9之流程圖中圖解說明一清除演算法之一較特定實施例。通常,利用與先前所闡述之處理步驟相同之處理步驟,但更詳細地展示了該實施方案,包含關於圖10針對一四狀態系統實例(每一實體電荷儲存單元中儲存2個位元)所闡述之限度清除讀取。圖9中展示處理之兩個進入點:115處(當偵測到一清除觸發事件時)及117處(當接收到執行經延期清除之一命令時)。
在步驟115中,針對一清除觸發事件來監視記憶體,如上文針對圖8之步驟91所論述。類似地,在一步驟119中,判定用於清除之候選記憶體胞單元,此與針對圖8之步驟93所闡述之內容相同。然後,類似於步驟95,圖9之一步驟121判定是否應延期對候選單元中之任何單元之清除,此乃因此時需要執行其他系統操作。若是,則如在123處所指示,暫時儲存候選記憶體胞單元之位址及其他所需資料,且該程序等待完成較高優先級系統操作後再次重新開始。另一選擇為,可延期完成該清除操作直至在步驟117中自主機接收到或由記憶體控制器產生一後續特殊命令,如稍後在該程序中延期時之情形。在步驟123中儲存用於經延期清除之資料之後,結束執行之特定清除操作,除非存在較多欲清除之單元,如由一步驟124所判定。若存在
較多欲清除之單元,則該處理返回至步驟119。
下一步驟125執行與圖8之步驟97相同之功能,即選擇待清除之候選記憶體胞單元。一次對選定單元中之一者實施圖9之後續步驟。下一步驟126致使讀取斷點位準及其他讀取條件最初設定至正常讀取位準。然後,一步驟127在設定條件下對記憶體胞單元中之一第一記憶體胞單元執行一清除讀取,此對應於圖8之步驟99。對此同一單元執行後續步驟,其中一迴圈129返回至步驟127依次序用於選定單元中之下一者直至將該等單元全部清除。當然,若在一特定操作中僅一個單元選定用於清除,則不存在迴圈返回129。
在藉助步驟126中所設定之讀取限度之步驟127之清除讀取之後,一步驟131判定是否存在任何資料錯誤,此類似於圖8之步驟101。若存在錯誤,則下一步驟133判定該等錯誤是否可校正。當使用一ECC來確定資料之完整性時,則此步驟133判定所讀取資料單元中之壞位元之數目是否在正使用之特定ECC演算法之校正能力內。若可校正該等錯誤,則下一步驟135判定校正是否既係必需的且亦係期望的,此對應於圖8之步驟103。步驟135可僅判定有錯誤但可校正位元之數目是否小於一臨限值1或一極少數,若是,則可判定不採取校正動作。
步驟135中之決策亦可受該等資料及其ECC是使用者資料還是附加項資料影響。如關於圖3所闡述,附加項資料可具有其自身之ECC。當此係該情形時,使用者資料及附
加項資料之完整性可分別在步驟131及步驟133中檢查,且甚至藉由將使用者資料及其ECC視為一個單元及將附加項資料及其ECC視為另一資料單元(儘管使用者資料及附加項資料可儲存於同一頁中)而透過具有返回129之完整迴圈來一次處理使用者資料及附加項資料中之一者。儘管各別附加項資料ECC及使用者資料ECC之使用通常係相同的,但該程序可操作以更緊密地維持附加項資料之完整性。此係在維持系統效能(過多清除操作使系統效能降級)與長期維持所儲存資料之完整性(清除經設計以達成此長期維持)之間的一平衡之一實例。
若步驟135中之決策係應做出所關注之資料單元中之可校正錯誤之校正,則下一步驟137詢問是否應延期資料之校正。舉例而言,若所讀取資料中存在如此多之壞位元以致其校正將花費比在此階段處可用之時間多之時間,則期望延期清除。若不延期,則在一步驟139中校正該等錯誤,此類似於圖8之步驟107。然後,下一步驟140詢問是否應延期校正動作。若重新寫入該資料由於一所需整合亦涉及其他資料之移動(此將花費比可用時間多之時間),則通常延期清除。若不存在延期,則在一步驟141中,根據在闡述圖8之一般實施例時上文所闡述之重新寫入選項中之一者來重新寫入經校正資料。在成功地重新寫入經校正資料單元之後,在一步驟143中,判定是否存在在步驟125中選定用於清除之任何其他記憶體胞單元。若是,則一步驟145依次序遞進至下一單元,且該處理經由迴圈129返回
至步驟127供用於彼新單元。
至此,已闡述圖9之流程圖之一主路徑。但當該等問題中之某些問題之解決方式不同於上文所闡述之彼等解決方式時,亦存在可沿該途徑進入之諸多數個分支。當在標的單元中存在如此多之資料位元錯誤以致該等錯誤無法由ECC校正時,自步驟133獲得欲闡述之一第一此分支。如步驟151所指示,將讀取臨限位準設定為不同於用於步驟127中之清除讀取之位準,且然後在一步驟153中,藉助此等不同臨限位準再次讀取該單元之資料。圖10中圖解說明此一邊際讀取。
圖10中使用以四種狀態來操作一快閃記憶體陣列中之個別儲存元件之一實例。展示一記憶體胞單元內之儲存元件之數目在四個臨限電壓位準範圍中之每一範圍中之一分佈(不存在干擾)。臨限電壓防護帶155、156及157維持於儲存狀態臨限位準範圍之間,其中該等防護帶中之任何記憶體胞中皆不存在資料。此係在程式化及驗證一記憶體胞單元之狀態之後隨即存在之所期望經程式化條件。但當然後程式化、讀取及/或抹除其他單元時,此資料可受到干擾。干擾藉由臨限位準移位至毗鄰防護帶中之一側或另一側而展現。取決於干擾之本質,此可針對每一狀態分佈內之一小比例之記憶體胞而發生,或者整個分佈可移位或擴散至毗鄰防護帶中。
對於一正常讀取,使用在各別防護帶155、156及157之約中間之斷點位準159、160及161。亦即,比較所讀取之
記憶體胞之臨限位準與此等斷點位準以判定其儲存狀態。當一種狀態內之記憶體胞之臨限位準跨越一斷點位準移位穿過一防護帶時,錯誤發生。舉例而言,當狀態1中之記憶體胞之臨限位準移位降低直至其低於斷點位準159時,則彼等記憶體胞經讀取為處於狀態0。類似地,若狀態1中之記憶體胞之臨限位準移位升高直至高於斷點位準160時,一正常讀取將顯示彼等記憶體胞處於狀態2。然後,藉由ECC程序來識別此等所讀取資料錯誤。但當存在太多此等錯誤需ECC來校正時,藉由步驟151及153來做出關於各狀態之間的不同斷點位準之一第二讀取(圖9)。斷點位準159、160及161依據干擾沿儲存臨限位準之所預期移位之一方向而在其各別防護帶內移位,以使得經移位位準現位於與其受干擾之前曾處於之防護帶之側相同之側上。
在如此重新讀取該資料之後,在一步驟165中藉由使用ECC判定是否仍餘留任何資料錯誤。若否,則該處理繼續進行至主處理路徑之步驟135,包含判定是否應延期資料校正及重新寫入。若步驟165發現存在資料錯誤,則下一步驟167判定其是否可由ECC校正。若是,則該處理亦跳轉至主處理路徑之步驟135。
但若步驟167發現該等資料錯誤不可校正,則可包含關於更加不同之斷點位準之一進一步讀取。在一步驟169中,判定是否存在任何其餘未經嘗試之經鬆弛讀取條件。若是,則一步驟170遞進重試條件,且該處理返回至步驟151及步驟153以藉助此等新條件來讀取資料。但若不再提
供更多不同讀取條件,則標的陣列單元中之資料必須保持具有其不可校正之錯誤。然後,對彼單元之清除操作經判定為已失敗。此之一結果可係將所有有效資料複製至一新的記憶體系統中,且然後捨棄當前之記憶體。另一結果係僅藉由儲存於附加項資料或其他資料中之一旗標而將此單元標記為壞,且然後繼續進行至步驟143以繼續清除其他陣列單元。此時彼單元中之資料丟失。由於此等資料曾作為原始程式化之部分而驗證為最初處於其正確臨限位準範圍,因此干擾操作隨時間之一累積之此可能結果展示足夠頻繁地清除以防此一不利後果之可期望性。
返回至步驟135,若判定資料之校正既不必需亦不期望,則該處理跳轉至步驟143以繼續清除所識別單元中之任何額外單元。亦返回至步驟137及步驟140,若判定應延期資料之校正或重新寫入,則在一步驟171中儲存所讀取資料、其位址、錯誤位元之ECC及任何識別以及其他先前所判定資料,且然後該處理跳轉至步驟143。然後,當到達經延期動作用於完成時,讀取此等資料,如下文所闡述。
返回至步驟131,在判定不存在資料錯誤之後,下一動作可係藉由跳轉至步驟143而不再對當前單元之資料進行任何進一步處理。但可期望進一步檢查及調整自其甚至讀取有效資料之記憶體胞之儲存位準。此涉及藉助與初始讀取中使用之斷點位準不同之斷點位準來重新讀取資料,以便識別所儲存電荷已移動至針對各種狀態所界定之位準之
間的一防護帶中之任何記憶體胞(參見圖10),但彼等位準尚未跨越一斷點位準以導致一正常讀取資料錯誤。藉由一步驟172,判定是否存在尚未嘗試之任何此等讀取條件。若是,則一步驟173導致選擇新斷點位準及/或其他清除讀取條件。然後,該處理返回至步驟126,在步驟126中設定彼等讀取條件並接著在步驟127中藉助彼等條件來讀取資料。舉例而言,將在此讀取期間所使用之斷點位準移位至圖10之防護帶155、156及157之邊緣。若在步驟131中,藉由使用ECC而判定存在資料錯誤,則錯誤資料位元指示將電荷位準移位至防護帶內。因此期望在首先判定是否應延期此動作之後,校正並重新寫入此等資料,以使得所儲存電荷位準將自防護帶移位至圖10之其預期狀態分佈內。
若在步驟131中藉助更具限制性限度判定所讀取之資料中不存在錯誤,則結束對當前資料單元之處理。然後,藉由步驟172判定是否存在尚未對此資料單元嘗試之更多經界定清除讀取條件。若是,則可藉助更加緊密之斷點位準再次讀取該資料。亦即,可藉助在步驟172中可用之一第一組替代讀取條件第二次讀取該資料,其中斷點位準沿其各別防護帶移位僅一部分路程,且然後,藉助步驟172所選擇之一第二組替代讀取條件之斷點位準第三次重複此操作,其中該第二組替代讀取條件之斷點位準更進一步朝向防護帶邊緣移動用於進一步精細地調整電荷儲存位準(若需要)。可依實際儘可能多地提供此等額外清除讀取條件。
返回至步驟135,其中可判定接受某一位準之資料錯誤而不校正,將注意到,此與剛剛已闡述的由步驟172及步驟173之分支對不含有錯誤之所儲存資料做出之調整之精確性不一致。因此,若利用此處理分支,則步驟135最可能將不允許接受錯誤資料而不校正。
在步驟143中判定的確已清除當前經識別供用於清除之所有資料單元之後,可視情況將已展現出使其資料易受干擾之一特別傾向之此等資料單元中之任何資料單元映射出該系統。一步驟185判定是否存在應自該系統移除之任何此類實體記憶體單元,且若是,則藉由一步驟187映射出該等單元。然後,完成清除操作。
然而,若已延期資料校正及/或重新寫入,則記憶體系統控制器或主機系統將對此進行提示。在一適當時間,當不存在待決之較高優先級記憶體操作時,以步驟117開始,可完成對經部分清除單元之清除。一步驟191讀取藉由步驟171儲存的用於一個單元之資料、ECC及其他資訊。若來自彼單元之資料需要校正,則在一步驟193中進行彼校正。在一步驟195中,重新寫入校正資料。若不存在需要完成之其他經部分完成清除操作,則在一步驟197中判定此情況,且執行步驟185或結束該處理。若存在待完成之其他單元,則該處理在一步驟199中遞進至下一單元,且然後對來自彼等單元之資料重複步驟191、193及195。
在其中在步驟123中儲存候選記憶體胞單元之位址供用
於一經延期清除之情形中,該處理可自動返回以在控制器不具有欲實施之較高優先級動作時一次對經延期單元中之一者繼續清除操作。由於延期步驟121在圖9之處理中如此早,因此當時延期之至一單元之一返回導致以步驟125開始之該處理之一恢復且沿彼路徑繼續,如上文所闡述。可在步驟137或步驟140中之一者處將此一單元之校正及/或重新寫入再次延期。
在第8,050,095號美國專利中且亦在第2006-0039196-A1號相關美國專利公開案中可發現關於清除技術之上述態樣之更多細節。
此部分考量使用動態讀取之記憶體系統中之清除操作之使用。如上文關於圖10所闡述,儲存於快閃儲存系統中之資料易受由對鄰近實體區域中之資料胞元執行之讀取、程式化及抹除序列所致之損壞影響。出於此等原因,且由於隨時間之一般電荷損失,臨限值之分佈往往降低。為能夠在此等情形中成功提取資料內容,記憶體系統可使用邊際參考位準來移位讀取點作為動態讀取程序之部分。此可以各種方式進行:舉例而言,第5,532,962號美國專利呈現一程序,其中藉助使用ECC而將讀取位準移位直至可提取資料為止;及在第7,886,204號美國專利中,判定臨限值分佈之特性以便建立讀取點。第7,876,621號美國專利呈現關於動態讀取之進一步細節,此適用於以下論述。用於動態讀取之經移位讀取位準可在操作過程期間由控制器來判定或
基於已載入至用於此目的之裝置中之一組值。亦可以若干種方式使用此等位準,諸如在有時稱為「過度恢復(heroic recovery)」之一程序中,僅在否則不可讀取資料時使用(或具有一高錯誤率),或者如需要用於正常讀取操作。
對於以下論述,動態讀取之例示性實施例將具有一初始或預設組讀取參數及既彼此偏移且亦自預設情形偏移之若干不同動態讀取位準組。此等情形在偏壓位準(諸如字線或位元線層級)上或在比較點(諸如電壓、電流或放電時間)上可彼此不同。不同動態讀取案例之參數可儲存於保持在非揮發性記憶體中之一表中。此等參數可基於經驗測試而預載入或藉由諸如所闡述第7,876,621號美國專利之方法而預載入。對於記憶體之不同實體單元,此時正使用之當前讀取案例可保持一表。取決於實施方案,就記憶體之區塊、平面、晶粒或其他實體劃分區而論,此可以各種解析度位準完成,其中較小單元(諸如區塊層級)提供較大準確度,但以較多附加項為代價。此(實體單元、讀取案例)對應性可保持於控制器上,其中如所期望可更新之一複本保持於非揮發性記憶體中,替代地,開始時,系統可以預設情形開始且隨系統操作而更新。在其他實施例中,可在記憶體晶片上做出所有判定。當進入一讀取請求時,判定對應讀取案例且然後設定用於此案例之讀取參數。
當在一正常讀取程序期間錯誤量超過一臨限值時,記憶體將自該組讀取參數移位至下一組讀取參數,其中同一組讀取參數用於所有記憶體。舉例而言,若在以預設讀取參
數操作時錯誤量達到一臨限位準,則系統可轉至一第一動態讀取案例,然後,該系統將針對所有讀取使用該第一動態讀取案例繼續進行。一旦此第一動態讀取案例之所讀取錯誤量達到臨限值,則系統便將切換至第二動態讀取案例且使用此繼續,以此類推。在一變化形式中,系統切換至哪一動態讀取案例可基於錯誤量,從而若錯誤量足夠大,則跳過一或多個中間案例。
如前述部分中所論述,記憶體系統將通常使用讀取清除以試圖藉由將其複製至新位置來再新資料。此等演算法通常依靠隨機地或系統地掃描資料儲存空間(內務)之部分,或者依靠一實際主機讀取位置(有效讀取)。在此等讀取操作期間,系統將通常設定低於ECC校正位準之一臨限值以判定一組資料是否需要一再新。因此,用於此程序之讀取之完整性可靠係重要的。然而,當系統使用動態讀取且跨越整個一陣列應用相同讀取案例時,讀取結果之完整性取決於如何使用動態讀取。舉例而言,由於一個或數個區塊在一經擴展週期內被閒置,因此此等區塊將可能具有臨限值分佈中之較多劣化及較大資料保留問題,從而導致正使用之一特定讀取案例;但當然後將此同一組讀取參數應用於恰好已程式化之一區塊(且因此具有極少資料劣化)時,此等參數將不係最佳的,從而儘管相當好地界定了此區塊之狀態分佈,但結果仍係一相對高ECC失敗率。由於此,可不校正所得讀取清除複本決策。
因此讀取清除係基於使用動態讀取之系統之準確讀取結
果,此等部分呈現數個選項。在一第一組實施例中,當針對一清除執行一讀取時,記憶體系統使用預設讀取值,而非當前動態讀取值組(若此等值不同)。此將係當一記憶體系統使用動態讀取且由於某一較早讀取之結果而已自預設值移位其讀取參數時之情況。當記憶體系統針對內務執行一讀取清除掃描時,其將停用動態讀取且替代地使用預設值。此類似於上文關於圖9之步驟126但在動態讀取之上下文中所闡述之程序。若替代地,記憶體系統正執行一主動主機讀取且可校正ECC超過某一臨限值,則將設定指示此資料(頁或對應區塊)需要稍後重新檢查之一旗標。然後,系統可重新檢查該頁或選擇檢查整個對應區塊,此乃因區塊之其餘部分相對於資料保留可係邊際的。(舉例而言,當重新檢查特定頁時,儘管該頁可通過,但區塊中之其他頁不可通過。)當執行此重新檢查時,此時將停用動態讀取且使用預設讀取參數。停用動態讀取之此配置藉由參考返回至基線預設值之讀取而提供良好讀取結果。
在一變化形式中,可採用一中間值(或多個中間值),而非自當前動態讀取位準返回至基線值。舉例而言,若系統使用(例如)十種動態讀取案例,每一動態讀取案例逐漸遠離預設值,且當前正以此等值中之第六者來執行讀取(舉例而言,該等讀取並不返回至預設情形),則可使用一中間動態讀取案例(諸如第三動態讀取案例)。
根據一第二組實施例,清除程序使用動態讀取程序之態樣來判定是繼續使用而不進行再新一記憶體區塊、再新一
記憶體區塊還是汰除一記憶體區塊。如之前,再新意指當在清除程序中將來自一區塊之資料重新寫入(通常)至一新區塊時,資料來自於其之該區塊返回至系統資源供未來使用。若汰除,則源區塊替代地被視為係有缺陷的且不返回至集區供未來使用。在此等實施例中,對是否應再新或汰除一區塊之判定基於正使用哪一動態讀取案例編號。此第二組實施例允許系統藉由以由用於提取區塊之一頁之資料內容之特定動態讀取案例觸發之失敗類型為目標(再新、汰除或僅僅使其保持原樣;排定優先級)快速做出對一區塊之清除之決策。
如上文所述,不同動態讀取案例之讀取參數可儲存於一表中。當系統移位至一特定動態讀取案例編號時,此時可在表中查找所讀取值。根據此組實施例之態樣,動態讀取表經組態以使得案例編號中之每一者對應於系統應處置及應如何處置其之一失敗類型,處置如:按其原樣繼續使用該區塊、再新該區塊或汰除該區塊。注意,此方法不取決於與一ECC臨限值之比較;亦即,ECC不用於計算然後與某一臨限值或某些臨限值進行比較之錯誤量。而是,當使用預設讀取值或附近動態讀取案例時,區塊將不再新且繼續按原樣使用;但隨著動態讀取案例編號之值之移位逐漸遠離預設值,將基於使用之案例編號更新及汰除該區塊。
進一步擴展此方法,系統可基於動態讀取案例來排定區塊之處置或再新及汰除之優先級。舉例而言,儘管數個動態讀取案例編號將對應於再新,但此等編號可用於基於此
讀取案例編號來判定最需要再新那些區塊。在記憶體系統中,舉例而言,讀取清除隊列可經定義以具有某一最大長度,諸如8。該系統可使用動態讀取案例編號來針對該隊列添加區塊或排定區塊之優先級,將較緊急情形朝向該線之前方放置,且向下移動至(或若將超過最大長度,則甚至自該隊列移除)較低優先級區塊。若需要,亦可排定區塊之汰除之優先級;舉例而言,若備用區塊之數目隨著裝置老化而開始減少,則可保留其讀取案例指示其為邊際之區塊以供使用而不立即汰除。
在其他變化形式中,若希望做出是否較精確地執行一清除之決策,則系統可應用多個或甚至所有動態讀取案例以在做出如何處理一區塊或指派優先級之判定之前找出哪一編號係最佳案例編號(舉例而言,就最低可校正ECC臨限值而言)。為最小化當搜尋最佳動態讀取案例時之附加項時間,控制器可較智慧地進行此搜尋。該系統可查看最近所使用案例以判定欲檢查之下一案例,而非一簡單順序案例次序。舉例而言,若當前動態讀取案例編號為4,則系統可嘗試將當前案例(此處為4)轉至最後所使用案例(例如0),然後繼續至在彼案例之前使用之案例(例如案例7),以此類推,而非順序地繼續進行至案例5及繼續至案例6,以此類推。可進一步藉由以下各項來改良所涉及之附加項時間:做出關於已嘗試之案例之數目之一決策(舉例而言,將所嘗試之案例之數目限於一最大(例如)3),且然後使用該等案例用於判定該區塊與其他區塊如何「不同」以做出
清除判定。
圖11係流程圖以幫助圖解說明此程序之態樣。在201處開始,接收一讀取命令。對於待讀取之一或多個頁,基於其對應實體位置,在203處讀出相關聯當前動態讀取案例。在205處,記憶體針對此案例設定讀取參數且執行讀取操作。在207處,若認為讀取成功,則完成該讀取程序(209)。(取決於實施方案,即使由於提取了資料內容而讀取係成功的,但認為錯誤位準太高,亦可改變讀取案例,此又可對應於如在215處之一清除或汰除。)若替代地該讀取係一失敗,則在211處,將讀取案例移位且藉助對應讀取參數執行一新讀取。在213處,若藉助經移位讀取案例之讀取又係一失敗,則程序迴圈返回至211並再次將讀取案例移位且再次執行一讀取(除非對重試之數目設定一限制且達到此限制,或若可將參數移位之廣度已窮盡)。若替代地213處之讀取成功,則基於該讀取案例,在215處,記憶體做出是否再新、汰除或繼續按原樣使用區塊之決策,如上文所闡述。亦可基於該讀取案例來排定經標記用於再新、汰除或兩者之區塊之優先級。
儘管關於本發明之例示性實施例已闡述本發明之各種態樣,但將理解,本發明在隨附申請專利範圍之整個範疇內受保護。
11‧‧‧積體電路裝置(晶片)/記憶體晶片/記憶體裝置
13‧‧‧積體電路裝置(晶片)/陣列/記憶體晶片/記憶體裝置
15‧‧‧記憶體胞陣列
17‧‧‧邏輯電路
19‧‧‧控制器/典型控制器
21‧‧‧微處理器
23‧‧‧唯讀記憶體
25‧‧‧緩衝器記憶體/控制器緩衝器記憶體
27‧‧‧電路
29‧‧‧電路
31‧‧‧連接
33‧‧‧電路
35‧‧‧介面電路
37‧‧‧微處理器
39‧‧‧唯讀記憶體
41‧‧‧隨機存取記憶體
43‧‧‧其他電路及子系統
51‧‧‧使用者資料
53‧‧‧錯誤校正碼
55‧‧‧參數/附加項參數
57‧‧‧錯誤校正碼
59‧‧‧實例性區塊
61‧‧‧邏輯資料區塊
65‧‧‧電壓源
67‧‧‧電路
70‧‧‧電荷儲存電晶體
71‧‧‧電荷儲存電晶體
72‧‧‧電荷儲存電晶體
74‧‧‧電荷儲存電晶體
77‧‧‧選擇電晶體
79‧‧‧選擇電晶體
81‧‧‧電路
83‧‧‧線
84‧‧‧線
155‧‧‧臨限電壓防護帶/防護帶
156‧‧‧臨限電壓防護帶/防護帶
157‧‧‧臨限電壓防護帶/防護帶
159‧‧‧斷點位準
160‧‧‧斷點位準
161‧‧‧斷點位準
BL0至BLN‧‧‧位元線
P0至P15‧‧‧頁
Vss‧‧‧電壓
VT‧‧‧臨限電壓
WL0至WL15‧‧‧字線
圖1A及1B分別係一起操作之一非揮發性記憶體與一主
機系統之方塊圖;圖2圖解說明圖1A之記憶體陣列之一第一實例性組織;圖3展示具有儲存於圖1A之記憶體陣列中之附加項資料之一實例性主機資料區段;圖4圖解說明圖1A之記憶體陣列之一第二實例性組織;圖5圖解說明圖1A之記憶體陣列之一第三實例性組織;圖6圖解說明圖1A之記憶體陣列之第三實例性組織之一擴展形式;圖7係具有一個特定組態之圖1A之陣列之一記憶體胞群組之一電路圖;圖8係圖解說明一資料清除操作中之主要步驟之一流程圖;圖9係一清除操作之一較特定實例之一流程圖;且圖10展示一經程式化記憶體胞群組之電壓臨限位準之分佈。
圖11係圖解說明用於基於動態讀取案例做出再新決策之例示性實施例之某些態樣之一流程圖。
Claims (21)
- 一種操作一非揮發性記憶體系統之方法,該非揮發性記憶體系統包括一控制器電路及一或多個具有複數個實體單元之非揮發性記憶體電路,該等實體單元係一或多個區塊之實體單元,該方法包括:維持用於讀取操作以判定該等非揮發性記憶體電路之記憶體胞之資料內容之一組讀取參數,該組讀取參數包括用於一預設讀取案例之讀取參數及用於複數個相異且經移位讀取案例之讀取參數;對於該等實體單元之每一者,維持該實體單元與當讀取該實體單元時所使用之該等讀取案例中之一讀取案例之間的一對應性;使用資料之一頁所屬的該實體單元之對應讀取案例來針對該頁執行一讀取操作;判定該讀取操作是成功還是產生一失敗結果;回應於產生一失敗結果之一讀取操作,選擇可讀取該頁之一經移位讀取案例;及基於選定之該經移位讀取案例,判定是否更新該頁所屬的區塊。
- 如請求項1之方法,其中該實體單元係一區塊。
- 如請求項1之方法,其中該實體單元係一晶粒。
- 如請求項1之方法,其中該實體單元係一平面。
- 如請求項1之方法,其中該等讀取案例在選定用於該讀取操作之記憶體胞上使用之偏壓位準上不同。
- 如請求項1之方法,其中該等讀取案例在用於該讀取操作之比較位準上不同。
- 如請求項1之方法,其中判定該讀取操作是成功還是產生一失敗結果包含:判定是否成功提取該頁之資料內容。
- 如請求項1之方法,其中判定該讀取操作是否產生一失敗結果包含:判定該讀取產生超過一限度之一錯誤量。
- 如請求項1之方法,其中複數個該等讀取案例對應於再新,該方法進一步包括:回應於判定將再新該頁所屬的該區塊,基於選定之該經移位讀取案例,相對於經排程用於再新之其他區塊來排定該頁所屬的該區塊之該再新之優先級。
- 如請求項1之方法,其進一步包括:基於選定之該經移位讀取案例,判定是否汰除該頁所屬的該區塊。
- 如請求項10之方法,其中複數個該等讀取案例對應於汰除,該方法進一步包括:回應於判定將汰除該頁所屬的該區塊,基於選定之該經移位讀取案例,相對於經排程用於汰除之其他區塊來排定該頁所屬的該區塊之該汰除之優先級。
- 如請求項1之方法,其中選擇可讀取該頁之一經移位讀取案例包含以下各項之一或多次反覆:將當前讀取案例移位至不同讀取案例;及判定使用該經移位讀取案例之該讀取操作是成功還是 產生一失敗結果。
- 如請求項12之方法,其中將該當前讀取案例移位至其讀取參數組毗鄰於該當前讀取案例之一讀取案例。
- 如請求項1之方法,其中選擇可讀取該頁之一經移位讀取案例包含:自複數個經移位讀取案例當中判定具有最低錯誤量之經移位讀取案例。
- 如請求項1之方法,其進一步包括:維持待再新之區塊之一隊列;及回應於判定將再新該頁所屬的該區塊,將該頁所屬的該區塊添加至該隊列。
- 如請求項15之方法,其進一步包括:基於屬於該隊列之區塊之對應讀取案例排定該隊列之優先級。
- 如請求項16之方法,其中該隊列具有一最大長度,該方法進一步包括:回應於將該頁所屬的該區塊添加至該隊列致使該隊列之該長度超過其最大值,自該隊列逐出具有最低優先級之一區塊。
- 如請求項1之方法,其中該記憶體系統包含一控制器電路及一非揮發性記憶體電路,且其中該控制器維持該實體單元與該讀取案例之間的該對應性之一複本以當在該控制器上讀取揮發性記憶體中之該實體單元時使用。
- 如請求項18之方法,其中該控制器進一步維持該實體單元與該讀取案例之間的該對應性之一複本以在讀取非揮 發性記憶體中之該實體單元時使用。
- 如請求項1之方法,其中選擇該經移位讀取案例包含:選擇緊接在該當前讀取案例之前使用之一讀取案例。
- 如請求項20之方法,其中選擇一經移位讀取案例進一步包含:判定使用緊接在該當前讀取案例之前使用之該讀取案例之該讀取操作是成功還是產生一失敗結果;及回應於該產生一失敗結果,隨後基於使用緊接在該當前讀取案例之前使用之該讀取案例之該讀取操作之一結果與該當前讀取案例之一結果之一比較而判定又一經移位讀取案例。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161562080P | 2011-11-21 | 2011-11-21 | |
US13/435,476 US8687421B2 (en) | 2011-11-21 | 2012-03-30 | Scrub techniques for use with dynamic read |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201337559A TW201337559A (zh) | 2013-09-16 |
TWI570560B true TWI570560B (zh) | 2017-02-11 |
Family
ID=48426809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101142508A TWI570560B (zh) | 2011-11-21 | 2012-11-14 | 為動態讀取所使用之清除技術 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8687421B2 (zh) |
KR (1) | KR101849440B1 (zh) |
CN (1) | CN103946805A (zh) |
TW (1) | TWI570560B (zh) |
WO (1) | WO2013077962A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI621018B (zh) * | 2017-07-24 | 2018-04-11 | 大陸商深圳大心電子科技有限公司 | 資料備份方法、資料恢復方法以及儲存控制器 |
TWI783776B (zh) * | 2020-11-25 | 2022-11-11 | 美商美光科技公司 | 用於非揮發性記憶體之管理頁面汰除 |
Families Citing this family (253)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7978516B2 (en) | 2007-12-27 | 2011-07-12 | Pliant Technology, Inc. | Flash memory controller having reduced pinout |
US12027518B1 (en) | 2009-10-12 | 2024-07-02 | Monolithic 3D Inc. | 3D semiconductor devices and structures with metal layers |
US10043781B2 (en) | 2009-10-12 | 2018-08-07 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10388863B2 (en) | 2009-10-12 | 2019-08-20 | Monolithic 3D Inc. | 3D memory device and structure |
US10910364B2 (en) | 2009-10-12 | 2021-02-02 | Monolitaic 3D Inc. | 3D semiconductor device |
US11018133B2 (en) | 2009-10-12 | 2021-05-25 | Monolithic 3D Inc. | 3D integrated circuit |
US10354995B2 (en) | 2009-10-12 | 2019-07-16 | Monolithic 3D Inc. | Semiconductor memory device and structure |
US11984445B2 (en) | 2009-10-12 | 2024-05-14 | Monolithic 3D Inc. | 3D semiconductor devices and structures with metal layers |
US11374118B2 (en) | 2009-10-12 | 2022-06-28 | Monolithic 3D Inc. | Method to form a 3D integrated circuit |
US10366970B2 (en) | 2009-10-12 | 2019-07-30 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10157909B2 (en) | 2009-10-12 | 2018-12-18 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10217667B2 (en) | 2011-06-28 | 2019-02-26 | Monolithic 3D Inc. | 3D semiconductor device, fabrication method and system |
US11482440B2 (en) | 2010-12-16 | 2022-10-25 | Monolithic 3D Inc. | 3D semiconductor device and structure with a built-in test circuit for repairing faulty circuits |
US10497713B2 (en) | 2010-11-18 | 2019-12-03 | Monolithic 3D Inc. | 3D semiconductor memory device and structure |
US11469271B2 (en) | 2010-10-11 | 2022-10-11 | Monolithic 3D Inc. | Method to produce 3D semiconductor devices and structures with memory |
US10896931B1 (en) | 2010-10-11 | 2021-01-19 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11158674B2 (en) | 2010-10-11 | 2021-10-26 | Monolithic 3D Inc. | Method to produce a 3D semiconductor device and structure |
US11024673B1 (en) | 2010-10-11 | 2021-06-01 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10290682B2 (en) | 2010-10-11 | 2019-05-14 | Monolithic 3D Inc. | 3D IC semiconductor device and structure with stacked memory |
US11018191B1 (en) | 2010-10-11 | 2021-05-25 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11315980B1 (en) | 2010-10-11 | 2022-04-26 | Monolithic 3D Inc. | 3D semiconductor device and structure with transistors |
US11600667B1 (en) | 2010-10-11 | 2023-03-07 | Monolithic 3D Inc. | Method to produce 3D semiconductor devices and structures with memory |
US11227897B2 (en) | 2010-10-11 | 2022-01-18 | Monolithic 3D Inc. | Method for producing a 3D semiconductor memory device and structure |
US11257867B1 (en) | 2010-10-11 | 2022-02-22 | Monolithic 3D Inc. | 3D semiconductor device and structure with oxide bonds |
US10943934B2 (en) | 2010-10-13 | 2021-03-09 | Monolithic 3D Inc. | Multilevel semiconductor device and structure |
US10978501B1 (en) | 2010-10-13 | 2021-04-13 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with waveguides |
US10998374B1 (en) | 2010-10-13 | 2021-05-04 | Monolithic 3D Inc. | Multilevel semiconductor device and structure |
US11605663B2 (en) | 2010-10-13 | 2023-03-14 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors and wafer bonding |
US10679977B2 (en) | 2010-10-13 | 2020-06-09 | Monolithic 3D Inc. | 3D microdisplay device and structure |
US11984438B2 (en) | 2010-10-13 | 2024-05-14 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with oxide bonding |
US11327227B2 (en) | 2010-10-13 | 2022-05-10 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with electromagnetic modulators |
US11133344B2 (en) | 2010-10-13 | 2021-09-28 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors |
US11164898B2 (en) | 2010-10-13 | 2021-11-02 | Monolithic 3D Inc. | Multilevel semiconductor device and structure |
US11694922B2 (en) | 2010-10-13 | 2023-07-04 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with oxide bonding |
US11043523B1 (en) | 2010-10-13 | 2021-06-22 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors |
US11437368B2 (en) | 2010-10-13 | 2022-09-06 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with oxide bonding |
US11404466B2 (en) | 2010-10-13 | 2022-08-02 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors |
US11929372B2 (en) | 2010-10-13 | 2024-03-12 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors and wafer bonding |
US11163112B2 (en) | 2010-10-13 | 2021-11-02 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with electromagnetic modulators |
US11063071B1 (en) | 2010-10-13 | 2021-07-13 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with waveguides |
US11855100B2 (en) | 2010-10-13 | 2023-12-26 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with oxide bonding |
US11855114B2 (en) | 2010-10-13 | 2023-12-26 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors and wafer bonding |
US12080743B2 (en) | 2010-10-13 | 2024-09-03 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors and wafer bonding |
US12094892B2 (en) | 2010-10-13 | 2024-09-17 | Monolithic 3D Inc. | 3D micro display device and structure |
US10833108B2 (en) | 2010-10-13 | 2020-11-10 | Monolithic 3D Inc. | 3D microdisplay device and structure |
US11869915B2 (en) | 2010-10-13 | 2024-01-09 | Monolithic 3D Inc. | Multilevel semiconductor device and structure with image sensors and wafer bonding |
US11495484B2 (en) | 2010-11-18 | 2022-11-08 | Monolithic 3D Inc. | 3D semiconductor devices and structures with at least two single-crystal layers |
US11482438B2 (en) | 2010-11-18 | 2022-10-25 | Monolithic 3D Inc. | Methods for producing a 3D semiconductor memory device and structure |
US11121021B2 (en) | 2010-11-18 | 2021-09-14 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11735462B2 (en) | 2010-11-18 | 2023-08-22 | Monolithic 3D Inc. | 3D semiconductor device and structure with single-crystal layers |
US11443971B2 (en) | 2010-11-18 | 2022-09-13 | Monolithic 3D Inc. | 3D semiconductor device and structure with memory |
US12033884B2 (en) | 2010-11-18 | 2024-07-09 | Monolithic 3D Inc. | Methods for producing a 3D semiconductor device and structure with memory cells and multiple metal layers |
US11615977B2 (en) | 2010-11-18 | 2023-03-28 | Monolithic 3D Inc. | 3D semiconductor memory device and structure |
US11923230B1 (en) | 2010-11-18 | 2024-03-05 | Monolithic 3D Inc. | 3D semiconductor device and structure with bonding |
US11094576B1 (en) | 2010-11-18 | 2021-08-17 | Monolithic 3D Inc. | Methods for producing a 3D semiconductor memory device and structure |
US11482439B2 (en) | 2010-11-18 | 2022-10-25 | Monolithic 3D Inc. | Methods for producing a 3D semiconductor memory device comprising charge trap junction-less transistors |
US11355381B2 (en) | 2010-11-18 | 2022-06-07 | Monolithic 3D Inc. | 3D semiconductor memory device and structure |
US11610802B2 (en) | 2010-11-18 | 2023-03-21 | Monolithic 3D Inc. | Method for producing a 3D semiconductor device and structure with single crystal transistors and metal gate electrodes |
US11031275B2 (en) | 2010-11-18 | 2021-06-08 | Monolithic 3D Inc. | 3D semiconductor device and structure with memory |
US11508605B2 (en) | 2010-11-18 | 2022-11-22 | Monolithic 3D Inc. | 3D semiconductor memory device and structure |
US11854857B1 (en) | 2010-11-18 | 2023-12-26 | Monolithic 3D Inc. | Methods for producing a 3D semiconductor device and structure with memory cells and multiple metal layers |
US11804396B2 (en) | 2010-11-18 | 2023-10-31 | Monolithic 3D Inc. | Methods for producing a 3D semiconductor device and structure with memory cells and multiple metal layers |
US11521888B2 (en) | 2010-11-18 | 2022-12-06 | Monolithic 3D Inc. | 3D semiconductor device and structure with high-k metal gate transistors |
US11355380B2 (en) | 2010-11-18 | 2022-06-07 | Monolithic 3D Inc. | Methods for producing 3D semiconductor memory device and structure utilizing alignment marks |
US11211279B2 (en) | 2010-11-18 | 2021-12-28 | Monolithic 3D Inc. | Method for processing a 3D integrated circuit and structure |
US11784082B2 (en) | 2010-11-18 | 2023-10-10 | Monolithic 3D Inc. | 3D semiconductor device and structure with bonding |
US11004719B1 (en) | 2010-11-18 | 2021-05-11 | Monolithic 3D Inc. | Methods for producing a 3D semiconductor memory device and structure |
US11901210B2 (en) | 2010-11-18 | 2024-02-13 | Monolithic 3D Inc. | 3D semiconductor device and structure with memory |
US11569117B2 (en) | 2010-11-18 | 2023-01-31 | Monolithic 3D Inc. | 3D semiconductor device and structure with single-crystal layers |
US11862503B2 (en) | 2010-11-18 | 2024-01-02 | Monolithic 3D Inc. | Method for producing a 3D semiconductor device and structure with memory cells and multiple metal layers |
US11164770B1 (en) | 2010-11-18 | 2021-11-02 | Monolithic 3D Inc. | Method for producing a 3D semiconductor memory device and structure |
US11107721B2 (en) | 2010-11-18 | 2021-08-31 | Monolithic 3D Inc. | 3D semiconductor device and structure with NAND logic |
US12068187B2 (en) | 2010-11-18 | 2024-08-20 | Monolithic 3D Inc. | 3D semiconductor device and structure with bonding and DRAM memory cells |
US11018042B1 (en) | 2010-11-18 | 2021-05-25 | Monolithic 3D Inc. | 3D semiconductor memory device and structure |
US9007836B2 (en) * | 2011-01-13 | 2015-04-14 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
JP5377526B2 (ja) | 2011-01-13 | 2013-12-25 | 株式会社東芝 | 不揮発性半導体記憶装置 |
KR101756111B1 (ko) * | 2011-04-15 | 2017-07-10 | 삼성전자 주식회사 | 메모리 컨트롤러 구동방법, 메모리 컨트롤러, 메모리 장치 및 메모리 시스템 |
US10388568B2 (en) | 2011-06-28 | 2019-08-20 | Monolithic 3D Inc. | 3D semiconductor device and system |
US9058289B2 (en) | 2011-11-07 | 2015-06-16 | Sandisk Enterprise Ip Llc | Soft information generation for memory systems |
US11476181B1 (en) | 2012-04-09 | 2022-10-18 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US11881443B2 (en) | 2012-04-09 | 2024-01-23 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and a connective path |
US11735501B1 (en) | 2012-04-09 | 2023-08-22 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and a connective path |
US11594473B2 (en) | 2012-04-09 | 2023-02-28 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and a connective path |
US11088050B2 (en) | 2012-04-09 | 2021-08-10 | Monolithic 3D Inc. | 3D semiconductor device with isolation layers |
US11616004B1 (en) | 2012-04-09 | 2023-03-28 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and a connective path |
US11410912B2 (en) | 2012-04-09 | 2022-08-09 | Monolithic 3D Inc. | 3D semiconductor device with vias and isolation layers |
US11694944B1 (en) | 2012-04-09 | 2023-07-04 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and a connective path |
US11164811B2 (en) | 2012-04-09 | 2021-11-02 | Monolithic 3D Inc. | 3D semiconductor device with isolation layers and oxide-to-oxide bonding |
US10600888B2 (en) | 2012-04-09 | 2020-03-24 | Monolithic 3D Inc. | 3D semiconductor device |
US9699263B1 (en) | 2012-08-17 | 2017-07-04 | Sandisk Technologies Llc. | Automatic read and write acceleration of data accessed by virtual machines |
US8966343B2 (en) * | 2012-08-21 | 2015-02-24 | Western Digital Technologies, Inc. | Solid-state drive retention monitor using reference blocks |
WO2014074496A2 (en) | 2012-11-09 | 2014-05-15 | Sandisk Technologies Inc. | Cam nand with or function and full chip search capability |
US9171620B2 (en) | 2012-11-29 | 2015-10-27 | Sandisk Technologies Inc. | Weighted read scrub for nonvolatile memory |
US11309292B2 (en) | 2012-12-22 | 2022-04-19 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US11916045B2 (en) | 2012-12-22 | 2024-02-27 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US12051674B2 (en) | 2012-12-22 | 2024-07-30 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US11961827B1 (en) | 2012-12-22 | 2024-04-16 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US11063024B1 (en) | 2012-12-22 | 2021-07-13 | Monlithic 3D Inc. | Method to form a 3D semiconductor device and structure |
US11967583B2 (en) | 2012-12-22 | 2024-04-23 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US11018116B2 (en) | 2012-12-22 | 2021-05-25 | Monolithic 3D Inc. | Method to form a 3D semiconductor device and structure |
US11217565B2 (en) | 2012-12-22 | 2022-01-04 | Monolithic 3D Inc. | Method to form a 3D semiconductor device and structure |
US11784169B2 (en) | 2012-12-22 | 2023-10-10 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US9501398B2 (en) | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
US9612948B2 (en) | 2012-12-27 | 2017-04-04 | Sandisk Technologies Llc | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device |
US9239751B1 (en) | 2012-12-27 | 2016-01-19 | Sandisk Enterprise Ip Llc | Compressing data from multiple reads for error control management in memory systems |
US10903089B1 (en) | 2012-12-29 | 2021-01-26 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11177140B2 (en) | 2012-12-29 | 2021-11-16 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11430668B2 (en) | 2012-12-29 | 2022-08-30 | Monolithic 3D Inc. | 3D semiconductor device and structure with bonding |
US10892169B2 (en) | 2012-12-29 | 2021-01-12 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10115663B2 (en) | 2012-12-29 | 2018-10-30 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11430667B2 (en) | 2012-12-29 | 2022-08-30 | Monolithic 3D Inc. | 3D semiconductor device and structure with bonding |
US11087995B1 (en) | 2012-12-29 | 2021-08-10 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10600657B2 (en) | 2012-12-29 | 2020-03-24 | Monolithic 3D Inc | 3D semiconductor device and structure |
US11004694B1 (en) | 2012-12-29 | 2021-05-11 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10651054B2 (en) | 2012-12-29 | 2020-05-12 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US9454420B1 (en) | 2012-12-31 | 2016-09-27 | Sandisk Technologies Llc | Method and system of reading threshold voltage equalization |
US10325651B2 (en) * | 2013-03-11 | 2019-06-18 | Monolithic 3D Inc. | 3D semiconductor device with stacked memory |
US8902663B1 (en) | 2013-03-11 | 2014-12-02 | Monolithic 3D Inc. | Method of maintaining a memory state |
US12094965B2 (en) | 2013-03-11 | 2024-09-17 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and memory cells |
US11869965B2 (en) | 2013-03-11 | 2024-01-09 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and memory cells |
US11935949B1 (en) | 2013-03-11 | 2024-03-19 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers and memory cells |
US11398569B2 (en) | 2013-03-12 | 2022-07-26 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11088130B2 (en) | 2014-01-28 | 2021-08-10 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11923374B2 (en) | 2013-03-12 | 2024-03-05 | Monolithic 3D Inc. | 3D semiconductor device and structure with metal layers |
US10840239B2 (en) | 2014-08-26 | 2020-11-17 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US9870830B1 (en) | 2013-03-14 | 2018-01-16 | Sandisk Technologies Llc | Optimal multilevel sensing for reading data from a storage medium |
US10224279B2 (en) | 2013-03-15 | 2019-03-05 | Monolithic 3D Inc. | Semiconductor device and structure |
US9244763B1 (en) | 2013-03-15 | 2016-01-26 | Sandisk Enterprise Ip Llc | System and method for updating a reading threshold voltage based on symbol transition information |
US9136877B1 (en) | 2013-03-15 | 2015-09-15 | Sandisk Enterprise Ip Llc | Syndrome layered decoding for LDPC codes |
US9236886B1 (en) | 2013-03-15 | 2016-01-12 | Sandisk Enterprise Ip Llc | Universal and reconfigurable QC-LDPC encoder |
US9367246B2 (en) | 2013-03-15 | 2016-06-14 | Sandisk Technologies Inc. | Performance optimization of data transfer for soft information generation |
US11487928B2 (en) | 2013-04-15 | 2022-11-01 | Monolithic 3D Inc. | Automation for monolithic 3D devices |
US9021414B1 (en) | 2013-04-15 | 2015-04-28 | Monolithic 3D Inc. | Automation for monolithic 3D devices |
US11030371B2 (en) | 2013-04-15 | 2021-06-08 | Monolithic 3D Inc. | Automation for monolithic 3D devices |
US11720736B2 (en) | 2013-04-15 | 2023-08-08 | Monolithic 3D Inc. | Automation methods for 3D integrated circuits and devices |
US11341309B1 (en) | 2013-04-15 | 2022-05-24 | Monolithic 3D Inc. | Automation for monolithic 3D devices |
US11270055B1 (en) | 2013-04-15 | 2022-03-08 | Monolithic 3D Inc. | Automation for monolithic 3D devices |
US11574109B1 (en) | 2013-04-15 | 2023-02-07 | Monolithic 3D Inc | Automation methods for 3D integrated circuits and devices |
US9159437B2 (en) | 2013-06-11 | 2015-10-13 | Sandisk Enterprise IP LLC. | Device and method for resolving an LM flag issue |
US9727413B2 (en) * | 2013-06-28 | 2017-08-08 | International Business Machines Corporation | Flash memory scrub management |
US9384126B1 (en) | 2013-07-25 | 2016-07-05 | Sandisk Technologies Inc. | Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems |
US9524235B1 (en) | 2013-07-25 | 2016-12-20 | Sandisk Technologies Llc | Local hash value generation in non-volatile data storage systems |
US9639463B1 (en) | 2013-08-26 | 2017-05-02 | Sandisk Technologies Llc | Heuristic aware garbage collection scheme in storage systems |
US9361221B1 (en) | 2013-08-26 | 2016-06-07 | Sandisk Technologies Inc. | Write amplification reduction through reliable writes during garbage collection |
US9298534B2 (en) * | 2013-09-05 | 2016-03-29 | Kabushiki Kaisha Toshiba | Memory system and constructing method of logical block |
US9442662B2 (en) | 2013-10-18 | 2016-09-13 | Sandisk Technologies Llc | Device and method for managing die groups |
US9298608B2 (en) | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
US9436831B2 (en) * | 2013-10-30 | 2016-09-06 | Sandisk Technologies Llc | Secure erase in a memory device |
US9263156B2 (en) | 2013-11-07 | 2016-02-16 | Sandisk Enterprise Ip Llc | System and method for adjusting trip points within a storage device |
US9244785B2 (en) | 2013-11-13 | 2016-01-26 | Sandisk Enterprise Ip Llc | Simulated power failure and data hardening |
US9703816B2 (en) | 2013-11-19 | 2017-07-11 | Sandisk Technologies Llc | Method and system for forward reference logging in a persistent datastore |
US9520197B2 (en) | 2013-11-22 | 2016-12-13 | Sandisk Technologies Llc | Adaptive erase of a storage device |
US9520162B2 (en) | 2013-11-27 | 2016-12-13 | Sandisk Technologies Llc | DIMM device controller supervisor |
US9582058B2 (en) | 2013-11-29 | 2017-02-28 | Sandisk Technologies Llc | Power inrush management of storage devices |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
GB201322075D0 (en) | 2013-12-13 | 2014-01-29 | Ibm | Device for selecting a level for at least one read voltage |
US10297586B2 (en) | 2015-03-09 | 2019-05-21 | Monolithic 3D Inc. | Methods for processing a 3D semiconductor device |
US11107808B1 (en) | 2014-01-28 | 2021-08-31 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US12094829B2 (en) | 2014-01-28 | 2024-09-17 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11031394B1 (en) | 2014-01-28 | 2021-06-08 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US9703636B2 (en) | 2014-03-01 | 2017-07-11 | Sandisk Technologies Llc | Firmware reversion trigger and control |
US9230689B2 (en) * | 2014-03-17 | 2016-01-05 | Sandisk Technologies Inc. | Finding read disturbs on non-volatile memories |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9454448B2 (en) | 2014-03-19 | 2016-09-27 | Sandisk Technologies Llc | Fault testing in storage devices |
US9448876B2 (en) | 2014-03-19 | 2016-09-20 | Sandisk Technologies Llc | Fault detection and prediction in storage devices |
US9390021B2 (en) | 2014-03-31 | 2016-07-12 | Sandisk Technologies Llc | Efficient cache utilization in a tiered data structure |
US9626400B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Compaction of information in tiered data structure |
US9626399B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Conditional updates for reducing frequency of data modification operations |
US9697267B2 (en) | 2014-04-03 | 2017-07-04 | Sandisk Technologies Llc | Methods and systems for performing efficient snapshots in tiered data structures |
CN106463179B (zh) | 2014-04-16 | 2019-11-19 | 英特尔公司 | 利用存储器控制器处理数据错误事件的方法、装置和系统 |
US9501222B2 (en) * | 2014-05-09 | 2016-11-22 | Micron Technology, Inc. | Protection zones in virtualized physical addresses for reconfigurable memory systems using a memory abstraction |
US10656840B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Real-time I/O pattern recognition to enhance performance and endurance of a storage device |
US10146448B2 (en) | 2014-05-30 | 2018-12-04 | Sandisk Technologies Llc | Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device |
US10162748B2 (en) | 2014-05-30 | 2018-12-25 | Sandisk Technologies Llc | Prioritizing garbage collection and block allocation based on I/O history for logical address regions |
US9703491B2 (en) | 2014-05-30 | 2017-07-11 | Sandisk Technologies Llc | Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device |
US10372613B2 (en) | 2014-05-30 | 2019-08-06 | Sandisk Technologies Llc | Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device |
US10656842B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device |
US10114557B2 (en) | 2014-05-30 | 2018-10-30 | Sandisk Technologies Llc | Identification of hot regions to enhance performance and endurance of a non-volatile storage device |
US9652381B2 (en) | 2014-06-19 | 2017-05-16 | Sandisk Technologies Llc | Sub-block garbage collection |
KR102190241B1 (ko) | 2014-07-31 | 2020-12-14 | 삼성전자주식회사 | 메모리 컨트롤러의 동작 방법 및 불휘발성 메모리 시스템 |
US9443601B2 (en) | 2014-09-08 | 2016-09-13 | Sandisk Technologies Llc | Holdup capacitor energy harvesting |
US9563373B2 (en) | 2014-10-21 | 2017-02-07 | International Business Machines Corporation | Detecting error count deviations for non-volatile memory blocks for advanced non-volatile memory block management |
DE102014115885B4 (de) * | 2014-10-31 | 2018-03-08 | Infineon Technologies Ag | Funktionstüchtigkeitszustand von nicht-flüchtigem Speicher |
US9990279B2 (en) | 2014-12-23 | 2018-06-05 | International Business Machines Corporation | Page-level health equalization |
US10339048B2 (en) | 2014-12-23 | 2019-07-02 | International Business Machines Corporation | Endurance enhancement scheme using memory re-evaluation |
US9658963B2 (en) * | 2014-12-23 | 2017-05-23 | Intel Corporation | Speculative reads in buffered memory |
US9933950B2 (en) * | 2015-01-16 | 2018-04-03 | Sandisk Technologies Llc | Storage operation interrupt |
US9928138B2 (en) | 2015-02-17 | 2018-03-27 | Toshiba Memory Corporation | Memory system |
US10522212B2 (en) | 2015-03-10 | 2019-12-31 | Micron Technology, Inc. | Apparatuses and methods for shift decisions |
US11011507B1 (en) | 2015-04-19 | 2021-05-18 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US11056468B1 (en) | 2015-04-19 | 2021-07-06 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10381328B2 (en) | 2015-04-19 | 2019-08-13 | Monolithic 3D Inc. | Semiconductor device and structure |
US10825779B2 (en) | 2015-04-19 | 2020-11-03 | Monolithic 3D Inc. | 3D semiconductor device and structure |
KR20160146332A (ko) * | 2015-06-12 | 2016-12-21 | 에스케이하이닉스 주식회사 | 복수의 저장 영역들을 포함하는 메모리 시스템 및 그것의 동작 방법 |
TWI563509B (en) * | 2015-07-07 | 2016-12-21 | Phison Electronics Corp | Wear leveling method, memory storage device and memory control circuit unit |
US9864653B2 (en) | 2015-07-30 | 2018-01-09 | International Business Machines Corporation | Memory scrubbing in a mirrored memory system to reduce system power consumption |
US9766814B2 (en) | 2015-08-10 | 2017-09-19 | Intel Corporation | Method and apparatus for defect management in a non-volatile memory device |
US11956952B2 (en) | 2015-08-23 | 2024-04-09 | Monolithic 3D Inc. | Semiconductor memory device and structure |
WO2017053329A1 (en) | 2015-09-21 | 2017-03-30 | Monolithic 3D Inc | 3d semiconductor device and structure |
US11937422B2 (en) | 2015-11-07 | 2024-03-19 | Monolithic 3D Inc. | Semiconductor memory device and structure |
US11978731B2 (en) | 2015-09-21 | 2024-05-07 | Monolithic 3D Inc. | Method to produce a multi-level semiconductor memory device and structure |
US11114427B2 (en) | 2015-11-07 | 2021-09-07 | Monolithic 3D Inc. | 3D semiconductor processor and memory device and structure |
US10522225B1 (en) | 2015-10-02 | 2019-12-31 | Monolithic 3D Inc. | Semiconductor device with non-volatile memory |
US12035531B2 (en) | 2015-10-24 | 2024-07-09 | Monolithic 3D Inc. | 3D semiconductor device and structure with logic and memory |
US11991884B1 (en) | 2015-10-24 | 2024-05-21 | Monolithic 3D Inc. | 3D semiconductor device and structure with logic and memory |
US11114464B2 (en) | 2015-10-24 | 2021-09-07 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10847540B2 (en) | 2015-10-24 | 2020-11-24 | Monolithic 3D Inc. | 3D semiconductor memory device and structure |
US12016181B2 (en) | 2015-10-24 | 2024-06-18 | Monolithic 3D Inc. | 3D semiconductor device and structure with logic and memory |
US11296115B1 (en) | 2015-10-24 | 2022-04-05 | Monolithic 3D Inc. | 3D semiconductor device and structure |
US10418369B2 (en) | 2015-10-24 | 2019-09-17 | Monolithic 3D Inc. | Multi-level semiconductor memory device and structure |
FR3044818B1 (fr) * | 2015-12-02 | 2018-03-30 | Stmicroelectronics (Rousset) Sas | Procede de gestion d'une ligne defectueuse du plan memoire d'une memoire non volatile et dispositif de memoire correspondant |
US10446242B2 (en) | 2016-05-27 | 2019-10-15 | Western Digital Technologies, Inc. | Temperature variation compensation |
US9996281B2 (en) | 2016-03-04 | 2018-06-12 | Western Digital Technologies, Inc. | Temperature variation compensation |
US10564900B2 (en) | 2016-03-04 | 2020-02-18 | Western Digital Technologies, Inc. | Temperature variation compensation |
US9715937B1 (en) | 2016-06-15 | 2017-07-25 | Sandisk Technologies Llc | Dynamic tuning of first read countermeasures |
US9711231B1 (en) | 2016-06-24 | 2017-07-18 | Sandisk Technologies Llc | System solution for first read issue using time dependent read voltages |
US10241860B2 (en) * | 2016-08-15 | 2019-03-26 | Samsung Electronics Co., Ltd. | Method of executing data scrubbing inside a smart storage device |
KR102559530B1 (ko) * | 2016-09-19 | 2023-07-27 | 에스케이하이닉스 주식회사 | 저항성 메모리 장치, 이를 위한 디스터번스 방지 회로 및 방법 |
US11930648B1 (en) | 2016-10-10 | 2024-03-12 | Monolithic 3D Inc. | 3D memory devices and structures with metal layers |
US11711928B2 (en) | 2016-10-10 | 2023-07-25 | Monolithic 3D Inc. | 3D memory devices and structures with control circuits |
US11251149B2 (en) | 2016-10-10 | 2022-02-15 | Monolithic 3D Inc. | 3D memory device and structure |
US11869591B2 (en) | 2016-10-10 | 2024-01-09 | Monolithic 3D Inc. | 3D memory devices and structures with control circuits |
US11812620B2 (en) | 2016-10-10 | 2023-11-07 | Monolithic 3D Inc. | 3D DRAM memory devices and structures with control circuits |
US11329059B1 (en) | 2016-10-10 | 2022-05-10 | Monolithic 3D Inc. | 3D memory devices and structures with thinned single crystal substrates |
US10558381B2 (en) * | 2016-12-16 | 2020-02-11 | Sandisk Technologies Llc | Dynamic read table generation |
US10025661B1 (en) | 2016-12-27 | 2018-07-17 | Sandisk Technologies Llc | Adaptive hard and soft bit decoding |
US10304559B2 (en) | 2016-12-30 | 2019-05-28 | Western Digital Technologies, Inc. | Memory write verification using temperature compensation |
US10553301B2 (en) | 2017-06-03 | 2020-02-04 | Sandisk Technologies Llc | Dynamic read table block filter |
CN109324921A (zh) * | 2017-07-31 | 2019-02-12 | 大心电子(英属维京群岛)股份有限公司 | 数据备份方法、数据恢复方法以及存储控制器 |
US10522229B2 (en) | 2017-08-30 | 2019-12-31 | Micron Technology, Inc. | Secure erase for data corruption |
US10387281B2 (en) | 2017-08-30 | 2019-08-20 | Micron Technology, Inc. | Flash memory block retirement policy |
US10347315B2 (en) | 2017-10-31 | 2019-07-09 | Sandisk Technologies Llc | Group read refresh |
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 |
US11119662B2 (en) | 2018-06-29 | 2021-09-14 | International Business Machines Corporation | Determining when to perform a data integrity check of copies of a data set using a machine learning module |
US11119850B2 (en) * | 2018-06-29 | 2021-09-14 | International Business Machines Corporation | Determining when to perform error checking of a storage unit by using a machine learning module |
US11099743B2 (en) | 2018-06-29 | 2021-08-24 | International Business Machines Corporation | Determining when to replace a storage device using a machine learning module |
US10877880B2 (en) * | 2018-10-11 | 2020-12-29 | Micron Technology, Inc. | Unretiring memory device blocks |
US11158652B1 (en) | 2019-04-08 | 2021-10-26 | Monolithic 3D Inc. | 3D memory semiconductor devices and structures |
US10892016B1 (en) | 2019-04-08 | 2021-01-12 | Monolithic 3D Inc. | 3D memory semiconductor devices and structures |
US11018156B2 (en) | 2019-04-08 | 2021-05-25 | Monolithic 3D Inc. | 3D memory semiconductor devices and structures |
US11296106B2 (en) | 2019-04-08 | 2022-04-05 | Monolithic 3D Inc. | 3D memory semiconductor devices and structures |
US11763864B2 (en) | 2019-04-08 | 2023-09-19 | Monolithic 3D Inc. | 3D memory semiconductor devices and structures with bit-line pillars |
US10734079B1 (en) * | 2019-05-17 | 2020-08-04 | Western Digital Technologies, Inc. | Sub block mode read scrub design for non-volatile memory |
US11347884B2 (en) | 2019-07-02 | 2022-05-31 | Bank Of America Corporation | Data security tool |
US10922012B1 (en) * | 2019-09-03 | 2021-02-16 | Dropbox, Inc. | Fair data scrubbing in a data storage system |
US11475974B2 (en) * | 2020-08-27 | 2022-10-18 | Micron Technology, Inc. | Memory device virtual blocks using half good blocks |
US20240211344A1 (en) * | 2020-09-26 | 2024-06-27 | Intel Corporation | Adaptive internal error scrubbing and error handling |
KR20220049397A (ko) | 2020-10-14 | 2022-04-21 | 삼성전자주식회사 | 메모리 장치, 이를 포함하는 스토리지 장치 및 스토리지 장치의 동작 방법 |
US11699498B2 (en) | 2020-12-04 | 2023-07-11 | Micron Technology, Inc. | Managing probabilistic data integrity scan intervals |
US11409599B2 (en) | 2020-12-04 | 2022-08-09 | Micron Technology, Inc. | Managing probabilistic data integrity scans in workloads with localized read patterns |
US11609857B2 (en) | 2020-12-04 | 2023-03-21 | Micron Technology, Inc. | Identification and caching of frequent read disturb aggressors |
US11467737B2 (en) * | 2020-12-04 | 2022-10-11 | Micron Technology, Inc. | Reducing probabilistic data integrity scan collisions |
US20230409239A1 (en) * | 2022-06-21 | 2023-12-21 | Micron Technology, Inc. | Efficient command fetching in a memory sub-system |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200703341A (en) * | 2005-04-05 | 2007-01-16 | Sandisk Corp | Read operation for non-volatile storage that includes compensation for coupling |
TW200929227A (en) * | 2007-12-31 | 2009-07-01 | Phison Electronics Corp | Method for preventing read-disturb happened in non-volatile memory and controller thereof |
TW200947445A (en) * | 2008-03-01 | 2009-11-16 | Toshiba Kk | Memory system |
TW201027541A (en) * | 2008-12-18 | 2010-07-16 | Sandisk Corp | Data refresh for non-volatile storage |
TW201135746A (en) * | 2009-12-30 | 2011-10-16 | Sandisk Corp | Method and controller for performing a copy-back operation |
TW201137891A (en) * | 2010-04-19 | 2011-11-01 | Silicon Motion Inc | Method for performing memory access management, and associated memory device and controller thereof |
TW201140604A (en) * | 2009-10-28 | 2011-11-16 | Sandisk Corp | Non-volatile memory and method with accelerated post-write read to manage errors |
TW201140605A (en) * | 2009-10-28 | 2011-11-16 | Sandisk Corp | Non-volatile memory and method with post-write read and adaptive re-write to manage errors |
Family Cites Families (148)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US531342A (en) | 1894-12-25 | Excelsior-cutting machine | ||
US4139911A (en) | 1978-03-13 | 1979-02-13 | Westinghouse Electric Corp. | High speed sense circuit for semiconductor memories |
US4218764A (en) | 1978-10-03 | 1980-08-19 | Matsushita Electric Industrial Co., Ltd. | Non-volatile memory refresh control circuit |
US4253059A (en) | 1979-05-14 | 1981-02-24 | Fairchild Camera & Instrument Corp. | EPROM Reliability test circuit |
JPS58139399A (ja) | 1982-02-15 | 1983-08-18 | Hitachi Ltd | 半導体記憶装置 |
US4460982A (en) | 1982-05-20 | 1984-07-17 | Intel Corporation | Intelligent electrically programmable and electrically erasable ROM |
US4612630A (en) | 1984-07-27 | 1986-09-16 | Harris Corporation | EEPROM margin testing design |
JPS6134793A (ja) | 1984-07-27 | 1986-02-19 | Hitachi Ltd | ダイナミツクメモリ装置における診断及びエラ−訂正装置 |
JPS6148197A (ja) | 1984-08-13 | 1986-03-08 | Fujitsu Ltd | チヤ−ジアツプ回路 |
JPS61172300A (ja) | 1985-01-26 | 1986-08-02 | Toshiba Corp | 半導体記憶装置 |
EP0198935A1 (de) | 1985-04-23 | 1986-10-29 | Deutsche ITT Industries GmbH | Elektrisch umprogrammierbarer Halbleiterspeicher mit Redundanz |
US4962322A (en) | 1988-12-05 | 1990-10-09 | Texas Instruments Incorporated | Nonvolatible capacitor random access memory |
JPS62114200A (ja) | 1985-11-13 | 1987-05-25 | Mitsubishi Electric Corp | 半導体メモリ装置 |
US5157629A (en) | 1985-11-22 | 1992-10-20 | Hitachi, Ltd. | Selective application of voltages for testing storage cells in semiconductor memory arrangements |
US4763305A (en) | 1985-11-27 | 1988-08-09 | Motorola, Inc. | Intelligent write in an EEPROM with data and erase check |
JPH0715799B2 (ja) | 1987-06-30 | 1995-02-22 | 日本電気株式会社 | 半導体記憶装置 |
FR2618579B1 (fr) | 1987-07-21 | 1989-11-10 | Thomson Semiconducteurs | Circuit integre a memoire comportant un dispositif anti-fraude |
JPS6476596A (en) | 1987-09-18 | 1989-03-22 | Oki Electric Ind Co Ltd | Error of eeprom detecting device |
US4809231A (en) | 1987-11-12 | 1989-02-28 | Motorola, Inc. | Method and apparatus for post-packaging testing of one-time programmable memories |
FR2630573B1 (fr) | 1988-04-26 | 1990-07-13 | Sgs Thomson Microelectronics | Memoire programmable electriquement avec plusieurs bits d'information par cellule |
US5043940A (en) | 1988-06-08 | 1991-08-27 | Eliyahou Harari | Flash EEPROM memory systems having multistate storage cells |
US5268870A (en) | 1988-06-08 | 1993-12-07 | Eliyahou Harari | Flash EEPROM system and intelligent programming and erasing methods therefor |
US5095344A (en) | 1988-06-08 | 1992-03-10 | Eliyahou Harari | Highly compact eprom and flash eeprom devices |
JPH07105146B2 (ja) | 1988-07-29 | 1995-11-13 | 三菱電機株式会社 | 不揮発性記憶装置 |
US5070032A (en) | 1989-03-15 | 1991-12-03 | Sundisk Corporation | Method of making dense flash eeprom semiconductor memory structures |
JPH02260298A (ja) | 1989-03-31 | 1990-10-23 | Oki Electric Ind Co Ltd | 不揮発性多値メモリ装置 |
US4980859A (en) | 1989-04-07 | 1990-12-25 | Xicor, Inc. | NOVRAM cell using two differential decouplable nonvolatile memory elements |
US5172338B1 (en) | 1989-04-13 | 1997-07-08 | Sandisk Corp | Multi-state eeprom read and write circuits and techniques |
JPH0664918B2 (ja) | 1989-05-25 | 1994-08-22 | ローム株式会社 | 自己訂正機能を有する半導体記憶装置 |
JPH07114077B2 (ja) | 1989-06-01 | 1995-12-06 | 三菱電機株式会社 | 不揮発性半導体記憶装置 |
US5258958A (en) | 1989-06-12 | 1993-11-02 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
FR2650109B1 (fr) | 1989-07-20 | 1993-04-02 | Gemplus Card Int | Circuit integre mos a tension de seuil ajustable |
JPH03162800A (ja) | 1989-08-29 | 1991-07-12 | Mitsubishi Electric Corp | 半導体メモリ装置 |
US5065364A (en) | 1989-09-15 | 1991-11-12 | Intel Corporation | Apparatus for providing block erasing in a flash EPROM |
US5200959A (en) | 1989-10-17 | 1993-04-06 | Sundisk Corporation | Device and method for defect handling in semi-conductor memory |
US5270551A (en) | 1990-02-14 | 1993-12-14 | Hitachi, Ltd. | Method of and apparatus for protecting electronic circuit against radiation |
US4975883A (en) | 1990-03-29 | 1990-12-04 | Intel Corporation | Method and apparatus for preventing the erasure and programming of a nonvolatile memory |
US5122985A (en) | 1990-04-16 | 1992-06-16 | Giovani Santin | Circuit and method for erasing eeprom memory arrays to prevent over-erased cells |
US5132935A (en) | 1990-04-16 | 1992-07-21 | Ashmore Jr Benjamin H | Erasure of eeprom memory arrays to prevent over-erased cells |
US5200922A (en) | 1990-10-24 | 1993-04-06 | Rao Kameswara K | Redundancy circuit for high speed EPROM and flash memory devices |
US5343063A (en) | 1990-12-18 | 1994-08-30 | Sundisk Corporation | Dense vertical programmable read only memory cell structure and processes for making them |
US5239505A (en) | 1990-12-28 | 1993-08-24 | Intel Corporation | Floating gate non-volatile memory with blocks and memory refresh |
US5504760A (en) | 1991-03-15 | 1996-04-02 | Sandisk Corporation | Mixed data encoding EEPROM system |
US5270979A (en) | 1991-03-15 | 1993-12-14 | Sundisk Corporation | Method for optimum erasing of EEPROM |
US5263032A (en) | 1991-06-27 | 1993-11-16 | Digital Equipment Corporation | Computer system operation with corrected read data function |
US5313427A (en) | 1991-09-20 | 1994-05-17 | Texas Instruments Incorporated | EEPROM array with narrow margin of voltage thresholds after erase |
JPH05109292A (ja) | 1991-10-14 | 1993-04-30 | Toshiba Corp | 不揮発性半導体記憶装置 |
US6222762B1 (en) | 1992-01-14 | 2001-04-24 | Sandisk Corporation | Multi-state memory |
US5313421A (en) | 1992-01-14 | 1994-05-17 | Sundisk Corporation | EEPROM with split gate source side injection |
US5347489A (en) | 1992-04-21 | 1994-09-13 | Intel Corporation | Method and circuitry for preconditioning shorted rows in a nonvolatile semiconductor memory incorporating row redundancy |
US5327383A (en) | 1992-04-21 | 1994-07-05 | Intel Corporation | Method and circuitry for erasing a nonvolatile semiconductor memory incorporating row redundancy |
US5532962A (en) | 1992-05-20 | 1996-07-02 | Sandisk Corporation | Soft errors handling in EEPROM devices |
US5657332A (en) | 1992-05-20 | 1997-08-12 | Sandisk Corporation | Soft errors handling in EEPROM devices |
JPH065823A (ja) | 1992-06-19 | 1994-01-14 | Toshiba Corp | 不揮発性半導体記憶装置及びその使用方法 |
US5550394A (en) | 1993-06-18 | 1996-08-27 | Texas Instruments Incorporated | Semiconductor memory device and defective memory cell correction circuit |
US5315541A (en) | 1992-07-24 | 1994-05-24 | Sundisk Corporation | Segmented column memory array |
JP2708333B2 (ja) | 1992-09-02 | 1998-02-04 | 株式会社東芝 | レベルシフタ回路 |
US5365486A (en) | 1992-12-16 | 1994-11-15 | Texas Instruments Incorporated | Method and circuitry for refreshing a flash electrically erasable, programmable read only memory |
US5404485A (en) | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
US5335198A (en) | 1993-05-06 | 1994-08-02 | Advanced Micro Devices, Inc. | Flash EEPROM array with high endurance |
US5555204A (en) | 1993-06-29 | 1996-09-10 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
KR0169267B1 (ko) | 1993-09-21 | 1999-02-01 | 사토 후미오 | 불휘발성 반도체 기억장치 |
JP3999822B2 (ja) | 1993-12-28 | 2007-10-31 | 株式会社東芝 | 記憶システム |
US5661053A (en) | 1994-05-25 | 1997-08-26 | Sandisk Corporation | Method of making dense flash EEPROM cell array and peripheral supporting circuits formed in deposited field oxide with the use of spacers |
GB2289779B (en) | 1994-05-24 | 1999-04-28 | Intel Corp | Method and apparatus for automatically scrubbing ECC errors in memory via hardware |
US5523972A (en) | 1994-06-02 | 1996-06-04 | Intel Corporation | Method and apparatus for verifying the programming of multi-level flash EEPROM memory |
US5450363A (en) | 1994-06-02 | 1995-09-12 | Intel Corporation | Gray coding for a multilevel cell memory system |
JP3563452B2 (ja) | 1994-08-10 | 2004-09-08 | 株式会社東芝 | セル閾値分布検知回路およびセル閾値分布検知方法 |
FR2728380A1 (fr) | 1994-12-20 | 1996-06-21 | Sgs Thomson Microelectronics | Procede d'ecriture de donnees dans une memoire et memoire electriquement programmable correspondante |
US5475693A (en) | 1994-12-27 | 1995-12-12 | Intel Corporation | Error management processes for flash EEPROM memory arrays |
JP3274306B2 (ja) | 1995-01-20 | 2002-04-15 | 株式会社東芝 | 半導体集積回路装置 |
WO1996024138A1 (fr) | 1995-01-31 | 1996-08-08 | Hitachi, Ltd. | Dispositif de memoire remanente et procede de regeneration |
US5530705A (en) | 1995-02-08 | 1996-06-25 | International Business Machines Corporation | Soft error recovery system and method |
US5513144A (en) | 1995-02-13 | 1996-04-30 | Micron Technology, Inc. | On-chip memory redundancy circuitry for programmable non-volatile memories, and methods for programming same |
US5699297A (en) | 1995-05-30 | 1997-12-16 | Kabushiki Kaisha Toshiba | Method of rewriting data in a microprocessor additionally provided with a flash memory |
US5907856A (en) | 1995-07-31 | 1999-05-25 | Lexar Media, Inc. | Moving sectors within a block of information in a flash memory mass storage architecture |
US5687114A (en) | 1995-10-06 | 1997-11-11 | Agate Semiconductor, Inc. | Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell |
US5703506A (en) | 1995-12-26 | 1997-12-30 | Motorola | Signal processing method |
FR2745114B1 (fr) | 1996-02-20 | 1998-04-17 | Sgs Thomson Microelectronics | Memoire non volatile multiniveau modifiable electriquement avec rafraichissement autonome |
US5903495A (en) | 1996-03-18 | 1999-05-11 | Kabushiki Kaisha Toshiba | Semiconductor device and memory system |
US5712815A (en) | 1996-04-22 | 1998-01-27 | Advanced Micro Devices, Inc. | Multiple bits per-cell flash EEPROM capable of concurrently programming and verifying memory cells and reference cells |
US5715193A (en) | 1996-05-23 | 1998-02-03 | Micron Quantum Devices, Inc. | Flash memory system and method for monitoring the disturb effect on memory cell blocks due to high voltage conditions of other memory cell blocks |
US5675537A (en) | 1996-08-22 | 1997-10-07 | Advanced Micro Devices, Inc. | Erase method for page mode multiple bits-per-cell flash EEPROM |
US5798968A (en) | 1996-09-24 | 1998-08-25 | Sandisk Corporation | Plane decode/virtual sector architecture |
US5890192A (en) | 1996-11-05 | 1999-03-30 | Sandisk Corporation | Concurrent write of multiple chunks of data into multiple subarrays of flash EEPROM |
US5717632A (en) | 1996-11-27 | 1998-02-10 | Advanced Micro Devices, Inc. | Apparatus and method for multiple-level storage in non-volatile memories |
US5835413A (en) | 1996-12-20 | 1998-11-10 | Intel Corporation | Method for improved data retention in a nonvolatile writeable memory by sensing and reprogramming cell voltage levels |
US5930167A (en) | 1997-07-30 | 1999-07-27 | Sandisk Corporation | Multi-state non-volatile flash memory capable of being its own two state write cache |
US5909449A (en) | 1997-09-08 | 1999-06-01 | Invox Technology | Multibit-per-cell non-volatile memory with error detection and correction |
US5937425A (en) | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
JP3177207B2 (ja) | 1998-01-27 | 2001-06-18 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | リフレッシュ間隔制御装置及び方法、並びにコンピュータ |
JP2000187992A (ja) | 1998-12-17 | 2000-07-04 | Mitsubishi Electric Corp | 電気的書換可能な不揮発性メモリのリフレッシュ制御回路 |
US6215697B1 (en) | 1999-01-14 | 2001-04-10 | Macronix International Co., Ltd. | Multi-level memory cell device and method for self-converged programming |
JP2000251483A (ja) | 1999-02-24 | 2000-09-14 | Sanyo Electric Co Ltd | 1チップマイクロコンピュータとそのデータリフレッシュ方法 |
AU7313600A (en) * | 1999-09-17 | 2001-04-24 | Hitachi Limited | Storage where the number of error corrections is recorded |
US6222768B1 (en) | 2000-01-28 | 2001-04-24 | Advanced Micro Devices, Inc. | Auto adjusting window placement scheme for an NROM virtual ground array |
US6426893B1 (en) | 2000-02-17 | 2002-07-30 | Sandisk Corporation | Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
US6567307B1 (en) | 2000-07-21 | 2003-05-20 | Lexar Media, Inc. | Block management for mass storage |
US6772274B1 (en) | 2000-09-13 | 2004-08-03 | Lexar Media, Inc. | Flash memory system and method implementing LBA to PBA correlation within flash memory array |
JP4323707B2 (ja) | 2000-10-25 | 2009-09-02 | 富士通マイクロエレクトロニクス株式会社 | フラッシュメモリの欠陥管理方法 |
US6763424B2 (en) | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
JP3812933B2 (ja) | 2001-04-19 | 2006-08-23 | シャープ株式会社 | ファイルシステムおよびその制御方法 |
US6522580B2 (en) | 2001-06-27 | 2003-02-18 | Sandisk Corporation | Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states |
JP4059472B2 (ja) | 2001-08-09 | 2008-03-12 | 株式会社ルネサステクノロジ | メモリカード及びメモリコントローラ |
US6456528B1 (en) | 2001-09-17 | 2002-09-24 | Sandisk Corporation | Selective operation of a multi-state non-volatile memory system in a binary mode |
US6678785B2 (en) | 2001-09-28 | 2004-01-13 | M-Systems Flash Disk Pioneers Ltd. | Flash management system using only sequential write |
US6925007B2 (en) | 2001-10-31 | 2005-08-02 | Sandisk Corporation | Multi-state non-volatile integrated circuit memory systems that employ dielectric storage elements |
US6678192B2 (en) | 2001-11-02 | 2004-01-13 | Sandisk Corporation | Error management for writable tracking storage units |
US6560152B1 (en) | 2001-11-02 | 2003-05-06 | Sandisk Corporation | Non-volatile memory with temperature-compensated data read |
JP2003242789A (ja) | 2002-02-14 | 2003-08-29 | Mitsubishi Electric Corp | 不揮発性半導体記憶装置 |
JP2003257192A (ja) | 2002-03-06 | 2003-09-12 | Mitsubishi Electric Corp | 半導体記憶装置および不揮発性半導体記憶装置 |
US6963505B2 (en) | 2002-10-29 | 2005-11-08 | Aifun Semiconductors Ltd. | Method circuit and system for determining a reference voltage |
US6912160B2 (en) | 2003-03-11 | 2005-06-28 | Fujitsu Limited | Nonvolatile semiconductor memory device |
US6839281B2 (en) | 2003-04-14 | 2005-01-04 | Jian Chen | Read and erase verify methods and circuits suitable for low voltage non-volatile memories |
US7076598B2 (en) | 2003-09-09 | 2006-07-11 | Solid State System Co., Ltd. | Pipeline accessing method to a large block memory |
US7173852B2 (en) | 2003-10-03 | 2007-02-06 | Sandisk Corporation | Corrected data storage and handling methods |
US7012835B2 (en) | 2003-10-03 | 2006-03-14 | Sandisk Corporation | Flash memory data correction and scrub techniques |
US7139864B2 (en) * | 2003-12-30 | 2006-11-21 | Sandisk Corporation | Non-volatile memory and method with block management system |
JP4063239B2 (ja) | 2004-04-16 | 2008-03-19 | ソニー株式会社 | データ読出し回路及びこの回路を有する半導体装置 |
JP4083147B2 (ja) | 2004-07-02 | 2008-04-30 | シャープ株式会社 | 半導体記憶装置 |
US7242618B2 (en) | 2004-12-09 | 2007-07-10 | Saifun Semiconductors Ltd. | Method for reading non-volatile memory cells |
US7257025B2 (en) | 2004-12-09 | 2007-08-14 | Saifun Semiconductors Ltd | Method for reading non-volatile memory cells |
US7206230B2 (en) | 2005-04-01 | 2007-04-17 | Sandisk Corporation | Use of data latches in cache operations of non-volatile memories |
US7339834B2 (en) | 2005-06-03 | 2008-03-04 | Sandisk Corporation | Starting program voltage shift with cycling of non-volatile memory |
US7631245B2 (en) | 2005-09-26 | 2009-12-08 | Sandisk Il Ltd. | NAND flash memory controller exporting a NAND interface |
JP4660353B2 (ja) | 2005-11-01 | 2011-03-30 | 株式会社東芝 | 記憶媒体再生装置 |
US7254071B2 (en) | 2006-01-12 | 2007-08-07 | Sandisk Corporation | Flash memory devices with trimmed analog voltages |
US7286412B1 (en) | 2006-05-09 | 2007-10-23 | Macronix International Co., Ltd. | Method and apparatus to improve nonvolatile memory data retention |
US7613043B2 (en) | 2006-05-15 | 2009-11-03 | Apple Inc. | Shifting reference values to account for voltage sag |
US7952922B2 (en) | 2006-06-06 | 2011-05-31 | Micron Technology, Inc. | Method for programming a non-volatile memory device to reduce floating-gate-to-floating-gate coupling effect |
US7489549B2 (en) | 2006-06-22 | 2009-02-10 | Sandisk Corporation | System for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages |
US7330376B1 (en) | 2006-07-27 | 2008-02-12 | Macronix International Co., Ltd. | Method for memory data storage by partition into narrower threshold voltage distribution regions |
US7450425B2 (en) | 2006-08-30 | 2008-11-11 | Micron Technology, Inc. | Non-volatile memory cell read failure reduction |
US8050901B2 (en) | 2006-09-14 | 2011-11-01 | Taiwan Semiconductor Manufacturing Company, Ltd. | Prediction and control of NBTI of integrated circuits |
US7716538B2 (en) | 2006-09-27 | 2010-05-11 | Sandisk Corporation | Memory with cell population distribution assisted read margining |
US7886204B2 (en) | 2006-09-27 | 2011-02-08 | Sandisk Corporation | Methods of cell population distribution assisted read margining |
US7558109B2 (en) | 2006-11-03 | 2009-07-07 | Sandisk Corporation | Nonvolatile memory with variable read threshold |
US7489548B2 (en) | 2006-12-29 | 2009-02-10 | Sandisk Corporation | NAND flash memory cell array with adaptive memory state partitioning |
US7489547B2 (en) | 2006-12-29 | 2009-02-10 | Sandisk Corporation | Method of NAND flash memory cell array with adaptive memory state partitioning |
US7876621B2 (en) | 2007-04-23 | 2011-01-25 | Sandisk Il Ltd. | Adaptive dynamic reading of flash memories |
KR100882841B1 (ko) * | 2007-06-19 | 2009-02-10 | 삼성전자주식회사 | 읽기 디스터번스로 인한 비트 에러를 검출할 수 있는메모리 시스템 및 그것의 읽기 방법 |
KR100838292B1 (ko) | 2007-06-20 | 2008-06-17 | 삼성전자주식회사 | 메모리 셀의 읽기 레벨 제어 장치 및 그 방법 |
KR100891005B1 (ko) | 2007-06-28 | 2009-03-31 | 삼성전자주식회사 | 고온 스트레스로 인한 읽기 마진의 감소를 보상하기 위한플래시 메모리 장치 및 그것의 읽기 전압 조정 방법 |
KR101378349B1 (ko) * | 2008-01-30 | 2014-03-28 | 삼성전자주식회사 | 메모리 장치 및 메모리 데이터 읽기 방법 |
US20090327837A1 (en) * | 2008-06-30 | 2009-12-31 | Robert Royer | NAND error management |
KR101434404B1 (ko) * | 2008-07-30 | 2014-08-29 | 삼성전자주식회사 | 파라미터를 추출하는 불휘발성 메모리 장치 및 그것을포함하는 불휘발성 메모리 시스템 |
US8259506B1 (en) * | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
CN102473460B (zh) | 2009-08-25 | 2016-10-12 | 桑迪士克以色列有限公司 | 将数据恢复到闪存器件中 |
-
2012
- 2012-03-30 US US13/435,476 patent/US8687421B2/en active Active
- 2012-10-24 WO PCT/US2012/061617 patent/WO2013077962A1/en active Application Filing
- 2012-10-24 CN CN201280057162.8A patent/CN103946805A/zh active Pending
- 2012-10-24 KR KR1020147012998A patent/KR101849440B1/ko active IP Right Grant
- 2012-11-14 TW TW101142508A patent/TWI570560B/zh not_active IP Right Cessation
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200703341A (en) * | 2005-04-05 | 2007-01-16 | Sandisk Corp | Read operation for non-volatile storage that includes compensation for coupling |
TW200929227A (en) * | 2007-12-31 | 2009-07-01 | Phison Electronics Corp | Method for preventing read-disturb happened in non-volatile memory and controller thereof |
TW200947445A (en) * | 2008-03-01 | 2009-11-16 | Toshiba Kk | Memory system |
TW201027541A (en) * | 2008-12-18 | 2010-07-16 | Sandisk Corp | Data refresh for non-volatile storage |
TW201140604A (en) * | 2009-10-28 | 2011-11-16 | Sandisk Corp | Non-volatile memory and method with accelerated post-write read to manage errors |
TW201140605A (en) * | 2009-10-28 | 2011-11-16 | Sandisk Corp | Non-volatile memory and method with post-write read and adaptive re-write to manage errors |
TW201135746A (en) * | 2009-12-30 | 2011-10-16 | Sandisk Corp | Method and controller for performing a copy-back operation |
TW201137891A (en) * | 2010-04-19 | 2011-11-01 | Silicon Motion Inc | Method for performing memory access management, and associated memory device and controller thereof |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI621018B (zh) * | 2017-07-24 | 2018-04-11 | 大陸商深圳大心電子科技有限公司 | 資料備份方法、資料恢復方法以及儲存控制器 |
US10430288B2 (en) | 2017-07-24 | 2019-10-01 | Shenzhen Epostar Electronics Limited Co. | Data backup method, data recovery method and storage controller |
TWI783776B (zh) * | 2020-11-25 | 2022-11-11 | 美商美光科技公司 | 用於非揮發性記憶體之管理頁面汰除 |
US11579772B2 (en) | 2020-11-25 | 2023-02-14 | Micron Technology, Inc. | Managing page retirement for non-volatile memory |
Also Published As
Publication number | Publication date |
---|---|
US20130128666A1 (en) | 2013-05-23 |
TW201337559A (zh) | 2013-09-16 |
US8687421B2 (en) | 2014-04-01 |
KR101849440B1 (ko) | 2018-04-16 |
CN103946805A (zh) | 2014-07-23 |
KR20140096059A (ko) | 2014-08-04 |
WO2013077962A1 (en) | 2013-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI570560B (zh) | 為動態讀取所使用之清除技術 | |
TWI425511B (zh) | 校正資料儲存及處理方法 | |
KR101127882B1 (ko) | 플래쉬 메모리 데이터 정정 및 스크럽 기법 | |
US7573773B2 (en) | Flash memory with data refresh triggered by controlled scrub data reads | |
US20080239808A1 (en) | Flash Memory Refresh Techniques Triggered by Controlled Scrub Data Reads | |
KR101468432B1 (ko) | 제어된 스크럽 데이터 판독에 의해 트리거되는 플래시 메모리 리프레시 기술 | |
US11579972B2 (en) | Non-volatile memory device, controller for controlling the same, storage device having the same, and reading method thereof | |
CN115440279A (zh) | 非易失性存储器装置、操作控制器和操作存储装置的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |