TWI294081B - Memory system and operating method thereof - Google Patents

Memory system and operating method thereof Download PDF

Info

Publication number
TWI294081B
TWI294081B TW093140796A TW93140796A TWI294081B TW I294081 B TWI294081 B TW I294081B TW 093140796 A TW093140796 A TW 093140796A TW 93140796 A TW93140796 A TW 93140796A TW I294081 B TWI294081 B TW I294081B
Authority
TW
Taiwan
Prior art keywords
block
link
metablock
physical
volatile memory
Prior art date
Application number
TW093140796A
Other languages
English (en)
Other versions
TW200540621A (en
Inventor
Carlos J Gonzalez
Sergey A Gorobets
Alan D Bryce
Alan D Bennett
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
Application filed by Sandisk Corp filed Critical Sandisk Corp
Publication of TW200540621A publication Critical patent/TW200540621A/zh
Application granted granted Critical
Publication of TWI294081B publication Critical patent/TWI294081B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/808Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

1294081 九、發明說明: 【發明所屬之技術領域】 本赉明一般係關於半導體非揮發性資料儲存系統,更明 萑。之’係關於一種將實體區塊形成為容納非揮發性資料 儲存系統中之缺陷的較大邏輯結構之系統與方法。、 【先前技術】 諸如快閃記憶體之類的非揮發性記憶體裝置通常用作為 大篁資料儲存子系統。此類非揮發性記憶體裝置通常以封 :才’卡(其係以可移除的方式與主機系統連接)的形式加以封 裝,並且亦可作為主機系統内非可移除的嵌入式儲存器而 加以封裝。在-典型實施方案中,該等子系統包括一或多 個快閃裝置,並且通常包括一子系統控制器。 目則的商業記憶卡格式包括個人電腦記憶卡國際協會 (PCMCIA) . CompactFlash(CF) ^ MultiMediaCard(MMC) > 安全數位卡(SD)、記憶棒卡與Mem〇ryStick_pr〇袼式。此等 卡的一供應商係SanDisk公司,其係本申請案的受讓人。此 類卡適用的主機系統包括數位相機、蜂巢電話、個人電腦、 筆記型電腦、手持計算裝置、聲頻重製裝置等。 該等非揮發性記憶體裝置本身係由非揮發性儲存元件之 一或多個陣列所組成。每個儲存元件能夠儲存一或多個位 元資料。非揮發性記憶體陣列的一重要特徵係,其將程式 化的資料保留於其中,即使在記憶體陣列斷電時。相反, 揮發性記憶體裝置要求週期性地更新陣列的功率,以便保 留揮發性記憶體陣列中所含的資料。非揮發性記憶體的另 98426.doc 1294081 一特徵係,一旦程式化非揮發性記憶體陣列内所含的一單 元,則在使用新的資料值重新程式化該單元之前:必須$ 先抹除該單元。 ’ 可藉由使用-浮動閘極電晶體,例如電可抹除可程式化 唯讀記憶體(EEPRQM)來實施用於將電荷儲存於記憶體單 元之實體構件。諸如EEPROM之類浮動閘極裝置的二熟知 問題係,在極大數目的寫入、程式化與抹除循環之後^ 浮動閘極最終損壞並故障。當發生此種情況時,該單元= 可再使用,必須將其從該陣列中的可用記憶體單元之列表 中剔除。此類缺陷稱為「生長」缺陷。在一市售實施方案 中,藉由將該等缺陷單元映射出去並且將良好記憶體單^ 之實體位址替代新债測到的缺陷記憶體單元來處理此等缺 陷。將缺陷單元或扇區映射出去並加以代替的實施之 範例係在1997年8月19 B偏;iwr u , » ’ 干月β日刀貝^Mehrotra等人的美國專 5,659,550號、1997年 9月 23 η,百;u . ^ 千巧23日頒予Harari等人的美國 5,671,229號;以及19"年⑽日鮮Η咖等人的美 =第5’崎080號中說明,本文中以引用方式特意將該^ 请案全部併入本文中。 通常將非揮發性記憶體單元之陣列分❹個群組, 效地貫施讀取、程式化血技险 ^抹除功犯。例如,在許多非揮發 性記憶體架構中,將嗲耸##躺- 早赞 、 杼4專圯憶體皁凡配置成稱為抹除單元 的較大群組。此抹除嚴分说 禾除早兀係可一次抹除的記憶體 小數目。 干儿又敢 抹除早70的大小取法私 . 夬於所貫施的記憶體架構。在較早的 98426.doc 1294081 非揮發性記憶體中,抹除單元係大小與標準512位元組磁碟 機扇區相同的區塊。在一商業形式中,每—區塊包含㈣ 的單元,用於儲存-扇區之使用者資料加上與使用者資料 及/或儲存於該區塊相關之某些負擔資料。為了確保個別地 抹除單元之區;龙,必須將該等區塊彼此充分地隔離。 因為此隔離佔據了積體電路晶片上有用的空間,故開發 出另-記憶體架構,其中使抹除單元明顯更大,以便此類 隔離所需㈣間較少。於期年6月17日頒予CGniey等人的 美國專利第6,58G,638號中說明此大區塊系統架構之範例, 該專利係2〇02年7月30日頒發的美國專利第M26,893號之 接續專利案。以引用方式特意將此等兩份專利全文併入本 文中。在大區塊系統中’通常進一步將該抹除單元分成可 個別定址的頁面’其係讀取與程式化使用者資料之基本單 元(,式化及/或讀取的單元)。在一商業實施方案中,該抹 除單元係一元區塊。一元區塊係由多個實體抹除單元所組 成的虛擬抹除單元。此等多重實體抹除單元可用在平行的 程式化與抹除操作中,但係作為單一邏輯區塊來定址。 於美國專利第6,034,897號中說明一種形成元區塊或「超」 區塊之方法’以引用方式特意將該專利案全文併入本文 中。如本文所述,對於具有數個裝置的記憶體,可將每一 裝置中相同的實體區塊群聚成一元區塊。儘管此可形成元 區塊以及一給定元區塊中由相同位址(即第一裝置中的區 塊位址)定址所有區塊,但其具有若干限制。例如,如果區 塊至元區塊中的鏈接在此固定的配置中係預定的,則當一 98426.doc 1294081 區塊變壞時’該區塊所屬的元區塊變壞,儘管元區塊内的 其他區塊仍在起作用。因此,理想的目標係提供一種用於 可適應元區塊配置之系統與方法,而免去每次需要新鏈接 時建立新鏈接之操作負擔。 【發明内容】 本發明之各方面克服先前技術中將實體記憶體結構鏈接 至複合邏輯結構中時的此等與其他限制。在本發明之主要 具體實施例中,揭示了用於在快閃記憶體中形成元區塊結 構之技術。根據本發明之第一方面,更新區塊至元區塊的 鍵接,以容納記憶體的缺陷部分…種用於保持缺陷圖的 系統包括-缺_結構,其詩在組織成元區塊的非揮發 性記憶體系統中追蹤工廠缺陷與生長缺陷之存在。一種用 於保持缺陷圖的方法利用缺陷圖結構與元區塊的特徵。在 一具體實施例中,缺陷圖結構的大小等同於非揮發性記憶 體糸統的传性。在另—具體實施例中,將無法指定給元 區塊的剩餘抹除單元保持於備用抹除單元之一列表中,以 供以後使用。 j據本發明之另-方面,將區塊至元區塊中之鏈接的- 。己錄保持於非揮發性記憶體中。於是,卷+ 器可讀出至其揮發性記憶體中的鏈接二:要時,該控制 座沾壬^ 叇接回應於由缺陷所產 的重新鏈接而更新記錄。可將完整的鏈接記 揮發性記‘It财,例如,在指定的位置 "、、、 鏈接記錄。在本發明之另—方面中或僅保持一部分 用,例如,以㈣為基礎㈣施㈣)=;演算法(其使 案)來決定性地形成區塊 98426.doc 1294081 至元區塊中的初始鏈接。在此種情形下,儲存於非揮發性 記憶體中的鏈接記錄僅需包含與標準演算法的偏差。 本發明之其他方面、特徵與優點包括於以下對範例性具 體只施例之說明中’且應結合附圖閲讀此說明。 【實施方式】 般而曰,本發明之記憶體系統在其主要非揮發性記憶 體中保持區塊至多區塊元區塊結構之鏈接的-記錄。此記 錄在可根據需要讀取到非揮發性記憶體中的—映射表中包 ::廠與生長缺陷之缺陷圖。在碰到生長缺陷並且將區塊 扣定、、口新的位置時更新此圖。元區塊較佳係由數個子陣列 或平面之每-子陣列或平面中的—區塊形成,並且在此種 it形下,較佳係將每一平面中編號相同的區塊群聚在一 起二除了被標記為不良並且置於缺陷圖中的區塊。在一具 體實施例中’將該等區塊直接映射至替代的區塊。接著使 用對應平面中的替代區塊重新形成將包含缺陷區塊的元區 塊。並非將區塊至元區塊之鏈接的完整記錄保持於非揮發 性記憶體内,-「標準」的鏈接可基於一植入,例如,系 :先轫體中的凋异法,其中僅需要儲存由缺陷引起的與此演 #法的偏差。該等無缺陷存在的標準元區塊將稱為可用的 仏準70區塊。剩餘的元區塊稱為不可使用的標準元區塊, 並且組件實體區塊稱為備用區塊。 /圖1至3係典型現有非揮發性記憶體系統之方塊圖,該等 系、、先包括一主機1〇2、2〇2、3〇2 ; 一控制器1〇4、、3〇4 與一非揮發性記憶體陣列或複數個陣列103、203、303。在 98426.doc 1294081 圖1中’將非揮發性記憶料列如 為封裝於封閉卡中 …己憶體控制器104顯示 連接。在圖2中/可移除方式與主機系統⑽ 並且將非揮^ 器204顯示為主機系統加的部分, 封閉卡以可移除= 車列203顯示為封裝於封閉卡卜該 了移除的方式與主機系統 揮發性記憶體陣列303顯亍士在圖3中,將該非 的嵌入式館存器而封裝。"'、”,、機系統3〇2内非可移除
元7:::一’該非揮發性記憶體陣列包括多個記憶體單 憶體二二:個導電浮動閘極作為儲存元件。該等記 ;介電其他長期電子電荷儲存元件,例如電荷捕 。可制多種非揮發性㈣元件,其包 :多狀態儲存元件’係FIa摘EPR〇M/浮動間極之儲存元 件、諸如NROM、MN〇s、縫趟舰鹰、ναν〇、峨之 類非揮發性儲存元件以及組織成抹除單元的非揮發性儲存 疋件。可使用儲存數位資訊、類比資訊或兩者之組合 揮發性儲存元件。 ϋ
可使用為每一儲存元件定義的兩個電荷位準來操作記憶 體單元陣列,從而使用每一元件儲存一位元的資料。或者二 可為每一儲存元件定義兩個以上的儲存狀態,在該情形 下’可在每一儲存元件中儲存一位元以上的資料。 圖4a說明如何可將一記憶體晶片格式化為抹除單元(或 區塊)之群組的範例,其中根據實體平面與邏輯區域來配置 該等區塊。以此方式分割晶片的某些原因包括等化每—群 組内良好抹除單元的數目,並且留出記憶體晶片的特殊用 98426.doc 1294081 途區段。例如,可留出特殊的「保留」區段… 系統與裝置參數之類的資訊以以儲存諸如 可留出區段來儲存備^一 A域對齊的資訊。亦 F 46 的抹除單元,亦稱為備用巴士供 £塊。可將與備用區有關的資訊,例如 或備用 持於一備料列表中,以供需要時進㈣取。^位址,保
個區域之-區域中所含的多個抹除單元 :’;在N 測到缺陷時,可藉由將有缺陷的抹除單元重== 的多個備用抹除單元 、ί至可用 來自…I 除單元而找到備用區。 ^主機的資料通常只被提供至識別為邏輯扇區的記憶 數來說明的資料。在=根據起始邏輯扇區與扇區總 成可將此等邏輯扇區結構化 〜大…,但通常不將此資訊傳遞至該記憶體 =而’可使用此等主機結構之知識,以獲得記憶體中 :貫:結構或控制器結構,當其將反映主機如何傳輸資I 或…反映此等主機結構··例如,通常將記憶體結構化 為根據大小與邏輯扇區相同的實體扇區來儲存使用者資 料。)該控制器將主機結構組織成模仿實體結構的邏輯結 2,以便更有效地將其儲存於實體記憶體中。例如,在一 常見的配置中’該記憶體系統控制器將邏輯扇區(如主機所 定義)群聚成邏輯區塊,該等邏輯區塊的大小對應於一區塊 的實體結構,其中區塊係用於快閃型記憶體之實體抹除單 元。接著,該控制器可以,例如,扇區位址表(Sect0r Address
Table SAT)的形式保持實體結構與邏輯結構的關係,並且 當邏輯與實體關係發生變化時更新此對應關係。 98426.doc -12- 1294081 為了獲侍更大的效率,記憶體系統通常藉由引入更大的 結構而增加平杆糾 / > 十仃14。例如,在具有若干可同時被讀取、寫 入或項寫之半自律陣列的記憶體系統中,將來自不同陣列 、品A群聚成元區塊」結構,並且該控制器將資料的邏 Z區塊形成為對應的邏輯元區塊,以允許同時操作多重區 “ ^八有單一圮憶體晶片的平面或橫跨數個記憶體晶 片而刀佈的-或多個平面來形成元區塊。以此方式,藉由 允午、、且(邏輯上)連續的扇區橫跨多個可被平行讀取/程式 化/抹除的實體區塊,則可以最少量的非同時讀取、程式化 或抹除操作來時頃取/程式化/抹除此群組。此配置有助於 連縯碩取與寫入較大量資料之邏輯上相鄰的扇區。 首先將論述圖5至1〇的結構,接著將個別地解釋每一圖式 所不的操作。圖5至1〇顯示四個平面中六個區塊的配置,用 於總共24個抹除單元,作為圖i至3之記憶體陣列之範例。 為方便(見、^亥專抹除單元將稱為區塊,因為區塊係一種 抹除單元。為便於解釋,選擇此6χ4區塊結構之大小,此點 將在下文中顯而易見。一典型的記憶體陣列將包含比此處 所示者夕得多的區塊(具有多得多的列),並且如果非揮發性 記憶體系統的平行性大於四,則可能具有比所示更多的平 面。 每一平面通常具有其自己的資料暫存器與程式化電路。 此允許同時程式化於每一平面之記憶體單元之區塊中。每 平面可半獨立於其他平面而操作。為便於說明,圖5至1〇 所述平面係顯不為具有6個實體區塊〇至5。在任何給定配置 98426.doc 13 1294081 中區塊的實際數目可能較低,但通常要高得多。 在具有大量區塊的系統中’可在邏輯上將該等平面分成 圖4 a所示的區域。該等區域橫跨該等複數個平面而延伸。 將該等平面分成區域的做法可將一平面分成較小的更易於 管理的區段。每一平面中一區域内的區塊可佔據同一組相 鄰的貫體區塊位址。區域的數目並未受特別限制,儘管實 際的設計決策可影響特定記憶體系統中所實施的區域數 目。本發明的各方面可在具有或不具有區域結構的記憶體 中實施,並且對於具有區域結構的記憶體,係在作為整體 或具有個別區域的平面内實施。 應用於圖5至10之情形中的記憶體系統所用的操作單元 較佳係一元區塊。一元區塊表示複數個實體區塊橫跨平面 之虛擬鏈接。一元區塊的選擇性使用包括該元區塊内所有 區塊之管線式袜除以及來自該元區塊之每一區塊之一或多 個頁面之管線式程式化與讀取。 一元區塊橫跨多個平面而延伸,並通常包括來自此等平 面之每一平面的一區塊,如圖5至10中所示每一組連接箭頭 中的箭頭所示。圖5顯示元區塊的最簡單形式,其中每一元 區塊的每一實體區塊具有相同的區塊偏移,並且橫跨所有 四個平面0至3而延伸。圖10說明另外兩個複雜的元區塊。 將在圖5至1〇的說明中論述此等元區塊的建立,其中但碰到 缺陷時’更新元區塊中所含有的組件區塊。
圖4b中顯示區塊至元區塊之鏈接的更一般情況。系統的 吕己憶體部分(分別係圖1至3的1〇3、2〇3、3〇3)係由晶片❹至Z 98426.doc -14- 1294081 所組成’其中每一晶片具有數個芈 数個千面’例如晶片〇具有多個 平面00至0W。一平面中每一絲技从〜 母鏈接的貫體單元,如X所示, 所示,或由多個實體區 塊所組成’如圖4d所示。當實體區塊較小時,圖4續示不 僅橫跨平面與晶片而且亦在深声古 隹冰度方向鏈接區塊之該種兩維 元區塊可能特別方便。然而,方便 更J此不疋圖4d之配置之 唯一或主要原因。在通常或一飧的姑拉山 Λ維的鏈接中,主要的動機係 要提供-處理資料的機制,&等資料可被同時寫入至不同 晶片/平面的多個區塊。同樣’如果記憶體設計允許平行地 存取(讀取與程式化卜平面卜個以上的位置,則鍵接相同 平面中的多個區塊亦可能係有意義的。 顯示數個元區塊鏈接,其中根據該鏈接中第一區塊之第 一列對每一元區塊MB進行編號;例如,開始於區塊〇的元 區塊係標為MB〇等。儘管圖仆顯示每一平面在一給定鏈接 中具有一區塊(並且僅具有一區塊)並且該鏈接橫跨數個平 面而延伸,但是此等兩種情況不一定總是如此。例如,一 鏈接(例如由圖5至10的四個區塊所組成)可由單一晶片上的 四個平面或來自四個平面的一平面所組成。 如圖4b所示,鏈接MB〇的所有區塊來自相同列,MB!的大 多數區塊來自相同列,並且MB2的每一區塊來自前一區塊 下面的列。為便於論述,圖5至10之論述將採用情形MB〇, 其中所有區塊來自相同的列,以下論述更一般的情形。此 等各種鏈接方法可能係固定的,或根據以下詳述的本發明 之一方面,係根據一演算法予以決定。(或者,初始的決定 98426.doc -15- 1294081 包括一邏輯及/或實體位址,其足以識別頁面所在的平面、 區域與區塊,以及該區塊内該頁面的偏移。接著,藉由控 制器讀取頁面負擔資料之此等位址欄位而在該控制器的記 憶體内建立一位址圖。此通常係一次針對記憶體的部分而 完成,其在關於記憶體之該部分的程式化、讀取或抹除操 作之前。 圖5至1 〇顯示系統如何回應於在記憶體陣列的實體區塊 中铺測到缺陷。此等缺陷可能係工廠或生長缺陷。此系列 之圖式係要顯示每次碰到新的缺陷時會發生什麼情況。基 於說明之目的,編號為丨至5的實體區塊包含缺陷。 在第一圖式中,圖5顯示其中不存在缺陷之記憶體陣列之 一部分。藉由橫跨所有四個平面而延伸的六個水平箭頭來 描述複數個元區塊。每個元區塊包含已定義的數個實體區 塊。在圖5至1〇中,對於所有的元區塊,已定義實體區塊的 數目係四,其對應於平面的數目。 圖5顯示記憶體陣列部分中未找到工廠或生長缺陷。橫跨 示意圖而水平延伸的黑色箭頭描述六個線性標準元區塊。 如圖5所示’線性標準元區塊係包含具有匹配偏移之實體區 塊之元區塊。初始鏈接可根據一演算法來建立,如以下進 一步說明,或係由可用良好區塊之抹除集區所形成。 在本發明的一具體實施例中,該元區塊的一特徵係,第 一虛擬區塊位址(其與第一實體區塊位址相關)係用於決定 與該特定元區塊相關之剩餘實體區塊之位置之唯一資訊, 並且鏈接元區塊的其餘部分係由一鏈接演算法決定。此會 98426.doc 17- 1294081 、、、>用於儲存兀區塊所需的資料大小。如果在第一實體區 塊中碰到缺陷,則整個元區塊變為無效,並且從位址空間 ^映射出去,因為不再有任何機制用於指向橫跨每一可用 或夕個平面而疋位的元區塊之剩餘部件。以下圖9之論 述中將顯示此情況之一範例。 圖6顯不在碰到第一新的缺陷之後陣列的狀態。新的缺陷 位於MB!中標為「a」的實體區塊,其位於平面2上的區⑴ 處。當-元區塊内的實體區塊失效時,元區塊無法照常使 用 簡單的解決方案將係將該元區塊從位址空間映射出 、並且不再使用。如果糸統僅具有單一的不良實體區塊, 並且沒有備用的區塊,則此係可用的唯一解決方式。然而, 如果出現多重不良的實體區塊,則因為與失效元區塊相關 的剩餘實體區塊可用來建立其他良好的元區塊,此解決方 案很快變為多餘的。作為圖6中所找到的缺陷(標為「A」) 的結果,剩餘的三個良好實體區塊(如影線標記所示)變為備 用區。 圖7顯示在碰到第二新的缺陷之後陣列的狀態。新的缺陷 位於標為「B」的實體區塊,其位於MB3中平面3上的區塊3 處。在用於保持諸如圖11所示之缺陷圖的方法中,將在發 生缺陷的平面(平面3)中搜尋任何可用的備用區塊。此處, 實體區塊1在平面3中係可用的(如圖6中的影線標記所示)。 因為區塊1在平面3中係可用的,故會將元區塊更新為指向 區塊1,以便取代元區塊的缺陷部分;即MBs中平面3處的 缺陷區塊(「B」)係由MB〗中平面3處的良好區塊之鏈接中取 98426.doc 18 1294081 代,該良好區塊係由於MB1之平面2處之區塊「A」失效而 變為冗餘。當碰到實體區塊失效時,將備用的實體區塊鏈 接到元區塊中,以取代失效的實體區塊。 (根據所用的命名規範,在圖6與7的點處沒有元區塊 MBi,因為根據平面0中的區塊編號來命名整個元區塊。名 稱MB!後退,除非平面0處的區塊1返回到新的鏈接中,如 圖8中所發生的情況。) 圖8顯示在碰到第二新的缺陷之後陣列的狀態。新的缺陷 位於標為「C」的實體區塊,其位於平面〇上的區塊4處。因 為缺陷區塊係位於平面0上,無法重新鏈接此元區塊。位於 平面0上的區塊係包含元區塊之其他部件之參考資訊之區 塊,若無平面0上的區塊,則根據所採用的規範,沒有其他 方式來參考元區塊。因此,即使一備用區塊在平面〇上的區 塊1處係可用的,其仍無法用於完成此元區塊。然而,平面 〇上的區塊1係重新映射進虛擬的位址空間中,並且係用作 新的元區塊中的第一區塊,以利用先前元區塊mb4之平面 1、2與3中現在冗餘的區塊。因而,缺陷區塊「a」可藉由 平面2的區塊4來取代。因為圖7中已重新映射平面3的區塊 1,故其亦需予以取代。因此,可使用平面2與3之區塊4處 的備用區來形成重新鏈接的MB。對於平面丨,一區塊在區 塊1與區塊4中皆可用。儘管兩者皆可被選擇用來完成重新 鏈接的MB〗,但在該範例中使用先前在MB4中的區塊。因 此,重新鏈接的MBl,包含平面〇上的區塊1、平面i上的區 塊4、平面2的區塊4與平面3上的區塊4。此時,僅有一個備 98426.doc -19- 1294081 用區塊保留於平面1上的區塊1處。 圖9顯示在碰到第四新的缺陷之後陣列的狀態。新的缺陷 位於標為「D」的實體區塊,其位於平面〇上的區塊5處。因 為此時沒有備用區塊位於平面0中,故無法重新鏈接此元區 塊。結果,可將剩餘的實體區塊添加至備用的實體區塊集 區。此包括平面1上的區塊5、平面2上的區塊5與平面3上的 區塊5。此時,有四個備用區塊在所示的記憶體陣列中係可 用的。 圖10顯示在碰到第五新的缺陷之後陣列的狀態。新的缺 陷位於標為「E」的實體區塊,其位於平面2上的區塊4處。 因為備用的區塊在相同的平面上係可用的(平面2上的區塊 5),故使用該備用區塊來重新鏈接該元區塊mbi。 應注意’在圖10中,儘管六個原始元區塊中的四個原始 元區塊(對應於列1、3、4與5)具有不良區塊,但重新鏈接已 付到四個良好的元區塊。根據固定的鏈接,例如在先前技 術部分所述之美國專利第6,〇34,897號中所述,此等缺陷會 導致六個所示元區塊中四個元區塊的損失。以此方式,當 s己憶體老化並出現缺陷時,仍保持較大的資料容量。 圖11說明如何可使用邏輯至實體映射表1101來映射一元 區塊的組件部件。以影線標記所標記的區塊來顯示與 LBN[0]相關的記憶體11〇3中的元區塊(或使用該結構之具 體貫^例中的C憶體區域)。記憶體的四個平面(在此範例中) 可再次橫跨一個以上的晶片而分佈。LBN[〇]中所包含的 PBN項目指影線標記所標記並且係元區塊之部分的每一區 98426.doc -20- 1294081 塊之實體位址。平面〇中所包含的元區塊之第一部件係用於 存取其他元區塊部件。如關於圖5至1 0所述,如果發現平面 〇中的元區塊部件係有缺陷的,則必須將整個元區塊標記為 有缺陷,因為其係經由平面〇上的部件鏈接至元區塊的其餘 部分。 映射表1101係用於形成元區塊之區塊之鏈接之一記錄之 範例。提供元區塊組成之一適應性之一技術係,無論何 時一寫入程序需要一元區塊,以便由可用的良好區塊之一 集區動態形成一元區塊。儘管此技術提供元區塊結構之適 應性,但其要求無論何時需要一區塊時便重新建立鏈接; 其進一步要求存取每一平面以便決定此集區。根據本發明 之主要方面之一,將此記錄儲存於非揮發性記憶體中一位 置處。接著,根據需要可將此記錄從快閃記憶體讀取至控 制器上的揮發性記憶體(或替代的非揮發性記憶體),以用於 位址轉換。 在一組具體實施例中,可將鏈接資訊的記錄保持於一; 殊的非揮發性記憶體位置,例如在儲存使用者資料之正, 貫體區塊外部的某處。例如,可將此記錄保持於圖4&之」 面0中的其保留區域’或在如美國專利巾請公開案^ 2〇〇3/_5899所述之配置中的任—系統區域中,該公^ 係::引用方式併入本文。在另 '級具體實施例中,可將★ 接貝Λ保持於已寫入或已部分寫入區塊之使用者資料扇G /控制資料扇區之標頭區域中。對於抹除狀態中的區塊,; 將鍵接f崎存於非揮發性記憶體中的-特殊㈣資0 98426.doc -21 - 1294081 實體區塊編號(PBN)來決定該缺陷的位置。如果在與缺陷區 塊之實體位置相同的平面中有一備用區塊可用,則使與該 缺陷相關的元區塊指向備用區,以便取代缺陷區塊,然後 更新缺陷圖。圖12中顯示此情況。否則,如果在與缺陷區 塊相同的平面中沒有剩餘的備用區塊,則將元區塊中剩餘 的良好區塊引導至備用區集區。圖13中顯示此情況。 如上所述,本發明之原理方面之一係,控制器將該鏈接 表的一記錄保持於非揮發性記憶體中。此記錄可能係形成 對應於一給定實體位址之每一元區塊之區塊之完整列表, 例如圖11至13之邏輯至實體映射表ιι〇1。或者,實體區塊 至元區塊之標準鏈接可能係基於一決定性演算法,並且保 持於非揮發性§己憶體中的記錄僅需包含與鏈接規則的任何 偏差。當鏈接因缺陷而被更新,因此與標準鏈接偏差時, 對應地更新該記錄。 所述用於將實體區塊鏈接至元區塊中的機制係設計成最 大化用於不良實體區塊之任何分佈之元區塊數目,並且當 實體區塊在系統的壽命期間失效時,允許產生新的元區 塊。如上所述,根據元區塊中所併入之第一平面中實體區 塊的位址來定義元區塊數目。 一「標準」元區塊包含實體區塊,其實體區塊位址係元 區塊數目之决定性函數。例如,此可能係圖仙中元區塊廳〇 的配置:其亦係用於圖5至10之範例,其中標準元區塊之所 有區塊係相同的列中。可將此配置表示為應,其 中圓括號中的第_表示第η平面中的區塊所屬的列。 98426.doc -23- 1294081 塊n+l所示。 本么明的另一方面係根據卡上的缺陷圖案來最佳化標準 鏈接圖案或最大化可用標準元區塊的數目。當袼式化(或重 新格式化)—卡時,可掃描不良區塊的圖案,並且作出有關 ‘準j鏈接圖案的決策,使其盡可能相互匹配。在許多 =形下,用於標準鏈接之演算法與不良區塊圖案的匹配將 縮小所需的重新鏈接元區塊與元位址至實體位址轉換負 擔,從而(至少最初)最佳化該鏈接。圖“與口中顯示此情況 的一範例。 圖16與17考慮有四個不良實體區塊以對角形式配置的一 耗例’母一區塊來自每一平面〇至3。在不良區塊之對角圖 案的情形中,標準區塊的最佳圖案亦將係對角#,如圖16 所不。結果’在此範例中,將完全不會有重新鏈接的區塊, 元區塊自不而要透過鏈接表轉換,並且可用元區塊 的數目增加。圖17顯示當標準鏈接係筆直跨越而非匹配不 良區塊圖案時的等效情形。在標準方法係筆直跨越的範例 中,需要重新鏈接三個元區塊(n+2、n+3與n+4)。 對於每-卡,對於每_次重新格式化,或對於兩者,標 準區塊圖案係獨特的。此可提供額外等級的資料安全,其 中每-卡具有橫跨不同區塊而擾亂資料之獨特方法。因 此儘e才不準元區塊係使用相同的規則形成,但其不一定 具有相同的配置。在另_具體實施例中,主機可能想要提 供規則以及元區塊鏈接規則的代碼,使得演算法並非針對 特定的系統。 98426.doc -25- 1294081 當在初始的格式化程序期間鏈接元區塊時,無法將區塊 位址空間起點附近或晶片或晶粒邊界附近的某些實體區塊 鏈接到標準元區塊,如圖20所示。將此等實體區塊歸類為 備用。將備用的實體區塊記錄於備用實體區塊列表中,並 且隨後將其用於形成重新鏈接的元區塊,如圖丨9所述。 可將不能作為標準區塊而存在的元區塊結構化為重新鏈 接的元區塊。可在記憶體系統的初始格式化程序期間,或 回應於現有元區塊内實體區塊的失效而形成重新鏈接的元 區塊。不能將圖19中的元區塊n+4作為標準元區塊來鏈接, 因為平面2中所需的實體區塊係不良的。在此情形中,藉由 取代平面2中的備用實體區塊來建立重新鏈接的元區塊。代 替不良的實體區塊而予以重新鏈接的備用實體區塊較佳係 位於與不良區塊相同的平面中,以保持元區塊内程式化的 平行性。 在較佳的具體實施例中,較佳係僅在相同的晶粒或晶片 内重新鏈接區’因為橫跨到另-晶粒或晶#的重新鏈接 可月b觸U外的晶粒/晶片讀取或程式化。例如,在*平面 元區塊的範例性情形中,其中元區塊跨越2個晶片,每個晶 片’、有2個平面1資料程式化到所有4個+面(或從其讀 取)此而要平仃的2晶片讀取/程式化。(此可能不是 平行,而係管線式的* 飞的使頁面讀取、區塊程式化與抹除可 平行地完成,但共直咨极 、予貝枓匯流排,以致資料傳輸係不平行 的)。在此種情形下,4 如果重新鏈接元區塊,以便從另一、 第三晶片獲取實辦P奋 D°龙’則不可能與另外兩個晶片同時存 98426.doc -26 - 1294081 取該元區塊,並且操作時間加倍。 如果藉由平面0中的備用區塊來取代平面〇中的不良實體 區塊,則可藉由備用區塊的編號來定義元區塊編號,如針 對圖20中的元區塊n+1所顯示。如果隨後出現實體區塊失 效’則可進一步重新鏈接已重新鏈接的元區塊。靠近位址 空間頂部的元區塊(其無法作為標準元區塊而鏈接)可採取 重新鏈接元區塊的形式。 如以上關於圖4d所述,亦存在使用二維元區塊的配置, 該二維元區塊不僅橫跨平面與晶片鏈接區塊,而且亦在給 定平面内沿深度方向鏈接區塊。圖21顯示在二維情形中重 新鏈接之範例。在圖21中,該「2-D元區塊」係2*4元區塊 的範例。當平行地存取所有8個區塊時,可達成最大性能好 處。1-D鏈接方法之主要鏈接與重新鏈接原理亦適用,但需 作一定的擴展。如圖式中可看出,一平面内任何實體區塊 中一不良的實體區塊會導致元區塊未使用,如針對元區塊η 所示的情形。當重新鏈接2-D元區塊時,如對於平面2中元 區塊η+2之上部區塊,僅給定平面中的不良實體區塊才需要 予以取代;例如,重新鏈接平面2中元區塊η+2的上部區塊, 而平面2中元區塊η+2的下部區塊則不予重新鏈接。 在非揮發性記憶體中之一記錄中僅保持與標準鏈接之偏 差的具體實施例中,可將用於元區塊鏈接之管理資料結構 包含於快閃記憶體中之一或多個專用區塊鏈接管理區塊之 兩類扇區内。此配置的優點係,相對於保存完整的鏈接, 僅需儲存較少的資訊。將記憶體系統中每一重新鏈接元區 98426.doc -27- 1294081 塊之7G區塊編號包含於一組鏈接表扇區中的一鏈接表中。 不需要將標準元區塊之項目儲存於鏈接表中,因為係從元 區塊編號決定性地產生其實體區塊位址。可將一 RF(重新鏈 接)旗標用作一元區塊的屬性,以指示該區塊是否 的,以及是否以標準方式來鏈接所有的區塊,或者其2否 重新鏈接以及需要透過鏈接表(LT)進行額外的區塊位址轉
換。可藉由分析LT來決定RF旗標,然後將其儲存於SRAM 中,或將其儲存於主要非揮發性記憶體中的一控制資料結 構中’作為元資料區塊的屬纟。或者’可將重新鏈接扇區 的一列表保存於-可進行搜尋以決定重新鏈接哪些元區塊 ㈣表中。可藉由元區塊編號來排序鏈接表中的項目,並 且每-項具有用於元區塊編號與每一鏈接實體區塊之區塊 位址之攔位。 、、在鏈接表結構的-擴展中’與建立標準鏈接之基本演算 法的偏差本身可基於一組規則;例如,可將非標準的鍵接 :於單-平面或限制一區塊可從其原始列重新鏈接至多 2。僅當重新鏈接係所有演算法之例外時,才需要將其保 存於非揮發性記憶體中。 /於二2與表1說明一鏈接表以及可如何麼縮其所含資 、寺疋I&例。鏈接表扇區保存有關卡内已重新鍵接之區 根據卡的大小與每—晶粒内不良區塊的數目, :B子在—個以上的鏈接表扇區’可將其儲存於啟動區 J。如上所述,元區塊可能具有用於鏈接的標準方法, 4如果以-《塊係不良的,則元區塊可能能夠使用 98426.doc -28- 1294081 圖中的 兀區塊 與項數匹配之重複值 項目中的 總位元組 元區塊編號 項目中重新 鏈接項的數目 平面 實體位址 2位元組 1位元組 1位元組 2位元組 1 0x0001 0x02 0x00 0x0002 0x01 0x0005 9 4 0x0004 0x02 0x00 0x0003 0x05 0x0001 9 5 0x0005 0x03 0x01 0x0004 0x03 0x0004 0x04 0x0007 12 , 7 0x0007 0x01 0x00 0x0006 6 9 0x0009 0x06 0x01 0x0008 0x02 0x0007 0x03 0x0007 0x04 0x0008 0x05 0x0008 0x06 0x0007 21 表1 任何鏈接表項目之大小可定義為:
位元組的數目=3+ (3*重新鏈接區塊的數目) 例如,對於元區塊1,前三個位元組識別元區塊1,其具有 兩個重新鏈接,並且分配三個位元組用來指定此等重新鏈 接的每一重新鏈接。藉由該重新鏈接區塊對應於八個平面 中的哪個平面(1位元組)以及其所重新鏈接至的列編號來指 定重新鏈接。 鏈接表中的全組項目可橫跨多個鏈接表扇區而展開。建 立一鏈接表扇區,或藉由將其寫入該區塊鏈接管理區塊中 的下一可用扇區位置而加以修改。因此可能存在鏈接表扇 98426.doc -30- 1294081 區的多重副本’其中僅最新的版本才有效。可將區塊鏈接 管理區塊中有效鏈接表扇區之位置的索引包含於區塊鏈接 管理區塊中的備用實體區塊列表扇區中的—攔位,如下所 述。將有關每-有效鏈接表扇區中第一項目的元區塊編號 保存於控制HRA财的-列表中,以便可容易地識別任: 兀區塊編號的相關鏈接表扇區。如果必須將額外的項目添 加至已包含最大數目之項目的鏈接表扇區中,則將扇區: 成兩個新的扇1,每個扇區具有一半項目,並且將新的項 目插入適當的新扇區中。 、 將所有制實體區塊之區塊位址作為項目保存於備用實 體區塊列表扇區巾未排序㈣表巾。在某些具體實施例 中,可方便地限制每晶片每平面之備用區塊的最大數目。 在:示範性具體實施例中,將其限制於16,如同在大多數 障形中’此應係足夠大的。如果在—平面中有㈣以上的 備用區塊,則會將其「丟棄」。 將變為備用(由於最初在將快閃記憶體配置為元區塊的 』1 ,、,、法建立標準的元區塊,或由於鏈接到標準或重新 鏈接70區塊的實體區塊已失效)的區塊作為新的項目添加 至備用實體區塊列表的尾部。當建立重新鏈接之元區塊需 要備用的區塊時,可使用相關平面t最靠近備用實體區塊 列表之起點的第-區塊。備用實體區塊列表扇區亦包含具 有有效鏈接表扇區位置之索引之攔位。 當發生元區塊重新鏈接操作並且建立或修改鏈接表扇區 ’備用實體區塊列表與鏈接表扇區索引欄位皆可在備用 98426.doc -31 - 1294081 貫體區塊列表扇區中予以修改。一有效的備用實體區塊列 表扇區因此係區塊鏈接管理區塊中最後寫入的扇區。當區 - 塊鏈接管理區塊已滿時,可在控制寫入操作期間藉由重新 _ 寫入所有有效扇區至一新的區塊位置而對其進行壓縮,隨 後將整個區塊抹除。 為了簡化備用實體區塊扇區之儲存並限制當尋找替代區 塊時所需的搜尋數量,可按晶片、晶粒與平面來儲存備用 實體區塊列表。所需扇區的實際數量取決於記憶體裝置的 · 大小、裝置的數目以及所用的交錯方法。如上所述,每平 面僅儲存一定數目的實體區塊係方便的。所保存的數目將 取決於預期的區塊失效率以及每平面的區塊數目。此意味 著,每一備用實體區塊列表扇區將保存數個平面的備用實 體區塊。韌體將計算要載入的正確扇區,然後將正確的值 編入要載入之扇區的索引。 當備用貫體區塊列表的數目因重新鏈接或找到另一不良 區塊而變化時,將寫入新的備用實體區塊列表扇區。此可 讀· 能表示覆蓋相同實體區域的兩個備用實體區塊列表扇區。 啟動扇區保存包含有效扇區之索引之備用實體區塊列表索 引。如果在備用實體區塊列表所覆蓋的區域中不存在備用 的貫體區塊,則啟動區塊中將不存在扇區。 再-人參考圖22,此參閱8路交錯卡。因此,將必須有至少 - 8個陣列,用於保存所有的備用實體區塊列表資訊。對於卡 ’ 上的每個後續晶粒,將需要另外8個陣列。表2中顯示對應 於圖22之備用實體區塊列表。 98426.doc -32- 1294081 平面 0 0x08 1 2 0x01 0x04 0x08 3 0x01 0x08 0x09 4 0x01 0x04 0x05 5 0x04 0x07 0x09 一 6 0x01 0x04 0x08 一 7 0x01 0x04 0x07 表2 與鏈接表一樣,可將備用實體區塊列表作為一表格儲存於 非揮發性記憶體中,並可根據需要將其快取到揮發性ram _ 中。 % 儘S根據以勤體為基礎的貫施方案來說明本發明的各種 方面,但其亦可實施於以硬體為基礎的實施方案中。控制 器上,或較佳係一記憶體晶片本身上的一硬體引擎可實施 重新鏈接。可將重新鏈,接資訊儲存於晶片本身上一特殊的 記憶體位置。該控制器接著將所有區塊作為標準區塊來處 理,並且該引擎將該等區塊位址轉換至真實的内部位址。 該記憶體在該·主機(或控制器)看來係僅具有標準區塊的記 憶體’或係具有大實體區塊的記憶體,而不必瞭解較小的 區塊結構或任何重新鏈接之細節。 、 儘管已說明本發明之各種方面 一 但々®之特疋靶例,應瞭解 明有資格在隨附申請專利鈴Μ々々A ^ 退π r Μ寻利靶圍的乾疇之内受到保護。 【圖式簡單說明】 八中非揮發性記憶體陣列與記憶體控制器係圭 於-以可移除方式與主機系統連接的封閉卡中見 揮發性記憶體系統之方塊圖。 兄’ 98426.doc -33- 1294081 圖2係其中非揮發性 式與主機系統連接的封 統之方塊圖。 5己憶體陣列係封裝於一以可移除方 閉卡中之一現有非揮發性記憶體系 陣列係作為主機系統 現有非揮發性記憶體 内非可 系統之 圖3係其t非揮發性記憶體 私除敢入式儲存器而封裝之一 方塊圖。 圖48說明—顯示平面、區域與備用區的範例性晶片格式。 圖4b至d說明實體區塊至元區塊之各種鍵接。 圖5至職明該系統可如何回應於記憶體陣列之一部分 上所發生的一系列生長缺陷。 圖η說明回應於在一抹除單元上摘測到一生長缺陷而映 射一元區塊之虛擬結構元素之範例。 圖12說明用於保持一缺陷圖之一系統之一範例,其中在 與具有生長缺陷的抹除單元相同的平面上無法獲得一備用 的抹除單元。 圖13說明用於保持一缺陷圖之方法之一範例。 圖14說明使用圖11至13之資料結構來保持缺陷圖之方法 之一範例。 圖15至18說明實體區塊之以演算法為基礎的鏈接。 圖19、20與22說明實體區塊的重新鏈接。 圖21顯示在兩維情形中重新鏈接之範例。 【主要元件符號說明】 102、202、302 主機 104、204、304 控制器 98426.doc -34- 1294081 103、203、303 非揮發性記憶體陣列 1101 邏輯至實體映射表 1103 記憶體 1201 虛線箭頭 1202 箭頭 1203 備用區 98426.doc -35-

Claims (1)

  1. Ι29#Θ&140796號專利申請案 中文申請專利範圍替換本(9'5年10 ___ 十、申請專利範圍: 日修(更}正本 1#㈣n㈣之記憶體 系統之方法’其中該非揮發性記憶體係由複數個抹除單 元所組成,該方法包含·· 建立、、且70區塊鏈接,每一鏈接係由複數個抹除單元 斤、且成β亥控制器藉由該等鏈接存取該非揮發性記憶體 f該非揮發性記憶體中儲存該等元區塊鏈接的-記錄。 2·如明求項1之方法,其中該記錄係根據抹除 鏈接組。 ^ 3. 如請求項1之方法,其中根據一規則來形成該組鏈接,並 且該記錄係由作為該規則之例外的該等鏈接所組成。 4. 如請求項丨之方法,其進一步包含: 成 決疋該等元區塊鏈接 一 ^ 接之弟一凡區塊鏈接中的一抹除 早疋係有缺陷的; 更新該第一元區塊鏈接吏 ^ . 便其不再包含该有缺陷的抹 除早;以及 5如已更新鏈接之錄儲存於該非揮發性記憶體中。 • g項4之方法’其巾該更新包含使㈣等抹除單元之 另一抹除單元來取代該有缺陷的抹除翠元。 6·如請求項5之方法,其中該等 係潠ό 土 八干莓4抹除早兀之該另一抹除單元 係k自未鏈接的抹除單元之一列表。 持二=之方法’其中未鏈接的抹除單元之該列表係保 符於5亥非揮發性記憶體中。 98426-951016.doc 1294081 8_如請求項7之方法,其進一步包含: 在,用5亥等抹除單元之另一抹除單元取代該有缺陷的 抹1單7L之後,更新未鏈接的抹除單元之該列表。 。长項5之方法,其中該等抹除單元之該另—抹除單元 係k自先則屬於另一鏈接的一抹除單元。 10·如請求項丨之方法,其進一步包含·· 保持未鏈接的抹除單元之一列表; 決定該等元區塊鏈接之-第一元區塊鏈接中的一或多 個抹除單元係有缺陷的;以及 將違第-兀區塊中該等非缺陷抹除單元添加至未鍵接 抹除單元之該列表中。 U·如請求項1之方法,其進一步包含: ⑽決定該等元區塊鏈接之一第一元區塊鏈接中的一抹除 單元係有缺陷的; 決定-替代的抹除單元是否可用於該有缺陷的抹 元;以及 回應於決定一替代的抹除單元不可用,從該組元區塊 鏈接移除該第一元區塊。 如明求項1之方法,其中該非揮發性記憶體包含複數個陣 S並且該等兀區塊鏈接之一給定元區塊㈣中的該等 複數個抹除單元之每—抹除單元係來自該等準獨立陣列 之一不同的準獨立陣列。 月求員1之方法,其中該非揮發性記憶體包含複數個準 獨立的陣列,並且該等元區塊鏈接之一給定元區塊鍵接 98426-951016.do< 1294081 準獨立陣列的多對 對係來自該等準獨 14 15. 16. 17. 18. 如請求項10之方法 片上。 :δ亥等複數個抹除單元係由來自相同 ㈣單元所組成,其中該等對之每一 立陣列之一不同的準獨立陣列。 其中該等準獨立陣列係在分開的晶 如#求項i之方法,1 於 /、夺以專兀區塊鏈接之該記錄儲存 ;Μ非揮發性記憶體中 曰心、口便用者資料之外的一部 分中。 :請求項1之方法,其中該等抹除單元之每—抹除單元係 複數個扇區所組成,並且該等扇區之每一扇區包括一 貧料區域與-負擔區域’並且其中用於包含資料之該等 抹除單元之該記錄資訊係保持於其負擔區域中。 =請求項16之方法,其中將用於*具有資料之該等抹除 單元之該記錄資訊保持於該非揮發性記憶體中除指定給 使用者資料之外的一部分中。 :種操作-包括-控制器與一非揮發性記憶體之記憶體 系統的方法’該記憶體包含至少兩個可獨立存取之子陣 列,其中將該等個別子陣列分成複數個非重疊實體結 構,並且其中將來自該等子陣列之個別子陣列之至少一 實體結構鏈接起來’以形成一複合的邏輯結構,藉此, 該控制器可將該等複合邏輯結構組件作為一單元一起存 取,該方法包含: 決定該複合邏輯結構中的一實體結構係有缺陷的;以及 回應於決定該複合邏輯結構中的一實體結構係有缺陷 98426-951016.doc 1294081 代的實體、,、。構來取代該複合邏輯結 有缺陷的實體結構,同時保持鏈接 中該 陷實體結構以形成該複合邏輯姓構。 、,之非缺 19·如請求項18之方法, 2〇·如請求項18之方法, 片上。 其中該等實體結構係實體區塊。 其中該等子陣列係形成於相同的晶 21. 如請求項18之方法,其中該等子陣列中少於全部的 列係形成於相同的晶片上。 22. 如請求項18之方法,其中用於形成一複合邏輯結構之實 體結構之該鏈接之一記錄係保持於該記憶體中,並且^ 中更新該記錄以反映該取代。 23. 如請求項22之方法,其中根據一演算法來形成該鏈接, 並且該記錄說明與該演算法之偏差。 24. 如請求項22之方法,其中該記錄說明該鏈接中所有該等 實體結構之實體位址。 25 ·如請求項24之方法,其進一步包含: 在決定該複合邏輯結構中的一實體結構係有缺陷之前 ,形成用於形成該複合邏輯結構之實體結構之一初始鍵 接,並且其中該取代包括更新該鏈接。 2 6 ·如請求項2 5之方法,該形成一初始鍵接包含: 從可用實體結構之一集區選擇形成該複合邏輯結構之 該等實體結構。 27·如請求項25之方法,該形成一初始鏈接包含: 根據一演算法來形成該複合邏輯結構。 98426-951016.doc 1294081 Μ.-種包括-控制器與一非揮發性記憶體之記憶體系統, 其中該非揮發性記憶體係由複數個抹除單元所組成,其 中該控制器根據ϋ區塊鏈接來存取該非揮發性記憶 體,每一元區塊鏈接係由複數個抹除單元所組成,其中 该控制器以m·生的方式來建立該組元區塊鍵接。 29.如請求項28之記憶體系統’其中根據一演算法來建立該 組元區塊鍵接。 3〇·如睛求項29之記憶體系統,其中非根據該規則形成之元 區塊鏈接係由一旗標指示。 31·如睛求項30之記憶體系統,其中該旗標係保持於該控制 器中。 32. 如請求項3〇之記憶體系統,其中該旗標係保持於該非揮 發性記憶體中。 33. 如凊求項29之記憶體系統,其中該演算法根據該非揮發 性記憶體中有缺陷區塊的圖案來最佳化該組鏈接。 34. 如請求項29之記憶體系統,其中該控制器根據該非揮發 性記憶體之-掃描決㈣非揮發性記憶體中有缺陷區塊 的圖案。 35. 如請求項28之記憶體系統,其中根據一隨機配置來建立 該組元區塊鏈接。 3 6.如明求項28之.己憶體系統,其中該組元區塊鏈接被更新 以回應藉由使用來自一或多個非缺陷區塊之一列表之非 缺陷區塊取代一鏈接中的一缺陷區塊之缺陷。 37·如請求項36之記憶體系統,其中一或多個非缺陷區塊之 98426-951016.doc 1294081 該列表之一記錄係保持於該非揮發性記憶體中。 3 8·如請求項37之記憶體系統,其中一或多個非缺陷區塊之 該列表之該記錄係藉由該控制器而快取到該控制器之揮 發性記憶體中。 3 9·如請求項28之記憶體系統,其中該組元區塊鏈接之一記 錄係保持於該非揮發性記憶體中。 40.如請求項39之記憶體系統,其中該組元區塊鏈接之該記 錄係藉由該控制器而快取到該控制器之揮發性記憶體 中0 41·如請求項39之記憶體系統,其中根據一演算法來建立一 組初始的元區塊鏈接,並且其中該組元區塊鏈接之該記 錄僅列出不符合該演算法之該等鏈接。 42. 如請求項41之記憶體系統,其中該組元區塊鏈接之該記 錄僅列出不符合該演算法之該等抹除單元。 43. —種操作一具有組織成至少兩個平面之一記憶體儲存元 件陣列之非揮發性記憶體系統之方法,丨中該等個別平 面係分成複數個非重疊的儲存元件區塊,其中一區塊包 含可一起加以抹除的最小記憶體儲存元件群組,並且該 等個別區塊係分成複數個儲存元件頁面,其中一頁面2 可一起加以程式化的最小記憶體儲存元件群組,該方法 包含: 將來自該等至少兩個 接起來以形成一元區塊 單元一起抹除; 平面之個別平面之至少一區塊鏈 ,其中將該等元區塊組件作為一 98426-951016.doc 1294081 如果一備用實體區塊在相同平面中可用,則將與一有 缺陷實體區塊相關的-元區塊組件區塊重新引導至該相 同平面中的一備用實體區塊; 如果/又有備用實體區塊在相同平面中可用,則將與該 有缺陷實體區塊不相關的該等元區塊組件指定給一備°用 區塊區域;以及 更新一缺陷圖結構,其中該缺陷圖結構包括對岸於該 元區塊之一項目。 〜 98426-951016.doc
TW093140796A 2003-12-30 2004-12-27 Memory system and operating method thereof TWI294081B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/750,157 US20050144516A1 (en) 2003-12-30 2003-12-30 Adaptive deterministic grouping of blocks into multi-block units

Publications (2)

Publication Number Publication Date
TW200540621A TW200540621A (en) 2005-12-16
TWI294081B true TWI294081B (en) 2008-03-01

Family

ID=34701162

Family Applications (1)

Application Number Title Priority Date Filing Date
TW093140796A TWI294081B (en) 2003-12-30 2004-12-27 Memory system and operating method thereof

Country Status (9)

Country Link
US (3) US20050144516A1 (zh)
EP (1) EP1700313B1 (zh)
JP (1) JP4960705B2 (zh)
KR (1) KR20060120231A (zh)
CN (1) CN1930635B (zh)
AT (1) ATE451694T1 (zh)
DE (1) DE602004024582D1 (zh)
TW (1) TWI294081B (zh)
WO (1) WO2005066974A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI477965B (zh) * 2011-05-31 2015-03-21 Micron Technology Inc 包含記憶體系統控制器之裝置及相關方法

Families Citing this family (210)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8027194B2 (en) 1988-06-13 2011-09-27 Samsung Electronics Co., Ltd. Memory system and method of accessing a semiconductor memory device
JP4284200B2 (ja) * 2004-01-28 2009-06-24 株式会社東芝 不揮発性半導体記憶システム
US7464306B1 (en) 2004-08-27 2008-12-09 Lexar Media, Inc. Status of overall health of nonvolatile memory
EP1630657A1 (en) * 2004-08-30 2006-03-01 STMicroelectronics S.r.l. Embedded storage device with integrated data-management functions and storage system incorporating it
US7315917B2 (en) * 2005-01-20 2008-01-01 Sandisk Corporation Scheduling of housekeeping operations in flash memory systems
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
US7558906B2 (en) * 2005-08-03 2009-07-07 Sandisk Corporation Methods of managing blocks in nonvolatile memory
US7409489B2 (en) * 2005-08-03 2008-08-05 Sandisk Corporation Scheduling of reclaim operations in non-volatile memory
US7552271B2 (en) * 2005-08-03 2009-06-23 Sandisk Corporation Nonvolatile memory with block management
JP4547028B2 (ja) * 2005-08-03 2010-09-22 サンディスク コーポレイション ブロック管理を伴う不揮発性メモリ
US7546515B2 (en) 2005-12-27 2009-06-09 Sandisk Corporation Method of storing downloadable firmware on bulk media
US7536627B2 (en) 2005-12-27 2009-05-19 Sandisk Corporation Storing downloadable firmware on bulk media
CN101292229B (zh) * 2005-12-28 2012-05-30 富士通株式会社 用于控制存储器的方法和设备
US7441068B2 (en) 2006-01-06 2008-10-21 Phison Electronics Corp. Flash memory and method for utilizing the same
US7774643B2 (en) * 2006-01-06 2010-08-10 Dot Hill Systems Corporation Method and apparatus for preventing permanent data loss due to single failure of a fault tolerant array
GB2434460B (en) * 2006-01-24 2007-12-05 Phison Electronics Corp Flash memory and method for utilizing the same
KR100703807B1 (ko) * 2006-02-17 2007-04-09 삼성전자주식회사 블록 방식의 메모리에서 데이터의 변경 유형에 따라 블록을관리하는 방법 및 장치
KR100675015B1 (ko) * 2006-02-24 2007-01-29 삼성전자주식회사 스캔 기능 및 컬럼 리던던시를 포함하는 내장형 메모리장치, 리던던시 리페어 및 스캔 방법
JP4171749B2 (ja) * 2006-04-17 2008-10-29 Tdk株式会社 メモリコントローラおよびフラッシュメモリシステム
US20080010510A1 (en) * 2006-06-19 2008-01-10 Tony Turner Method and system for using multiple memory regions for redundant remapping
US20080052446A1 (en) * 2006-08-28 2008-02-28 Sandisk Il Ltd. Logical super block mapping for NAND flash memory
KR100784007B1 (ko) * 2006-10-31 2007-12-10 주식회사 하이닉스반도체 비휘발성 메모리 장치 및 그 소거 방법
KR100809069B1 (ko) * 2006-11-03 2008-03-03 삼성전자주식회사 비휘발성 메모리를 구비하는 광학 매체 드라이브 및 그구동 방법
US20080162787A1 (en) * 2006-12-28 2008-07-03 Andrew Tomlin System for block relinking
US20080162612A1 (en) * 2006-12-28 2008-07-03 Andrew Tomlin Method for block relinking
WO2008082950A1 (en) * 2006-12-28 2008-07-10 Sandisk Corporation System for block relinking
US7468920B2 (en) 2006-12-30 2008-12-23 Sandisk Corporation Applying adaptive body bias to non-volatile storage
US7669092B2 (en) * 2007-02-26 2010-02-23 Micron Technology, Inc. Apparatus, method, and system of NAND defect management
US7535764B2 (en) * 2007-03-21 2009-05-19 Sandisk Corporation Adjusting resistance of non-volatile memory using dummy memory cells
WO2008113212A1 (en) * 2007-03-21 2008-09-25 Intel Corporation Method of managing sectors of a non-volatile memory
US20090006436A1 (en) * 2007-06-29 2009-01-01 Alqudah Yazan A Automated yield analysis system
US20090013148A1 (en) 2007-07-03 2009-01-08 Micron Technology, Inc. Block addressing for parallel memory arrays
US9373362B2 (en) * 2007-08-14 2016-06-21 Dell Products L.P. System and method for implementing a memory defect map
KR20090021476A (ko) * 2007-08-27 2009-03-04 삼성전자주식회사 메모리 셀 어레이, 이를 포함하는 비휘발성 메모리 장치 및메모리 셀 어레이 구성 방법
KR101372245B1 (ko) * 2007-08-30 2014-03-10 삼성전자주식회사 메모리 셀 어레이, 이를 포함하는 비휘발성 메모리 장치 및메모리 셀 어레이 구성 방법
KR101399549B1 (ko) * 2007-09-04 2014-05-28 삼성전자주식회사 반도체 메모리 장치 및 그것의 블록 관리 방법
US7818493B2 (en) * 2007-09-07 2010-10-19 Sandisk Corporation Adaptive block list management
KR20090026941A (ko) * 2007-09-11 2009-03-16 삼성전자주식회사 복수개의 비휘발성 데이터 저장매체를 구비한 저장장치의가상 파일 시스템에서 어드레스 맵핑을 수행하는 방법 및그 장치
US8566504B2 (en) * 2007-09-28 2013-10-22 Sandisk Technologies Inc. Dynamic metablocks
US7978516B2 (en) 2007-12-27 2011-07-12 Pliant Technology, Inc. Flash memory controller having reduced pinout
TW200931425A (en) * 2008-01-11 2009-07-16 Phison Electronics Corp Method for managing flash memory blocks and controller using the same
JP5032371B2 (ja) * 2008-03-01 2012-09-26 株式会社東芝 メモリシステム
JP5010505B2 (ja) * 2008-03-01 2012-08-29 株式会社東芝 メモリシステム
WO2009140157A2 (en) * 2008-05-15 2009-11-19 Board Of Governors Of Higher Education, State Of Rhode Island And Providence Plantations Systems and methods for recovering information from nand gate array memory systems
US8074023B2 (en) * 2008-05-22 2011-12-06 Nuvoton Technology Corporation In-system programming to switch memory access from one area to another in memory cards
US7971007B2 (en) * 2008-07-08 2011-06-28 Silicon Motion, Inc. Downgrade memory apparatus, and method for accessing a downgrade memory
KR101103061B1 (ko) * 2008-07-28 2012-01-06 주식회사 팍스디스크 반도체 스토리지 시스템 및 그 제어 방법
JP4720891B2 (ja) * 2008-09-30 2011-07-13 Tdk株式会社 メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4582232B2 (ja) * 2008-09-30 2010-11-17 Tdk株式会社 メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2010092200A (ja) * 2008-10-07 2010-04-22 Tdk Corp メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
US8214579B2 (en) 2008-09-30 2012-07-03 Tdk Corporation Memory controller, flash memory system with memory controller, and method of controlling flash memory
JP4632180B2 (ja) 2008-10-15 2011-02-16 Tdk株式会社 メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
US8327066B2 (en) 2008-09-30 2012-12-04 Samsung Electronics Co., Ltd. Method of managing a solid state drive, associated systems and implementations
US7962801B2 (en) * 2008-10-15 2011-06-14 Silicon Motion, Inc. Link table recovery method
US8040744B2 (en) * 2009-01-05 2011-10-18 Sandisk Technologies Inc. Spare block management of non-volatile memories
US8244960B2 (en) * 2009-01-05 2012-08-14 Sandisk Technologies Inc. Non-volatile memory and method with write cache partition management methods
US20100174845A1 (en) * 2009-01-05 2010-07-08 Sergey Anatolievich Gorobets Wear Leveling for Non-Volatile Memories: Maintenance of Experience Count and Passive Techniques
US8700840B2 (en) * 2009-01-05 2014-04-15 SanDisk Technologies, Inc. Nonvolatile memory with write cache having flush/eviction methods
US8094500B2 (en) * 2009-01-05 2012-01-10 Sandisk Technologies Inc. Non-volatile memory and method with write cache partitioning
US8261174B2 (en) 2009-01-13 2012-09-04 International Business Machines Corporation Protecting and migrating memory lines
JP4762323B2 (ja) 2009-03-03 2011-08-31 富士通株式会社 アクセス制御装置、情報処理装置、アクセス制御プログラム及びアクセス制御方法
US8239614B2 (en) 2009-03-04 2012-08-07 Micron Technology, Inc. Memory super block allocation
US8095765B2 (en) 2009-03-04 2012-01-10 Micron Technology, Inc. Memory block management
US8321639B2 (en) * 2009-12-30 2012-11-27 Lsi Corporation Command tracking for direct access block storage devices
US8245112B2 (en) * 2009-06-04 2012-08-14 Lsi Corporation Flash memory organization
US8166258B2 (en) * 2009-07-24 2012-04-24 Lsi Corporation Skip operations for solid state disks
US8200857B2 (en) * 2009-11-30 2012-06-12 Lsi Corporation Coalescing multiple contexts into a single data transfer in a media controller architecture
US8219776B2 (en) * 2009-09-23 2012-07-10 Lsi Corporation Logical-to-physical address translation for solid state disks
US8286004B2 (en) * 2009-10-09 2012-10-09 Lsi Corporation Saving encryption keys in one-time programmable memory
US20100306451A1 (en) * 2009-06-01 2010-12-02 Joshua Johnson Architecture for nand flash constraint enforcement
US8555141B2 (en) * 2009-06-04 2013-10-08 Lsi Corporation Flash memory organization
KR101600951B1 (ko) * 2009-05-18 2016-03-08 삼성전자주식회사 고체 상태 드라이브 장치
US8176360B2 (en) 2009-08-11 2012-05-08 Texas Memory Systems, Inc. Method and apparatus for addressing actual or predicted failures in a FLASH-based storage system
US8688894B2 (en) * 2009-09-03 2014-04-01 Pioneer Chip Technology Ltd. Page based management of flash storage
US8285946B2 (en) * 2009-12-15 2012-10-09 International Business Machines Corporation Reducing access contention in flash-based memory systems
CN101819821B (zh) * 2010-03-25 2012-08-29 清华大学深圳研究生院 一种固态硬盘动态损耗均衡方法
TWI547872B (zh) * 2010-04-01 2016-09-01 鴻海精密工業股份有限公司 媒體資料播放裝置及其重新啟動方法
JP5559616B2 (ja) * 2010-06-17 2014-07-23 ラピスセミコンダクタ株式会社 半導体メモリ装置
KR20120003283A (ko) * 2010-07-02 2012-01-10 삼성전자주식회사 데이터 저장 장치 및 그것의 배드 블록 관리 방법
TWI425357B (zh) * 2010-09-27 2014-02-01 Silicon Motion Inc 用來進行區塊管理之方法以及記憶裝置及控制器
TWI435216B (zh) * 2010-09-27 2014-04-21 Silicon Motion Inc 用來進行超區塊管理之方法以及記憶裝置及控制器
CN102456401B (zh) * 2010-10-26 2015-04-22 群联电子股份有限公司 区块管理方法、存储器控制器与存储器储存装置
CN102479156B (zh) * 2010-11-22 2015-03-11 慧荣科技股份有限公司 用来进行区块管理的方法、记忆装置及其控制器
CN102479154B (zh) * 2010-11-30 2015-03-11 慧荣科技股份有限公司 用来进行超区块管理的方法、记忆装置及其控制器
TWI446345B (zh) 2010-12-31 2014-07-21 Silicon Motion Inc 用來進行區塊管理之方法以及記憶裝置及控制器
US8578208B2 (en) * 2011-01-13 2013-11-05 Micron Technology, Inc. Determining location of error detection data
JP5319723B2 (ja) * 2011-03-24 2013-10-16 株式会社東芝 メモリシステムおよびプログラム
US20120262815A1 (en) * 2011-04-15 2012-10-18 Lsi Corporation Method and system for dynamically expandable software based bad block management
KR20120124285A (ko) * 2011-05-03 2012-11-13 삼성전자주식회사 배드 블록 관리를 위한 방법 및 메모리 시스템
US9176864B2 (en) 2011-05-17 2015-11-03 SanDisk Technologies, Inc. Non-volatile memory and method having block management with hot/cold data sorting
JP2014513850A (ja) 2011-05-17 2014-06-05 サンディスク テクノロジィース インコーポレイテッド 小さな論理グループがアクティブなslcおよびmlcメモリパーティションに分散させられる不揮発性メモリおよび方法
US9141528B2 (en) 2011-05-17 2015-09-22 Sandisk Technologies Inc. Tracking and handling of super-hot data in non-volatile memory systems
KR101269557B1 (ko) * 2011-05-20 2013-06-04 연세대학교 산학협력단 반도체 메모리 수리 장치 및 수리 방법
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
US8700961B2 (en) 2011-12-20 2014-04-15 Sandisk Technologies Inc. Controller and method for virtual LUN assignment for improved memory bank mapping
US9239781B2 (en) * 2012-02-07 2016-01-19 SMART Storage Systems, Inc. Storage control system with erase block mechanism and method of operation thereof
US8924636B2 (en) * 2012-02-23 2014-12-30 Kabushiki Kaisha Toshiba Management information generating method, logical block constructing method, and semiconductor memory device
JP5956791B2 (ja) * 2012-03-13 2016-07-27 株式会社メガチップス 半導体メモリのリユース処理装置、及び半導体メモリ
JP5952036B2 (ja) * 2012-03-13 2016-07-13 株式会社メガチップス 半導体メモリのリユース処理装置、及び半導体メモリ
US9355929B2 (en) 2012-04-25 2016-05-31 Sandisk Technologies Inc. Data storage based upon temperature considerations
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US8891305B2 (en) 2012-08-21 2014-11-18 Micron Technology, Inc. Apparatuses and methods involving accessing distributed sub-blocks of memory cells
US8902670B2 (en) * 2012-08-31 2014-12-02 Kabushiki Kaisha Toshiba Semiconductor memory device
US9507523B1 (en) * 2012-10-12 2016-11-29 Western Digital Technologies, Inc. Methods, devices and systems for variable size logical page management in a solid state drive
US9032244B2 (en) * 2012-11-16 2015-05-12 Microsoft Technology Licensing, Llc Memory segment remapping to address fragmentation
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
US20140181621A1 (en) * 2012-12-26 2014-06-26 Skymedi Corporation Method of arranging data in a non-volatile memory and a memory control system thereof
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
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9448921B2 (en) * 2013-01-11 2016-09-20 Empire Technology Development Llc Page allocation for flash memories
US9123445B2 (en) 2013-01-22 2015-09-01 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
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
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening 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
US9406362B2 (en) 2013-06-17 2016-08-02 Micron Technology, Inc. Memory tile access and selection patterns
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
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
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
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
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
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
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
KR102225989B1 (ko) 2014-03-04 2021-03-10 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 동작 방법
US9595352B2 (en) * 2014-03-17 2017-03-14 Seagate Technology Llc Manufacturer self-test for solid-state drives
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US20150339223A1 (en) * 2014-05-22 2015-11-26 Kabushiki Kaisha Toshiba Memory system and method
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
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
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
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
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
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
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
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9632712B2 (en) 2014-07-02 2017-04-25 Sandisk Technologies Llc System and method of updating metablocks associated with multiple memory dies
US9626289B2 (en) 2014-08-28 2017-04-18 Sandisk Technologies Llc Metalblock relinking to physical blocks of semiconductor memory in adaptive wear leveling based on health
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
KR102257031B1 (ko) 2015-03-13 2021-05-27 삼성전자주식회사 반도체 집적 회로 설계 방법
US9875053B2 (en) 2015-06-05 2018-01-23 Western Digital Technologies, Inc. Scheduling scheme(s) for a multi-die storage device
US10289327B2 (en) 2015-06-05 2019-05-14 Western Digital Technologies, Inc. Scheduling scheme(s) for a multi-die storage device
CN105488722B (zh) * 2015-11-30 2019-11-26 布比(北京)网络技术有限公司 基于衍生链的资产数据处理方法及装置
US10126970B2 (en) * 2015-12-11 2018-11-13 Sandisk Technologies Llc Paired metablocks in non-volatile storage device
CN109219940B (zh) * 2016-03-31 2022-01-11 比特飞翔区块链株式会社 私有节点以及私有节点中的处理方法
CN106372533B (zh) * 2016-09-14 2020-04-21 中国银联股份有限公司 基于区块链技术的内容存储方法
CN106529924A (zh) * 2016-09-29 2017-03-22 马龙 彩色区块链的管理方法及管理系统
KR20180047329A (ko) * 2016-10-31 2018-05-10 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
KR20180047778A (ko) 2016-11-01 2018-05-10 삼성전자주식회사 단계별 저전력 상태들을 갖는 메모리 장치
CN106844523B (zh) * 2016-12-29 2020-05-08 北京瑞卓喜投科技发展有限公司 顺序型多维拓展的区块链的生成方法及系统
US10725933B2 (en) * 2016-12-30 2020-07-28 Intel Corporation Method and apparatus for redirecting memory access commands sent to unusable memory partitions
US10223022B2 (en) * 2017-01-27 2019-03-05 Western Digital Technologies, Inc. System and method for implementing super word line zones in a memory device
CN106874440B (zh) * 2017-02-07 2019-11-12 杭州秘猿科技有限公司 一种基于sql数据库的区块链状态存储方法
KR102409760B1 (ko) * 2017-03-17 2022-06-17 에스케이하이닉스 주식회사 메모리 시스템
KR102395434B1 (ko) * 2017-03-20 2022-05-09 삼성전자주식회사 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템
CN107451011B (zh) * 2017-03-24 2020-12-25 北京瑞卓喜投科技发展有限公司 并行增加区块的区块链的勘误方法及系统
TWI646554B (zh) * 2017-03-28 2019-01-01 慧榮科技股份有限公司 資料儲存裝置以及其操作方法
US10229751B2 (en) 2017-05-01 2019-03-12 Western Digital Technologies, Inc. Storage system and method for bad block recycling
DE102017209381A1 (de) * 2017-06-02 2018-12-06 Bundesdruckerei Gmbh Bidirektional verkettete Blockchain-Struktur
US10649661B2 (en) * 2017-06-26 2020-05-12 Western Digital Technologies, Inc. Dynamically resizing logical storage blocks
TWI641988B (zh) 2017-07-21 2018-11-21 慧榮科技股份有限公司 用來於一記憶裝置中進行編程管理之方法以及記憶裝置及其控制器
TWI617917B (zh) * 2017-08-28 2018-03-11 慧榮科技股份有限公司 用以優化資料儲存裝置之資料儲存方法及其資料儲存裝置
US11436154B2 (en) 2017-12-01 2022-09-06 Micron Technology, Inc. Logical block mapping based on an offset
US10977182B2 (en) * 2017-12-01 2021-04-13 Micron Technology, Inc. Logical block mapping based on an offset
US10635515B2 (en) 2017-12-06 2020-04-28 Sandisk Technologies Llc Recovery of partial memory die
US10445230B2 (en) * 2017-12-08 2019-10-15 Macronix International Co., Ltd. Managing block arrangement of super blocks
KR20190072306A (ko) 2017-12-15 2019-06-25 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
KR20190073125A (ko) * 2017-12-18 2019-06-26 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
US10372355B2 (en) * 2017-12-29 2019-08-06 Micron Technology, Inc. Managing partial superblocks in a NAND device
CN108196795B (zh) * 2017-12-30 2020-09-04 惠龙易通国际物流股份有限公司 一种数据存储方法、设备及计算机存储介质
JP7051484B2 (ja) 2018-02-22 2022-04-11 キオクシア株式会社 半導体メモリ
CN108846749B (zh) * 2018-05-31 2021-09-07 杭州溪塔科技有限公司 一种基于区块链技术的分片化的交易执行系统及方法
TWI664528B (zh) * 2018-06-06 2019-07-01 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置
CN110609795B (zh) * 2018-06-14 2022-11-22 群联电子股份有限公司 存储器管理方法、存储器控制电路单元与存储器存储装置
CN108984645B (zh) * 2018-06-25 2021-02-02 百度在线网络技术(北京)有限公司 区块链处理方法、装置、设备及存储介质
CN109032802A (zh) * 2018-07-26 2018-12-18 国信优易数据有限公司 一种区块链系统和管理方法
KR20200042791A (ko) * 2018-10-16 2020-04-24 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102592803B1 (ko) * 2018-10-31 2023-10-24 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102692942B1 (ko) * 2018-11-22 2024-08-08 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US11416161B2 (en) 2019-06-28 2022-08-16 Western Digital Technologies, Inc. Zone formation for zoned namespaces
US11537483B2 (en) 2019-08-08 2022-12-27 SK Hynix Inc. Controller for managing superblocks and operation method thereof
US11281578B2 (en) 2019-08-20 2022-03-22 Micron Technology, Inc. Garbage collection in a memory sub-system during a low battery state
US11282567B2 (en) 2019-08-20 2022-03-22 Micron Technology, Inc. Sequential SLC read optimization
US20210055878A1 (en) * 2019-08-20 2021-02-25 Micron Technology, Inc. Data compaction within the same plane of a memory component
US11726869B2 (en) 2019-08-20 2023-08-15 Micron Technology, Inc. Performing error control operation on memory component for garbage collection
US11281392B2 (en) 2019-08-28 2022-03-22 Micron Technology, Inc. Garbage collection in a memory component using an adjusted parameter
CN112530494B (zh) * 2019-09-17 2024-06-25 硅存储技术股份有限公司 具有存储的索引信息的非易失性存储器设备
US11640259B2 (en) * 2020-05-21 2023-05-02 Western Digital Technologies, Inc. Use of surplus erase block pairs in super block formation
CN113268519A (zh) * 2020-12-28 2021-08-17 上海能链众合科技有限公司 一种基于区块链的数据共享方法
KR20220165074A (ko) * 2021-06-07 2022-12-14 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
CN114080596A (zh) * 2021-09-29 2022-02-22 长江存储科技有限责任公司 用于存储器的数据保护方法及其存储装置
CN115687171B (zh) * 2022-10-26 2023-06-06 深圳三地一芯电子股份有限公司 闪存块绑定方法、装置、设备及存储介质

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69034191T2 (de) * 1989-04-13 2005-11-24 Sandisk Corp., Sunnyvale EEPROM-System mit aus mehreren Chips bestehender Blocklöschung
US5428621A (en) * 1992-09-21 1995-06-27 Sundisk Corporation Latent defect handling in EEPROM devices
JP3105092B2 (ja) * 1992-10-06 2000-10-30 株式会社東芝 半導体メモリ装置
US5835935A (en) * 1995-09-13 1998-11-10 Lexar Media, Inc. Method of and architecture for controlling system data with automatic wear leveling in a semiconductor non-volatile mass storage memory
US5978808A (en) * 1995-12-27 1999-11-02 Intel Corporation Virtual small block file manager for flash memory array
US6034897A (en) * 1999-04-01 2000-03-07 Lexar Media, Inc. Space management for managing high capacity nonvolatile memory
CN1249585C (zh) * 1997-12-16 2006-04-05 Tdk株式会社 闪速存储器系统
CN1249586C (zh) * 1997-12-22 2006-04-05 Tdk株式会社 闪速存储器系统
JP3734620B2 (ja) * 1998-06-24 2006-01-11 沖電気工業株式会社 半導体ディスク装置
US6260156B1 (en) * 1998-12-04 2001-07-10 Datalight, Inc. Method and system for managing bad areas in flash memory
GB9903490D0 (en) 1999-02-17 1999-04-07 Memory Corp Plc Memory system
KR100330164B1 (ko) * 1999-04-27 2002-03-28 윤종용 무효 블록들을 가지는 복수의 플래시 메모리들을 동시에 프로그램하는 방법
US6742078B1 (en) * 1999-10-05 2004-05-25 Feiya Technology Corp. Management, data link structure and calculating method for flash memory
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
DE10134229A1 (de) * 2000-08-17 2002-02-28 Ibm Verfahren und System zum Ermitteln von Abweichungen in Datentabellen
JP3699890B2 (ja) * 2000-08-30 2005-09-28 シャープ株式会社 不揮発性半導体記憶装置
US6574705B1 (en) * 2000-11-16 2003-06-03 International Business Machines Corporation Data processing system and method including a logical volume manager for storing logical volume data
US6763424B2 (en) * 2001-01-19 2004-07-13 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
JP4248772B2 (ja) * 2001-07-05 2009-04-02 Tdk株式会社 メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JP4220690B2 (ja) * 2001-07-05 2009-02-04 Tdk株式会社 メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JP2003058417A (ja) * 2001-08-21 2003-02-28 Matsushita Electric Ind Co Ltd 記憶装置
GB0123412D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Memory system sectors
DE10236796B4 (de) * 2002-08-08 2004-12-02 Christian Dr. Scheideler Verfahren und Anordnung zur randomisierten Datenspeicherung in Speichernetzwerken und/oder einem Intranet und/oder dem Internet sowie ein entsprechendes Computerprogramm-Erzeugnis und ein entsprechendes computerlesbares Speichermedium
US6901498B2 (en) * 2002-12-09 2005-05-31 Sandisk Corporation Zone boundary adjustment for defects in non-volatile memories
US7478096B2 (en) * 2003-02-26 2009-01-13 Burnside Acquisition, Llc History preservation in a computer storage system
JP2004265162A (ja) 2003-03-03 2004-09-24 Renesas Technology Corp 記憶装置およびアドレス管理方法
US7012835B2 (en) * 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI477965B (zh) * 2011-05-31 2015-03-21 Micron Technology Inc 包含記憶體系統控制器之裝置及相關方法
US9430373B2 (en) 2011-05-31 2016-08-30 Micron Technology, Inc. Apparatus including memory channel control circuit and related methods for relaying commands to logical units

Also Published As

Publication number Publication date
EP1700313B1 (en) 2009-12-09
US7970985B2 (en) 2011-06-28
US20090292944A1 (en) 2009-11-26
US8117381B2 (en) 2012-02-14
DE602004024582D1 (de) 2010-01-21
CN1930635A (zh) 2007-03-14
EP1700313A1 (en) 2006-09-13
TW200540621A (en) 2005-12-16
KR20060120231A (ko) 2006-11-24
WO2005066974A1 (en) 2005-07-21
JP2007520842A (ja) 2007-07-26
ATE451694T1 (de) 2009-12-15
US20110191530A1 (en) 2011-08-04
US20050144516A1 (en) 2005-06-30
CN1930635B (zh) 2012-10-10
JP4960705B2 (ja) 2012-06-27

Similar Documents

Publication Publication Date Title
TWI294081B (en) Memory system and operating method thereof
US8041884B2 (en) Controller for non-volatile memories and methods of operating the memory controller
US10055345B2 (en) Methods, devices and systems for solid state drive control
US8595424B2 (en) Cluster based non-volatile memory translation layer
CN100485642C (zh) 非易失性存储器系统及操作非易失性存储器系统的方法
US8151040B2 (en) Version based non-volatile memory translation layer
US8151035B2 (en) Non-volatile memory and method with multi-stream updating
US7366826B2 (en) Non-volatile memory and method with multi-stream update tracking
US7386655B2 (en) Non-volatile memory and method with improved indexing for scratch pad and update blocks
US7340581B2 (en) Method of writing data to non-volatile memory
US7509471B2 (en) Methods for adaptively handling data writes in non-volatile memories
US8381018B2 (en) Method for data recovery for flash devices
US7404031B2 (en) Memory card, nonvolatile semiconductor memory, and method of controlling semiconductor memory
US20050251617A1 (en) Hybrid non-volatile memory system
TWI428920B (zh) 適應性處理資料之寫入於非揮發性記憶體
TW200413916A (en) Method and apparatus for grouping pages within a block
TW201923589A (zh) 用來存取至少一非揮發性記憶體元件的電路
JP2008524705A (ja) スクラッチパッドブロック
TWI272487B (en) Non-volatile memory and method with memory planes alignment

Legal Events

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