TWI261840B - Flash memory data correction and scrub techniques - Google Patents

Flash memory data correction and scrub techniques Download PDF

Info

Publication number
TWI261840B
TWI261840B TW093129922A TW93129922A TWI261840B TW I261840 B TWI261840 B TW I261840B TW 093129922 A TW093129922 A TW 093129922A TW 93129922 A TW93129922 A TW 93129922A TW I261840 B TWI261840 B TW I261840B
Authority
TW
Taiwan
Prior art keywords
data
block
memory
read
array
Prior art date
Application number
TW093129922A
Other languages
English (en)
Other versions
TW200532695A (en
Inventor
Carlos J Gonzalez
Kevin M Conley
Original Assignee
Sandisk Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=34393904&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=TWI261840(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Sandisk Corp filed Critical Sandisk Corp
Publication of TW200532695A publication Critical patent/TW200532695A/zh
Application granted granted Critical
Publication of TWI261840B publication Critical patent/TWI261840B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding 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
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/08Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Measuring Volume Flow (AREA)
  • Non-Volatile Memory (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)

Description

1261840 九、發明說明: [發明所屬之技術領域】 本發明概言之係關於非揮 而言,係關於玉如 軍生快閃記憶體系統,更具體 直传且有柽大”及修正非揮發性快閃記憶體系統令、尤 術 大記憶胞塊之記憶體系統㈣存之資料之技 【先前技術】 目4 ’有許多種成功得到商 口 j朽業應用之非揮發性記憶體產 ^二係小形狀因數卡形式之非揮發性記憶體產品,其 米用一形成於一或多個積體電曰 /、 电路日日片上之快閃EEPROM(電 可清除可程式化唯讀記憶體)胞陣列。一通常(但未必盡铁) 單獨積體電路晶片上之記憶體控制器介接一以可移 方式連接有該卡之主機,並控制該卡内記憶體陣列之運 作H制器通常包括一微處理器、某種非揮發性唯讀 記憶=(ROM)、一揮發性隨機存取記憶體(RA⑷及一或多個 =用電路’例如-個可在將資料程式化及讀取資料期間在 貧料經過控制器時根據該等資料計算出一錯誤修正碼(ECC) 之專用弘路。某些市售卡爲c〇mpactF1MhTM(cF)記憶卡、多 媒體記憶卡(MMC)、安全數位(SD)記憶卡、智慧媒體記憶 卡们人資Λ (P-Tag)記憶卡及記憶棒卡。主機包括個人電 腦、筆記型電腦、個人數位助理(pda)、各種資料通信裝置、 數位攝衫機、蜂巢式行動電話、可攜式聲頻播放器、汽車 音響糸統、及類似類型之設備。除記憶卡構建方式之外, 此種類型之記憶體亦可嵌入於各種類型之主機系統内。 96472.doc 1261840 有兩種通用記憶胞陣列架構 Μλλττλ j卞稱已付老商業應用:NOR及 NAND。在一典型之^^尺陣 h 胞連接於在棑方向 t延伸的相鄰位元線源極與沒極擴散區之間,且控制間極 接至沿記憶胞列延伸之字元線。—記憶胞包括位於該源 極與沒極之間記憶胞溝道區域之至少—部分上方的至少— 個儲存元件。該等儲存元件上—經程式化之電荷位元準由 =控制記憶胞之運作特性,目而藉由施加適當之電壓至所 定址記憶胞單元即可讀取該等記憶胞。此等記憶胞之實 例、其在記憶體系統中之應用及其製造方法闇述於美國專 利第 5,070,032、5,095,344、5,313,421、5,315,541、 5,343,063、5,661,〇53及 6,222,762號中。 NAND陣列則利用由如下構成之串聯串:多於兩個(例如 16個或32個)記憶胞與一或多個位於各單獨位元線與一參 考迅位之間的選擇電晶體連接在一起構成記憶胞排。各字 元線延伸穿過大量該等排中的記憶胞。在程式化期間,藉 由如下方式來讀取及驗證一排中的一單獨記憶胞··使該串 中之其餘§己憶胞皆強導通,以使流經一串之電流取決於該 所定址記憶胞中所儲存電荷之位準。NAND架構陣列之實例 及其作爲5己丨思體系統之一部分之運作可參見美國專利第 5,570,3 15、5,774,397、6,046,935、及 6,522,580號中。 上文所提及專利中所述之現有快閃EEPROM陣列之電荷 儲存元件爲最常用之導電性浮動閘,其通常由經導電摻雜 之複晶矽材料製成。適用於快閃EEPROM系統之另一類型 之記憶胞係利用一非導電性介電材料代替導電性浮動間以 96472.doc 1261840 非揮發性方式來儲存電荷。其中,一 r 由虱化矽、氮化矽及 氧化矽(ΟΝΟ)構成之三層式介雪姑 智八;丨私材枓夾於一導電性控制閘 與記憶胞溝道上方一半導電性基板之一表面之間。記憶胞 係猎由如下方式得以程式化:將電子自記憶胞溝道注入氣 化物’電子在氮化物令受到陷獲並儲存於—有限之區域 中,且記憶胞係藉由將熱電洞注入氮化物内而受到抹除。 數種採用介電材料儲存元件之特定記憶胞結構及陣列闊述 於吴國公開專利申請案第2003/0109093號中。 如同在大多數積體電路應用中一般,對於快閃eepr〇m 記憶胞陣列,亦存在縮減構建某些積體電路功能所需之石夕 基板面積之麼力。人們不斷地期望增大在一既定石夕基板面 積中可儲存之數位資料量,藉以增大一既定尺寸記憶卡及 其他類型封裝之錯存容量,或者既增大容量亦減小尺寸。 一種增大資料儲存密度之方法係由每—記憶胞及/或每一 儲存单疋或元件儲存多於一個資料位元。此可藉由將一儲 存蝴荷位準電堡範圍之窗口劃分成多於兩種狀態來達 成。使用四種此種狀態即能使每一記憶胞儲存兩個資料位 几’使用八種狀態即能使每一儲存元件储存三個資料位 兀依此類推。使用浮動閘之多狀態快閃EEPROM結構及 其運作鬧述於美國專利第5,〇43,94〇及5,172,338號中,使用 介電材料浮動閘之結構則閣述於前述美國專利申請荦第 w,:52號中。出於各種原= 某些選疋部分亦可以$插仙# *種狀,占(二進制)運作,其運作方式闡 述於美國專利第5,93G,167及M56,528中。 , 96472.doc 1261840 一典型快閃EEPRQM陣列中之各記憶胞係、劃分成若干可 -同抹除之離散記憶胞塊。換言之,記憶胞塊爲抹除單位 即爲可同時抹除的最小數量之記憶胞。每一塊皆通常儲存 有-或多個資料頁面,頁面爲最小程式化及讀取單位,儘 管亦可在不同之子陣列或平面中平行地程式化或讀取^ -個頁面。每-頁面通f儲存有—或多個資料扇區,扇區 之尺寸係由主機系統來界定。—實例性扇區包括5]2個使用 者資料位元組(遵循-針對磁碟驅動器製定之標準)加上— 定數量位元組㈣於料制者資料及/或儲存有該等使 用者資料之塊的附加資訊。此等記憶體通常在每一塊中構 造-有16個、32個或更多個頁面,且每一頁面皆儲存有一個 或僅數個主機資料扇區。 爲提高在將制者資料程式化人記憶體陣列及自記情體 陣列讀取使用者資料期間之平行性程度’該陣列通常刻分 成若干子陣列’該等子陣列通常稱作平面,其包含其自身 之資料暫存器及其他電路來容許平行作業,從而可同時將 貧料扇區程式化至若干或所有平面中之每一平面,或同時 ί若干或所有平面中之每-平面讀取資料輕。-位於一 早個積體電路上之陣列可在實體上劃分成若干平面,或者 每-平面皆可由單獨的—或多個積體電路晶片構成。此一 4體構建方案之實例闡述於美料利第5,798,968及 5,890,192號中。 巧進步有效地官控記憶體,可將各實體塊在邏輯上連 接在一起構成虛擬塊或元塊。換言之,將每一元塊皆界定 96472.doc 1261840 爲匕括每-平面中的—個塊。元塊之使用闡述於國際專利 申請公開案第W0 G2/_74中。元塊係由—主機邏輯塊位 址標識爲一供程式化及讀取資料之目的塊。同樣地,一元 塊中之所有塊皆一同抹除。使用此等大塊及/或元塊之記情 體系統中之控制器執行衆多種功㉟,包括在自主機接收到 的邏輯塊位址(LBA)與記憶胞陣列内之實體塊編號(pBN)之 間執仃變換。力中各單獨頁面通常藉由塊位址内之偏置量 來標識。位址變換通常涉及到使用邏輯頁面及—邏輯塊編 號(LBN)之中間項。 儲存於—元塊中之諸時常得収新,更新之可能性隨 :塊之資料容量而增大。-個邏輯元塊中已更新之扇區通 韦寫入另-貫體7〇塊。作爲同—程式化作業之一部分,未 經改變之扇區亦通常自原始實體元塊複製至該新的實體元 塊’以整合該資料。或者,未經改變之資料可保留在原始 元塊中直至以後與已更新之資料整合入單個元塊内爲止。 通常使用維護於-已清除塊集用池中之某些額外塊㈣ 作大塊或元塊系統。當正在更新少於一塊之容量的_或多 個資料頁面時’通常將已更新頁面寫入至該集用池中之_ 已抹除塊’然後將未經改變之頁面中之資料自原始塊複製 至该抹除集用池塊。該種技術之變體闡述於前述公開之國 際專利中請案第勸0聰8G74中。隨著時間的延長,由於 主:資料標受到重寫及再新,許多塊最後可能會僅有相對 =、置=面包含有效資料而其餘頁面所包含之資料已不再 爲現行貧料。肖能夠有效地利用陣列之資料儲存容量,需 96472.doc 1261840 將不時地將有效資料之各個在邏輯上相關之資料頁面自多 個塊中之片斷收集在一起並一起整合入更少量之塊中。兮 過程通常稱作「無用單元收集—ec〇llectlon)」。" 各單獨之快閃EEPR0M記憶胞在一電荷儲存元件或單元 中儲存有-定量之電荷來代表一或多個資料位元。儲存元 件之電荷位元準可#舍丨1 」才工制$丨思胞之臨限電壓(通常稱作 VT),而該臨限電_讀取該記憶胞之儲存狀態之基礎。 -臨限電壓窗口通常劃分成若干範圍,其中每一範圍皆對 應於記憶胞之該等兩或多種狀態之一。該等範圍由防護帶 相間隔,防護帶中包含一使吾人能夠確定出各單獨記憶胞 之儲存狀態之標稱感測位準。該㈣存位準的確會因在鄰 ^之或其他相關之記憶胞、頁面或塊中所執行的會干擾電 何的程式化、讀取或抹除作業而出現偏移。舉例而古,备 將-組與-第二組記憶胞共用一線路或電路之記憶胞二 化時,有可能干擾該第二組之電荷位準。此種寄生干擾之 取終結果係:若不對料系統控制器之該部分採取修正措 知,則未受操作之受影響區域中之資料可能會惡化,且在 極端情況下^會超出與該資料—同儲存之任何錯誤修正碼 一 此種貝枓心化將會給使用者造成 貨料損失,由此使儲存系統不可靠。一特定記憶胞陣财 此等干擾之範圍及性質取決於該記憶胞陣列之具體竿構、 結構及運作。 :此’ :士之情況爲,在干擾作業致使電荷位準完全偏 移出其規定乾圍外從而導致讀出錯誤資料之前,不時地將 96472.doc 1261840 已偏移之電荷位準恢復至其狀態範……此—過程 (柄作貧料再新或清除)闡述於美國 5,_,449號中。作爲並” 土 ,切,962及 ^ 乍马其之另一悲樣,在使用錯誤修正碼 之^憶曰體系統中’可藉助ECC來修正自該記憶體讀取 上2 一疋數量之錯誤資料位元,然後將已修正資料重寫至 2憶體中-先前已抹除之部分中。#由重寫資料,會使 母―:寫入之記憶胞臨限位準皆處於其指定狀態範圍内, 乃因貢料程式化通常會涉及到交替地調節所料電荷並讀 取驗證所產生之記憶胞臨限位準,直至其達到代表該記 憶胞中所儲存資料之所需範圍爲止。 【發明内容】 快閃e憶體系統中可包含一全面之清除作業,以補償 因對一組記憶胞執行程式化、讀取或抹除作業而對同一積 體電路晶片上另-組記憶胞之儲存位準所造成之干擾。産 生此等資料干擾之可能性會隨記憶胞陣列尺寸之縮減而升 问。目刖存在著爲節約空間而使若干組記憶胞共用各種信 號線之趨勢,從而使一組記憶胞可能會在程式化、讀取或 抹除另一組記憶胞期間重複受到電壓及/或電流之影響。而 藉由以一種經過組織的連續方式來清除儲存於所用記憶胞 多且中之資料,即會明顯減少所儲存資料隨時間之惡化。同 時’當藉由有順序地將受干擾之電荷位準恢復至其所需位 隼來修正該等受干擾之電荷位準時,會使使用一更大數量 之更小電壓臨限狀態範圍在每一記憶胞中儲存更大數量之 位元變得可行。 96472.doc -12- 1261840 /月除作業需要讀取彼等已受到潛在干擾信號影響之區域 中之貧料,且若確定出該資料確已受到干擾,則執行某種 修正措施。可藉由(舉例而言)檢查資料完整性,例如藉由讀 取資料並獲得對該資料之ECC檢查之結果,來_出= 擾。修正措施可能需要將資料重寫於 ^ 乂 —不同位 置’且可涉及到一更高階缺陷或資料管理作業。 可使清除作業自適應於所讀取資料之 ^ , ^ L 1土 舉例而 …在權陣列之一區域中發現一個或臨限值 錯誤,則可提高對彼區域之清除頻率。 # 、 、 右在一既定 區財未發現錯誤或僅發現較—臨限值爲少之數個資^ ==低對該既定區域之清除頻率。亦可根據使: 率水準及其他糸統參數來修改清除頻率及位置 護資料完整性之需要與維護高系統效能水準之需要維 :衡,:算該等及其他清除特徵。尤其係會執行不可= 咼資料完整性之清除作業。 清除作業較佳在記憶體系統未在讀取或寫入資料日士以 臺方式執行。記憶體系統可能會依賴主機來指示該: 時將不要求記憶體儲存或擷取資料,以便可在 一抹除作業。 了〜轨 貝# 系τ價測到一或多個資 誤,若該(該等)錯誤可在讀取該資料時由ecc於正、 確定不採取修正措施,以便維護系統效能。^各^ 中之使用者資料及附加資料具有其自身之咖日士早^ 者資料中之錯誤相比,容绊 ^ 5 - +不對附加資料中之資料錯 96472.doc 13 1261840 以修正之可能性更小。 當在一正常狀態下之清除資料讀 致於無法由ECC來修正時,可nr之位70錯誤太多以 …” 蛉可使用更寬鬆之參考狀態來重 。貝取该貧料,以便讀取彼等1 常範圍之外的記憶胞。在二:::位準已偏移出正 正確驗證後,即可將所 頃取貧料重寫於正常電荷範圍位準内。反之,當 除讀取作業顯示無錯誤時, 、/、月
了在更嚴格之參考狀態下重讀 取彼 >、料,以便確定所儲存資 W 等已偏移出其最佳範圍外之;=貝。換吕之,偵測彼 佟… 卜之’何位準’以便可作爲該清除 b正彳曰把之一部分將其重寫回至此等範圍内。 在^等使用可單獨儲存大量主機資料扇區之大記憶胞塊 或4之§己憶體系統中,可將一第一實體塊中在一清除作 業期間得到修正的一(若干)資料扇區重寫 將該第一塊之其餘資料扇區複製 4亚 衣主4弟—塊中,此盥上文 所述之抹除集用記憶體管理方法相—致。另—選擇:可 使一塊或元塊專用於臨時儲存經清除修正之資料扇=,’直 至出於某種其他原因(例如無用單元收集)需要移料他盘 該(該等)已修正扇區來自相同塊或S塊之資料扇區m 時可將該等經清除修正之資料扇區與相同塊或元塊中之呈 他貧料扇區重新組合。此可提高系統效能。 /、 在使用某些規定資料確定出需採取修正措施後,各 時採取修正措施可能會不利地影響系統效能,且若在^ 採取修正措施之前可在不採取修正措施(若需要)情 取出該資料,則可將該措施延期。此時,會臨時儲存所; 96472.doc -14 Ϊ261840 已修正資料、位址及在延期時確定出的 德去去b〈一 r U >數,亚在此 傻田執仃經延期之修正措施時擷取之。 元塊形式龟舛$条始* 在乂大屺饭胞塊或 … 錢I可將修正性清除措施延期至已排 二對:自—既定塊或元塊的-既定數量之資料執行修正措 :戶^此種情況下,該既定塊或元塊中之所有經延期之資 枓扇區同時得到修正。此可 田发尤疋塊或兀塊之各資 ”區再次整合於-起時所發生的資料複製及重寫作業之 數量。 最後,若發現一既定記憶胞、記憶胞排、記憶胞塊、或 某些其他記憶胞單s需要頻繁地清除,則可在該單元降格 ”中所儲存之貝料已無法讀出或修正之前將該單元映射 出該系統。 上述特徵可單獨構建或以各種組合形式構建於一起,此 視具體應用而定。在下文對本文所述清除系統之實例性實 例之次明中包含有该清除系統之其他態樣、優點及特徵, 下文之說明應結合附圖來閱讀。本文所提及之所有專利、 專利申請案、論文及其他公開案之全部内容皆以引用方式 併入本文中。 【實施方式】 記憶體架構及其運作 首先參見圖1A,一快閃記憶體包括一記憶胞陣列及一控 制器。在所示實例中,兩個積體電路裝置(晶片)u&13包含 一記憶胞陣列1 5及各邏輯電路1 7。該等邏輯電路17藉由資 料、命令及狀恶電路介接一位於一單獨晶片上之控制器 96472.doc 1261840 19,亚亦對陣列13提供定址、資料傳遞及感測、及其他支 ^己L 陣列晶片之數量可自一個至許多個,此視所提 ί、之儲存谷$而定。或者,亦可將該控制器及一部分或整 個陣列組合至一單個積體電路晶片上,但目前此種選擇方 案並不經濟。 五一典型之控制器19包括-微處理器21、-主要用於儲存 ¥刀肢之唯碩記憶體(R〇M)23 & 一緩衝記憶體(ram)25,該緩 街。己L版25主要用於臨時儲存寫入或讀出記憶體晶片11及 13 =使用者資料。電路”介接記憶胞陣列晶片,而電路^ 則猎由連接線3 i介接一主機。在本實例中,係藉由使用專 用於計算ECC碼之電路33計算ECC碼來確^資料之完整 ^生曰正在將使用者資料自主機傳送至快閃記憶體陣列以 t、儲存忪,該電路會根據該資料計算一 ecc並將該碼儲存 於違5己憶體中。當以後自該記憶體讀取彼使用者資料時, 2再次經由電路33傳送使用者資料,由電路33使用同一演 #法來什异ECC並將彼碼與所計算的與該資料—起儲存之 碼相比較。若二者相匹酉己,則證明該資料完整。而若二者 存在是異,則視所使用之特定Ecc演算法而定,可識別出 並修正彼等錯誤位元,且最多識別出並修正由該演算法所 支援之數量之錯誤位元。 圖|A所示記憶體之連接線31與一主機系統之連接線3 相連接’該主機系統之一實例顯示於圖⑺中。資料係^ 介面電路35在主機與圖1A所示記憶體之間傳送。—典型《 主機亦包括-微處理器37、_用於儲存㈣碼之r〇m叫 96472.doc 1261840 RAM4!。其他電路及子系 辟;& # Z世… 巾匕枯一大容量磁性資剩 儲存磁碟驅動器、用於鍵盤之介 、 # ^ ith ig ^ - 包路、一監測器及類似 件此視知·足之主機系統而定。此 卓上刑兩f ^ 、 機之某些實例包括 桌 土弘恥、膝上型電腦、掌上型雷 ^ 人者W从 土屯如、掌上型電腦、個 人數位助理(PDA)、MP3及 禎m摄1^ 耳田放窃、數位攝影機、 視爲,機、電子遊戲機 鉾立嬙, 另琛弘活裝置、應答機、 錄曰機、網路選路器及其他裝置。 圖1Α所示記憶體可構建爲一 卿眭別+ w 3啕匕制态及其所有記憶 肢陣歹r电路I置的小的封閉+ ... j闹卞具有一可以可移 方式人圖1B所示主機相連之形 芬$ 俠σ之,配對連接線31 及3 1使吾人能將卡斷開並移 ,^ ^ 为主機、或者藉由將另一 卡連接至該主機而予以更換 +壯 以吳$ 4擇為,可將記憶體陣 列衣置封裝於一能以電性方式 “生方式及機械方式與-包含有控制 為及連接線31之卡相連的單獨卡中。又—選擇爲,可將圖 1Α所示記憶體嵌入圖1Β所示主機内,其中連接線31及31, =水久製成。在此種情況下,記憶體通常與其他組件-同 谷納於该主機的一外殼内。 對本說明所用之某些術語做出一定解釋可能會有所稗 证。「扇區」係指在主機讀取及寫人作業期間所存取的可獨 立定址之資料單元。—個資料扇區之尺寸通常爲512個位元 組。 本文所用術語「記憶體系統」係一種由一或多個非揮發 性記憶裝置及向該記憶體儲存及自該記憶體掏取資料所需 之硬體及/或軟體組成。整個記憶體系統功能之不同部分既 96472.doc 17 1261840 可構建於一完全專用於資料 ± μ 仔之子糸統上,亦可構建於 主钱不統自身上。該記憶體李 ^ ^ α 乐、·死了肷入一主機系統中,或 者可抽換,例如呈現一極小之 一 々久邱八1 > 卡幵v式。可抽換記憶體系統 〜口口p分可自身爲可抽換式, 一 σσ 白饫 牛彳而a,儼若儲存媒體可 自拴制器部分上抽換一般。 中夕次七 祛糸統中專用於記憶體系統 中之-貝料儲存之任一部分 丨刀亦應視馬記憶體系統之一部分。 除駐存於主機系統上之任何 更之外,此種主機功能亦可 匕括專Η的軟體庫、驅動程式或應用程式。 在本文中’「主機系統」係指如下之系統:其通當具 除貧料儲存以外之功能 , 山 ^ C 一亦連接至記憶體系統或其中 甘入入有一 §己憶體系統。亦可合 資料之主㈣統。 h存在其唯—用途即係健存 本文所述用於再新及清除快閃記憶體所儲存資料之各種 技術可構建於具有夂籀栌—& < 一 ,'有。種扣疋組態之系統中,該等系統之實 例鮮貝示於圖2-6中。圖2顯千 ^ , α ”、、員不一其中將各記憶胞劃歸成若干 塊之記憶體陣列之一部分,其 ^ σσ ,、y母塊中之各記憶胞可作 爲一單一抹除作業之一部八十 ’、 σ刀來一同抹除(通常係同時抹 除)。此種實體塊係最小抹除單位。 圖2所示單個記憶胞塊之尺寸可各不相同,但-種市面上 所採用之形式係在單個塊中包含單個資料扇區。此一資料 扇區之内容顯示於圖3中。其中,使用者資料51通常爲512 個位元組。除使用者資料 ^ 貝7十3丄之外,亦具有附加資料,附加 資料包括一根攄传用去咨刺_二丄Μ 一 像便用者貝枓叶算出之ECC 53、若干關於扇 區資料及/或關於程式化右兮 ^ Λ化有σ亥扇區之塊的麥數乃、一根據該 96472.doc -18- 1261840 數二5:算出之ECC 57、及任何其他可能會包含之附加 數55可包含-關於該塊所經歷之程式化/抹除 :=:”(「熱計數值」),該量值在每-循環或在-預 各 循衣之後更新。此種經歷值之一應用係定期地將 口璉耳h位址重映射至不同之實體塊位址,以便平均使 2^ h該經歷值之另—應用係根據不同扇區所 、、义歷之循環數來改變兩厭 要木改又屯昼及其他程式化、讀取及/或抹除參 寻經歷值在識別欲清除之塊之過程中的其他應用將 在下文中予以闡述。 該等參數55亦可包含一有關位元值的指示,該等位元值 ,賦予各記憶胞儲存狀態中每—儲存狀態(通常稱作其「循 ,私位」)。換言之,將資料之邏輯狀態映射至不同之 儲存狀態。此亦會在平均讀寫方面産生有益之效果。^可 ,用於指示現狀(Status)或狀態(state)之參數55中包含—或 多匕個旗標。關於欲用於程式化及/或抹除該塊之電壓位準之 才曰不亦可儲存於料參數55巾,料電壓會在該塊所娘, 之循環:數及其他因素出現變化時得到更新。附加參數 之其他實例包括:關於該塊内任意缺陷記憶胞之標識,映 射至邊貫體塊内的貢料塊之邏輯位址、及倘若該主塊缺p 時任一替代實體塊之位址。在任一記憶體系、统中所用之: 數55之具體組合將因設計而異。此外,亦可將某些或所有 附加貢料儲存於專用於此一功能之實體塊中,而非儲存於 包含使用者資料之塊或該附加資料之相關塊中。 子於 與圖2所示單一資料扇區塊不同者係圖4所示之多扇區杂 96472.doc -19- 1261840 別。 體塊。一實例性塊59(其仍爲最小抹除單位)包含四個頁面 ’、中母頁面白爲袁小程式化單位。在每一頁面中皆 儲存:^或多個主機資料扇d,該等一或多個主機資料扇 區、系、鉍至少包含根據該扇區之資料計算出的ecc的附 加資料一道儲存,且可呈現圖3所示資料扇區之形式。當更 新少於所有頁面之資料時,㉟常將已更新資料儲存於:來 自一已抹除塊集用池之已抹除塊之一頁面中,並將其餘未 又改動之頁面自原始塊複製至該新塊中。然後,抹除該原 始塊此種大塊管理技術之變化形式包括:將已更新資料 寫入另=塊之一頁面中,但並不將資料移出原始塊或抹除 之此s産生多個具有相同邏輯位址之頁面。其中,最新 之貝料頁面係藉由某些習知技術來識別,例如藉由所記錄 的作爲扇區或頁面附加資料中之一攔的程式化時間來識 另夕扇區實體塊結構顯示於圖5中。在該結構中,將整 個記憶胞陣列在實體上劃分成兩個或多個平面,圖中顯示 四個平面0-3。其中每一平面皆爲一記憶胞子陣列,其具有 其自身之資料暫存器、感測放大器、定址解碼器及類似件, 以便冑b夠基本獨立於其他平面運作。所有平面皆可設置於 一單個集成電路裝置上或多個裝置上,其-實例係自-個 或f個不㈤之集成電路裝置構成每一平面。目5所示系統中 之每-塊皆包含16個頁面ρ(μρΐ5,其中每_頁面之容量皆 爲一個、兩個或多個主機資料扇區及某些附加資料。 又一纪憶胞結構顯示於圖6中。其中,每一實體平面皆包 96472.doc -20- 1261840 含大量記憶胞塊。爲提高運作之平行度,將不同平面内之 各塊在邏輯上鏈接構成各元塊。在圖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個儲存電晶體,但亦可包含其 =數置之電日日3體。字元線WLG_WL15延伸穿過每-串中的 存%日日體’亚連接至電路81,胃等電路81包含有該 二子凡線之電壓源驅動器及位址解碼器。線83及84上之電 可控制將該塊中之所有串藉由其選擇電晶體一同連接至 96472.doc -21 - 1261840 電堡祕及/或位元線BL0_BLN。資料及位址係來自於記情 體控制器。 。 一 /塊中之每一列電荷儲存電晶體(記憶胞)皆構成一可一 同程式化及讀取之頁面。一適當之電壓施加至此一頁面之 字元線(WL)來程式化及讀取其資料,同時選擇施加至盆餘 ^元線之電^使其各自之料電晶料通。在程式化或 項取-列(頁面)儲存電晶體之過程中,未較列上先前所儲 =之電荷位準可能會因電壓施加於所有串兩端及施加至其 字元線而受到干擾。 、 清除過程之各種態樣 存在兩個基本的清除階段:讀取階段及修正措施階段。 清除讀取有別於其他系統讀取之處在於··其通常涉及到選 擇及讀取記憶體系統t既不與完成_特定主機作業直接相 關亦不與衆多其他系統作業中任_作業(例如平均讀寫)直 接相關之各區域之資料。清除讀取之另一明顯特徵在於: 系統並不自所讀取資料收集有用資訊,相反地,資料完整 性檢查結果係該作業之目標。接下來對該系統部分所採取 施係在該完整性檢查之結果而非在(尤其是)資料自身 ^導下進行。若資料未能通過該完整性檢查、因而需要採 取修正措施’則接下來該系統可能需要使用來自所讀取資 料(例如附加資料)之某些資訊。該等仏完成—特定主機作 業=並不自記憶體獲得任何有用資料之特徵係清除讀取與 該系統所執行之其他資料讀取之間的基本區別。 〃 k擇奴清除項取之特定區域係根據記憶裝置之實體特 96472.doc -22- 1261840 欲、以正常系統作業過程中所執行 業的位置及次數爲指導來進行。一心:,寫入及抹除作 列中?闽i仙 奴而$,係對記憶體陣 ,、他區域中之作業而暴露於 區域執行清除讀取。或者,可不使二:“或串擾的 兄石」不使清除讀取之位詈盎甘从 '己憶體作業相聯繫,而使清除讀取之位置遵循二、 隨機的順序。缺…w 遵循隹定的或 要執行更…: 〜造成系統效能損失,因爲需 程度。^人5貝取來獲得對受干擾更嚴重區域之相同覆蓋 清輯取之另—態樣係選擇何時執行清除讀取作業。一 :又而s,可因應於諸如以下咅 作案· 士 心數里之因素來啓動清除 數λ夺間、w業次數,實體讀取、寫入及/或抹除作業之次 序列,主機之使用量特性,或某些隨機或僞隨機 中可使該隨機或僞隨機序列之產生及檢查與上述 饪一因素相聯繫。 =除寫入有別於其他系統寫入之處在於:其通常係在一 2讀取期間所讀取資料未能通過完整性檢查時執行。清 ’于、馬入僅在清除讀取情呈 下/、有獨特性。可執行與清除寫 :有類似機構但並非針對彼特定目的而實施之其他寫入 勃 ―實例中,可因在正常記憶體系統作業過程中所 朝^亍之讀取或寫人作案 έ ' ,、後未犯通過完整性檢查而執行寫 ^作業。在另―實射,可在不進行清除讀取之情況下, ,,^ 更馬貝枓,其中實施寫入之決定並 :基於資料完整性檢查’而是基於某些其他因素。此一因 係:在該陣列中存在-具有高使用率或受影響率之區 96472.doc - 23 - 1261840 域,在此種情、、7 _ Ρ可重寫或移走該區域中之資料。可χ 一確定的或隨機的方式來連續移走或再新資料二: 寫資料可係出^ m及重 、 於平均讀寫此-所期望目的,但亦合呈有r 以一會克服干擾門3§々七4 π曰/、有月匕 a 式再新該貧料之意外裨益。 資料二"料單元滿足其他清除準則時,可使用該 作業。換古相t新鮮性來確定是否啓動清除彼資料單元之 ' 、σ之,右作爲平均讀寫、資料整合 預清除或其他作章夕w、 u,、用早兀收本)、 化,則可跳過=^分’新近已將一資料單元再程式 …伯過…清除作業’乃因彼等資料新近已再新 過。可使用與各個咨极— 附加資料之一部八中的同儲存的例如位於該等塊之 /刀中的經㈣數值(「熱計數值」)或時間戳 σ己木維護该草咨冰、丨一 體塊中所二 對新鮮性。或者,可根據各實 _ =存貪料之新鮮性將該等實體塊分組,其中將某 =1斤^組儲存作爲該塊之附加資料。然後,可使用彼 ,…夂爲待^除候選塊的相對新鮮性作— 清除之塊。然後,藉由將清除作業限= 子化間已足夠長’因而其所儲存電荷位準可能已受到 >干擾《而需要加以注意的資料單元來提高系統效能。 /監測所儲存資料之相對新鮮性,可根據各邏輯塊或實 Γ,已=式化之新近程度將該等邏輯塊或實體塊有效地 陣,成右干組。可賦予整個記憶體陣列内之所有塊或者該 ^ 平面、區段或其他部分内之各塊一初始的相對熱 十數值i每當將一塊再程式化時,皆可將該相對熱計數 值更新至最新近所移動之組(set)或組群(gr—)之值。一旦 96472.doc -24- 1261840 =疋數$之塊處於最新近再程式化之組中,即可遞增該 取,、斤i再長式化組之i,並可將任何纟隨後再程式化之塊 更新至該新組值。由此,可形成不同之組,使最新近再程 式之塊與最早再程式化之塊之間存在一相對明顯之區 ::身又而&,容許一塊之相對熱計數值翻轉計數,從而 月b夠使用一相對小的次數攔。 當利用相對熱計數值時,當存在八個可能的值(例如在一 具體實例中爲信Γ 〇 5 Γ 7 . <’· 」至 7」)呀,實質上所有塊皆可始於 土值〇」。可使用该等八個值中之七個值,而將一個值 預留用於在代表最新近程式化之塊的值與標識彼等含有最 早資料之塊的值之間提供—空隙。在本實例中,受到寫入 之塊曰接收到-新值「i」,以表示其爲最新近程式化之塊。 一旦已將一定數量之塊更新至新值「1」,後續受到程式化 之塊即可接收到-新值「2」。—旦已將值「2」賦予一定數 量之塊,即可最終將值「3」賦予最新再程式化之塊。此時, 該計數值將翻轉,從而使最早使用之塊之值爲「2」’最新 近程式化之塊之值爲「〇」’並由值…在該等二者之間提 供-空隙,從而明顯地區分具有最早資料之塊與具有最新 貝料之塊。取终,具有最早值之所有塊皆將藉由主機寫入、 清除、平均讀寫或其他機構受到重寫。在上述實例中,此 時值「2」將空缺,該值可用作間隙,而值「1」可用於俨 識最新'近受到寫人之塊。當根據其他準則…塊變爲^ 受清除作業之候選塊時,若其相對熱計數值使其處於其中 一個最新近再程式化之塊組中,則可不清除該塊。 96472.doc -25- 1261840 k擇a ’可保持邏輯塊或實體 埶坪鉍伯.L 、餸塊或该寺二者之絕對 來作出清除決定。換言之,c此等熱計數值 兴ϋ之田將一塊再程式化時,苴絕對 熱計數值會遞增、遞減或者保 一 ρ . , ^ 7 又以提供一關於該塊 之:嫌之總次數的指示。其中,絕對熱計數值所指示 之再1化作業次數較大的塊通常較、絕對熱計數值所指示 此 作業次數較小的塊更新近地受到再程式化。因 此,可不清除再程式化次數較大 寸m 数早乂大之塊中所儲存資料,乃因 。亥貝料不可能已受到明顯干擾。 存在許多種可替代實施的具體清 作I H ^ 股π除肩异法及相關記憶體 作Τ。可由記憶體系統控制器控制清除作業,或者另一方 式爲在每一記憶胞集成電路裝置 衣置U日片)上控制清除作業,甚 至可由主機部分地或完全地控制清 利π除作業。該記憶體系統 可以可移方式與主機相連,或者另一 内。 、擇爲,可嵌入主機 清除作業之讀取階段可以若干種 主 Τ徑不冋方式來實施。可 >月除頻率加以調諧,以使效能最佳化同時保持規定水準之 貪料完整性。舉例而言,可對執行清除作業之頻率及每-欠 所讀取資料扇區之數量二者進行調諧。此種調諧作 舄清除演算法之一部分而自動進 舉例而言,可使清除 作業之頻率及位置與記憶體不同區
Ul2£域中之不均勻受干擾率 相匹配。亦可將清除讀取延期, ^ 以將乐統效能最佳化或、、故 足特定之即時需要。 /、 清除讀取之實施方式亦存在夂4 仔隹各種替代方式。舉例而言, 96472.doc -26- 1261840 了既使用k稱參考位準亦使用帶裕度之參考位準來讀取一 組資料。裕度量可以所遇到之具體干擾機構爲目標。若所 碩取賁料無法由ECC來修正(舉例而言),則以一更寬之裕度 貫施讀取作業可能就能夠恢復該資料。而若可無錯誤地正 常讀出資料,則以更窄之裕度實施讀取即可提供關於該資 料之品質之資訊。 在完成一清除讀取之後,決定是否採取修正措施。在作 此一決定時可依據之因素包括一活動階,該活動階係基於 已债測到的錯誤位元之數量及/或型樣。 修正措施最通常係包括在記憶體中之相同或一不同之位 置重寫所咳取資料。爲將系統效能最佳化,或爲滿足具體 之即時需求,可將此等清除作業延期。修正措施可另外包 括在一清除寫入作業期間使資料旋轉;換言之,改變代表 具體所儲存資料之記憶胞狀態的原有狀態。修正措施亦可 包括將認爲易於受到干擾之記憶胞、柱或其他結構映射出 系統。 大夕數主機協定皆具有一介接至記憶體系統之抽象介 面,攸而使該記憶體通常由主機按邏輯塊位址編號(LBA) 來定址。亦存在其他的等效定址模式,例如ΑΤΑ主機協定 中之磁柱一磁頭一扇區,但基本概念在於:主機並不知曉 2 fe體系統已儲存有一既定主機資料扇區之實體位置。主 機系統可得到一組線性相粦ί5之獨A邏輯塊位i止,以在該等 位址處儲存及擷取資料扇區。該等經抽象之主機協定通常 要求在記憶體系統上存在一控制器,以便控制記憶體作 96472.doc -27- 1261840 業、執行映射功能、資料管理、錯誤恢復等等。使用該等 t抽象之主機協定運作之記憶體系统較佳依靠該記憶體系 統中之控制來執行清除作業、乃因主機通常並不知曉該 記憶體系統之實體態樣。 另方面某些主機協定具有一其中由主機自身執行記 f思拉官理功能之介面。遵守該等協定之記憶體系統即使具 有控制器功能’亦通常具有最少之控制器功能。可能存在 可由記憶體系統而非主機系統執行之不同之功能部分,例 如(但不限於)ECC產生、ECC檢查或ECC修正。以該等主機 記憶體所管控協定來運作之記憶體㈣將通常依靠主機來 執行清除作業,乃因該記憶體系統之所具有之邏輯通常不 足以執行清除作業。 、某些記憶體系統具有一專用控制器,該專用控制器之用 述係運作3己憶體裝置並執行記憶體管理功能。其他記憶體 系統則不具有專用記憶體控制器,而是依靠主機架構之某 些部分來執行記憶體管理作業。舉例而言,可將一嫌 性記憶體裝置直接連接至主機系統中的-利微處理器: 由軟體來執行記憶體管理功能。在此等不具控制器之記憶 肢系、克中用於負責記憶體管理作f之同— 執行清除功能。 j 有k制S之§己憶體系統中’亦可將控制器功能^ 合入:非揮發性記憶體裝置(積體電路晶片)自身中。在一; 端之貫例中,可將整個控 釗的正合入一記憶體裝置上。 記憶體系統可嵌入主機季 糸、,死中亚在不同程度上將功能4 96472.doc -28- 1261840 a入通用主機子系統或呈 ,^ ^ ,、有/、他功能之主機子系統内。在 此寺敗式自己憶體系統令, ir ^ , 书運循相同之主機協定,儘管 亦可旎未必盡然。然而, ^ + 通用規則,需要使用相同 之功硓組來運作記憶體系統。 | 5己f思體糸統通常李 么一 行、、主f姑 在一經抽象之主_定情況下執 丁 /月除作業’然而主機季 定義之入而田也+ 猎助一特殊命令或其他預 疋義之"面并動來啓動此 功食匕之mn 動此寻不統中之清除作業。構建此種
= 原因可能在於:主機系統最知曉彼等將不獅 體系統進行資料健存或操取存取 f不對。己L ;ΤΓ時間週期期間借機啓動,作業:主= 性且對效能之影響最小。 動月除作業之機構可專門用於清除 亦可爲一通用機構,用於將可供 0 一戈者/、 記愫麫糸缔如〜 /、用於内矛力作業之時間通知 在此斤彳種情況令,清除作業可係記憶體季统 . “間所執仃之若干種作業中的-種。 叉到一既定記憶體作業影響之區域通常較大,因 執行一作業時即清除整個 母田 h月除王個叉影響之區域並不可行。一 吕,將僅選擇清除受影響區域之一部分 " 定必須使清除作業將在錯誤位元數量及已偏:::率的 超出記憶體系統上可具有之任何恢復方宰之:“位準 擾最嚴重之區域。 U案之則貞測出受干 :除作業之執行頻率係—重要參數,其既影響 性亦影響記憶體系統之效能。清除頻率愈在:: 元數量及已偏移胞之位準超出記憶體且4位’ 二具有之任何 96472.doc -29- 1261840 :復方案之前在一資料瑰中偵測出受影響之胞之可能性即 愈大。“ ’清除頻率愈高’則記憶體系統之降格即愈嚴 重’乃因此時專用於此作業之記憶體及控制器時間量增 =爲保證所期望之f料完整性水準且同時使所犧牲之: 能盡可能小,需將清除頻率最佳化爲所需之最小裸頻率, 並帶有任何吾人認爲適當之防護帶。清除作業可採用之頻 率可二以下兩種方式改變:⑴選擇執行清除作業之時刻, 及(2)選擇每次欲清除讀取之扇區數量。 在產品之壽命期内’維護資料完整性所需之清除頻率可 有所變化。舉例而·r,隨著記憶胞之循環次數的增加,干 擾率可能會增大或減小。假若在製造時設定爲一固定之清 除/員率m爲在記憶體系統之壽命期内維護記憶體系統之 完整性’將須使用在記憶體系統之壽命期内所需之最高頻 率二匕會導致當使用-較低之頻率即可滿足要求時亦使用 =高之清^頻率,致使所犧牲之記憶體系統效能高於在 記憶體系統壽命期内某些時候所需之程度。存在數種在記 憶體系統壽命期内對清除頻率實施調諧之方法。 可在製造記憶體系統時設^ _可變之清除頻率。此一方 法係提供一頻率值表,該頻率值表使用任何會影響干擾率 之尺度來設定不同之清除頻率。其—實例係—表包含對應 於記憶體㈣之各部分所經歷之不同程式化/清除循環計 數值的清除頻率。若該記憶體系統保持有循環計數值,則 «該㈣域之最差情形循環計數值或平均循 %计數值自該表中選取該清除頻率參數。 96472.doc -30 1261840 另一種方法係使記憶體系統能夠根據先前清除作業之結 自行調節清除頻率。舉例而言,若記憶體系統保持有 /月除作業日諸並確定出需要採取修正措施之清除作業之 比例極低,則其可調低清除讀取之執行頻率。反之,若其 確=需聽取修正措施之清除作業之比例極高,則其; 凋冋/月除項取之執行頻率。可供記憶體系統調節清除頻率 之另一尺度係在先前之清除作業期間在各單獨儲存元件中 横測到的偏移量或錯誤位元數量。在任_上述情形中,該 系統皆可使用每一新的結果來適應性地調節清除頻率參 數,或者其可記錄該資訊以供用於週期性調節。 目前存在若干種可用於選擇何時執行一清除作業之技 術、亥等技術之某些實例爲:⑴隨機或僞隨機,(2)根據主 機作業之次數,(3)根據對記龍裝置之作業次數,⑷根據 日彳間間隔。可使用任一種上述方法來調諧清除作業之執行 頻率。在下文中,假定任何爲作出清除決定所需之參數皆 係在製造時提供。讀取作業、寫入作業及清除作業可具有 不同之頻率麥數,乃因每一該等作業皆可以不同之頻率干 擾記憶體。 若系統可得到或産生隨機數(RN)或僞隨機數(pRN),則可 使用隨機數(RN)或僞隨機數(pRN)來確定清除作業之頻 率。下文將闡述若干種使用一 RN* pRN序列來決定是否執 行清除作業之方法。所有下述方法皆假定以一定的定期間 隔來檢查RN,且根據對RN值的某種測試來決定執行清除作 業0 96472.doc 31 1261840 種使用ik機數來確定清除頻率之方法係將一⑽或 P RN與一其中所包今 _〜 3之一疋數量之位元設定爲值丨、其餘位 元則設定爲零的逆置失* h罩麥數執行邏輯AND運算。其中,根據 該運算之結果係零值還是料值來決定是否執行清除 作業。一其中m多之遮罩參數産生零值的頻率要低於一其 中〇較多之遮罩值。下矣 一 卜表頦不在不同之八位元遮罩值情況下 的近似清除頻率,苴中如—1 -、 假疋在AND運算之結果爲零時執行 清除:業。應注意,對於-真隨機序列,僅有值爲丨之位元 之數里(而非4值本身)影響清除頻帛,因而該表中之值僅爲 貫例性值。 … 遮罩值(十六進制) 遮罩值(二進制) 0x00 〇〇〇〇〇〇〇〇 1/1 0x01 00000001 1/2 0x03 00000011 1/4 0x07 00000111 1/8 OxOF 00001111 1/16 OxlF 00011111 1/32 0x3F 00111111 1/64 0x7F 01111111 1/128 OxFF 11111111 1/256 另一 種相關方法係計算值丨 疋疋否執行清除作業。同样 一 樣’可將該RN中之位元數量盥一 表示一臨限值之遮罩或佶4 / 進仃比較。再一種方法則需要將 一 RN之值與一清除頻率失 、4數之值加以比較。其中將根據該 一…,〜受人里 7 μ石隹 96472.doc -32 - 1261840 否在數值上超過該臨限值來決定是否執行清除作 業。舉例而言,若臨限值爲5 ’則1〇^會高於時間5/256。 “另一選擇爲,可使清除頻率與所執行之主機作業次數相 繋舉例而έ,可每N次主機讀取、寫入及/或抹除作業 ,行一次清除作業’其中__用於設定清除頻率之頻率參 2 ^此外’亦可使清除頻率與所執行之記憶體作業次數相 2繫。舉例而言,可每膨欠讀取、NW次寫人及/細次抹 I作業執行—次清除作業,其tNR、NW及爲用於設定 :::頻率之頻率參數。再一選擇爲,若記憶體系統包含— 二♦間間隔之方法’則可以—定之規則時間間隔τ來執 丁:除作業,其中τ爲一用於設定清除頻率之參數。 爲保持記憶體f,兮台t γ ^ —生 糸、,苑之效月b,可能期望甚至在已決定執行 時亦可將一清除讀取延期。其原因可能包括即 某此日例而言,主機可能會要求傳送某-資料,而在 /、二%•候將資源專用於清 足所保證資料相玄影響記憶體系統滿 作業:數:1 能力。爲此,記憶體系統可將各清除 機物=:理以執行清除作業不會影響主 令處理中二 至下一主機命令。在此理後的某個時候,或延期 業參數並在以後對主機最二,會儲存已決定之清除作 子主枝取舄方便之時刻處理之。 由於在一既定時刻 之-部分,因“,月除§仏體陣列中-受影響區域 執行-清除時立即選擇清除位置在已決定 夏炎擇清除位置通常涉及 96472.doc -33- 1261840 ^對記憶體裝置實施讀取、寫人及/或抹除作業之位置。該 =擇中蘊含著知曉一既定記憶體作業將會在哪一區域上干 擾其他儲存元件。藉由將欲清除之區域與執行作業之區域 相=聯’能夠更有效地執行清除作業,乃因由此即不會對 s己憶體中不可能受到干擾之區域執行清除作業。 —種選擇欲清除位置之方法需要使用一 RN或PRN自受到 :既定作業影響之區域中選擇一位置。平均而t,受影響 取大之區域將被選中清除之機會最大。假定某些區域之選 ^比其他區域更頻繁且僅將達成平均之均旬覆蓋,則應 周筇m除頻率來補償預期最差情形之隨機數覆蓋。 一另一種逛擇欲清除位置之方法需要確定性地移動穿過一 f影響區域H爲保證完全覆蓋,此種方法將要求既 §己錄記憶體作業亦記錄清除作業。 若記錄對記憶體執行之活動,則可得到—關於_既定區 t受到潛在干擾作業之影響程度的量度。在已知此資訊之 /、件下。己丨思體系統即可在該記錄中搜尋所受影響最大之 區域,並將清除作業限定至彼等區域。該方法可用於指導 上述任種方法來確定清除頻率及位置。通常可藉由保持 循裱計數資訊來跟蹤程式化/抹除循環。然而,一般而言, 記錄讀取活動並不可行,因此該方法可能不能用於跟蹤讀 取作業影響。 、 另 < 擇爲,可記錄採取修正措施之位置並用其來指導 確定彼等較其他區域更易受到干擾或較其他區域受到更大 影響之區域。記憶體系統可使用該資訊來對欲清除區域之
9(5472.dOC -34- 1261840 選擇加權,尤其係對於彼等已較其他區域更頻繁地要求採 取修正措施之區域。 在未保持有關於潛在之受干擾影響區域之知識的系統 中,可使用隨機方法或確定性方法而不依賴於此等知識。 在此種情況下,清除作業係在整個記憶體系統中執行,而 不官主機活動在哪裡造成記憶體系統之作業。然而,清除 頻率調節得足夠高’以保證覆蓋充分。一般而t,此會極 大地浪費資源’乃因記憶體线中之某些區域所受影響將 退大於其他區域,因而該等區域較佳應作爲首要的清除作 業焦點區域。 元數量及已偏移記憶胞之 /月除作業之目的係在錯誤位元 ㈣超過記憶體线上可具有之任何恢復方案之前债測出 叉干擾之儲存元件。爲此,通常期望在因受干擾而失去一 既定電壓臨限位準之大部分防護帶之前盡可能早地谓測出 干擾。 如上文在先前技術中所述,快閃記憶體通常以離散狀態 或電荷儲存位準範圍來儲存資料,其中每一狀態皆藉由一 定之防護帶與其他狀態相隔開。通常在每一狀態之;皆存 在—標稱的判別感測位準,若-儲存元件高於該位準,即 認舄該儲存元件處於—種狀態,而若低於該位準,即認爲 處於另一狀態。當一既定儲存元件受到干擾時,1 式化或清除而獲得之位準可能會開始偏移4該^元件 ^立準接近或交叉該判別感測位準,則其會産生處於一狀 恶之資料,該狀態不同於其原來藉由程式化或清除而獲得 96472.doc -35- 1261840 之狀態。該種錯誤通常將表現爲 錯誤’且通常將藉助覆蓋該資料攔之ECC偵測出。 、藉由爲讀取狀態留出裕度或偏置讀取狀態以使該判別感 測位準進一步朝某種狀態偏移,將在即使偏移量不合在护 稱讀取狀態下引起錯誤時亦會感測出受干擾之儲存:件: 於錯誤狀態。此使系統能夠在該種偏移接近可 體系統作業期間引起錯誤之點之編出該偏移。 若已知干擾機構❹-特定方式影響資_存位準,則 可將目標嫁定爲藉由朝預期之位準偏移量留出讀取狀態裕 度來偵測出彼等特定之干擾機構。儘管理想 : 單組裕度狀離下蕤由, 月幵7應疋在 致精由—早次讀取作業確定出預期之干择機 構,然而,通常此可能無法達成。可能會需要在不同狀能 下執行多次讀取作業。舉例而言,存在於-記憶體中之: =擾機構可能會使儲存元件之程式化或清除程度加深。 …及低於—判別位準之儲存元件皆可能 移’在此種情況下’可能需要首先檢查是否有儲 位準偏移,然後再檢查是否: 自另一狀怨朝该判別位準偏移。 卞 有兩種單獨之資料品質量度可作爲 採取修正措施:⑴藉助卿貞測出#料錯誤^二= 手未偵測到或確實未㈣到資料錯誤,然而 ^ 位!引起資料讀取錯誤之前㈣電荷儲存位準:偏: 查所儲存位準是否具有足夠之裕度二=:或僅爲檢 」使q除碩取狀態帶 96472.doc -36- 1261840 ::度:不管所讀取之資料處於標稱狀態還是處於帶裕度 數:來::根據在清除讀取作業期間所伯測到的錯誤位元 二::是否採取修正措施。舉例而言,若錯誤位元之 正;…ECC修正能力,則系統可決定延期採取修 心把’或者完全忽略該錯誤。 =用錯誤位元數量作爲臨限值來啓動修正措施外,季 定:、舉:::如錯誤位元型樣等其他因素來作出修正決 或者r二ECC修正能力可能對位元錯誤型樣敏感,
位疋錯誤型樣可指千Ψ & L I ^ ^非揮發性記憶體中一特定的 型樣構。亦可能會存在其他使臨限值基於位元錯誤 現出來:因。位元錯誤型樣通常係在咖修正作業期間顯 時亦保4叙目的,即使在已確定出需採取修正措施 因辛=能會延期採取清除修正措施。其原因可包括即時 些時候用主機可能會要求傳送某一資料,而在某 滿足所仅清除修正措施可能會影響記憶體系統 ,斤保h料速率之能力。爲此,記 除修正措施作堂矢#丄 示、、死j將各清 作業茶數排成仔列,以供後續在執行清除修正 ::可=響主機效能時再予以處理。該等清除修正措施 理,月至此後主機命令處理中的某個時候、該命令處 =某個時候’或延期至下一主機命令。主要之處在;處 錢將得到健存並隨後在對主機而言最爲方便時 存在兩種明顯不同的極端化記憶體架構,其中每一架構 96472.doc -37- 1261840 皆會引出不同方法用於將主機 貝體位置及用於即刻管控及存 木構之間的基本區別係關於最 機協定資料扇區之尺寸的關係 貧料映射至記憶體裝置上之 取已程式化資料。該等兩種 小抹除單元之尺寸及其與主 右取小抹除單 τ接近主機資料扇區之尺寸, 構建一直接定址方案,在該直接定址方料,通常將1 :主機貧枓扇區映射至主機將該既定主機資料 的同一實體位置。在此—方案中, ‘,’、 入^ ^㊉在將該替代資料重 入先則内容之位置上之前, *·' ^ . , 4i ^ 茨只體位置抹除先前内容。 …抹除单元之尺寸大於一主機扇區 作業可能需要執行讀取 ,_ 又舄入作業。在該定址方幸 通^… 耵至儲存糸統中之其他位置,但此 I书僅作舄一缺陷管理作業之一八 粁式ψ你甘L ^ ^刀在扇區重指定期間進 仃或出於某些其他系統靠 德,今t “ 隸目的而進行。在此種映射之 出現某些其他重指定事件。在此直,體位置,直至 因千爭件在此-直接位址映射方案中, 之^位P之修正措施作業通常需要抹除確定已受干擾 ==處的内I,然後將該等内容重寫至同-位置。 對於在重寫期間出現的任比 的-般異常處置方式相厂、白以一種與系統所採用 方式… 方式相—致之方式來處置,該等異常處置 寫入參數等等。 纟除及重寫’重指定,改變抹除或 寸 另方面,若最小抹除 ,則通常構建一抹除〜 早元之尺寸遠大於主機扇區之尺 集用定址方案。此一定址方案亦 96472.doc -38 - 1261840 可使用亦具有—小的最小抹除 抹除一集用方安士 ^ ^心粗來構建。在- 塊 ^ ,通常將各主機扇區劃歸成若干邏葬 ‘,以後將該等邏輯塊映射成 機資料扇區係由… 早…既定之主 繞。當主機写入其他主機資料扇區所環 之所有戶「 既定之”扇區時’讀取環繞目標扇區 單元#佔兮一 〃 斤有扇區寫回至該抹除 吏〇 —個主機扇區包含 此箄渦夕从七a 十亚不可行。爲避免 ' °夕的内務操作,一抹除 數旦从老 木用方案通常保持有一定 里的處於已抹除狀態之抹除 本之I @〜, 以供用於在寫入新版 之貝枓日守谷納該等新版本資 夂戶广 4貝計出於貧料管理之目的, α羽區通“系—起組成若干邏輯組 ▲ 力圖俘拄夂戶r各 叙而吕,系統將 呆持各扇區在同一邏輯組 技^_ T W戶、體接近性。可將若干 抹除早7G組合構成一邏輯結構, 當係 私'作凡塊或虛擬塊,此通 “糸出於達成高寫入平行性之目的二 之鉍次,· 版而吕,來自主機 心將寫入一已抹除位置。有時,將來自同-邏輯組 鱼=新資料替換的其他扇區複製至同-元塊中,或者 既〜— 炎衣主另一凡塊中。此後,一旦一 兄义兀塊中或一抹除單元中之所 萝s甘 所有貝料皆已得到替換或複 、一他位置,即會抹除該元塊或枯^ 0 , 已枯^ 尼次抹除早兀,並將其視爲 址古& 峠刀。在此一抹除一集用定 木中,因一干擾而引起之 次 > 正拓軛通常需要將受影燮 之貝料複製至記憶體系統上 曰 统艮描 之另—位置,並需伴隨實施系 、,死马獲得正常記憶體行爲所需 而之任何資料整合。 4而,可將在一清除作孝期 系,、月間需要採取修正措施之資料 96472.d〇( -39- 1261840 人因主機活動或一般資料管理 女斗、十 而引起之寫入作業不同之 方式來對待。可將資料寫入一專 ^ ^ ^ 寻門的位置,該專門的位置 預^用於容納該資料一較短的時 m τ間,直至系統能方便地將 ”人在遴輯上鄰近之資料相整合 场止,该區域即可預留, 亦可在需要時分配。在某些情況下, 、 將次社壬# ^糸統亦可僅抹除及 :=寫至"置。舉例而言,若駐存於實體塊中之 地=甚少或未駐存其他資料’則可將其他資料永久性 二:;他位置,或者在抹除期間暫時健存於其他位置(可 月b係储存於揮發性記憶體中), I/、而要如取修正措施之資 枓一同寫回。對於在資料寫入期 J間出現的任何錯誤,皆以 、統所採用的一般異常處置方式相-致之方式來處 以寻異常處置方式包括(但不限於):重寫,重指定,寫 入一新位置、改變抹除或寫表 . 等等。 气八> 數、使貧料極性受迫旋轉 盆某些單獨之儲存元件、儲存元件組或其他結構可能會較 :職70件、儲存元件組或結構更易受到干擾。作爲可 '等結構及分組之一實例,快閃記憶體中各錯存元件 可5又置爲共用一共用汲極、源極或開極線,製程中所出現 的變化可能會使這樣的一组相 、 、、且相遲之儲存兀件所經受的來自 /曰在干擾#號的影響強於平 5至於千均值。同樣,在用於製成該陣 歹’之4程中所出現的變化可能會使某些單獨錯存元件較立 他儲存元件更易受到影響。可將儲存系統設計爲永久性地 映射除去或重指定該等被認爲易受干擾影響之區域。在一 極端情況尹’可在第—次出現一清除修正措施作業時重映 96472.doc -40- 1261840 射任何健存元件或其他結構。舉例而言,若具有冗餘儲存 兀件,則可映射除去彼等含有需進行Ecc修正之位元之健 存元件。在其他實施例中,可記錄修正措施作業之位置並 在此後加以分析,以便此後重映射各儲存元件或储存元件 分組。該分析可涉及一既定分組已需要採取修正措施作業 严髀:之&限值。在某些情況中,可能需要使用關於該記 思體衣置之實體態樣之知識來分析所記錄資料,以便伯測 =㈣結構(例如相連之储存元件)之存在。對健存元件或 、 、 、射之方式取決於記憶體系統之構建 工、+例而°,包含-邏輯扇區之實體區域可包含冗 蚁儲存元件,以便替換被映射除去之儲存元件。在另一 貫例中’若-整個扇區或扇區組需要採用修正措施作業, 則映射除去該整個扇區或扇區組。 :除作業可在主機作#之後臺中或者在兩次主機作業之 曰仃2能需要根據主機所請求之作業類型來改變清除 二:仃a |例而s,在執行—主機讀取命令期間可能 =便於進行清除修正措施作業,在此種情況下,可將修正 措她作業延期至一對記憶體系統而言更方便之時刻。 -種可避免干擾之替代方法係未經首先檢查確定資料是 Γ誤即移走已可能受到干擾影響之資料。目前存在許多 I用於^擇移走資料之頻率及位置之方法,上文已對大多 數方法進行了說明。 清除作業之一般實施例 圖8所示流程圖概示-實例性快閃記憶體清除演算法中 96472.doc -41 - 1261840 之σ王要步驟。在 V驟9 1 _,監測記1咅體季 動,以確定何時發生一清除 己,糸統之活 可爲一或多個如下事件: X事件。此-觸發事件 1.當在該陣列中一既定塊 干擾其他單元之带,#、 隹 、早兀内發生一可能會 早兀之电何位準的資料讀取、 業時。該作聿之# b / + 4db 、科寫入或h除作 -青除料u 續時間可能對確定是否觸發- 中界定各狀態之電荷位准範:"感性(例如當記憶體以其 較爲重要。…τ竭父窄的多狀態方式運作時) 2·田既定單元之正常系統讀取作鞏咱 m ^ ^ ^ - An . 、取作業頊取出具有至少一 個次預°又數置個位元錯誤之資料時。 3.當裕度讀取(設定參考位 正常讀取作業爲窄之、 方式使侍項取出一較 爲乍之私式化分佈)顯示儘管不存在位元伊 誤、但經程式化之#产的七A 子任位7G錯 '匕之3己匕胞之臨限位準並非最佳時。 =最末次清除作業起經過—預定之時間間隔後。 5 ·田主機啓動一清除作業時。 總體目標係足夠頻繁地執 料Μ 订/月除作業,以在受干擾之資 枓芰付多至超過記憶體系統中
芬噼h古安、 一有之任何恢復方案(ECC 及頜似方案)之前偵測出受干擾資料。 一旦偵測到-清除觸發事件,即在下_步驟93 記憶體陣列内執行清除作業之位置。可根據如下來確定實 例性候選位置: 「木罐疋貝 1·位於既定單元外的塊或 , /、他早兀,其在讀取、入 抹除作業期間施加有電壓岑 令私&次电流且與該既定單元共用位元. 96472.doc -42- 1261840 線、字元線或其他信號線; 2. 位於該既定單元外的其他單元,其具 定單元之彼等信號線進亥既 擾。 耦°因而-者之間存在串 3. 對該(該等)其他單元是程 g、主 潛在地受到該既定單元作業之影響^疋T決定其是否 = 在影響之單元可取決於該作業係 入作業還是抹除作業。 業寫 5.若因在對該既定單 所續取f之系統讀取作業時在 所。貝取貝枓中發現錯誤 丁隹 清除作業。 對其進行一 6·可使用各候選塊中、 已重寫之候選塊。、抖之相對料性來除去彼等新近 =出作爲待清除候選塊之記憶塊 必接者執行清除作業。如下一步驟95所…後未 可將清除作業之啓 … 斤不,在某些情況下, ^爲使系統效能最佳化 ^ · 需要,可將、、太 —^、足圮饫體系統之即時作業 一 、π除5買取作業延期。 2·對清除作業實施 · 行頻率,以# ° °白· σ動恶地調節清除作業之執 保持效能與保持資 ^ 3·可部分地約“ 達到最佳平衡。 來確定執行—ί 被識別爲可能受影響之單元之特性 之經歷水準(程二除作f之緊急性,該等特性例如爲各單元 事件之類型。;化/&除魏之次數)及觸發該清除作業之 96472.doc -43 - 1261840 4.可進一步將一清除觸發事件限定爲以一確定性、隨機 性或僞隨機性方式發生: (a) 在一規定數量之主機作業之後; (b) 在一規定數量之實體讀取、寫入及/或抹除作業之後,· (c) 在一規定時間週期之後; (d) 根據主機之使用量特性;或 ⑷-隨機或僞隨機序列,可使該隨機或僞隨機序列之產 生及檢查與任一上述項相聯繫。 在下一步驟97中,選擇在步驟93中被標識爲待清除候選 塊之塊或其他單元之全部或僅一部分進行清除作業 準則包括: # 1.可選擇在任-作業巾將被標識爲有待清除之所確 凡之數$,以平衡清除作業所用時間對系統效能 保持資料完整性之需要。 …a 〃 2·保持此種平衡之方式 係識別出若干單元以供進扞合 丽之清除作聿,所缉如留-订 1、進订田 下菜所識別早兀取決於記憶 識別單元所經歷之筠斗/斗人 尺用期限、所 、二歷之式化/抹除循 之事件類型、及m ^冑發该清除作業 之歷史。 <貝科如取必要修正措施 3·—清除作業中所包含 用期限、既定單元所取決於記憶體之使 疋早兀所經歷之程式化/ 清除作業之事件類型。 ’、展—人數及觸發該 4·或者’稭由以—種與正常使 確定性、隨機㈣ “之方式遵循- 卜來選擇較所有所識別單, 96472.doc -44- 1261840 凡爲少之單元進行清除作業。 接下來,如步驟99所示,根據下述自所選單元讀取資料 (清除讀取): 、 么h清除讀取作業並不與完成任一特定主機作業或與其他 π、’先作業(例如平均讀寫)直接相關,但通常以與正常資 取作業相同之方式來執行。 貝 # =在如下4寸疋情形中可執行裕度讀取作業(以不同於正 系貝料5貝取作業中參考位準之參考位準來讀取): ⑷作馬對其中錯誤太多以致無法藉由ec 的第二讀啟祚營 *丄 ^ 1I貝科 寬,從而H’該第二讀取作業中之參考位準放 可在;/ —見於正常讀取作業之程式化分佈(或者亦 了在下文所述資料修正步驟107中執行);或 ㈨當預計將由觸發事件引發之特定干擾機構可妒 所程式化位準明顯偏移時, ㈢使 .x 例始€貝取作業可爲一且古舌办 芩考位準之裕度讀取作業;或 /、有更見 ⑷作爲對其中無位元錯誤或僅有少 ECC修正之資料的第 ㈣而可由 曰/土 #、隹 業,以便識別出作爲已傯雜 取佳位準之電荷位準儲存之資料 :已偏# *考位準縮緊,從而讀取出 / ,取作業之 佈。(裕度讀取作業將在下文中^正㈣取作業爲窄之分 3·作爲讀取-塊之資料之步閣述)。 在標頭中儲存有資料之相對新鮮:生附加資料。若 性來識別新近受到重寫因而益# 、彳可使用該相對新鮮 …、而凊除之塊。 在下一步驟101中,評價所讀 取貝料之完整性。作爲清除 96472.doc 1261840 續取作業之一部分,可根據自記憶體單元讀取之使用者資 料計算出一ECC,並將該ECC與先前在程式化期間所計算並 與該使用者資料_同儲存之ECC相比較。只要不存在位元 錯誤或僅存在少量錯誤因而可由ECC加以修正,即無需執 行上文所述的使用放寬之參考位準的第三帶裕度讀取作 業。 一可視需要執行之附加讀取作業係讀取跟蹤記憶胞之位 丁,以查看其所儲存之值是否已改變。爲建立用於讀取記 胞之苓考位準,通常皆包含有跟蹤記憶胞。 一旦讀取出資料並已知所讀取資料中之錯誤數量(若 有)’即在下一步驟1〇3中確定採取修正措施是否既有必要 亦可取。某些考慮因素如下: 一 1 ·種方法係修正具有任意數量位元錯誤之資料,由此 會使清除作業更明顯地影響記憶體系統效能。 ^另-種方法係放棄修正該資料,除非資料位元錯誤之 數里超過某一早兀讀取臨限,由此會降低清除作業對效 能之影響。 3·亦可使用藉由比較各Ecc而確定出之錯誤資料位元之 型樣,來確定修正該資料是否可取。 少4.較佳不要清除新近受到重寫(具有相對高之新鮮幻之 較佳應使完成 及未來資料完 叙而言’當確定是否修正錯誤資料時, 清除作業對效能之影響與該等錯誤對於當前 整性之嚴重性達到平衡。 96472.doc -46 - 1261840 在下—步驟1〇5中 其延期至—後續時間::::行清除修正措施作業還是將 與在步驟95中所考慮因辛相二此—決定時所考慮之-因素 時之特定即時作皆哈、’、问,即可爲滿足記憶體系統此 、 系鵷求而延爱日 , 該清除作業對系統效 般而言m後完成 該清除作業,計b1^、之影響將低於在當前時刻完成 ^ 則車父佳膺蔣# 斷控〜除作業延期。通常不希望中 =二“理作業來執行-清除作業,當因欲由 等而讀量彳艮大1要進行資料整合及類似原因 Γ= 業將較通常情況耗用更長之時間時尤其如 由二广’由清除讀取作業所讀取之資料、其位址、 析所確定出之任何錯誤、及在前面步驟中形成的 八旦/月除作業翏數會暫時得到儲存。此後,當對系統效能 :影響降低時,即會讀取該等資料及參數並完成該清除作 業0 當欲完成清除作業時,在下一步驟107中修正該資料。在 本實例巾,係藉助咖來修正:㈣。若未料上文所述步 驟99之-部分執行裕度讀取作業,則正常讀取作業或 清除讀取作業所產生之錯誤位元多於㈣咖可修正之數 $,可能需要執行一或多次裕度讀取作業(其中參考位準放 覓,從而會讀取出一寬於在先前讀取作業期間所用之程式 化分佈)來恢復該資料。然後,在步驟1〇9中,採取適當之 修正措施。此可包括在原先讀出該等資料的相同位置處重 寫已修正資料。當然,此需要首先抹除其中會重寫入該資 料之塊,在圖2所示記憶體結構中,由於每一已修正資料扇 96472.doc -47- 1261840 區皆填滿一記憶胞塊’因而此可能可行。但在圖5及6所示 之大塊記憶體結構中,此並不㈣,除非有足夠的已得到 修正之修正資料扇區需要使用在邏輯上連續之位址來重寫 從而填滿或接近填滿一塊。 ,.里两土 w /u削卞η丨月丨彳于:彳卞茶千 。貝出。亥貝料之位置不同之位置内。當記憶體結構係利用如 =5及6所示之大儲存塊時,若欲重寫之資料少於一塊之容 置,則可採用上文所述之抹除集用池技術或其他大塊管理 技術。舉例而言’修正一包含16個、32個或更多個頁面之 塊中的僅一或兩個頁面中之資料並不罕見。對於此等情 況’可在該陣狀—或多個平面巾將某-塊專用於臨時儲 2該一或數頁已修正資料。然後,在方便時,例如在由記 U體正$作業期間的其他因素啓動之資料整合期間,將所 重寫資料與儲存於原始塊中頁面内之未修正資料相組合。 或者’亦可將已修正資料 或者,亦可在該專用塊變滿時、或在資料之各主題頁面已 寫入该專用塊後-預設時間量之後、或者在其他對於系統 作業而言方便之時刻啓動此種整合。 可方便地利用一或若干共用之指定實體塊臨時儲存來自 诸多其他塊中各頁面之資料清除重寫、此後再將所重寫頁 面之貧料與來自其原始塊中其他頁面之資料相整合。舉例 而言,將來自塊1及2之頁面之清除重寫資料臨時儲存^一 臣品哈塊3中。此後,將塊1之清除重寫資料自塊3複製至一已 清除塊4内,並亦將塊1中其餘未經改動之頁面複製至塊3 内,以整合映射至實體塊丨内之資料。然後,在另一已清除 96472.doc -48- 1261840 塊5中執打相同之作業,以在其中整合儲存於塊3中的塊2 之清除重寫資料與來自塊2的未經改動之資料頁面。 在圖6所示利用元塊之系統中,既可在每一平面中皆具有 一個此等專用塊來儲存來自彼平面中其他塊之重寫資料, 亦可在整個系統中具有_單個專用塊以將來自任一平面中 所有頁面之已修正資料皆寫入該專用塊令。所選取之具體 作業取^於各單獨塊中之頁面數量、整個記憶體陣列中之 頁面數里及關於彼等其資料將藉由清除過程而得到修正 之頁面之預期數量及頻率的預報。—其結構及/或作業使其 易於受到干擾之記憶體陣列將需要具有較其他記憶體陣列 更多之專用塊。若清除讀取作業未發現資料錯誤但正在執 订/月除作f以便將已偏移之儲存電壓位準移回至其 圍之中點,則僅重寫所钱跑次对 一 ·、、、 。貝取舅料,乃因此時顯然不需要進 行修正。 某些記憶體系統之使用方式幾乎不會引起干擾。因此僅 偶爾地執行清除過程,乃因幾乎不存在將識別出之觸發事 件。料’亦可行之情形爲:不管所清除資料最初駐存於 哪些貫體塊中,皆 e 0將相對^夏之重寫資料一起永久性地儲 存於一或多個指定實體塊中。 _ I此種Μ,亚不作爲清 -転中之一步驟將所清除資料之頁面重組合入具有其他 在邏輯上相鄰之資料之頁面的實體塊内。修正措施之另一 要點係使用-不同於最初寫入時之旋轉來重寫所修正資 料舉例而言,最初可將—四狀態系統之四種類比儲存狀 態範圍分別指定爲表示00,01,10及η,而在重寫時則指 96472.doc -49- 1261840 疋爲表不11,10,01及00。該轉換係由記憶體控制器使用 保存作马附加資料或其{也資料之一部分之具體旋轉資料、 在°貝取貝料時實施。資料旋轉可有利地應用於對已修正資 料及不需要修正之資料二者的重寫。 可包含的另一修正措施要點係:映射除去彼等在歷史上 所受干擾影響遠大於平均影響之記憶體頁面或塊^係藉 由,測該陣列中各頁面、塊、平面及/或其他所;t義區財 之貢料錯誤數量來㈣。當然,應小心爲<,以防映射除 去因除更易受干擾影響之外的其他原因(例如由於某一塊 受到較平均情況更多或不同之使用)而經 面或塊。 义貝 /月除决异法通常係由記憶體控制器來控制,❻亦可由主 2二當由記憶體控制器控制時,係將該演算法編碼 孝:間:=域,該記憶體系統動體通常係在記憶體作 業』間由破處理器21(圖1A)自控制器ram 25執行。 所使用之具體清除演算法取決於記憶體系統、 憶裝置物)之某些特性。該等特性之實例如、下、:己 ⑷儲存於程式化記憶體單元(通常爲一頁面 料扇區之數量; 主枝1 (b) §己憶胞儲存狀態之數量及指 臨限範圍之廣度; …-储存狀態之 ⑷程式化作業單元(通常爲_頁面) 主機資料扇區; 早個遇是多個 ⑷-抹除單元(通常爲一塊)中 作菓早疋(通常爲 96472.doc -50- 1261840 一頁面)之數量;及 ⑷記憶胞之密度以及一個單元中之作業在另一單元中引 起資料干擾之廣度及具體趨勢。 清除作業之具體實施例 在圖9所示流程圖中顯示一清除演算法的一更具體之實 訑例 般而a,係利用與上文所述相同之處理步驟,但 該實施方案顯示得更爲詳細,其中包括參照圖1〇針對一四 狀態系統實例(在每一實體性電荷儲存單元中儲存2個位元) 所述之裕度清除讀取作業。該處理作業之兩個入口點顯示 於圖9中之115處(當偵測到一清除觸發事件時)及117處(當 接收到一執行經延期之清除作業之命令時)。 在步驟115中,按上文針對圖8中步驟91所述,監測該記 憶體是否發生一清除觸發事件。同樣地,在步驟119中,確 疋待 除之候运§己憶胞單元,此與針對圖8中步驟9 3所述者 相同。然後,類似於步驟95,在圖9所述步驟121中確定是 否應該因此時需要執行其他系統資源而將對任一該等候選 單元之清除作業延期。若應延期,則如在1 23處所示,臨時 儲存候選記憶胞單元之位址及其他所需資料,該過程會等 待其他更高優先權系統作業結束後再繼續執行。另一選擇 爲,可延期完成該清除作業,直至在步驟丨丨7中自主機接從 到或記憶體控制器産生一後續專門命令,如同在該過程中 後續發生延期時之情形。當在步驟123中儲存已延期清除作 業之資料後’按步驟124所作確定,結束所執行之特定、、主& 作業,除非仍存在更多之待清除單元。若存在更多之待清 96472.doc 1261840 除單元’則該處理過程轉回步驟1 1 9。 ,ge 乂私1 25中,執行與圖8所示步驟97相同之功能’ 擇待^除之候廷'己憶胞單元。圖9中之各後續步驟係每 t 中—個所選單元執行。在下-步驟⑶中,將讀取 點位率及其他讀取狀態首先設定至正常讀取位準。缺 ::在步驟127中’在所設定狀態下對該等記憶胞單元中之 一弟-記憶胞單元執行清除讀取作業,此對應於圖8中之步 驟99。後續各步驟皆係對該同—單元執行,然後—循環Kg 轉回至步驟i27依序以對下—所選單元執行處理,直至該等 早:已全部得到清除。當然,若在一特定作業中僅選擇一 们單元進行清除,則不存在環回129。 當在步驟127中使用在步驟126中所設定之讀取裕度執行 完清除讀取作業後,在步驟131中確定是否存在任何資料錯 誤,此與圖8中之步驟101相同。若存在錯誤,則在下一步 33中確疋该等錯誤是否可修正。當使用we來碟定資料 完時,該步驟133會確定在所讀取資料單元中壞位元之 ,量,否處於當前所用特定Ecc演算法之修正能力以内。 若該等錯誤可修正,則在下一步驟135中確定修正作業是否 既有必要亦可取,此對應於圖8中之步驟1〇3。步驟135可 僅確定存在錯誤但可修正之位元之數量是否小於—臨限值 1或爲極少數個位元,若是,則可確定不採取修正措施。 在步驟135中所作決定亦可受到該等資料及其ecc係使 用者資料還是附加資料之影響。如參關3所述,附加資料 可具有其自身之ECC。當確爲如此時,可在步驟ί3ί及丨33 96472.doc 1261840 I分別檢查❹者資料及附加f料之完整性,甚至藉由將 彳用者貝料及其Ecc視爲—個單元、將附加資料及其咖 視爲另―資料單元(儘管其可能儲存於同-頁面幻而藉由 具有轉回129之完整循環來每次處理使用者資料及附加資 枓之一。儘管各附加資料Ecc及使用者資料ecc之用途通常 相同,然而該過程之運作可更嚴格地保持附加資料之完整 11。此係—在維護系統效能(過量之清除作業會使系統效能 降格)與長期保持所健存資料之完整性(此係清除作業之設 5十目標)之間達成平衡之實例。 右在步驟135中決定應對所關心資料單元中之可修正錯 誤實施修正,則在下一步驟137中詢問是否應將資料修正^ 期。舉例而言,若在所讀取資料中存在過多之壞位元以致 於/、仏正所耗用之時間將多於該階段中可用之時間,則較 ::將/月除作業延期。若不延期,則在步驟139中修正該等錯 决此14圖8中之步驟107相同。在下一步驟丨4〇中,詢問是 否應將修正措施延期。若重寫該資料之作業亦因需要整合 而涉及到移動其他資料,則由於此所耗用之時間將多於可 用時間’因而通常將清除作業延期。若未延期,則在步驟 141中根據在上文中闡述圖8所示一般實施例時所述之各重 寫選項之一,來重寫所修正資料。在成功地重寫所修正資 料早兀後,在步驟143中確定是否還存在在步驟丨25中選中 的任何其他待清除之記憶胞單元1存在,則在步驟145 中依序遞進至下一單元,且該處理過程經由循環129轉回至 步驟127來處理彼新單元。 96472.doc -53- 1261840 5« it匕,p i~~» a 十圖9所示流程圖之主路徑闡述完畢。但當草此 3問題之解答不同於上文所述時,會沿該主路徑引^ 夕2支。欲闡述之第一個此種分支係當所討論單元中存在 貝料位π錯誤過多以致於無法由π。修正時自步驟133 、出如步驟15 1所示,此時,將讀取臨限位準設定爲不同 於步私127中清除讀取作業所用之位準,然後在步驟μ] 2册使用該等不同之臨限位準再次讀取該單元之資料。此 —帶裕度讀取作業顯示於圖10中。 圖10中使用一以四種狀態來運作快閃記憶體陣列中各單 獨健存元件之實例。該圖顯示-記憶胞單元内儲存元件之 數量在四個臨限電壓位準範圍中每—範圍内的分佈(不存 在干擾)。其中,在各儲存狀態臨限位準範圍之間保持有臨 限電壓防護帶155, 156及157,在該等防護帶内之任何單元 中皆不存在資料。此係一i人所期望之程式化狀態,在將 一圮憶胞單兀之各狀態程式化並加以驗證後即立即存在此 種狀態。但當此後程式化、讀取及/或抹除其他單元時,該 貝料可能會受到干擾。該等干擾表現爲臨限位準在一側或 另一側偏移至鄰近之防護帶内。對於每一狀態分佈内一較 小比例之記憶胞’可能會發生此種情況,或者整個分佈可 偏移或伸展至鄰近防護帶内,此視干擾之性質而定。 對於正常讀取作業,係使用以各自之防護帶155、156及 1 5 7爲中心的所開點位準1 5 9、1 6 0及1 6 1。換言之,將所讀 取記憶胞之臨限位準與該等斷開點位準相比較,以確定其 儲存狀態。當一狀態内記憶胞之臨限位準跨過一防護帶偏 96472.doc -54- 1261840 移穿過一斷開點位準時,即會出現錯誤。舉例而言,當狀 態1中記憶胞之臨限位準偏移降低直至其低於斷開點位準 159時,即會讀出彼等記憶胞處於狀態〇。同樣地,若狀態工 中d丨思胞之g品限位準偏移升高直至其高於斷開點位準工 時,一正常讀取作業即會顯示彼等記憶胞處於狀態2。然 後,藉由ECC過程識別出此等讀取資料錯誤。但當Ecc需修 正之此等錯誤過多時,會藉由步驟丨51及153(圖9)使用各狀 態之間的不同斷開點位準實施一第二讀取作業。斷開點位 卞159、160及161係在其各自防護帶内沿一因干擾引起之預 期儲存臨限位準偏移量之方向偏移,目而此時經偏移之位 率處於其受干擾之前所處的防護帶同一側。 在如此重讀取該資料後,在步驟165中藉助ECC來確定是 否仍存在任何資料錯誤。若不存在,則該處理過程進行至 主處理路徑中之步驟135,包括確定是否應將資料修正及重 寫作業延期。而若在步驟165中發現仍存在資料錯誤,則在 下一步驟167中確定其是否可由Ecc修正。若可由ecc修 正,則該處理過程亦跳轉至主處理路徑中之步驟135。 但若在步驟167中發現該等資料錯誤無法修正,則可使用 更爲不同之斷開點位準來執行又一讀取作業。在一步驟 ’確定是否存在任何其餘的未經嘗試之寬鬆的讀取狀 態。若存在,則在步驟170中遞進重試狀態,且該處理過程 轉回至步驟151及153,以使用此種新狀態來讀取資料。但 若不再具有更多不同讀取狀態,則所討論陣列單元中之資 枓必須保持帶有其不可修正之錯誤。由此,即可確定對彼 96472.doc 55 1261840 單7G之/月除作業已失敗。其—結果可係將所有有效資料複 製至-新的記憶體系統巾、然後捨棄當前之記憶體。另一 ^果&'僅使用-儲存於附加資料或其他資料中之旗標將該 單元標記爲壞單元,然後進行至步驟143,以繼續清除1他 陣列單^此時’彼單元中之資料丢失。由於該等資料曾 作爲原始程式化^令豐々 . 乍業之一部分而確證最初處於其正確之臨 限位準範圍’目而干擾作業隨時間累積的此一可能結果: 月了足夠』’、地貝施清除作業以防出現此種不利後果的; 取之處。 轉回至步驟135 ’若在該步驟中確定出修正該資料既無必 ,亦不可取’則該處理過程跳轉至步驟⑷,以繼續對任何 其他所識別出的覃+批, 仃h除作業。然後,亦轉回至步驟 1 37及140,若石萑定ψ處收# 一 Ή …將该貧料之修正或重寫作業延期, 則在步驟1 7 1中儲存所讀 位元η、… 址、ECC及任何錯誤 喆二止 ]所確疋貝枓,然後,該處理過程跳 軺至步驟143。然後,如下去 γ你聲士 . 述 §輪到完成已延期之措 e作業呤,讀取該等資料。 然後’轉回至步驟13 1,在確 _ #I . 牡隹疋出不存在貧料錯誤後,下 作業可係跳轉至步驟143而 π - 下 任何虛搜伯甘 个丹對田則早兀之貧料執行 饤處理。但甚至在自記憶 及纲々h A h 出有效貧料時,檢查 D即°己,〖思I之儲存位準亦可爲人音夕组 同於I'> π k j j马D忍之舉。此包括使用不 门於取初項取作業中所用之斷 業’以便識別出任何盆所儲存〜U執订再項取作 所界定之位hn 準已移至針對各狀態 τ _㈣的記憶胞(參見圖H)),即使彼等 96472.doc -56- 1261840 位竿尚禾穿過 、 I#碩取頁料錯 5吳。在一步驟1 7 2中,確定是;^ At 疋疋否存在任何帛未嘗試的此種讀 取狀悲。右存在’則在步驟】7 3中遁裡^ & 隹/私173中遥擇新的斷開點位準及/ 或其他清除讀取狀態。麸後,嗜虛 …、俊3處理過程轉回至步驟126, 在步驟m中設定彼等讀取狀態並隨後在步驟127中使用彼 等狀態執行讀取。在該次讀取作業中所用之斷開點位準係 (舉例而言)偏移至圖10甲防護帶155、156及157之邊緣。若 在步驟13!中,藉助ECC確^出存在f料錯誤,則錯誤資: 位元表示電荷位準已偏移至防護帶内。因此需要在首先確 定出是否應將資料修正及重寫作業延期之後,修正並重寫 該等資料,由此使所儲存電荷位準自防護帶移出至圖⑺所 示之其所需狀態分佈内。 若在步驟131中使用更具限制性之裕度確定出在所讀取 資料中不存在錯誤,則對當前資料單元之處理即告結束。 然後,在步驟172中確定是否尚有更多之所界定清除讀取狀 態未對該資料單元嘗試。若有,則可使用更爲嚴格之斷開 點位準再次讀取該資料。換言之,可使用在步驟172中可得 到的一第一組替代讀取狀態第二次讀取該資料,其中各斷 開點位準僅沿其各自之防護帶偏移一部分路程,然後,使 用在步驟1 7 2中所選的一第二組替代讀取狀態之斷開點位 準第三次重複該作業,其中該第二組替代讀取狀態之斷開 點位準更進一步朝防護帶邊緣移動以進一步精細調節該等 電荷儲存位元準(若需要)。可依據實際儘量多地提供此類額 外的清除讀取狀態。 96472.doc 1261840 返回步驟135,在步驟135令,可 料錯誤而不加修正,岸注音,此…接…程度之資
:及173分支對未含有錯誤之儲存資料所實施調節之C _不致。因此,若使用該處理分支,則步驟135很可能不 谷許不加修正地接受錯誤資料。 2步驟⑷中確定出確實已清除當前所識別出的 待_料單元後’可視需要將該等資料單元 現出其資料特別易受干擾者映射出該系統。在步驟185中表 確疋疋否存在任何應移除出該系統之此種實體性記憶體單 ^若有’則在步驟187中將該等單元映射出該系統、 >月除作業即告結束。 然而,若已將資料修正及/或重寫延期,則記憶體控制琴 互主機系統將對此進行注釋。在一適當之時刻,當不存在 =決之更高優先權記憶體作業時’即可完成對已局部清除 早凡之清除作業,該作業始於步驟117。然後,在步驟191 I’讀取在步驟m中爲-個單元儲存的資料、Ecc及其他 貝訊。若來自該單元之資料需要修正,則在步驟193中修正 後’在步驟195中’重寫修正資料1不再存在其他 要凡成之已局部凡成之清除作業,則在步驟m中確定出 此種情況,然後執行步驟185或者結束該處理過程。而若尚 t在其他待完成之單元,則該處理在步驟199中遞進至下一 單兀’、、、後對來自彼等單元之資料重複步驟191,193及195。 主倘若在步驟123中儲存候選記憶胞單元之位址以供延期 清除,則該處理作業可自動轉回以繼續在控制器沒有要執 96472.doc -58- 1261840
行之更高優先權作業時對其中一個已延期單元 業。由於延期步驟1 2 1在圖9所示處理過程中非 時,會使該處 繼續執行。亦 而在轉回至一在該步驟1 2 1中得到延期之單元 理過程自步驟1 25開始並沿彼路徑按上文所述 可在步驟137或之一處將此一單元之修正及/或重寫作 業再次延期。 結論 儘管上文係參照本發明之實例性實施例來闡述本發明之 各種態樣,然而應瞭解,本發明在隨附申請專利範圍之整 個範疇内受到保護。 ^ 【圖式簡單說明】 圖1A及1B分別係一同運作的一非揮發性記憶體與一主 機系統之方塊圖; 圖2顯示圖i a所示記憶體陣列之一第_實例性組織; ^圖3顯示—實例性主機資料扇區,其具有儲存於圖1A所示 記憶體陣列中之資料· 圖4顯不圖1A所示記憶體陣列之一第· 圖5顯示圖1A所示記憶體陣列之一第, 圖6顯示圖1A所示記憶體陣列之第三 展形式; 二實例性組織; L實例性組織; 實例性組織的一擴 圖7係具有-特定組態之圖1A所示陣列中一組記憶胞之 圖8係— 圖9係— 顯示一資料清除作業中各主要步驟之流程圖; 更具體之清除作業實例之流程圖,其按圖9A及 96472.doc -59- 1261840 9B兩部分顯示於兩頁中;及 圖1 0顯示一已程式化之記憶胞組之電壓臨限值位準之分 佈。 【主要元件符號說明】
11 記憶體陣列積體電路 13 記憶體陣列積體電路 15 快閃記憶胞陣列 17 陣列邏輯電路 19 記憶體控制器 21 微處理器 23 唯讀記憶體 25 緩衝記憶體(RAM) 27 陣列介面邏輯電路 29 主機介面邏輯電路 31 連接線 3Γ 連接線 33 ECC電路 35 記憶體介面邏輯電路 37 微處理器 39 ROM 41 系統資料RAM 43 其他電路及子糸統 51 主機使用者資料扇區 53 資料ECC 96472.doc -60- 1261840 55 資料/塊參數 57 附力aECC 59 塊 61 邏輯資料塊 65 電壓源 67 位元線驅動器及讀取電路 70 電荷儲存電晶體 71 電荷儲存電晶體 72 電何儲存電晶體 74 電荷儲存電晶體 77 選擇電晶體 79 選擇電晶體 81 塊選擇及字元線(WL)驅動器 83 線 84 線 155 臨限電壓防護帶 156 臨限電壓防護帶 157 臨限電壓防護帶 159 斷開點位準 160 斷開點位準 161 斷開點位準 WL0-WL15 字元線 BLO-BLN 位元線 96472.doc -61 -

Claims (1)

1261840 十、申請專利範圍: 種運作一組織成若干子陣列之快閃記憶胞陣列之方 法垓等子陣列包含由可一同抹除的一最小數量之記憶胞 組成之塊,且該等塊儲存有若干資料單元,該方法包括·· 對於σ亥等塊之一第一塊中至少其中一個該等資料單元 所儲存之資料識別何時已發生-清除觸發事件; /第塊δ貝取该所識別出之至少一個資料單元; 修正自該第-塊所讀取之該資料中之任何錯誤 供經修正之第一塊資料; 对緣經修正之第一塊資料作爲 至該等塊中的一第二塊;及 , 一 I將σ亥第一塊中未經修正之資料單元複製至誃 :内·稭此在该第二塊中整合原先位於該第一塊中 、工正之貧料單元及未經修正之資料單元。 2· :::ΐ項R方法,其另外包括:在將該經修正之第—: 時儲存於一第三塊中。 之弟塊貝料e 3 ·如請求項2之太、、土 ,貝2之方法,其另外包括·· 對於該等嫂φ _ » 一 η別< 士 —弟四塊所儲存之該等資料單元至小。 4別何時發生-干擾事件; 以 =四塊讀取該所識別出之至少一 仏正自該第四埗所巧 早兀, 供經修正之料中之任何錯誤,μ 止之弟四塊資料; Α知 將該經修正$ # 四塊資料臨時館存於該第三塊中… 96472.doc 1261840 在此便將該經修正 ^ ^ 之弟四塊貧料作爲至少一個資 窩入 寫入至—第五塊; 此後’將卩亥第四换φ 土 ★ 鬼中未輕修正之資料單元複製至該第 藉以在s玄第五塊中整合原位於該第四塊中之經 '乡正之資料單元及未經修正之資料單元。 4 ·如請求項1 咏 、 去’其中該清除觸發事件包括一會干擾該 弟 塊中所健存之該箄咨斗丄如一 寻貝枓早兀之至少之一之事件。 二項1之方法’其另外包括:在讀取該資料之後、但 權任何錯誤之前,暫停該作業,直至其他更高優先 抵作業得到執行。 項1之方法’其另外包括:在修正其任何錯誤之後、 1先=經修正之資料之前,暫停該作業,直至其他更 先柘作業得到執行。 7. -種運作—快閃記憶胞陣列之方法,直包括. 對於儲存於該陣列 已發生—清除觸發事件;位置令之資料識別何時 讀取儲存於該陣列内 萨咩性六3, 個位置中之該資料; L打儲存關於該至少—個位 之資訊; ,、續取出之該資料 在仍儲存有該資訊時,將其他資料 除該至少—個# ¥ 4 ^ 式化至该陣列内 y個位置外的至少若干位 除該至少—個你罢从A 中或自該陣列内 個位置外的至少若干位置讀取出1他資料. 此後’確定在自該陣列中該至少_ :::科, 讀取資料中是否存在任何錯誤; 取出的該 96472.doc 1261840 ^利用錢儲存資訊,修正自該陣列中該至少 讀取出的該資料中之任何錯誤;及 置 將該經修正之資料寫入該陣列内。 8·二 =7之方法,其t該清除觸發事件包括—會 )· 惠中所儲存之該等資料單元至少之—之事件。 -種運作—快閃記憶胞陣列之方法,其包括: 對於館存於該陣列内至少一個位置令之 已發生—清除觸發事件; 、·Η朗何時 讀取鍺存於該陣列㈣至少_個位置 此後,磕宁户ώ< 口系貝科, 確疋在自该陣列中該至少一個位晉钱百山 讀取資料中是否存在任何錯誤; 的該 修正自該陣列中該至少一個位置 任何錯誤; 山曰7 4貝科中之 臨時儲存該經修正之資料; 在仍儲存有該經修正之資料時 該陣列内除該至少—個位置外 “仏式化至 該陣列内除該至少—個位#“^干位置卜或自 他資料;及 卜的至少若干位置讀取出其 ίο. 11. 此後,將該經修正之資料寫入該陣列内。 长員9之方法’其中該清除觸 第-塊令所儲存之該等資枓…爭件匕括-會干擾该 -種運作-具有—記憶之事件。 揮發性記憶體系統…#除及可再程式化非 該等塊由可-同抹除的一最小數量之車::織成-干塊' 里之§己丨思胞構成且包括 96472.doc 1261840 複數個各自儲存有一 括: 或多個資料單元之頁面 該方法包 w、因應於發生複數個預定義事件t至少之―,識別出至 夕-個塊中至少_個頁面有待清除; 中組讀取狀態,讀取儲存於該至少-個頁面 確定在該讀取資料t是否存在任何錯誤 確定該等錯誤是否可修正; 隹則 因應^確定出該讀取資料中之該等錯誤無法修正,而 使用一第二組讀取狀態來重讀取儲存於該至少—個頁面 中之該資料; 、 確定在該重讀取資料中是否存在任何錯誤,若存在, 則確定該等錯誤是否可修正; 因應於正在排程的其他記憶體活動,進一步延期關於 該讀取資料或重讀取資料的措施; 在元成该其他記憶體活動後,因應於確定出該讀取資 料或重讀取資料中之該等錯誤可修正,來修正此等錯 誤’以提供經修正之資料;及 將該經修正之資料寫入一不同於該一個塊的第二塊中 至少一個第二頁面内。 12. 如請求項1丨之方法,其另外包括:將未經改動之資料自不 同於該一個塊之該至少一個塊内之頁面複製至該第二塊 内0 96472.doc
TW093129922A 2003-10-03 2004-10-01 Flash memory data correction and scrub techniques TWI261840B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/678,345 US7012835B2 (en) 2003-10-03 2003-10-03 Flash memory data correction and scrub techniques

Publications (2)

Publication Number Publication Date
TW200532695A TW200532695A (en) 2005-10-01
TWI261840B true TWI261840B (en) 2006-09-11

Family

ID=34393904

Family Applications (1)

Application Number Title Priority Date Filing Date
TW093129922A TWI261840B (en) 2003-10-03 2004-10-01 Flash memory data correction and scrub techniques

Country Status (9)

Country Link
US (5) US7012835B2 (zh)
EP (2) EP1847930B1 (zh)
JP (1) JP4723504B2 (zh)
KR (1) KR101127882B1 (zh)
CN (2) CN101630279B (zh)
AT (2) ATE434788T1 (zh)
DE (2) DE602004021735D1 (zh)
TW (1) TWI261840B (zh)
WO (1) WO2005036401A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI476777B (zh) * 2007-06-19 2015-03-11 Samsung Electronics Co Ltd 偵測讀取擾動產生之位元錯誤的記憶體系統及其方法

Families Citing this family (578)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657332A (en) * 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
KR100544175B1 (ko) * 1999-05-08 2006-01-23 삼성전자주식회사 링킹 타입 정보를 저장하는 기록 매체와 결함 영역 처리 방법
US6851070B1 (en) * 2001-08-13 2005-02-01 Network Appliance, Inc. System and method for managing time-limited long-running operations in a data storage system
US7310757B2 (en) * 2001-10-11 2007-12-18 Altera Corporation Error detection on programmable logic resources
US7505321B2 (en) 2002-12-31 2009-03-17 Sandisk 3D Llc Programmable memory array structure incorporating series-connected transistor strings and methods for fabrication and operation of same
US7233522B2 (en) 2002-12-31 2007-06-19 Sandisk 3D Llc NAND memory array incorporating capacitance boosting of channel regions in unselected memory cells and method for operation of same
US7372731B2 (en) * 2003-06-17 2008-05-13 Sandisk Il Ltd. Flash memories with adaptive reference voltages
US7012835B2 (en) * 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques
US7221588B2 (en) * 2003-12-05 2007-05-22 Sandisk 3D Llc Memory array incorporating memory cells arranged in NAND strings
US20050144516A1 (en) * 2003-12-30 2005-06-30 Gonzalez Carlos J. Adaptive deterministic grouping of blocks into multi-block units
US7594135B2 (en) 2003-12-31 2009-09-22 Sandisk Corporation Flash memory system startup operation
US7328377B1 (en) 2004-01-27 2008-02-05 Altera Corporation Error correction for programmable logic integrated circuits
US20050172064A1 (en) * 2004-01-29 2005-08-04 Marcelo Krygier Method and apparatus for addressing in mass storage non-volatile memory devices
US20080082736A1 (en) * 2004-03-11 2008-04-03 Chow David Q Managing bad blocks in various flash memory cells for electronic data flash card
US7793192B2 (en) * 2004-05-06 2010-09-07 Panasonic Corporation Semiconductor memory device
US20050268077A1 (en) * 2004-05-11 2005-12-01 Peter Kuan Memory system for an electronic device and the method for controlling the same
US7490283B2 (en) 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
US7975306B2 (en) * 2004-06-04 2011-07-05 Hewlett-Packard Development Company, L.P. Apparatus and method for monitoring secure software
TWI243376B (en) * 2004-07-16 2005-11-11 Univ Nat Chiao Tung Method of combining multi-level memory unit and providing the same with error correction mechanism
US7509526B2 (en) * 2004-09-24 2009-03-24 Seiko Epson Corporation Method of correcting NAND memory blocks and to a printing device employing the method
US7441067B2 (en) 2004-11-15 2008-10-21 Sandisk Corporation Cyclic flash memory wear leveling
US7502256B2 (en) * 2004-11-30 2009-03-10 Siliconsystems, Inc. Systems and methods for reducing unauthorized data recovery from solid-state storage devices
US7158421B2 (en) * 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
US7420847B2 (en) * 2004-12-14 2008-09-02 Sandisk Corporation Multi-state memory having data recovery after program fail
US7120051B2 (en) * 2004-12-14 2006-10-10 Sandisk Corporation Pipelined programming of non-volatile memories using early data
US7849381B2 (en) * 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US7315917B2 (en) * 2005-01-20 2008-01-01 Sandisk Corporation Scheduling of housekeeping operations in flash memory systems
US20060161724A1 (en) * 2005-01-20 2006-07-20 Bennett Alan D Scheduling of housekeeping operations in flash memory systems
JP4679943B2 (ja) * 2005-03-23 2011-05-11 ヒタチグローバルストレージテクノロジーズネザーランドビーブイ データ記憶装置及びその不揮発性メモリ内データ書き換え処理方法
US7463521B2 (en) * 2005-04-01 2008-12-09 Sandisk Corporation Method for non-volatile memory with managed execution of cached data
US7447078B2 (en) 2005-04-01 2008-11-04 Sandisk Corporation Method for non-volatile memory with background data latch caching during read operations
US7206230B2 (en) * 2005-04-01 2007-04-17 Sandisk Corporation Use of data latches in cache operations of non-volatile memories
US7196946B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling in non-volatile storage
US7196928B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7187585B2 (en) * 2005-04-05 2007-03-06 Sandisk Corporation Read operation for non-volatile storage that includes compensation for coupling
EP1712985A1 (en) * 2005-04-15 2006-10-18 Deutsche Thomson-Brandt Gmbh Method and system for storing logical data blocks into flash-blocks in multiple non-volatile memories which are connected to at least one common data I/O bus
US7290185B2 (en) * 2005-04-28 2007-10-30 International Business Machines Corporation Methods and apparatus for reducing memory errors
JP4991131B2 (ja) * 2005-08-12 2012-08-01 株式会社東芝 半導体記憶装置
US7698591B2 (en) * 2005-08-26 2010-04-13 International Business Machines Corporation Method and apparatus for ensuring data integrity in redundant mass storage systems
US7523381B2 (en) * 2005-09-01 2009-04-21 Micron Technology, Inc. Non-volatile memory with error detection
JP4413840B2 (ja) * 2005-09-20 2010-02-10 株式会社東芝 記憶媒体再生装置、記憶媒体再生方法および記憶媒体再生プログラム
US8291295B2 (en) * 2005-09-26 2012-10-16 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US7631245B2 (en) 2005-09-26 2009-12-08 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US7954037B2 (en) * 2005-10-25 2011-05-31 Sandisk Il Ltd Method for recovering from errors in flash memory
US7509471B2 (en) * 2005-10-27 2009-03-24 Sandisk Corporation Methods for adaptively handling data writes in non-volatile memories
US7631162B2 (en) 2005-10-27 2009-12-08 Sandisck Corporation Non-volatile memory with adaptive handling of data writes
US7634585B2 (en) * 2005-11-04 2009-12-15 Sandisk Corporation In-line cache using nonvolatile memory between host and disk device
US20070106842A1 (en) * 2005-11-04 2007-05-10 Conley Kevin M Enhanced first level storage caching methods using nonvolatile memory
US7644251B2 (en) 2005-12-19 2010-01-05 Sigmatel, Inc. Non-volatile solid-state memory controller
US7349260B2 (en) * 2005-12-29 2008-03-25 Sandisk Corporation Alternate row-based reading and writing for non-volatile memory
US7443726B2 (en) * 2005-12-29 2008-10-28 Sandisk Corporation Systems for alternate row-based reading and writing for non-volatile memory
US8055979B2 (en) 2006-01-20 2011-11-08 Marvell World Trade Ltd. Flash memory with coding and signal processing
US7844879B2 (en) 2006-01-20 2010-11-30 Marvell World Trade Ltd. Method and system for error correction in flash memory
US8219886B1 (en) 2006-01-20 2012-07-10 Marvell International Ltd. High density multi-level memory
US7493523B2 (en) * 2006-03-14 2009-02-17 International Business Machines Corporation Method and apparatus for preventing soft error accumulation in register arrays
US7409490B2 (en) * 2006-04-15 2008-08-05 Yi-Chun Liu Method of flash memory management
US7433231B2 (en) 2006-04-26 2008-10-07 Micron Technology, Inc. Multiple select gates with non-volatile memory cells
US7495966B2 (en) * 2006-05-01 2009-02-24 Micron Technology, Inc. Memory voltage cycle adjustment
WO2007131062A2 (en) 2006-05-05 2007-11-15 Sandisk Corporation Non-volatile memory with background data latch caching during read operations and methods therefor
US8239735B2 (en) * 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
US7697326B2 (en) * 2006-05-12 2010-04-13 Anobit Technologies Ltd. Reducing programming error in memory devices
CN103280239B (zh) 2006-05-12 2016-04-06 苹果公司 存储设备中的失真估计和消除
KR101202537B1 (ko) * 2006-05-12 2012-11-19 애플 인크. 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩
US7840875B2 (en) * 2006-05-15 2010-11-23 Sandisk Corporation Convolutional coding methods for nonvolatile memory
US20070266296A1 (en) * 2006-05-15 2007-11-15 Conley Kevin M Nonvolatile Memory with Convolutional Coding
JP4813264B2 (ja) * 2006-06-14 2011-11-09 株式会社日立製作所 ストレージシステム
US7606084B2 (en) * 2006-06-19 2009-10-20 Sandisk Corporation Programming differently sized margins and sensing with compensations at select states for improved read operations in non-volatile memory
US7352628B2 (en) * 2006-06-19 2008-04-01 Sandisk Corporation Systems for programming differently sized margins and sensing with compensations at select states for improved read operations in a non-volatile memory
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
US7486561B2 (en) * 2006-06-22 2009-02-03 Sandisk Corporation Method for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages
JP2008009919A (ja) * 2006-06-30 2008-01-17 Toshiba Corp カードコントローラ
JP4908083B2 (ja) * 2006-06-30 2012-04-04 株式会社東芝 メモリコントローラ
CN1933026A (zh) * 2006-08-18 2007-03-21 福昭科技(深圳)有限公司 高可靠排序管理扇区的存储结构
US20080046630A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
US7474560B2 (en) * 2006-08-21 2009-01-06 Micron Technology, Inc. Non-volatile memory with both single and multiple level cells
US20080046641A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
US8060806B2 (en) 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
US20080072070A1 (en) * 2006-08-29 2008-03-20 General Dynamics C4 Systems, Inc. Secure virtual RAM
US7450425B2 (en) * 2006-08-30 2008-11-11 Micron Technology, Inc. Non-volatile memory cell read failure reduction
US7886204B2 (en) * 2006-09-27 2011-02-08 Sandisk Corporation Methods of cell population distribution assisted read margining
US7716538B2 (en) * 2006-09-27 2010-05-11 Sandisk Corporation Memory with cell population distribution assisted read margining
WO2008039692A2 (en) * 2006-09-27 2008-04-03 Sandisk Corporation Memory with cell population distribution assisted read margining
US7904783B2 (en) * 2006-09-28 2011-03-08 Sandisk Corporation Soft-input soft-output decoder for nonvolatile memory
US7818653B2 (en) * 2006-09-28 2010-10-19 Sandisk Corporation Methods of soft-input soft-output decoding for nonvolatile memory
US7805663B2 (en) * 2006-09-28 2010-09-28 Sandisk Corporation Methods of adapting operation of nonvolatile memory
US20080092015A1 (en) * 2006-09-28 2008-04-17 Yigal Brandman Nonvolatile memory with adaptive operation
US7684247B2 (en) * 2006-09-29 2010-03-23 Sandisk Corporation Reverse reading in non-volatile memory with compensation for coupling
US7447076B2 (en) * 2006-09-29 2008-11-04 Sandisk Corporation Systems for reverse reading in non-volatile memory with compensation for coupling
US20080091871A1 (en) * 2006-10-12 2008-04-17 Alan David Bennett Non-volatile memory with worst-case control data management
US20080091901A1 (en) * 2006-10-12 2008-04-17 Alan David Bennett Method for non-volatile memory with worst-case control data management
WO2008047443A1 (fr) * 2006-10-20 2008-04-24 Fujitsu Limited Dispositif à mémoire et procédé de réglage de rafraîchissement
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7821826B2 (en) 2006-10-30 2010-10-26 Anobit Technologies, Ltd. Memory cell readout using successive approximation
KR100784007B1 (ko) * 2006-10-31 2007-12-10 주식회사 하이닉스반도체 비휘발성 메모리 장치 및 그 소거 방법
US8001441B2 (en) * 2006-11-03 2011-08-16 Sandisk Technologies Inc. Nonvolatile memory with modulated error correction coding
US7904788B2 (en) * 2006-11-03 2011-03-08 Sandisk Corporation Methods of varying read threshold voltage in nonvolatile memory
US7558109B2 (en) * 2006-11-03 2009-07-07 Sandisk Corporation Nonvolatile memory with variable read threshold
US7904780B2 (en) * 2006-11-03 2011-03-08 Sandisk Corporation Methods of modulating error correction coding
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US8151163B2 (en) * 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US7900102B2 (en) * 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US7593263B2 (en) * 2006-12-17 2009-09-22 Anobit Technologies Ltd. Memory device with reduced reading latency
US7616506B2 (en) * 2006-12-28 2009-11-10 Sandisk Corporation Systems for complete word line look ahead with efficient data latch assignment in non-volatile memory read operations
TW200828320A (en) * 2006-12-28 2008-07-01 Genesys Logic Inc Method for performing static wear leveling on flash memory
US7561465B2 (en) * 2006-12-28 2009-07-14 Advanced Micro Devices, Inc. Methods and systems for recovering data in a nonvolatile memory array
US7616505B2 (en) * 2006-12-28 2009-11-10 Sandisk Corporation Complete word line look ahead with efficient data latch assignment in non-volatile memory read operations
US8583981B2 (en) 2006-12-29 2013-11-12 Marvell World Trade Ltd. Concatenated codes for holographic storage
US7751240B2 (en) * 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) * 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
KR100823171B1 (ko) * 2007-02-01 2008-04-18 삼성전자주식회사 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법
KR100813630B1 (ko) * 2007-02-07 2008-03-14 삼성전자주식회사 독출 성능을 향상할 수 있는 플래시 메모리 시스템 및그것의 독출 방법
US8369141B2 (en) * 2007-03-12 2013-02-05 Apple Inc. Adaptive estimation of memory cell read thresholds
US7987332B2 (en) * 2007-03-21 2011-07-26 Sandisk Technologies Inc. Methods for storing memory operations in a queue
US7477547B2 (en) 2007-03-28 2009-01-13 Sandisk Corporation Flash memory refresh techniques triggered by controlled scrub data reads
US7573773B2 (en) 2007-03-28 2009-08-11 Sandisk Corporation Flash memory with data refresh triggered by controlled scrub data reads
WO2008118705A1 (en) * 2007-03-28 2008-10-02 Sandisk Corporation Flash memory refresh techniques triggered by controlled scrub data reads
WO2008121553A1 (en) * 2007-03-29 2008-10-09 Sandisk Corporation Non-volatile storage with decoding of data using reliability metrics based on multiple reads
US7797480B2 (en) * 2007-03-29 2010-09-14 Sandisk Corporation Method for reading non-volatile storage using pre-conditioning waveforms and modified reliability metrics
US7904793B2 (en) * 2007-03-29 2011-03-08 Sandisk Corporation Method for decoding data in non-volatile storage using reliability metrics based on multiple reads
US8001320B2 (en) * 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8332574B2 (en) * 2007-04-30 2012-12-11 Sandisk Il Ltd. Method for efficient storage of metadata in flash memory
US7577036B2 (en) * 2007-05-02 2009-08-18 Micron Technology, Inc. Non-volatile multilevel memory cells with data read of reference cells
US8234545B2 (en) * 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
WO2008139441A2 (en) 2007-05-12 2008-11-20 Anobit Technologies Ltd. Memory device with internal signal processing unit
KR20080100750A (ko) * 2007-05-14 2008-11-19 삼성전자주식회사 데이터 읽기 장치 및 그 방법
US20080285368A1 (en) * 2007-05-17 2008-11-20 Macronix International Co., Ltd. Method for nrom array word line retry erasing and threshold voltage recovering
JP4994112B2 (ja) * 2007-05-22 2012-08-08 ルネサスエレクトロニクス株式会社 半導体集積回路装置およびメモリ制御方法
US20080294813A1 (en) * 2007-05-24 2008-11-27 Sergey Anatolievich Gorobets Managing Housekeeping Operations in Flash Memory
US20080294814A1 (en) * 2007-05-24 2008-11-27 Sergey Anatolievich Gorobets Flash Memory System with Management of Housekeeping Operations
JP5216244B2 (ja) * 2007-05-31 2013-06-19 株式会社東芝 データリフレッシュ装置、及びデータリフレッシュ方法
US7765426B2 (en) 2007-06-07 2010-07-27 Micron Technology, Inc. Emerging bad block detection
KR100838292B1 (ko) * 2007-06-20 2008-06-17 삼성전자주식회사 메모리 셀의 읽기 레벨 제어 장치 및 그 방법
US8166239B2 (en) * 2007-06-21 2012-04-24 International Business Machines Corporation Translation lookaside buffer and related method and program product utilized for virtual addresses
US8504784B2 (en) * 2007-06-27 2013-08-06 Sandisk Technologies Inc. Scheduling methods of phased garbage collection and housekeeping operations in a flash memory system
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8060798B2 (en) 2007-07-19 2011-11-15 Micron Technology, Inc. Refresh of non-volatile memory cells based on fatigue conditions
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8046524B2 (en) 2007-08-08 2011-10-25 Sandisk Technologies Inc. Managing processing delays in an isochronous system
WO2009021176A2 (en) * 2007-08-08 2009-02-12 Sandisk Corporation Urgency and time window manipulation to accommodate unpredictable memory operations
US7770079B2 (en) 2007-08-22 2010-08-03 Micron Technology Inc. Error scanning in flash memory
KR101425958B1 (ko) * 2007-09-06 2014-08-04 삼성전자주식회사 멀티-비트 데이터를 저장하는 메모리 시스템 및 그것의읽기 방법
US7882314B2 (en) * 2007-09-07 2011-02-01 International Business Machines Corporation Efficient scheduling of background scrub commands
US7882323B2 (en) * 2007-09-07 2011-02-01 International Business Machines Corporation Scheduling of background scrub commands to reduce high workload memory request latency
US8174905B2 (en) * 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US8365040B2 (en) 2007-09-20 2013-01-29 Densbits Technologies Ltd. Systems and methods for handling immediate data errors in flash memory
US8650352B2 (en) * 2007-09-20 2014-02-11 Densbits Technologies Ltd. Systems and methods for determining logical values of coupled flash memory cells
US7751237B2 (en) * 2007-09-25 2010-07-06 Sandisk Il, Ltd. Post-facto correction for cross coupling in a flash memory
US7551477B2 (en) * 2007-09-26 2009-06-23 Sandisk Corporation Multiple bit line voltages based on distance
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8068360B2 (en) * 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009050703A2 (en) * 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8694715B2 (en) 2007-10-22 2014-04-08 Densbits Technologies Ltd. Methods for adaptively programming flash memory devices and flash memory systems incorporating same
US20090109755A1 (en) * 2007-10-24 2009-04-30 Mori Edan Neighbor block refresh for non-volatile memory
US8443242B2 (en) 2007-10-25 2013-05-14 Densbits Technologies Ltd. Systems and methods for multiple coding rates in flash devices
JP4535117B2 (ja) * 2007-11-06 2010-09-01 ソニー株式会社 メモリ装置、メモリ管理方法、およびプログラム
US7876616B2 (en) * 2007-11-12 2011-01-25 Cadence Design Systems, Inc. System and method for wear leveling utilizing a relative wear counter
US8270246B2 (en) * 2007-11-13 2012-09-18 Apple Inc. Optimized selection of memory chips in multi-chips memory devices
CN101436161B (zh) * 2007-11-16 2010-12-29 创见资讯股份有限公司 存储装置与其数据存取和存储器区块管理方法
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
WO2009072101A2 (en) 2007-12-05 2009-06-11 Densbits Technologies Ltd. Apparatus and methods for generating row-specific reading thresholds in flash memory
US8335977B2 (en) 2007-12-05 2012-12-18 Densbits Technologies Ltd. Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated BCH codes and/or designation of “first below” cells
US8607128B2 (en) * 2007-12-05 2013-12-10 Densbits Technologies Ltd. Low power chien-search based BCH/RS decoding system for flash memory, mobile communications devices and other applications
JP2009140564A (ja) * 2007-12-06 2009-06-25 Toshiba Corp Nand型フラッシュメモリおよびメモリシステム
WO2009074978A2 (en) 2007-12-12 2009-06-18 Densbits Technologies Ltd. Systems and methods for error correction and decoding on multi-level physical media
US8209588B2 (en) * 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8276051B2 (en) 2007-12-12 2012-09-25 Densbits Technologies Ltd. Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
WO2009078006A2 (en) 2007-12-18 2009-06-25 Densbits Technologies Ltd. Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
KR101498669B1 (ko) * 2007-12-20 2015-03-19 삼성전자주식회사 반도체 메모리 시스템 및 그것의 액세스 방법
US8621137B2 (en) 2007-12-27 2013-12-31 Sandisk Enterprise Ip Llc Metadata rebuild in a flash memory controller following a loss of power
US8085586B2 (en) * 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8301912B2 (en) 2007-12-31 2012-10-30 Sandisk Technologies Inc. System, method and memory device providing data scrambling compatible with on-chip copy operation
KR101454817B1 (ko) * 2008-01-11 2014-10-30 삼성전자주식회사 반도체 메모리 장치 및 그것의 마모도 관리 방법
CN101911207B (zh) * 2008-01-16 2014-05-07 富士通株式会社 半导体存储装置、控制装置、控制方法
PL384327A1 (pl) * 2008-01-26 2009-08-03 Atm Spółka Akcyjna Sieć danych oraz sposób regeneraji stanu zapisu plików cyfrowych w sieci danych
US8156398B2 (en) * 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) * 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) * 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) * 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8972472B2 (en) * 2008-03-25 2015-03-03 Densbits Technologies Ltd. Apparatus and methods for hardware-efficient unbiased rounding
US7971023B2 (en) * 2008-04-30 2011-06-28 Sandisk Corporation Guaranteed memory card performance to end-of-life
US8059455B2 (en) * 2008-05-09 2011-11-15 Sandisk Il Ltd. Partial scrambling to reduce correlation
EP2297742B1 (en) 2008-05-16 2013-07-24 Fusion-io, Inc. Apparatus, system, and method for detecting and replacing failed data storage
KR101486987B1 (ko) * 2008-05-21 2015-01-30 삼성전자주식회사 불휘발성 메모리를 포함하는 반도체 메모리 장치 및 불휘발성 메모리를 위한 커맨드 스케줄링 방법
US7848144B2 (en) * 2008-06-16 2010-12-07 Sandisk Corporation Reverse order page writing in flash memories
US7808831B2 (en) * 2008-06-30 2010-10-05 Sandisk Corporation Read disturb mitigation in non-volatile memory
US7971007B2 (en) * 2008-07-08 2011-06-28 Silicon Motion, Inc. Downgrade memory apparatus, and method for accessing a downgrade memory
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
JP5478855B2 (ja) * 2008-08-08 2014-04-23 ルネサスエレクトロニクス株式会社 不揮発性メモリ制御方法及び半導体装置
CN101650974B (zh) * 2008-08-12 2012-12-19 创见资讯股份有限公司 可自我检测使用状态的储存装置及其检测方法
US8332725B2 (en) 2008-08-20 2012-12-11 Densbits Technologies Ltd. Reprogramming non volatile memory portions
US8213229B2 (en) * 2008-08-22 2012-07-03 HGST Netherlands, B.V. Error control in a flash memory device
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
TWI389122B (zh) * 2008-10-30 2013-03-11 Silicon Motion Inc 用來存取一快閃記憶體之方法以及相關之記憶裝置及其控制器
US8261159B1 (en) 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
CN101740123B (zh) * 2008-11-10 2012-04-04 扬智科技股份有限公司 存储器的数据保护方法
US8208304B2 (en) * 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
CN102855943B (zh) * 2008-11-28 2017-04-12 群联电子股份有限公司 错误校正控制器及其闪存芯片系统与错误校正方法
US8291297B2 (en) * 2008-12-18 2012-10-16 Intel Corporation Data error recovery in non-volatile memory
US8316201B2 (en) * 2008-12-18 2012-11-20 Sandisk Il Ltd. Methods for executing a command to write data from a source location to a destination location in a memory device
US7859932B2 (en) * 2008-12-18 2010-12-28 Sandisk Corporation Data refresh for non-volatile storage
JP4551958B2 (ja) * 2008-12-22 2010-09-29 株式会社東芝 半導体記憶装置および半導体記憶装置の制御方法
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8248831B2 (en) * 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8040744B2 (en) * 2009-01-05 2011-10-18 Sandisk Technologies Inc. Spare block management of non-volatile memories
US20100174845A1 (en) * 2009-01-05 2010-07-08 Sergey Anatolievich Gorobets Wear Leveling for Non-Volatile Memories: Maintenance of Experience Count and Passive Techniques
US8244960B2 (en) * 2009-01-05 2012-08-14 Sandisk Technologies Inc. Non-volatile memory and method with write cache partition management methods
US8094500B2 (en) * 2009-01-05 2012-01-10 Sandisk Technologies Inc. Non-volatile memory and method with write cache partitioning
US8700840B2 (en) * 2009-01-05 2014-04-15 SanDisk Technologies, Inc. Nonvolatile memory with write cache having flush/eviction methods
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8924819B2 (en) * 2009-01-23 2014-12-30 Macronix International Co., Ltd. Memory device and operation method thereof
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) * 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8819385B2 (en) 2009-04-06 2014-08-26 Densbits Technologies Ltd. Device and method for managing a flash memory
US8458574B2 (en) * 2009-04-06 2013-06-04 Densbits Technologies Ltd. Compact chien-search based decoding apparatus and method
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US9116830B2 (en) * 2009-04-29 2015-08-25 Texas Instruments Incorporated Method to extend data retention for flash based storage in a real time device processed on generic semiconductor technology
US8255613B2 (en) * 2009-04-30 2012-08-28 International Business Machines Corporation Wear-leveling and bad block management of limited lifetime memory devices
US8566510B2 (en) 2009-05-12 2013-10-22 Densbits Technologies Ltd. Systems and method for flash memory management
US8307258B2 (en) 2009-05-18 2012-11-06 Fusion-10, Inc Apparatus, system, and method for reconfiguring an array to operate with less storage elements
US8281227B2 (en) 2009-05-18 2012-10-02 Fusion-10, Inc. Apparatus, system, and method to increase data integrity in a redundant storage system
US8775865B2 (en) 2009-06-24 2014-07-08 Headway Technologies, Inc. Method and apparatus for scrubbing accumulated disturb data errors in an array of SMT MRAM memory cells including rewriting reference bits
US9170879B2 (en) * 2009-06-24 2015-10-27 Headway Technologies, Inc. Method and apparatus for scrubbing accumulated data errors from a memory system
US8255773B2 (en) * 2009-06-29 2012-08-28 Sandisk Technologies Inc. System and method of tracking error data within a storage device
US8261136B2 (en) * 2009-06-29 2012-09-04 Sandisk Technologies Inc. Method and device for selectively refreshing a region of a memory of a data storage device
US8321727B2 (en) * 2009-06-29 2012-11-27 Sandisk Technologies Inc. System and method responsive to a rate of change of a performance parameter of a memory
US20100332922A1 (en) * 2009-06-30 2010-12-30 Mediatek Inc. Method for managing device and solid state disk drive utilizing the same
US20110002169A1 (en) 2009-07-06 2011-01-06 Yan Li Bad Column Management with Bit Information in Non-Volatile Memory Systems
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US20110035540A1 (en) * 2009-08-10 2011-02-10 Adtron, Inc. Flash blade system architecture and method
US20110041005A1 (en) 2009-08-11 2011-02-17 Selinger Robert D Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System
US20110040924A1 (en) * 2009-08-11 2011-02-17 Selinger Robert D Controller and Method for Detecting a Transmission Error Over a NAND Interface Using Error Detection Code
US20110041039A1 (en) 2009-08-11 2011-02-17 Eliyahou Harari Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device
US8370720B2 (en) * 2009-08-19 2013-02-05 Ocz Technology Group, Inc. Mass storage device and method for offline background scrubbing of solid-state memory devices
US20110047322A1 (en) * 2009-08-19 2011-02-24 Ocz Technology Group, Inc. Methods, systems and devices for increasing data retention on solid-state mass storage devices
US8910002B2 (en) * 2009-08-24 2014-12-09 OCZ Storage Solutions Inc. NAND flash-based storage device with built-in test-ahead for failure anticipation
WO2011024015A1 (en) 2009-08-25 2011-03-03 Sandisk Il Ltd. Restoring data into a flash storage device
US8305812B2 (en) * 2009-08-26 2012-11-06 Densbits Technologies Ltd. Flash memory module and method for programming a page of flash memory cells
US8868821B2 (en) 2009-08-26 2014-10-21 Densbits Technologies Ltd. Systems and methods for pre-equalization and code design for a flash memory
US8995197B1 (en) 2009-08-26 2015-03-31 Densbits Technologies Ltd. System and methods for dynamic erase and program control for flash memory device memories
US9330767B1 (en) 2009-08-26 2016-05-03 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory module and method for programming a page of flash memory cells
TW201108235A (en) 2009-08-31 2011-03-01 Sandisk Il Ltd Preloading data into a flash storage device
US20110059628A1 (en) * 2009-09-04 2011-03-10 Solid State System Co., Ltd. Secure digital card with two micro-sd cards in striping data access
KR101678909B1 (ko) * 2009-09-17 2016-11-23 삼성전자주식회사 플래시 메모리 시스템 및 그것의 소거 리프레쉬 방법
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8730729B2 (en) 2009-10-15 2014-05-20 Densbits Technologies Ltd. Systems and methods for averaging error rates in non-volatile devices and storage systems
US8724387B2 (en) 2009-10-22 2014-05-13 Densbits Technologies Ltd. Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages
US8504884B2 (en) * 2009-10-29 2013-08-06 Freescale Semiconductor, Inc. Threshold voltage techniques for detecting an imminent read failure in a memory array
JP5349256B2 (ja) 2009-11-06 2013-11-20 株式会社東芝 メモリシステム
US8769188B2 (en) * 2009-11-18 2014-07-01 Mediatek Inc. Nonvolatile memory controller and method for writing data to nonvolatile memory
US8626988B2 (en) * 2009-11-19 2014-01-07 Densbits Technologies Ltd. System and method for uncoded bit error rate equalization via interleaving
US8473809B2 (en) * 2009-11-20 2013-06-25 Sandisk Technologies Inc. Data coding for improved ECC efficiency
US8495281B2 (en) * 2009-12-04 2013-07-23 International Business Machines Corporation Intra-block memory wear leveling
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US20110153912A1 (en) * 2009-12-18 2011-06-23 Sergey Anatolievich Gorobets Maintaining Updates of Multi-Level Non-Volatile Memory in Binary Non-Volatile Memory
US8725935B2 (en) 2009-12-18 2014-05-13 Sandisk Technologies Inc. Balanced performance for on-chip folding of non-volatile memories
US8468294B2 (en) * 2009-12-18 2013-06-18 Sandisk Technologies Inc. Non-volatile memory with multi-gear control using on-chip folding of data
US9037777B2 (en) * 2009-12-22 2015-05-19 Densbits Technologies Ltd. Device, system, and method for reducing program/read disturb in flash arrays
TWI416331B (zh) * 2009-12-23 2013-11-21 Phison Electronics Corp 用於快閃記憶體的資料寫入方法及其控制器與儲存裝置
US8607124B2 (en) * 2009-12-24 2013-12-10 Densbits Technologies Ltd. System and method for setting a flash memory cell read threshold
KR101090394B1 (ko) * 2009-12-24 2011-12-07 주식회사 하이닉스반도체 예비 영역을 유동적으로 관리하는 반도체 스토리지 시스템 및 그 제어 방법
US8443263B2 (en) 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
US8595411B2 (en) * 2009-12-30 2013-11-26 Sandisk Technologies Inc. Method and controller for performing a sequence of commands
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
KR101648531B1 (ko) * 2010-02-12 2016-08-17 삼성전자주식회사 불휘발성 메모리 시스템과 이의 동작 방법
KR101655306B1 (ko) * 2010-02-24 2016-09-07 삼성전자주식회사 메모리 시스템 및 그것의 액세스 방법
US8341502B2 (en) * 2010-02-28 2012-12-25 Densbits Technologies Ltd. System and method for multi-dimensional decoding
US8365041B2 (en) * 2010-03-17 2013-01-29 Sandisk Enterprise Ip Llc MLC self-raid flash data protection scheme
US8527840B2 (en) 2010-04-06 2013-09-03 Densbits Technologies Ltd. System and method for restoring damaged data programmed on a flash device
US8516274B2 (en) 2010-04-06 2013-08-20 Densbits Technologies Ltd. Method, system and medium for analog encryption in a flash memory
US8745317B2 (en) 2010-04-07 2014-06-03 Densbits Technologies Ltd. System and method for storing information in a multi-level cell memory
US9183134B2 (en) * 2010-04-22 2015-11-10 Seagate Technology Llc Data segregation in a storage device
US9021177B2 (en) 2010-04-29 2015-04-28 Densbits Technologies Ltd. System and method for allocating and using spare blocks in a flash memory
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8452937B2 (en) 2010-05-14 2013-05-28 Sandisk Il Ltd. Moving executable code from a first region of a non-volatile memory to a second region of the non-volatile memory to reduce read disturb
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8539311B2 (en) 2010-07-01 2013-09-17 Densbits Technologies Ltd. System and method for data recovery in multi-level cell memories
US8468431B2 (en) 2010-07-01 2013-06-18 Densbits Technologies Ltd. System and method for multi-dimensional encoding and decoding
US8819503B2 (en) * 2010-07-02 2014-08-26 Stec, Inc. Apparatus and method for determining an operating condition of a memory cell based on cycle information
US20120008414A1 (en) 2010-07-06 2012-01-12 Michael Katz Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system
US8737141B2 (en) 2010-07-07 2014-05-27 Stec, Inc. Apparatus and method for determining an operating condition of a memory cell based on cycle information
US8737136B2 (en) 2010-07-09 2014-05-27 Stec, Inc. Apparatus and method for determining a read level of a memory cell based on cycle information
US8432732B2 (en) 2010-07-09 2013-04-30 Sandisk Technologies Inc. Detection of word-line leakage in memory arrays
US8514630B2 (en) 2010-07-09 2013-08-20 Sandisk Technologies Inc. Detection of word-line leakage in memory arrays: current based approach
US8305807B2 (en) 2010-07-09 2012-11-06 Sandisk Technologies Inc. Detection of broken word-lines in memory arrays
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US8964464B2 (en) 2010-08-24 2015-02-24 Densbits Technologies Ltd. System and method for accelerated sampling
US8508995B2 (en) 2010-09-15 2013-08-13 Densbits Technologies Ltd. System and method for adjusting read voltage thresholds in memories
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8452911B2 (en) 2010-09-30 2013-05-28 Sandisk Technologies Inc. Synchronized maintenance operations in a multi-bank storage system
WO2012048098A1 (en) 2010-10-06 2012-04-12 Blackbird Technology Holdings, Inc. Method and apparatus for low-power, long-range networking
US8976691B2 (en) 2010-10-06 2015-03-10 Blackbird Technology Holdings, Inc. Method and apparatus for adaptive searching of distributed datasets
US8718551B2 (en) 2010-10-12 2014-05-06 Blackbird Technology Holdings, Inc. Method and apparatus for a multi-band, multi-mode smartcard
US9063878B2 (en) 2010-11-03 2015-06-23 Densbits Technologies Ltd. Method, system and computer readable medium for copy back
US8622312B2 (en) 2010-11-16 2014-01-07 Blackbird Technology Holdings, Inc. Method and apparatus for interfacing with a smartcard
US8479062B2 (en) * 2010-12-03 2013-07-02 International Business Machines Corporation Program disturb error logging and correction for flash memory
US8850100B2 (en) 2010-12-07 2014-09-30 Densbits Technologies Ltd. Interleaving codeword portions between multiple planes and/or dies of a flash memory device
US8472280B2 (en) 2010-12-21 2013-06-25 Sandisk Technologies Inc. Alternate page by page programming scheme
JP2012133642A (ja) * 2010-12-22 2012-07-12 Sony Corp メモリ装置、メモリ制御方法、およびプログラム
US8819328B2 (en) 2010-12-30 2014-08-26 Sandisk Technologies Inc. Controller and method for performing background operations
WO2012100145A1 (en) * 2011-01-21 2012-07-26 Blackbird Technology Holdings, Inc. Method and apparatus for memory management
JP5917163B2 (ja) * 2011-01-27 2016-05-11 キヤノン株式会社 情報処理装置、その制御方法及びプログラム並びに記憶媒体
US8886990B2 (en) * 2011-01-27 2014-11-11 Apple Inc. Block management schemes in hybrid SLC/MLC memory
US8909851B2 (en) 2011-02-08 2014-12-09 SMART Storage Systems, Inc. Storage control system with change logging mechanism and method of operation thereof
US8484542B2 (en) * 2011-02-08 2013-07-09 Sandisk Technologies Inc. Data recovery using additional error correction coding data
US20120203993A1 (en) * 2011-02-08 2012-08-09 SMART Storage Systems, Inc. Memory system with tiered queuing and method of operation thereof
US8909865B2 (en) 2011-02-15 2014-12-09 Blackbird Technology Holdings, Inc. Method and apparatus for plug and play, networkable ISO 18000-7 connectivity
US10079068B2 (en) 2011-02-23 2018-09-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Devices and method for wear estimation based memory management
US9497715B2 (en) 2011-03-02 2016-11-15 Blackbird Technology Holdings, Inc. Method and apparatus for addressing in a resource-constrained network
US8693258B2 (en) 2011-03-17 2014-04-08 Densbits Technologies Ltd. Obtaining soft information using a hard interface
JP2012198949A (ja) * 2011-03-18 2012-10-18 Toshiba Corp 半導体記憶装置
US8935466B2 (en) 2011-03-28 2015-01-13 SMART Storage Systems, Inc. Data storage system with non-volatile memory and method of operation thereof
US9342446B2 (en) 2011-03-29 2016-05-17 SanDisk Technologies, Inc. Non-volatile memory system allowing reverse eviction of data updates to non-volatile binary cache
US9047955B2 (en) 2011-03-30 2015-06-02 Stec, Inc. Adjusting operating parameters for memory cells based on wordline address and cycle information
US8990665B1 (en) 2011-04-06 2015-03-24 Densbits Technologies Ltd. System, method and computer program product for joint search of a read threshold and soft decoding
US8484521B2 (en) * 2011-04-07 2013-07-09 International Business Machines Corporation Firmware monitoring of memory scrub coverage
CN103620563B (zh) 2011-04-26 2015-04-29 Lsi公司 用于非易失性存储器的可变超量配置
JP2012230581A (ja) * 2011-04-27 2012-11-22 Mitsubishi Electric Corp データ記憶装置
US9337872B2 (en) 2011-04-30 2016-05-10 Rambus Inc. Configurable, error-tolerant memory control
KR101678919B1 (ko) * 2011-05-02 2016-11-24 삼성전자주식회사 메모리 시스템 및 에러 정정 방법
US8379454B2 (en) 2011-05-05 2013-02-19 Sandisk Technologies Inc. Detection of broken word-lines in memory arrays
US8996790B1 (en) 2011-05-12 2015-03-31 Densbits Technologies Ltd. System and method for flash memory management
US9195592B1 (en) 2011-05-12 2015-11-24 Densbits Technologies Ltd. Advanced management of a non-volatile memory
US9501392B1 (en) 2011-05-12 2016-11-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of a non-volatile memory module
US9396106B2 (en) 2011-05-12 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US9110785B1 (en) 2011-05-12 2015-08-18 Densbits Technologies Ltd. Ordered merge of data sectors that belong to memory space portions
US9372792B1 (en) 2011-05-12 2016-06-21 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US8825944B2 (en) 2011-05-23 2014-09-02 International Business Machines Corporation Populating strides of tracks to demote from a first cache to a second cache
CN102163165B (zh) * 2011-05-26 2012-11-14 忆正存储技术(武汉)有限公司 一种闪存错误预估模块及其预估方法
US8667211B2 (en) 2011-06-01 2014-03-04 Densbits Technologies Ltd. System and method for managing a non-volatile memory
US8456911B2 (en) 2011-06-07 2013-06-04 Sandisk Technologies Inc. Intelligent shifting of read pass voltages for non-volatile storage
US8694719B2 (en) 2011-06-24 2014-04-08 Sandisk Technologies Inc. Controller, storage device, and method for power throttling memory operations
US8929961B2 (en) 2011-07-15 2015-01-06 Blackbird Technology Holdings, Inc. Protective case for adding wireless functionality to a handheld electronic device
US8400335B2 (en) 2011-07-21 2013-03-19 International Business Machines Corporation Using variable length code tables to compress an input data stream to a compressed output data stream
US8669889B2 (en) 2011-07-21 2014-03-11 International Business Machines Corporation Using variable length code tables to compress an input data stream to a compressed output data stream
US8775901B2 (en) 2011-07-28 2014-07-08 SanDisk Technologies, Inc. Data recovery for defective word lines during programming of non-volatile memory arrays
US8726104B2 (en) 2011-07-28 2014-05-13 Sandisk Technologies Inc. Non-volatile memory and method with accelerated post-write read using combined verification of multiple pages
US8750042B2 (en) 2011-07-28 2014-06-10 Sandisk Technologies Inc. Combined simultaneous sensing of multiple wordlines in a post-write read (PWR) and detection of NAND failures
US8588003B1 (en) 2011-08-01 2013-11-19 Densbits Technologies Ltd. System, method and computer program product for programming and for recovering from a power failure
JP5697796B2 (ja) 2011-08-29 2015-04-08 株式会社日立製作所 電気的に書き換え可能な不揮発性半導体メモリを有する半導体記憶装置
JP2013054409A (ja) * 2011-08-31 2013-03-21 Toshiba Corp 情報記憶装置および情報記憶方法
US9098399B2 (en) 2011-08-31 2015-08-04 SMART Storage Systems, Inc. Electronic system with storage management mechanism and method of operation thereof
US9063844B2 (en) 2011-09-02 2015-06-23 SMART Storage Systems, Inc. Non-volatile memory management system with time measure mechanism and method of operation thereof
US9021319B2 (en) 2011-09-02 2015-04-28 SMART Storage Systems, Inc. Non-volatile memory management system with load leveling and method of operation thereof
US9021231B2 (en) 2011-09-02 2015-04-28 SMART Storage Systems, Inc. Storage control system with write amplification control mechanism and method of operation thereof
JP5821445B2 (ja) * 2011-09-09 2015-11-24 富士通株式会社 ディスクアレイ装置及びディスクアレイ装置制御方法
US8553468B2 (en) 2011-09-21 2013-10-08 Densbits Technologies Ltd. System and method for managing erase operations in a non-volatile memory
KR20130049332A (ko) * 2011-11-04 2013-05-14 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
US8938658B2 (en) 2011-11-07 2015-01-20 Sandisk Enterprise Ip Llc Statistical read comparison signal generation for memory systems
US9081663B2 (en) * 2011-11-18 2015-07-14 Stec, Inc. Optimized garbage collection algorithm to improve solid state drive reliability
US8687421B2 (en) 2011-11-21 2014-04-01 Sandisk Technologies Inc. Scrub techniques for use with dynamic read
KR101893145B1 (ko) 2011-12-06 2018-10-05 삼성전자주식회사 메모리 시스템들 및 그것들의 블록 복사 방법들
US8762627B2 (en) 2011-12-21 2014-06-24 Sandisk Technologies Inc. Memory logical defragmentation during garbage collection
US8692696B2 (en) 2012-01-03 2014-04-08 International Business Machines Corporation Generating a code alphabet of symbols to generate codewords for words used with a program
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
US8966178B2 (en) 2012-01-17 2015-02-24 International Business Machines Corporation Populating a first stride of tracks from a first cache to write to a second stride in a second cache
US8825953B2 (en) 2012-01-17 2014-09-02 International Business Machines Corporation Demoting tracks from a first cache to a second cache by using a stride number ordering of strides in the second cache to consolidate strides in the second cache
US8825957B2 (en) * 2012-01-17 2014-09-02 International Business Machines Corporation Demoting tracks from a first cache to a second cache by using an occupancy of valid tracks in strides in the second cache to consolidate strides in the second cache
US9021201B2 (en) 2012-01-17 2015-04-28 International Business Machines Corporation Demoting partial tracks from a first cache to a second cache
US9239781B2 (en) 2012-02-07 2016-01-19 SMART Storage Systems, Inc. Storage control system with erase block mechanism and method of operation thereof
US8947941B2 (en) 2012-02-09 2015-02-03 Densbits Technologies Ltd. State responsive operations relating to flash memory cells
US8996788B2 (en) 2012-02-09 2015-03-31 Densbits Technologies Ltd. Configurable flash interface
US9195586B2 (en) 2012-02-23 2015-11-24 Hgst Technologies Santa Ana, Inc. Determining bias information for offsetting operating variations in memory cells based on wordline address
US8730722B2 (en) 2012-03-02 2014-05-20 Sandisk Technologies Inc. Saving of data in cases of word-line to word-line short in memory arrays
US9362003B2 (en) * 2012-03-09 2016-06-07 Sandisk Technologies Inc. System and method to decode data subject to a disturb condition
US20130262942A1 (en) * 2012-03-27 2013-10-03 Yung-Chiang Chu Flash memory lifetime evaluation method
US9298252B2 (en) 2012-04-17 2016-03-29 SMART Storage Systems, Inc. Storage control system with power down mechanism and method of operation thereof
US8996793B1 (en) 2012-04-24 2015-03-31 Densbits Technologies Ltd. System, method and computer readable medium for generating soft information
US8681548B2 (en) 2012-05-03 2014-03-25 Sandisk Technologies Inc. Column redundancy circuitry for non-volatile memory
US8838937B1 (en) 2012-05-23 2014-09-16 Densbits Technologies Ltd. Methods, systems and computer readable medium for writing and reading data
US8879325B1 (en) 2012-05-30 2014-11-04 Densbits Technologies Ltd. System, method and computer program product for processing read threshold information and for reading a flash memory module
US8949689B2 (en) 2012-06-11 2015-02-03 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US8750045B2 (en) 2012-07-27 2014-06-10 Sandisk Technologies Inc. Experience count dependent program algorithm for flash memory
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9921954B1 (en) 2012-08-27 2018-03-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for split flash memory management between host and storage controller
US8914696B2 (en) * 2012-08-29 2014-12-16 Seagate Technology Llc Flash memory read scrub and channel tracking
US9810723B2 (en) 2012-09-27 2017-11-07 Sandisk Technologies Llc Charge pump based over-sampling ADC for current detection
US9164526B2 (en) 2012-09-27 2015-10-20 Sandisk Technologies Inc. Sigma delta over-sampling charge pump analog-to-digital converter
US8897080B2 (en) 2012-09-28 2014-11-25 Sandisk Technologies Inc. Variable rate serial to parallel shift register
US9490035B2 (en) 2012-09-28 2016-11-08 SanDisk Technologies, Inc. Centralized variable rate serializer and deserializer for bad column management
US9076506B2 (en) 2012-09-28 2015-07-07 Sandisk Technologies Inc. Variable rate parallel to serial shift register
KR102025263B1 (ko) 2012-10-05 2019-09-25 삼성전자주식회사 메모리 시스템 및 그것의 읽기 교정 방법
US9368225B1 (en) 2012-11-21 2016-06-14 Avago Technologies General Ip (Singapore) Pte. Ltd. Determining read thresholds based upon read error direction statistics
US9171620B2 (en) 2012-11-29 2015-10-27 Sandisk Technologies Inc. Weighted read scrub for nonvolatile memory
US9671962B2 (en) 2012-11-30 2017-06-06 Sandisk Technologies Llc Storage control system with data management mechanism of parity and method of operation thereof
US9032271B2 (en) * 2012-12-07 2015-05-12 Western Digital Technologies, Inc. System and method for lower page data recovery in a solid state drive
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
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9069659B1 (en) 2013-01-03 2015-06-30 Densbits Technologies Ltd. Read threshold determination using reference read threshold
US9070479B2 (en) 2013-01-21 2015-06-30 Sandisk Technologies Inc. Systems and methods of updating read voltages
US9123445B2 (en) 2013-01-22 2015-09-01 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9652376B2 (en) * 2013-01-28 2017-05-16 Radian Memory Systems, Inc. Cooperative flash memory control
US11249652B1 (en) * 2013-01-28 2022-02-15 Radian Memory Systems, Inc. Maintenance of nonvolatile memory on host selected namespaces by a common memory controller
US10445229B1 (en) 2013-01-28 2019-10-15 Radian Memory Systems, Inc. Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies
US9098205B2 (en) 2013-01-30 2015-08-04 Sandisk Technologies Inc. Data randomization in 3-D memory
KR102089532B1 (ko) 2013-02-06 2020-03-16 삼성전자주식회사 메모리 컨트롤러, 메모리 시스템 및 메모리 시스템의 동작 방법
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9183137B2 (en) 2013-02-27 2015-11-10 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9470720B2 (en) 2013-03-08 2016-10-18 Sandisk Technologies Llc Test system with localized heating and method of manufacture thereof
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
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
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
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9092350B1 (en) 2013-03-15 2015-07-28 Sandisk Enterprise Ip Llc Detection and handling of unbalanced errors in interleaved codewords
US9367391B2 (en) 2013-03-15 2016-06-14 Micron Technology, Inc. Error correction operations in a memory device
US10042750B2 (en) 2013-03-15 2018-08-07 Micron Technology, Inc. Apparatuses and methods for adaptive control of memory using an adaptive memory controller with a memory management hypervisor
US9043780B2 (en) 2013-03-27 2015-05-26 SMART Storage Systems, Inc. Electronic system with system modification control mechanism and method of operation thereof
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9543025B2 (en) 2013-04-11 2017-01-10 Sandisk Technologies Llc Storage control system with power-off time estimation mechanism and method of operation thereof
US10546648B2 (en) 2013-04-12 2020-01-28 Sandisk Technologies Llc Storage control system with data management mechanism and method of operation thereof
JP6167646B2 (ja) * 2013-04-30 2017-07-26 富士通株式会社 情報処理装置、制御回路、制御プログラム、および制御方法
US9159437B2 (en) 2013-06-11 2015-10-13 Sandisk Enterprise IP LLC. Device and method for resolving an LM flag issue
US9136876B1 (en) 2013-06-13 2015-09-15 Densbits Technologies Ltd. Size limited multi-dimensional decoding
US9313874B2 (en) 2013-06-19 2016-04-12 SMART Storage Systems, Inc. Electronic system with heat extraction and method of manufacture thereof
US9898056B2 (en) 2013-06-19 2018-02-20 Sandisk Technologies Llc Electronic assembly with thermal channel and method of manufacture thereof
US9367353B1 (en) 2013-06-25 2016-06-14 Sandisk Technologies Inc. Storage control system with power throttling mechanism and method of operation thereof
US9244519B1 (en) 2013-06-25 2016-01-26 Smart Storage Systems. Inc. Storage system with data transfer rate adjustment for power throttling
US9230656B2 (en) 2013-06-26 2016-01-05 Sandisk Technologies Inc. System for maintaining back gate threshold voltage in three dimensional NAND memory
US9727413B2 (en) 2013-06-28 2017-08-08 International Business Machines Corporation Flash memory scrub management
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
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
EP3028151A1 (en) 2013-07-31 2016-06-08 Hewlett Packard Enterprise Development LP Versioned memory implementation
US9146850B2 (en) 2013-08-01 2015-09-29 SMART Storage Systems, Inc. Data storage system with dynamic read threshold mechanism and method of operation thereof
US9569354B2 (en) * 2013-08-02 2017-02-14 Infineon Technologies Ag System and method to emulate an electrically erasable programmable read-only memory
US9431113B2 (en) 2013-08-07 2016-08-30 Sandisk Technologies Llc Data storage system with dynamic erase block grouping mechanism and method of operation thereof
US9448946B2 (en) 2013-08-07 2016-09-20 Sandisk Technologies Llc Data storage system with stale data mechanism and method of operation thereof
US9361222B2 (en) 2013-08-07 2016-06-07 SMART Storage Systems, Inc. Electronic system with storage drive life estimation mechanism and method of operation thereof
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9235509B1 (en) 2013-08-26 2016-01-12 Sandisk Enterprise Ip Llc Write amplification reduction by delaying read access to data written during garbage collection
CN105518795B (zh) 2013-09-13 2019-08-13 东芝存储器株式会社 半导体存储装置以及存储系统
US9240238B2 (en) 2013-09-20 2016-01-19 Sandisk Technologies Inc. Back gate operation with elevated threshold voltage
US9165683B2 (en) 2013-09-23 2015-10-20 Sandisk Technologies Inc. Multi-word line erratic programming detection
US9413491B1 (en) 2013-10-08 2016-08-09 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for multiple dimension decoding and encoding a message
US9348694B1 (en) 2013-10-09 2016-05-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
US9397706B1 (en) 2013-10-09 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for irregular multiple dimension decoding and encoding
US9786388B1 (en) 2013-10-09 2017-10-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
US9298608B2 (en) 2013-10-18 2016-03-29 Sandisk Enterprise Ip Llc Biasing for wear leveling in storage systems
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US20150121156A1 (en) 2013-10-28 2015-04-30 Sandisk Technologies Inc. Block Structure Profiling in Three Dimensional Memory
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
US9329802B2 (en) 2013-11-11 2016-05-03 Qualcomm Incorporated Fail safe refresh of data stored in NAND memory device
US9244785B2 (en) 2013-11-13 2016-01-26 Sandisk Enterprise Ip Llc Simulated power failure and data hardening
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9535777B2 (en) * 2013-11-22 2017-01-03 Intel Corporation Defect management policies for NAND flash memory
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9229644B2 (en) 2013-11-25 2016-01-05 Sandisk Technologies Inc. Targeted copy of data relocation
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
US9129665B2 (en) 2013-12-17 2015-09-08 Sandisk Enterprise Ip Llc Dynamic brownout adjustment in a storage device
US9389956B2 (en) * 2014-01-10 2016-07-12 International Business Machines Corporation Implementing ECC control for enhanced endurance and data retention of flash memories
US9536612B1 (en) 2014-01-23 2017-01-03 Avago Technologies General Ip (Singapore) Pte. Ltd Digital signaling processing for three dimensional flash memory arrays
US10120792B1 (en) 2014-01-29 2018-11-06 Avago Technologies General Ip (Singapore) Pte. Ltd. Programming an embedded flash storage device
KR102069274B1 (ko) 2014-02-05 2020-01-22 삼성전자주식회사 메모리 제어 방법
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
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a 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
US9542262B1 (en) 2014-05-29 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Error correction
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
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
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
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
US9070481B1 (en) 2014-05-30 2015-06-30 Sandisk Technologies Inc. Internal current measurement for age measurements
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
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
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
US8918577B1 (en) 2014-06-13 2014-12-23 Sandisk Technologies Inc. Three dimensional nonvolatile memory with variable block capacity
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9892033B1 (en) 2014-06-24 2018-02-13 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of memory units
US9584159B1 (en) 2014-07-03 2017-02-28 Avago Technologies General Ip (Singapore) Pte. Ltd. Interleaved encoding
US9972393B1 (en) 2014-07-03 2018-05-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Accelerating programming of a flash memory module
US9449702B1 (en) 2014-07-08 2016-09-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Power management
US9484086B2 (en) 2014-07-10 2016-11-01 Sandisk Technologies Llc Determination of word line to local source line shorts
US9460809B2 (en) 2014-07-10 2016-10-04 Sandisk Technologies Llc AC stress mode to screen out word line to word line shorts
US9443612B2 (en) 2014-07-10 2016-09-13 Sandisk Technologies Llc Determination of bit line to low voltage signal shorts
US9514835B2 (en) 2014-07-10 2016-12-06 Sandisk Technologies Llc Determination of word line to word line shorts between adjacent blocks
KR102318561B1 (ko) 2014-08-19 2021-11-01 삼성전자주식회사 스토리지 장치, 스토리지 장치의 동작 방법
US9202593B1 (en) 2014-09-02 2015-12-01 Sandisk Technologies Inc. Techniques for detecting broken word lines in non-volatile memories
US9240249B1 (en) 2014-09-02 2016-01-19 Sandisk Technologies Inc. AC stress methods to screen out bit line defects
US9449694B2 (en) 2014-09-04 2016-09-20 Sandisk Technologies Llc Non-volatile memory with multi-word line select for defect detection operations
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
US10552085B1 (en) * 2014-09-09 2020-02-04 Radian Memory Systems, Inc. Techniques for directed data migration
US9542118B1 (en) 2014-09-09 2017-01-10 Radian Memory Systems, Inc. Expositive flash memory control
KR102128406B1 (ko) 2014-09-26 2020-07-10 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
KR102252378B1 (ko) 2014-10-29 2021-05-14 삼성전자주식회사 메모리 장치, 메모리 시스템, 상기 메모리 장치의 동작 방법 및 상기 메모리 시스템의 동작 방법
KR102263046B1 (ko) 2014-10-29 2021-06-09 삼성전자주식회사 메모리 장치, 메모리 시스템, 상기 메모리 장치의 동작 방법 및 상기 메모리 시스템의 동작 방법
US9552171B2 (en) 2014-10-29 2017-01-24 Sandisk Technologies Llc Read scrub with adaptive counter management
KR102287760B1 (ko) 2014-10-29 2021-08-09 삼성전자주식회사 메모리 시스템 및 상기 메모리 시스템의 동작 방법
US9934872B2 (en) 2014-10-30 2018-04-03 Sandisk Technologies Llc Erase stress and delta erase loop count methods for various fail modes in non-volatile memory
US9978456B2 (en) 2014-11-17 2018-05-22 Sandisk Technologies Llc Techniques for reducing read disturb in partially written blocks of non-volatile memory
US9349479B1 (en) 2014-11-18 2016-05-24 Sandisk Technologies Inc. Boundary word line operation in nonvolatile memory
US9524211B1 (en) 2014-11-18 2016-12-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Codeword management
US20160188495A1 (en) * 2014-12-26 2016-06-30 Intel Corporation Event triggered erasure for data security
US9224502B1 (en) 2015-01-14 2015-12-29 Sandisk Technologies Inc. Techniques for detection and treating memory hole to local interconnect marginality defects
US10305515B1 (en) 2015-02-02 2019-05-28 Avago Technologies International Sales Pte. Limited System and method for encoding using multiple linear feedback shift registers
US10032524B2 (en) 2015-02-09 2018-07-24 Sandisk Technologies Llc Techniques for determining local interconnect defects
US9449700B2 (en) 2015-02-13 2016-09-20 Sandisk Technologies Llc Boundary word line search and open block read methods with reduced read disturb
US10032223B2 (en) 2015-03-20 2018-07-24 Bank Of America Corporation System for account linking and future event integration into retirement score calculation
US10049406B2 (en) 2015-03-20 2018-08-14 Bank Of America Corporation System for sharing retirement scores between social groups of customers
US9830660B2 (en) 2015-03-20 2017-11-28 Bank Of America Corporation System for augmenting a retirement score with health information
US10019760B2 (en) 2015-03-20 2018-07-10 Bank Of America Corporation System for utilizing a retirement score to receive benefits
US9773563B2 (en) * 2015-03-27 2017-09-26 Toshiba Memory Corporation Memory controller, memory control method, and coefficient decision method
US9269446B1 (en) 2015-04-08 2016-02-23 Sandisk Technologies Inc. Methods to improve programming of slow cells
US9564219B2 (en) 2015-04-08 2017-02-07 Sandisk Technologies Llc Current based detection and recording of memory hole-interconnect spacing defects
KR102291806B1 (ko) * 2015-04-20 2021-08-24 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 동작 방법
US9823962B2 (en) * 2015-04-22 2017-11-21 Nxp Usa, Inc. Soft error detection in a memory system
US10628255B1 (en) 2015-06-11 2020-04-21 Avago Technologies International Sales Pte. Limited Multi-dimensional decoding
WO2017003440A1 (en) * 2015-06-30 2017-01-05 Hewlett-Packard Development Company, L.P. Patrol scrub periods based on power status
US9851921B1 (en) 2015-07-05 2017-12-26 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory chip processing
US9864653B2 (en) 2015-07-30 2018-01-09 International Business Machines Corporation Memory scrubbing in a mirrored memory system to reduce system power consumption
DE102015215401B4 (de) 2015-08-12 2020-10-01 Infineon Technologies Ag Speichervorrichtung und Verfahren zum Korrigieren einer gespeicherten Bitfolge
US9659666B2 (en) 2015-08-31 2017-05-23 Sandisk Technologies Llc Dynamic memory recovery at the sub-block level
US9653154B2 (en) 2015-09-21 2017-05-16 Sandisk Technologies Llc Write abort detection for multi-state memories
US9910730B2 (en) * 2015-10-21 2018-03-06 Sandisk Technologies Llc System for handling erratic word lines for non-volatile memory
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
US9954558B1 (en) 2016-03-03 2018-04-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Fast decoding of data stored in a flash memory
US9698676B1 (en) 2016-03-11 2017-07-04 Sandisk Technologies Llc Charge pump based over-sampling with uniform step size for current detection
TWI594126B (zh) * 2016-07-05 2017-08-01 慧榮科技股份有限公司 資料儲存裝置與資料儲存方法
US10013192B2 (en) 2016-08-17 2018-07-03 Nxp Usa, Inc. Soft error detection in a memory system
KR20180035981A (ko) * 2016-09-29 2018-04-09 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작 방법
US10261876B2 (en) * 2016-11-08 2019-04-16 Micron Technology, Inc. Memory management
US10216570B2 (en) * 2017-01-31 2019-02-26 Winbond Electronics Corporation Memory device and control method thereof
KR20180122087A (ko) * 2017-05-02 2018-11-12 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
US10008278B1 (en) * 2017-06-11 2018-06-26 Apple Inc. Memory block usage based on block location relative to array edge
US10976936B2 (en) 2017-08-23 2021-04-13 Micron Technology, Inc. Sensing operations in memory
US10446197B2 (en) * 2017-08-31 2019-10-15 Micron Technology, Inc. Optimized scan interval
JP2019079377A (ja) * 2017-10-26 2019-05-23 東芝メモリ株式会社 半導体記憶装置
US10817392B1 (en) * 2017-11-01 2020-10-27 Pure Storage, Inc. Ensuring resiliency to storage device failures in a storage system that includes a plurality of storage devices
US11436080B2 (en) * 2017-11-21 2022-09-06 Sony Semiconductor Solutions Corporation Memory controller, memory, memory system, information processing system, and method of control thereof
US10304550B1 (en) 2017-11-29 2019-05-28 Sandisk Technologies Llc Sense amplifier with negative threshold sensing for non-volatile memory
CN107992431A (zh) * 2017-12-21 2018-05-04 珠海亿智电子科技有限公司 一种nand闪存无效数据回收的掉电保护方法
TWI659426B (zh) 2018-03-09 2019-05-11 旺宏電子股份有限公司 記憶體裝置之資料探測方法
CN110265083B (zh) * 2018-03-12 2021-07-27 旺宏电子股份有限公司 存储器装置的数据探测方法
JP6991084B2 (ja) * 2018-03-22 2022-01-12 キオクシア株式会社 不揮発性メモリデバイス及び制御方法
US10691532B2 (en) 2018-06-29 2020-06-23 Alibaba Group Holding Limited Storage drive error-correcting code-assisted scrubbing for dynamic random-access memory retention time handling
US10936199B2 (en) * 2018-07-17 2021-03-02 Silicon Motion, Inc. Flash controllers, methods, and corresponding storage devices capable of rapidly/fast generating or updating contents of valid page count table
US11094383B2 (en) * 2018-08-24 2021-08-17 International Business Machines Corporation Selective page calibration based on hierarchical page mapping
US20200073759A1 (en) * 2018-09-05 2020-03-05 Hewlett Packard Enterprise Development Lp Maximum data recovery of scalable persistent memory
US10896088B2 (en) * 2018-11-15 2021-01-19 Seagate Technology Llc Metadata recovery mechanism for page storage
US10643695B1 (en) 2019-01-10 2020-05-05 Sandisk Technologies Llc Concurrent multi-state program verify for non-volatile memory
US11169730B2 (en) 2019-06-06 2021-11-09 Micron Technology, Inc. Scrub rate control for a memory device
US10937510B2 (en) * 2019-06-28 2021-03-02 Western Digital Technologies, Inc. Multidimensional pseudorandom binary sequence analysis for a memory device
US10922012B1 (en) * 2019-09-03 2021-02-16 Dropbox, Inc. Fair data scrubbing in a data storage system
CN112506420A (zh) * 2019-09-16 2021-03-16 伊姆西Ip控股有限责任公司 在存储系统中管理擦洗操作的方法、设备和产品
CN110750467B (zh) * 2019-10-22 2021-11-02 深圳芯邦科技股份有限公司 一种Nand Flash中干扰页的检测方法、系统
US11557366B2 (en) 2019-11-21 2023-01-17 SK Hynix Inc. Memory, memory system, operation method of the memory, and operation of the memory system
US11024392B1 (en) 2019-12-23 2021-06-01 Sandisk Technologies Llc Sense amplifier for bidirectional sensing of memory cells of a non-volatile memory
WO2022058768A1 (en) * 2020-09-21 2022-03-24 Micron Technology, Inc Memory apparatus and method for operating the same
CN112083891B (zh) * 2020-09-22 2022-12-06 深圳芯邦科技股份有限公司 一种存储器中数据块的检测方法及相关设备
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Family Cites Families (137)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
JPS6134793A (ja) * 1984-07-27 1986-02-19 Hitachi Ltd ダイナミツクメモリ装置における診断及びエラ−訂正装置
US4612630A (en) * 1984-07-27 1986-09-16 Harris Corporation EEPROM margin testing design
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
US5268870A (en) * 1988-06-08 1993-12-07 Eliyahou Harari Flash EEPROM system and intelligent programming and erasing methods therefor
US5043940A (en) * 1988-06-08 1991-08-27 Eliyahou Harari Flash EEPROM memory systems having multistate storage cells
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 三菱電機株式会社 不揮発性半導体記憶装置
WO1990016069A1 (en) * 1989-06-12 1990-12-27 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 不揮発性半導体記憶装置
US5313421A (en) * 1992-01-14 1994-05-17 Sundisk Corporation EEPROM with split gate source side injection
US6222762B1 (en) * 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5327383A (en) * 1992-04-21 1994-07-05 Intel Corporation Method and circuitry for erasing a nonvolatile semiconductor memory incorporating row redundancy
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
US5657332A (en) * 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
US5532962A (en) * 1992-05-20 1996-07-02 Sandisk Corporation Soft errors handling in EEPROM devices
US5550394A (en) * 1993-06-18 1996-08-27 Texas Instruments Incorporated Semiconductor memory device and defective memory cell correction circuit
JPH065823A (ja) * 1992-06-19 1994-01-14 Toshiba Corp 不揮発性半導体記憶装置及びその使用方法
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
US5450363A (en) * 1994-06-02 1995-09-12 Intel Corporation Gray coding for a multilevel cell memory system
US5523972A (en) * 1994-06-02 1996-06-04 Intel Corporation Method and apparatus for verifying the programming of multi-level flash EEPROM memory
JP3563452B2 (ja) * 1994-08-10 2004-09-08 株式会社東芝 セル閾値分布検知回路およびセル閾値分布検知方法
JPH08147988A (ja) 1994-11-17 1996-06-07 Sony Corp 半導体不揮発性記憶装置
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 株式会社東芝 半導体集積回路装置
KR100478172B1 (ko) 1995-01-31 2005-03-23 가부시끼가이샤 히다치 세이사꾸쇼 반도체 메모리 장치
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
JP3176019B2 (ja) 1995-04-05 2001-06-11 株式会社東芝 不揮発性半導体記憶部を含む記憶システム
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 インターナショナル・ビジネス・マシーンズ・コーポレ−ション リフレッシュ間隔制御装置及び方法、並びにコンピュータ
JP4873780B2 (ja) * 1998-02-27 2012-02-08 コーニング インコーポレイテッド 可撓性無機電解質燃料電池構造
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
US6345001B1 (en) * 2000-09-14 2002-02-05 Sandisk Corporation Compressed event counting technique and application to a flash memory system
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
US7654466B2 (en) 2003-09-18 2010-02-02 Panasonic Corporation Semiconductor memory card, semiconductor memory control apparatus, and semiconductor memory control method
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
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
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
US7254071B2 (en) * 2006-01-12 2007-08-07 Sandisk Corporation Flash memory devices with trimmed analog voltages
US7613043B2 (en) 2006-05-15 2009-11-03 Apple Inc. Shifting reference values to account for voltage sag
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
US7716538B2 (en) * 2006-09-27 2010-05-11 Sandisk Corporation Memory with cell population distribution assisted read margining
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
US20080294813A1 (en) 2007-05-24 2008-11-27 Sergey Anatolievich Gorobets Managing Housekeeping Operations in Flash Memory
US20080294814A1 (en) 2007-05-24 2008-11-27 Sergey Anatolievich Gorobets Flash Memory System with Management of Housekeeping Operations
KR100838292B1 (ko) 2007-06-20 2008-06-17 삼성전자주식회사 메모리 셀의 읽기 레벨 제어 장치 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI476777B (zh) * 2007-06-19 2015-03-11 Samsung Electronics Co Ltd 偵測讀取擾動產生之位元錯誤的記憶體系統及其方法

