TWI459399B - 電力中斷管理 - Google Patents
電力中斷管理 Download PDFInfo
- Publication number
- TWI459399B TWI459399B TW099133579A TW99133579A TWI459399B TW I459399 B TWI459399 B TW I459399B TW 099133579 A TW099133579 A TW 099133579A TW 99133579 A TW99133579 A TW 99133579A TW I459399 B TWI459399 B TW I459399B
- Authority
- TW
- Taiwan
- Prior art keywords
- information
- transaction log
- memory
- volatile memory
- memory system
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/30—Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/141—Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0215—Addressing or allocation; Relocation with look ahead addressing means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7209—Validity control, e.g. using flags, time stamps or sequence numbers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明一般而言係關於半導體記憶體裝置、方法及系統,且更特定而言係關於電力中斷管理。
通常提供記憶體裝置作為電腦或其他電子裝置中之內部半導體積體電路。存在包含揮發性及非揮發性記憶體在內之諸多不同類型之記憶體。揮發性記憶體可需要電力來維持其資料且包含隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)及同步動態隨機存取記憶體(SDRAM)以及其他記憶體。非揮發性記憶體可藉由在不供電時仍保持所儲存之資訊來提供持久資料且可包含NAND快閃記憶體、NOR快閃記憶體、唯讀記憶體(ROM)、電可抹除可程式化ROM(EEPROM)、可抹除可程式化ROM(EPROM)及相變隨機存取記憶體(PCRAM)以及其他記憶體。
可將若干個記憶體裝置組合在一起以形成一固態硬碟(SSD)。一固態硬碟可包含非揮發性記憶體(例如,NAND快閃記憶體及NOR快閃記憶體)及/或可包含揮發性記憶體(例如,DRAM及SRAM)以及各種其他類型之非揮發性及揮發性記憶體。對於一寬廣範圍之電子應用,可利用包含浮閘快閃裝置及電荷陷獲快閃(CTF)裝置(其使用將資訊儲存於氮化物層中之電荷陷阱中之半導體-氧化物-氮化物-氧化物-半導體及金屬-氧化物-氮化物-氧化物-半導體電容器結構)之快閃記憶體裝置作為一非揮發性記憶體。快閃記憶體裝置通常使用允許高記憶體密度、高可靠性及低功率消耗之一單電晶體記憶體胞。
可使用一SSD來替換硬碟驅動器作為一電腦之主要儲存裝置,此乃因該固態硬碟可在效能、大小、重量、耐用性、操作溫度範圍及功率消耗方面具有勝於硬驅動器之優點。舉例而言,SSD可在與磁碟驅動器相比較時因其缺乏移動部件而具有優越效能,此可避免尋覓時間、延時及與磁碟驅動器相關聯之其他機電延遲。SSD製造商可使用非揮發性快閃記憶體來形成可不使用一內部電池電源之快閃SSD,因此允許該驅動器更通用且更小型。
一SSD可包含若干個記憶體裝置,例如,若干個記憶體晶片(如本文中所使用,「若干個」某物可係指此等事物中之一者或多者,例如,若干個記憶體裝置可係指一個或多個記憶體裝置)。如熟習此項技術者將瞭解,一記憶體晶片可包含若干個晶粒及/或邏輯單元(LUN)。每一晶粒上可包含若干個記憶體陣列及週邊電路。該等記憶體陣列可包含組織成若干個實體頁之若干個記憶體胞,且該等實體頁可組織成若干個區塊。
固態硬碟可包含一邏輯位址(LA)表,例如一邏輯區塊位址(LBA)表。一LBA表可用於記錄將一固態硬碟之記憶體陣列中資料之邏輯位址鏈接至該資料之實體位置的資訊。該LBA表可儲存於該固態硬碟中之揮發性記憶體中,且該LBA表之一複本亦可儲存於該固態硬碟中之非揮發性記憶體中。該LBA表可用於定位該固態硬碟中資料之實體位置以在於該固態硬碟中起始一讀取請求時讀取資料。可由一主機起始針對一特定邏輯位址處之資料之一讀取請求。可在該LBA表中尋找該邏輯位址,且可接著指示一對應實體位址。該固態硬碟可自該所指示之實體位址讀取資料以完成針對該固態硬碟之該讀取請求。
並不具有帶有關於該固態硬碟中資料之邏輯位址與實體位址之間之關係的當前(例如,最近)資訊之一LBA表之一固態硬碟可使該固態硬碟中之某些資料不可存取。因此,期望一當前LBA表以完成對該固態硬碟中所有資料之存取。該固態硬碟中之一LBA表可在一電力中斷之後因該LBA表係儲存於揮發性記憶體中及/或該LBA表係週期性地儲存於非揮發性記憶體中而丟失或不完整。因此,一電力中斷可致使一固態硬碟具有並不具有關於恰好在該電力中斷之間之一時間內寫入至該固態硬碟之資料的資訊之一LBA表。
本發明包含用於記憶體中之電力中斷管理之方法及裝置。一個方法實施例包含使用寫入超前處理資訊更新一異動日誌中之異動日誌資訊;及使用該異動日誌更新一邏輯位址(LA)表。
在本發明之以下實施方式中,參考形成本發明之一部分且其中以圖解說明方式顯示可如何實踐本發明之一項或多項實施例之隨附圖式。足夠詳細地闡述此等實施例以使熟習此項技術者能夠實踐本發明之該等實施例,且應理解,可利用其他實施例且可在不背離本發明之範疇之情況下作出製程、電、及/或結構改變。
在本發明之以下實施方式中,參考形成本發明之一部分且其中以圖解說明方式顯示可如何實踐本發明之一項或多項實施例之隨附圖式。足夠詳細地闡述此等實施例以使熟習此項技術者能夠實踐本發明之該等實施例,且應理解,可利用其他實施例且可在不背離本發明之範疇之情況下作出製程、電、及/或結構改變。如本文中所使用,標示符「N」、「M」及「R」(特定而言關於圖式中之參考編號)指示本發明之一項或多項實施例可包含如此標示之若干個特定特徵。
本文中之圖遵循其中第一個數字或前幾個數字對應於圖式圖編號且剩餘數字識別圖式中之一元件或組件之一編號慣例。不同圖之間之類似元件或組件可藉由使用類似數字來識別。舉例而言,108可參考圖1中之元件「08」,且在圖2中可將一類似元件參考為「208」。如將瞭解,可添加、調換及/或去除本文中各種實施例中所示之元件以提供本發明之若干個額外實施例。另外,如將瞭解,圖中所提供之元件之比例及相對比例尺意欲圖解說明本發明之某些實施例且不應視為限定意義。
圖1係根據本發明之一項或多項實施例之包含至少一個記憶體系統104之一計算系統100之一功能性方塊圖。在圖1中所圖解說明之實施例中,記憶體系統104(例如,一固態硬碟(SSD))可包含一實體主機介面106,一控制器(例如,記憶體系統控制電路108,及一個或多個固態記憶體裝置110-1,...,110-N。固態記憶體裝置110-1,...,110-N可為該記憶體系統提供一儲存卷,例如,藉助格式化至該等記憶體裝置之一檔案系統。在一項或多項實施例中,記憶體系統控制電路108可係耦合至包含實體介面106與固態記憶體裝置110-1,...,110-N之一印刷電路板之一專用積體電路(ASIC)。
如圖1中所圖解說明,記憶體系統控制電路108可耦合至實體主機介面106且耦合至固態記憶體裝置110-1,...,110-N。實體主機介面106可用於在記憶體系統104與另一裝置(諸如一主機系統102)之間通信資訊。主機系統102可包含一記憶體存取裝置,例如,一處理器。熟習此項技術者將瞭解,「一處理器」可意指一個或多個處理器,諸如,一並列處理系統、若干個共處理器等。主機系統之實例包含膝上型電腦、個人電腦、數位相機、數位記錄及重播裝置、行動電話、PDA、記憶體讀卡器、介面集線器及諸如此類。對於一項或多項實施例,實體主機介面106可呈一標準化介面的形式。舉例而言,當記憶體系統104用於一計算系統100中之資料儲存時,實體主機介面106可係一串列高級技術附件(SATA)、週邊組件互連express(PCIe)或一通用串列匯流排(USB)以及其他連接器及介面。然而,一般而言,實體主機介面106可提供用於在記憶體系統104與具有用於實體主機介面106之相容接收器之一主機系統102之間傳遞控制、位址、資料及其他信號之一介面。
憶體系統控制電路108可與固態記憶體裝置110-1,...,110-N通信以讀取、寫入及抹除資料以及其他操作。記憶體系統控制電路108可具有可係一個或多個積體電路及/或離散組件之電路。對於一項或多項實施例,記憶體系統控制電路108中之該電路可包含用於控制跨越固態記憶體裝置110-1,...,110-N之存取之控制電路,及用於在一主機系統102與記憶體系統104之間提供一轉譯層之電路。因此,一記憶體控制器可選擇性地耦合一固態記憶體裝置110-1,...,110-N之一I/O連接(未在圖1中顯示)以在適當的時間在適當的I/O連接處接收適當的信號。相似地,一主機系統102與記憶體系統104之間之通信協定可不同於存取一固態記憶體裝置110-1,...,110-N所需之協定。記憶體系統控制電路108然後可將自一主機接收之命令轉譯成適當的命令以達成對一固態記憶體裝置110-1,...,110-N之所期望存取。
一固態記憶體裝置110-1,...,110-N可包含一個或多個記憶體胞(例如,非揮發性記憶體胞)陣列。舉例而言,該等陣列可係具有一NAND架構之快閃陣列。在一NAND架構中,一「列」之記憶體胞之控制閘極可與一存取線(例如,字線)耦合在一起,同時該等記憶體胞可以一「串」形式源極至汲極地串聯耦合於一選擇閘源極電晶體與一選擇閘汲極電晶體之間。該串可藉由該選擇閘汲極電晶體連接至一資料線(例如,位元線)。術語「列」及「串」之使用既不暗示記憶體胞之一線性配置亦不暗示記憶體胞之一正交配置。如熟習此項技術者將瞭解,記憶體胞至位元線及源極線之連接方式相依於該陣列是一NAND架構、一NOR架構還是某一其他記憶體陣列架構。
固態記憶體裝置110-1,...,110-N可包含可分群組之若干個記憶體胞。如本文中所使用,一群組可包含一個或多個記憶體胞,諸如,一頁、區塊、平面、晶粒,一整個陣列或其他記憶體胞群組。舉例而言,某些記憶體陣列可包含構成一記憶體胞區塊之若干個記憶體胞頁。若干個區塊可包含於一記憶體胞平面中。若干個記憶體胞平面可包含於一晶粒上。作為一實例,一128 GB記憶體裝置可包含每頁4314個位元組之資料,每區塊128個頁,每平面2048個區塊及每裝置16個平面。
在一記憶體裝置中,一實體頁可係指一寫入及/或讀取單元,例如,一同或作為一功能性記憶體胞群組寫入及/或讀取之若干個胞。因此,可藉助單獨寫入及/或讀取作業寫入及/或讀取一偶數頁及一奇數頁。對於包含多位階胞(MLC)之實施例,可將一實體頁在邏輯上劃分成一上部資料頁及一下部資料頁。舉例而言,一個記憶體胞可將一個或多個位元貢獻給一上部資料頁且將一個或多個位元貢獻給一下部資料頁。因此,可寫入及/或讀取一上部資料頁及一下部資料頁作為一個寫入及/或讀取作業之一部分,此乃因邏輯上部頁及邏輯下部頁兩者皆係相同實體頁之一部分。
記憶體系統104可實施損耗均衡以控制固態記憶體裝置110-1,...,110-N上之耗損速率。一固態記憶體陣列在若干個程式化及/或抹除循環後可經歷故障。損耗均衡可減少在一特定群組上執行之程式化及/或抹除循環之數目。損耗均衡可包含動態損耗均衡以最小化為回收一區塊而移動之有效區塊的量。動態損耗均衡可包含稱為廢棄項目收集之一技術,其中藉由抹除區塊來回收具有臨限量個無效頁以上之區塊。舉例而言,一無效頁可係已經更新並儲存於一不同頁中之一資料頁。靜態損耗均衡可包含將靜態資料寫入至具有高抹除計數之區塊以延長該區塊之壽命。
圖1之實施例可包含為不使本發明之實施例模糊而不加以圖解說明之額外電路。舉例而言,記憶體系統104可包含位址電路以鎖存透過I/O電路經由I/O連接提供之位址信號。可藉由一列解碼器及一行解碼器接收並解碼位址信號以存取固態記憶體裝置110-1,...,110-N。熟習此項技術者將瞭解,位址輸入連接之數目可相依於固態記憶體裝置110-1,...,110-N之密度及架構。
圖2係根據本發明之一項或多項實施例之一記憶體系統204之一功能性方塊圖。記憶體系統204可包含記憶體系統控制電路208。記憶體系統控制電路208可耦合至一個或多個固態記憶體裝置,例如,非揮發性記憶體210及/或揮發性記憶體212。記憶體系統204及記憶體系統控制電路208可分別類似於圖1中所圖解說明之記憶體系統104及記憶體系統控制電路108。
記憶體系統控制電路208可包含主機介面電路214,主機-記憶體轉譯電路216,記憶體管理電路218,一開關220,非揮發性記憶體控制電路222及/或揮發性記憶體控制電路224。如本文中所闡述,記憶體系統控制電路208可以一ASIC的形式提供,然而,實施例並不限於此。
主機介面電路214可耦合至主機-記憶體轉譯電路216。主機介面電路214可耦合至一主機系統之一實體介面及/或與一主機系統之一實體介面併在一起,例如圖1中所圖解說明之實體介面106。
一般而言,主機介面電路214負責將自主機系統(例如自一PCIe匯流排)接收之命令封包轉換成用於主機-記憶體轉譯電路216之命令指令且負責將記憶體回應轉換成主機系統命令以供傳輸至請求中主機。舉例而言,主機介面電路214可自基於PCIe之異動層封包構造SATA命令封包。
主機-記憶體轉譯電路216可耦合至主機介面電路214,耦合至記憶體管理電路218,及/或耦合至開關220。主機-記憶體轉譯電路216可經組態以將邏輯(例如,主機)位址(與一所接收命令相關聯)轉譯為實體記憶體位址。舉例而言,主機-記憶體轉譯電路216可將主機扇區讀取及寫入命令轉換為定向至非揮發性記憶體210之特定部分之命令。每一主機操作可被轉譯成單扇區或多扇區非揮發性記憶體210操作。
記憶體管理電路218可耦合至主機-記憶體轉譯電路216及/或耦合至開關220。記憶體管理電路218可控制若干個過程,包括(但不限於)初始化、損耗均衡(例如,廢棄項目收集及/或區塊回收)及錯誤偵測(例如,經由處理器228之操作)。記憶體管理電路218可存取一群組(例如,區塊表236)以確定損耗均衡之候選者。當將與一邏輯位址相關聯之資料寫入至一新實體位址(例如,作為損耗均衡之一部分或對該資料之一更新)時,記憶體管理電路218可藉助對應於該邏輯位址之該新實體位址更新一LBA表(例如,LBA表234)。
舉例而言,作為一靜態損耗均衡操作之一部分,記憶體管理電路218可在區塊表236中搜尋具有一高抹除計數之區塊。該記憶體管理電路可將一特定區塊之抹除計數與一臨限計數相比較。舉例而言,可自該特定區塊減去具有最低抹除計數之區塊之抹除計數。若該差大於該臨限計數,則可將該特定區塊指示為區塊回收之一候選者。
舉例而言,作為一動態損耗均衡操作之一部分,記憶體管理電路218可搜尋其中具有一廢棄項目收集臨限量之無效(例如未使用)部分(例如,頁)之區塊。記憶體管理電路218可包含回收電路230。回收係可由記憶體管理電路218調用作為廢棄項目收集之一結果之一過程。回收可涉及在抹除欲抹除之一區塊之前將來自該區塊中之位置之所有有效資料皆移動至另一區塊中之位置。
開關220可耦合至主機-記憶體轉譯電路216、記憶體管理電路218、非揮發性控制電路222及/或揮發性記憶體控制電路224。開關220可係一縱橫開關且可包含及/或耦合至一個或多個緩衝器,例如,靜態隨機存取記憶體(SRAM)緩衝器。開關220可在記憶體系統控制電路208之各種組件之間提供一介面。開關220可計及所界定發訊協定之變化,該等所界定發訊協定可與記憶體系統控制電路208之不同組件相關聯以便在組件間提供一致存取及實施方案。在一項或多項實施例中,開關220可係一直接記憶體存取(DMA)模組。
控制器,例如,非揮發性記憶體控制電路222可耦合至開關220且耦合至一個或多個非揮發性記憶體裝置210。除其他資訊外,一個或多個非揮發性記憶體裝置210可儲存一異動日誌238、一邏輯位址(LA)表(例如邏輯區塊位址(LBA)表234-C)及/或一群組表(例如區塊表236-C)之一複本,如本文中所闡述。在某些實施例中,記憶體系統控制電路208可包含用於所有記憶體通道之一個非揮發性記憶體控制器。在其他實施例中,每一記憶體通道皆耦合至一離散非揮發性記憶體控制器。
揮發性記憶體控制電路224可耦合至開關220且耦合至一個或多個揮發性記憶體裝置212。除其他資訊外,該一個或多個揮發性記憶體裝置可儲存一LBA表234及/或一區塊表236。LBA表234可儲存一個或多個非揮發性記憶體裝置210中之頁之實體位址且包含對應邏輯位址。LBA表234可由包含於一相關聯SATA命令中之LBA來加索引。LBA表234可由主機-記憶體轉譯電路216(例如)用於查詢對應於邏輯區塊位址之實體頁位址。區塊表236可儲存一個或多個非揮發性記憶體裝置210中之可抹除區塊之資訊。儲存於區塊表236中之資訊可包含有效頁資訊、抹除計數及其他狀況資訊。自區塊表236存取之資訊可由實體區塊位元址來加索引。
圖3根據本發明之一項或多項實施例圖解說明非揮發性記憶體310中之一異動日誌338、區塊表334及邏輯區塊位址(LBA)表336之一方塊圖。除其他資訊外,該非揮發性記憶體可將寫入操作資訊儲存於一LBA表336、一區塊表334及/或一異動日誌338中。
除其他週期性時間間隔外,儲存於揮發性記憶體中之一LBA表之一複本可(例如)至少每300秒地週期性地儲存為非揮發性記憶體310中之一LBA表336。舉例而言,LBA表336可每120秒地儲存於非揮發性記憶體310中。可在固態硬碟中之每一寫入之後更新揮發性記憶體中之LBA表。除其他因素外,更新非揮發性記憶體裝置中之LBA表之頻率的時間週期可相依於記憶體系統執行寫入之頻率及/或以其寫入資料之速度。
一異動日誌338可儲存於該非揮發性記憶體中且用於記錄關於發生該等記憶體裝置中之每一寫入之資訊。具有若干個記憶體裝置之一記憶體系統可包含一包含關於發生該等記憶體裝置中之每一寫入之資訊之異動日誌。可跨越一記憶體系統中之若干個記憶體裝置將一異動日誌條帶化。如熟習此項技術者將瞭解,條帶化包含分割資料以使其儲存於多於一個裝置上。條帶化可包含將寫入資料(例如異動日誌資訊)劃分成若干個片段且將至少一個片段儲存於若干個記憶體裝置中之每一者中。在一項或多項實施例中,控制器可在於記憶體裝置中執行每一寫入時針對每一寫入藉助異動日誌資訊更新異動日誌。該異動日誌可含有關於在一時間週期期間發生於該等記憶體裝置中之所有寫入的資訊。該異動日誌可包含關於自上次LBA表336被保存於非揮發性記憶體310中之後發生的至該等記憶體裝置之所有寫入的資訊。
在一項或多項實施例中,來自異動日誌338之資訊可用於藉助關於自LBA表336上次被保存於該非揮發性記憶體中之後的時間(例如,在上次保存與一電力中斷之間)發生於記憶體裝置中之寫入的資訊更新LBA表336之複本。非揮發性記憶體310中之LBA表336之複本可以其他方式係缺少資訊,因為非揮發性記憶體310中之LBA複本336僅具有在將其複製至非揮發性記憶體中時在揮發性記憶體中之LBA表中之資訊。同樣,揮發性記憶體中之LBA表在一電力中斷期間被抹除,因此非揮發性記憶體中之LBA複本不可藉助將已在上次將其複製至非揮發性記憶體310與其被抹除時之間儲存於揮發性記憶體中之LBA表中之資訊以其他方式更新。因此,非揮發性記憶體310中之異動日誌338可用於更新非揮發性記憶體中之LBA表中之資訊。異動日誌338可含有關於資料之位置及將資料寫入至記憶體裝置之時間的資訊。該資訊可由該等記憶體裝置確認且接著被輸入至LBA表中以更新LBA表336。在一項或多項實施例中,在電力中斷期間異動日誌之最後一頁可變毀壞,因此,異動日誌中之最後一頁資訊並不含有關於寫入至記憶體陣列之某些最近資料的資訊。
回收單元(如圖4中所示)可使用來自一損耗均衡演算法(例如,一廢棄項目收集演算法)之資訊(例如)形成寫入超前處理資訊。該寫入超前處理資訊可含有最近寫入資料之位置及將已寫入下一資料之位置。損耗均衡演算法將資料移動至記憶體之未使用及/或較少使用之部分,因此形成新近自由區塊以供寫入資料。損耗均衡演算法可包含該等新近自由區塊之位置且使控制器接著向該等新近自由區塊進行寫入。來自損耗均衡及/或廢棄項目收集演算法之關於該等新近自由區塊之位置及最近已寫入資料且接下來將已寫入資料之位置的資訊係包含於寫入超前處理資訊中。控制器可藉由檢查由寫入超前處理資訊指示之位置處之一修訂號碼來確定資料是否在彼等位置處及/或何種資料(例如一有效寫入)在彼等位置處。可在與一位置處之資料相關聯之元資料中尋找該修訂號碼,且該修訂號碼可指示在一位置處已發生一有效寫入。可藉助異動資訊及在彼等位置處尋找之資料更新異動日誌。寫入超前處理資訊可用於重新形成異動日誌中之毀壞之最後一頁資訊。可接著藉助現在完成的異動日誌更新非揮發性記憶體中之LBA表。
在一項或多項實施例中,可包含一電容器以給予記憶體裝置足夠電力從而在一電力中斷之情形下保存異動日誌之最後一頁。在此等實施例中,使用來自該電容器之電力完成將恰好在一電力中斷之前發生之更新保存至異動日誌,因此該異動日誌具有關於自LBA表於非揮發性記憶體中之上次保存以後發生之寫入的資訊且可用於更新該LBA表。
圖4係根據本發明之一項或多項實施例之一回收單元430之一功能性方塊圖。在圖4中,回收單元430可包含一損耗均衡單元444。回收單元430可使用來自損耗均衡單元444之資訊形成寫入超前處理資訊446。寫入超前處理資訊446可係指示記憶體陣列中執行上次寫入及/或將已執行下一寫入之位置的資料。該寫入超前處理資訊可由回收單元444用於確定一電力中斷前上次資料寫入之位置並藉助彼資料更新異動日誌。藉助一電力中斷前資料之位置更新之一異動日誌可用於更新LBA表以包含關於LBA表於非揮發性記憶體中之上次保存與一電力中斷之時間之間之寫入的資訊。
圖5係根據本發明之一項或多項實施例圖解說明異動日誌538之一表。在圖5中,異動日誌538可包含異動日誌資訊,異動日誌資訊包含記憶體裝置中之資料的實體位址550及邏輯位址552。異動日誌538可記錄發生於記憶體裝置中之每一寫入之位置,且異動日誌538可儲存於該等記憶體裝置中。該異動日誌可跨越一記憶體系統中之若干個記憶體裝置加以條帶化(strip)。在一項或多項實施例中,一異動日誌可將發生於記憶體裝置中之每一異動記入日誌且可係該等記憶體裝置及/或在該等記憶體裝置上執行之異動之控制器之一參考。該異動日誌可在於非揮發性記憶體中產生來自揮發性記憶體之LBA表之一複本之後被抹除。該異動日誌可藉助對應於在抹除該異動日誌之後發生的異動之新項目加以更新。
在圖5中,異動日誌538可包含指示已發生於記憶體裝置中之每一異動之若干個項目556-1,556-2,556-3,...,556-N。異動日誌538中之項目556-1,556-2,556-3,...,及556-N可包含針對異動之命令550(例如一寫入、一讀取或一抹除)、異動之實體位址552及異動之邏輯位址554。
圖6係根據本發明之一項或多項實施例圖解說明一區塊表634之一表。區塊表634可儲存關於記憶體裝置中之區塊之資訊。儲存於區塊表634中之資訊可包含資料有效性資訊660、抹除計數662及狀況資訊664。區塊表634可包含若干個項目666-1,666-2,666-3,...,及666-M。區塊表634中之每一項目可包含資料(例如一資料區塊及/或資料頁)之實體位址652、資料有效性資訊660、抹除計數662及狀況資訊664。區塊表634中之資料有效性資訊660可包含關於一區塊中之每一頁之有效性(例如,資料是有效的還是無效的)的資訊。區塊表634中之抹除計數662可指示一區塊已被抹除之次數。除一區塊之其他狀況指示符外,區塊表634中之狀況資訊664可指示是否抹除一區塊及/或是否含有資料。
圖7係根據本發明之一項或多項實施例圖解說明一邏輯區塊位址(LBA)表736之一表。LBA表736可儲存記憶體裝置中每一資料項目之邏輯位址752及實體位址750,且可達成記憶體裝置中每一資料項目之邏輯位址752至實體位址750轉譯。LBA表736可針對至該等記憶體裝置之每一寫入由該LBA加索引,且可包含若干個包含LBA表736中之每一資料項目之邏輯位址754及實體位址752之項目770-1,770-2,770-3,...,及770-R。該LBA可用於查詢儲存每一項目中之資料之對應實體位址。該LBA表可儲存於一記憶體系統之揮發性記憶體中,且可在一週期性基礎上於非揮發性記憶體中產生揮發性記憶體中之LBA表之一複本。一旦於非揮發性記憶體中產生該LBA表之一複本,便可抹除揮發性記憶體中之該LBA表且將藉助對應於在抹除揮發性記憶體中之LBA表之後發生的異動之新項目更新揮發性記憶體中之LBA表。
結論
本發明包含用於記憶體中之電力中斷管理之方法及裝置。一個方法實施例包含使用寫入超前處理資訊更新一異動日誌中之異動日誌資訊;及使用該異動日誌更新一邏輯位址(LA)表。
雖然本文中已圖解說明且闡述了具體實施例,但熟習此項技術者將瞭解,可用經計算以達成相同結果之一配置來替代所示具體實施例。本發明意欲涵蓋對本發明之一項或多項實施例之修改或變化。應理解,以上說明係以一說明性方式而非一限定性方式作出。在審閱以上說明後,熟習此項技術者將明瞭,在本文中未具體闡述以上實施例之組合及其他實施例。本發明之一項或多項實施例之範疇包含其中使用以上結構及方法之其他應用。因此,應參考隨附申請專利範圍連同授權此等申請專利範圍之等效內容之全部範圍一起來確定本發明之一項或多項實施例之範疇。
在前述實施方式中,出於簡化本發明之目的而將某些特徵一同集合於一單項實施例中。不應將本發明之此方法解釋為反映本發明之所揭示實施例必須使用比每一技術方案中明確陳述的特徵多的特徵之一意圖。而是,如以下申請專利範圍反映:發明性標的物在於少於一單個所揭示實施例之所有特徵。因此,以下申請專利範圍藉此併入至實施方式中,其中每一技術方案獨立地作為一單獨實施例。
100...計算系統
102...主機系統
104...記憶體系統
106...實體主機介面
108...記憶體系統控制電路
110-1...固態記憶體裝置
110-N...固態記憶體裝置
204...記憶體系統
208...記憶體系統控制電路
210...非揮發性記憶體
212...揮發性記憶體
214...主機介面電路
216...主機-記憶體轉譯電路
218...記憶體管理電路
220...開關
222...非揮發性記憶體控制電路
224...揮發性記憶體控制電路
228...處理器
230...回收電路
234...邏輯區塊位址(LBA)表
234-C...LBA表
236...區塊表
236-C...區塊表
238...異動日誌
310...非揮發性記憶體
334...區塊表
336...LBA表
338...異動日誌
430...回收單元
444...損耗均衡單元
446...寫入超前處理資訊
538...異動日誌
550...實體位址
552...邏輯位址
554...邏輯位址
556-1...項目
556-2...項目
556-3...項目
556-N...項目
634...區塊表
652...實體位址
660...資料有效性資訊
662...抹除計數
664...狀況資訊
666-1...項目
666-2...項目
666-3...項目
666-M...項目
736...LBA表
752...邏輯位址
754...邏輯位址
770-1...項目
770-2...項目
770-3...項目
770-R...項目
圖1係根據本發明之一項或多項實施例之包含至少一個記憶體系統之一計算系統之一功能性方塊圖。
圖2係根據本發明之一項或多項實施例之一記憶體系統之一功能性方塊圖。
圖3根據本發明之一項或多項實施例圖解說明非揮發性記憶體中之一異動日誌、區塊表及邏輯區塊位址(LBA)表之一方塊圖。
圖4係根據本發明之一項或多項實施例之一回收單元之一功能性方塊圖。
圖5係根據本發明之一項或多項實施例圖解說明異動日誌之一表。
圖6係根據本發明之一項或多項實施例圖解說明一區塊表之一表。
圖7係根據本發明之一項或多項實施例圖解說明一邏輯區塊位址(LBA)表之一表。
204...記憶體系統
208...記憶體系統控制電路
210...非揮發性記憶體
212...揮發性記憶體
214...主機介面電路
216...主機-記憶體轉譯電路
218...記憶體管理電路
220...開關
222...非揮發性記憶體控制電路
224...揮發性記憶體控制電路
228...處理器
230...回收電路
234...邏輯區塊位址(LBA)表
234-C...LBA表
236...區塊表
236-C...區塊表
238...異動日誌
Claims (32)
- 一種用於記憶體中之電力中斷管理之方法,其包括:更新一異動日誌以藉由使用寫入超前處理資訊重新形成該異動日誌之一毀壞頁以確定與該毀壞頁相關聯之異動日誌資訊,並將與該毀壞頁相關聯之經確定之該異動日誌資訊寫入至該異動日誌中,其中該寫入超前處理資訊至少部分包含關於一記憶體系統中接下來將已寫入資料之位置的資訊以及關於該記憶體系統中最近已寫入資料之位置的資訊;及使用與該毀壞頁相關聯之該異動日誌資訊更新一邏輯位址(LA)表。
- 如請求項1之方法,其進一步包括使用來自一損耗均衡演算法之關於最近已寫入資料之該位置的資訊及接下來將已寫入資料之該位置的資訊形成寫入超前處理資訊。
- 如請求項1之方法,其進一步包括使用來自一廢棄項目收集演算法之關於最近已寫入資料之該位置的資訊及接下來將已寫入資料之該位置的資訊形成寫入超前處理資訊。
- 如請求項1之方法,其進一步包含藉由複製揮發性記憶體中之一LA表而將該LA表週期性地儲存於非揮發性記憶體中。
- 如請求項4之方法,其進一步包含將該異動日誌資訊記錄於該異動日誌中,其中該異動日誌資訊包含關於在上次將揮發性記憶體中之該LA表複製於非揮發性記憶體中 之後發生於包含該非揮發性記憶體之一記憶體系統中之寫入的資訊。
- 如請求項1之方法,其中更新該異動日誌包括重新形成一異動日誌資訊頁。
- 如請求項6之方法,其中該方法包含使用該寫入超前處理資訊尋找記憶體中之一位置並藉由定位與該位置處之資料相關聯之一修訂號碼來驗證發生於該位置處之一有效寫入。
- 一種用於操作一記憶體系統之方法,其包括:形成寫入超前處理資訊,其中該寫入超前處理資訊至少部分包含關於一記憶體系統中接下來將已寫入資料之位置的資訊以及關於該記憶體系統中最近已寫入資料之位置的資訊;更新一異動日誌以藉由使用寫入超前處理資訊重新形成該異動日誌之一毀壞頁以確定與該毀壞頁相關聯之異動日誌資訊,並將與該毀壞頁相關聯之經確定之該異動日誌資訊寫入至該異動日誌中;及使用該經更新之異動日誌更新非揮發性記憶體中之一邏輯位址(LA)表。
- 如請求項8之方法,其進一步包括在一電力中斷之前,在一週期性基礎上將該LA表儲存於非揮發性記憶體中,其中儲存於非揮發性記憶體中的該LA表係揮發性記憶體中之一LA表之一複本。
- 如請求項9之方法,其中在該記憶體系統中之每一寫入 操作之後更新揮發性記憶體中之該LA表。
- 如請求項9之方法,其中在更新該LA表之前,非揮發性記憶體中之該LA表並不包含關於發生於上次將該LA表儲存於非揮發性記憶體中與一電力中斷之間之寫入操作的資訊。
- 如請求項8之方法,其進一步包括在一電力中斷之後在該記憶體系統之加電時將該經更新之LA表複製至揮發性記憶體。
- 如請求項8之方法,其中形成寫入超前處理資訊包括使用一損耗均衡演算法形成該寫入超前處理資訊。
- 如請求項8之方法,其中該方法包含藉由識別與固態硬碟中接下來將已寫入資料之位置處之資料相關聯之一修訂號碼來驗證發生於該位置處之一有效寫入。
- 一種用於記憶體系統中之電力中斷管理之方法,其包括:使用寫入超前處理資訊尋找關於不在非揮發性記憶體中之一異動日誌或一邏輯位址(LA)表中之一寫入操作的資訊,其中該寫入超前處理資訊至少部分包含關於一記憶體系統中接下來將已寫入資料之位置的資訊以及關於該記憶體系統中最近已寫入資料之位置的資訊;藉由識別與該寫入操作資訊相關聯之一修訂號碼來驗證該寫入操作資訊係有效的;更新一異動日誌以藉由使用該所尋找之寫入操作資訊重新形成該異動日誌之一毀壞頁以確定與該毀壞頁相關 聯之異動日誌資訊,並將與該毀壞頁相關聯之經確定之該異動日誌資訊寫入至該異動日誌中;使用該經更新之異動日誌更新非揮發性記憶體中之該LA表;及在一電力中斷之後將該LA表儲存於揮發性記憶體中。
- 如請求項15之方法,其中尋找關於該寫入操作之資訊包含自該寫入超前處理資訊確定該記憶體系統中接下來將已寫入資料之位置。
- 如請求項16之方法,其中確定接下來將已寫入資料之該位置包括使用一損耗均衡演算法。
- 如請求項15之方法,其中更新該異動日誌包括更新在該電力中斷之後變毀壞之該異動日誌之最後一頁。
- 如請求項15之方法,其中該方法包含在一週期性基礎上將揮發性記憶體中之該LA表之一複本儲存於該非揮發性記憶體中。
- 如請求項15之方法,其中該方法包含針對在將該LA表之一複本儲存於該非揮發性記憶體中之後發生的操作將寫入操作資訊記錄於該異動日誌中。
- 如請求項15之方法,其中使用該經更新之異動日誌更新非揮發性記憶體中之該LA表包括添加關於發生於上次將該LA表複製至該非揮發性記憶體中與該電力中斷之間之一寫入的資訊。
- 一種記憶體系統,其包含電力中斷管理,該記憶體系統包括: 固態非揮發性記憶體,其經組態以儲存一邏輯位址(LA)表及一異動日誌;及一控制器,其經組態以:更新該異動日誌以藉由使用寫入超前處理資訊重新形成該異動日誌之一毀壞頁以確定與該毀壞頁相關聯之異動日誌資訊,並將與該毀壞頁相關聯之經確定之該異動日誌資訊寫入至該異動日誌中,其中該寫入超前處理資訊至少部分包含關於一記憶體系統中接下來將已寫入資料之位置的資訊以及關於該記憶體系統中最近已寫入資料之位置的資訊;及使用與該毀壞頁相關之該異動日誌資訊更新該LA表。
- 如請求項22之記憶體系統,其中該異動日誌經組態以記錄關於在將該LA表儲存於非揮發性記憶體中之後發生於該記憶體系統中之寫入的資訊。
- 如請求項22之記憶體系統,其中該控制器經組態以使用該寫入超前處理資訊重新形成一異動日誌中之最後一頁異動日誌資訊。
- 如請求項22之記憶體系統,其中該控制器經組態以使用一損耗均衡演算法形成該寫入超前處理資訊。
- 如請求項22之記憶體系統,其中一電容器係耦合至該非揮發性記憶體以在一電力中斷之後暫時提供電力給該記憶體系統。
- 一種記憶體系統,其包括: 固態非揮發性記憶體,其中該非揮發性記憶體經組態以儲存一邏輯位址(LA)表及一異動日誌;及一控制器,其經組態以:將與該異動日誌之一毀壞頁相關聯之異動日誌資訊寫入至該異動日誌中,其中寫入超前處理資訊被使用以確定與該異動日誌之該毀壞頁相關聯之異動日誌資訊,且其中與該異動日誌之該毀壞頁相關聯之經確定之該異動日誌資訊被寫入至該異動日誌中;及使用與該異動日誌之該毀壞頁相關聯之該異動日誌資訊更新該LA表以用在一電力中斷之後該LA表中缺少之資訊重建該LA表。
- 如請求項27之記憶體系統,其中該LA表係在非揮發性記憶體中,且其中該控制器進一步經組態以將該經更新之LA表之一複本儲存於揮發性記憶體中。
- 如請求項28之記憶體系統,其中該控制器經組態以至少每300秒一次地將揮發性記憶體中之該經更新之LA表之一複本儲存於該非揮發性記憶體中。
- 如請求項27之記憶體系統,其中該控制器經組態以使用一損耗均衡演算法形成該寫入超前處理資訊。
- 如請求項30之記憶體系統,其中該控制器經組態以使用該損耗均衡演算法確定該記憶體系統中接下來將已寫入資料之位置。
- 如請求項27之記憶體系統,其中該LA表係一邏輯區塊位址(LBA)表。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/572,083 US8990476B2 (en) | 2009-10-01 | 2009-10-01 | Power interrupt management |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201120904A TW201120904A (en) | 2011-06-16 |
TWI459399B true TWI459399B (zh) | 2014-11-01 |
Family
ID=43824049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099133579A TWI459399B (zh) | 2009-10-01 | 2010-10-01 | 電力中斷管理 |
Country Status (7)
Country | Link |
---|---|
US (3) | US8990476B2 (zh) |
EP (1) | EP2483782B1 (zh) |
JP (1) | JP5585919B2 (zh) |
KR (1) | KR101447786B1 (zh) |
CN (1) | CN102576332B (zh) |
TW (1) | TWI459399B (zh) |
WO (1) | WO2011040950A2 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8990476B2 (en) * | 2009-10-01 | 2015-03-24 | Micron Technology, Inc. | Power interrupt management |
US9514838B2 (en) | 2011-05-31 | 2016-12-06 | Micron Technology, Inc. | Apparatus including memory system controllers and related methods for memory management using block tables |
US8543758B2 (en) * | 2011-05-31 | 2013-09-24 | Micron Technology, Inc. | Apparatus including memory channel control circuit and related methods for relaying commands to logical units |
US20130067289A1 (en) * | 2011-09-14 | 2013-03-14 | Ariel Maislos | Efficient non-volatile read cache for storage system |
US9104614B2 (en) * | 2011-09-16 | 2015-08-11 | Apple Inc. | Handling unclean shutdowns for a system having non-volatile memory |
US9075758B2 (en) | 2012-03-19 | 2015-07-07 | Samsung Electronics Co., Ltd. | Removable storage device with transactional operation support and system including same |
WO2013147894A1 (en) * | 2012-03-30 | 2013-10-03 | Intel Corporation | Solid state drive management in power loss recovery |
US9037820B2 (en) * | 2012-06-29 | 2015-05-19 | Intel Corporation | Optimized context drop for a solid state drive (SSD) |
US9015404B2 (en) | 2012-09-28 | 2015-04-21 | Intel Corporation | Persistent log operations for non-volatile memory |
US9875054B2 (en) | 2013-03-06 | 2018-01-23 | Ab Initio Technology Llc | Managing operations on stored data units |
US9959070B2 (en) * | 2013-03-06 | 2018-05-01 | Ab Initio Technology Llc | Managing operations on stored data units |
US10133500B2 (en) | 2013-03-06 | 2018-11-20 | Ab Initio Technology Llc | Managing operations on stored data units |
US9218279B2 (en) * | 2013-03-15 | 2015-12-22 | Western Digital Technologies, Inc. | Atomic write command support in a solid state drive |
TWI498902B (zh) * | 2013-11-28 | 2015-09-01 | Phison Electronics Corp | 資料管理方法、記憶體儲存裝置及記憶體控制電路單元 |
US10359937B2 (en) * | 2013-12-20 | 2019-07-23 | Sandisk Technologies Llc | System and method of implementing a table storage support scheme |
KR102625637B1 (ko) * | 2016-02-01 | 2024-01-17 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
GB2559119B (en) * | 2017-01-20 | 2020-12-30 | Advanced Risc Mach Ltd | Apparatus and methods to prolong lifetime of memories |
US11314635B1 (en) * | 2017-12-12 | 2022-04-26 | Amazon Technologies, Inc. | Tracking persistent memory usage |
US11599403B2 (en) * | 2018-10-03 | 2023-03-07 | SK Hynix Inc. | Logging mechanism for memory system |
US11436153B2 (en) * | 2020-05-26 | 2022-09-06 | Western Digital Technologies, Inc. | Moving change log tables to align to zones |
CN113961140B (zh) | 2020-07-02 | 2024-06-11 | 慧荣科技股份有限公司 | 数据处理方法及对应的数据储存装置 |
CN113885778B (zh) * | 2020-07-02 | 2024-03-08 | 慧荣科技股份有限公司 | 数据处理方法及对应的数据储存装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0295424A2 (en) * | 1987-06-08 | 1988-12-21 | International Business Machines Corporation | Method for managing subpage concurrency control and partial transaction rollback in a transaction-oriented system of the write-ahead logging type |
US20030163635A1 (en) * | 2002-02-27 | 2003-08-28 | Aasheim Jered Donald | Transactional file system for flash memory |
US20040003327A1 (en) * | 2002-06-27 | 2004-01-01 | Joshi Aniruddha P. | Method and system to implement a system event log for system manageability |
US20060059326A1 (en) * | 2002-11-21 | 2006-03-16 | Microsoft Corporation | Dynamic data structures for tracking file system free space in a flash memory device |
US20060253645A1 (en) * | 2005-05-09 | 2006-11-09 | M-Systems Flash Disk Pioneers Ltd. | Method and system for facilitating fast wake-up of a flash memory system |
WO2008087634A1 (en) * | 2007-01-18 | 2008-07-24 | Sandisk Il Ltd. | A method and system for facilitating fast wake-up of a flash memory system |
US20090150599A1 (en) * | 2005-04-21 | 2009-06-11 | Bennett Jon C R | Method and system for storage of data in non-volatile media |
US20090172262A1 (en) * | 2007-12-27 | 2009-07-02 | Pliant Technology, Inc. | Metadata rebuild in a flash memory controller following a loss of power |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7003620B2 (en) * | 2002-11-26 | 2006-02-21 | M-Systems Flash Disk Pioneers Ltd. | Appliance, including a flash memory, that is robust under power failure |
US7885921B2 (en) | 2004-11-18 | 2011-02-08 | International Business Machines Corporation | Managing atomic updates on metadata tracks in a storage system |
JP4248510B2 (ja) | 2005-03-24 | 2009-04-02 | 株式会社東芝 | 計算機システム、ディスク装置およびデータ更新制御方法 |
JP4472010B2 (ja) | 2006-08-09 | 2010-06-02 | 株式会社日立超エル・エス・アイ・システムズ | 記憶装置 |
US7945762B2 (en) * | 2008-01-29 | 2011-05-17 | Cadence Design Systems, Inc. | Method and apparatus for memory management in a non-volatile memory system using a block table |
US7979626B2 (en) * | 2008-05-13 | 2011-07-12 | Microsoft Corporation | Flash recovery employing transaction log |
US8843691B2 (en) * | 2008-06-25 | 2014-09-23 | Stec, Inc. | Prioritized erasure of data blocks in a flash storage device |
TW201011755A (en) * | 2008-09-10 | 2010-03-16 | Skymedi Corp | Flash memory system and its data recovery method |
US8990476B2 (en) * | 2009-10-01 | 2015-03-24 | Micron Technology, Inc. | Power interrupt management |
US8495338B2 (en) * | 2010-12-03 | 2013-07-23 | Micron Technology, Inc. | Transaction log recovery |
-
2009
- 2009-10-01 US US12/572,083 patent/US8990476B2/en active Active
-
2010
- 2010-09-20 CN CN201080043757.9A patent/CN102576332B/zh active Active
- 2010-09-20 KR KR1020127010707A patent/KR101447786B1/ko active IP Right Grant
- 2010-09-20 JP JP2012532063A patent/JP5585919B2/ja active Active
- 2010-09-20 WO PCT/US2010/002557 patent/WO2011040950A2/en active Application Filing
- 2010-09-20 EP EP10820934.7A patent/EP2483782B1/en active Active
- 2010-10-01 TW TW099133579A patent/TWI459399B/zh active
-
2015
- 2015-02-18 US US14/624,692 patent/US9874918B2/en active Active
-
2017
- 2017-12-13 US US15/840,646 patent/US10564690B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0295424A2 (en) * | 1987-06-08 | 1988-12-21 | International Business Machines Corporation | Method for managing subpage concurrency control and partial transaction rollback in a transaction-oriented system of the write-ahead logging type |
US20030163635A1 (en) * | 2002-02-27 | 2003-08-28 | Aasheim Jered Donald | Transactional file system for flash memory |
US20040003327A1 (en) * | 2002-06-27 | 2004-01-01 | Joshi Aniruddha P. | Method and system to implement a system event log for system manageability |
US20060059326A1 (en) * | 2002-11-21 | 2006-03-16 | Microsoft Corporation | Dynamic data structures for tracking file system free space in a flash memory device |
US20090150599A1 (en) * | 2005-04-21 | 2009-06-11 | Bennett Jon C R | Method and system for storage of data in non-volatile media |
US20060253645A1 (en) * | 2005-05-09 | 2006-11-09 | M-Systems Flash Disk Pioneers Ltd. | Method and system for facilitating fast wake-up of a flash memory system |
WO2008087634A1 (en) * | 2007-01-18 | 2008-07-24 | Sandisk Il Ltd. | A method and system for facilitating fast wake-up of a flash memory system |
US20090172262A1 (en) * | 2007-12-27 | 2009-07-02 | Pliant Technology, Inc. | Metadata rebuild in a flash memory controller following a loss of power |
Also Published As
Publication number | Publication date |
---|---|
KR101447786B1 (ko) | 2014-10-06 |
JP5585919B2 (ja) | 2014-09-10 |
US10564690B2 (en) | 2020-02-18 |
EP2483782B1 (en) | 2015-11-25 |
JP2013506903A (ja) | 2013-02-28 |
CN102576332B (zh) | 2015-04-29 |
CN102576332A (zh) | 2012-07-11 |
WO2011040950A2 (en) | 2011-04-07 |
TW201120904A (en) | 2011-06-16 |
EP2483782A4 (en) | 2014-06-04 |
US20180101209A1 (en) | 2018-04-12 |
KR20120060236A (ko) | 2012-06-11 |
US20110082963A1 (en) | 2011-04-07 |
WO2011040950A3 (en) | 2011-08-18 |
US8990476B2 (en) | 2015-03-24 |
EP2483782A2 (en) | 2012-08-08 |
US9874918B2 (en) | 2018-01-23 |
US20150185798A1 (en) | 2015-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI459399B (zh) | 電力中斷管理 | |
TWI463312B (zh) | 用於異動記錄恢復之方法、用於操作記憶體系統之方法、用於記憶體系統中之異動記錄恢復之方法及記憶體系統 | |
US8788876B2 (en) | Stripe-based memory operation | |
CN109144899B (zh) | 用于管理表恢复的方法 | |
JP5908106B2 (ja) | 妥当性マスクを記憶する装置および方法ならびに操作装置 | |
US11662940B2 (en) | Data storage device and data processing method for restoring MLC/TLC memory to avoid degradation of access performance of a memory device caused by word line short | |
CN113391760B (zh) | 分区存储中的快照管理 |