Also Published As

Publication number Publication date
US20110055468A1 (en) 2011-03-03
KR101127882B1 (ko) 2012-03-21
US20060062048A1 (en) 2006-03-23
CN100541439C (zh) 2009-09-16
US7012835B2 (en) 2006-03-14
US8004895B2 (en) 2011-08-23
US20050073884A1 (en) 2005-04-07
WO2005036401A2 (en) 2005-04-21
JP4723504B2 (ja) 2011-07-13
US20090187785A1 (en) 2009-07-23
US8050095B2 (en) 2011-11-01
DE602004021735D1 (de) 2009-08-06
CN1882918A (zh) 2006-12-20
EP1847930B1 (en) 2009-06-24
ATE382892T1 (de) 2008-01-15
CN101630279A (zh) 2010-01-20
KR20070001871A (ko) 2007-01-04
US20070211532A1 (en) 2007-09-13
EP1847930A1 (en) 2007-10-24
CN101630279B (zh) 2012-08-15
DE602004011097T2 (de) 2009-01-15
DE602004011097D1 (de) 2008-02-14
WO2005036401A3 (en) 2005-07-28
JP2007507804A (ja) 2007-03-29
US7518919B2 (en) 2009-04-14
EP1687720A2 (en) 2006-08-09
EP1687720B1 (en) 2008-01-02
ATE434788T1 (de) 2009-07-15
TW200532695A (en) 2005-10-01
US7224607B2 (en) 2007-05-29

Similar Documents

Publication Publication Date Title
TWI261840B (en) Flash memory data correction and scrub techniques
US7173852B2 (en) Corrected data storage and handling methods
TWI570560B (zh) 為動態讀取所使用之清除技術
TWI400610B (zh) 記憶體系統
TWI393140B (zh) 在一非揮發性記憶體中儲存資料之方法
AU2020374243B2 (en) Calculating corrective read voltage offsets in non-volatile random access memory
JP4558052B2 (ja) メモリシステム
JP4551939B2 (ja) メモリシステム

Legal Events

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