TWI708262B - 非揮發性記憶體系統、nand快閃記憶體裝置及主機裝置 - Google Patents
非揮發性記憶體系統、nand快閃記憶體裝置及主機裝置 Download PDFInfo
- Publication number
- TWI708262B TWI708262B TW107117292A TW107117292A TWI708262B TW I708262 B TWI708262 B TW I708262B TW 107117292 A TW107117292 A TW 107117292A TW 107117292 A TW107117292 A TW 107117292A TW I708262 B TWI708262 B TW I708262B
- Authority
- TW
- Taiwan
- Prior art keywords
- flash memory
- nand flash
- logical address
- file system
- storage space
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/1016—Performance improvement
-
- 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
- G06F2212/1036—Life time enhancement
-
- 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/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- 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/7204—Capacity control, e.g. partitioning, end-of-life degradation
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
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)
- Memory System (AREA)
Abstract
非揮發性記憶體系統包括NAND快閃記憶體裝置、主機裝
置及節省儲存空間管理器。NAND快閃記憶體裝置包括NAND快閃記憶體及控制NAND快閃記憶體的記憶體控制器。主機裝置包括檔案系統及從檔案系統接收指令並提供給NAND快閃記憶體裝置的主機控制器。節省儲存空間管理器監控NAND快閃記憶體中發生的運行時的壞塊的個數與位置,監控檔案系統的邏輯位址使用現況,在NAND快閃記憶體內的運行時的壞塊的個數增加時減少檔案系統可用的邏輯位址空間。
Description
本發明是有關於一種半導體記憶體系統,且特別是有關於一種包括主機(host)裝置與NAND快閃記憶體(NAND flash memory)裝置的非揮發性記憶體系統。
根據在無電源供應的狀態下是否能夠保存資料,可以將半導體記憶體裝置區分為揮發性記憶體裝置與非揮發性記憶體裝置。近來,隨著半導體記憶體裝置的小型化、大容量化及低費用化趨勢,非揮發性記憶體裝置中的NAND快閃記憶體裝置因適合小型化、大容量化及低費用化而被廣泛使用。通常,NAND快閃記憶體裝置以頁(page)為單位執行寫入(write)操作與讀取(read)操作,以塊(block)為單位執行擦除(erase)操作,因此利用具有支援主機裝置的檔案系統(file system)的快閃記憶體轉換層(flash translation layer;FTL)的記憶體控制器對NAND快閃記憶體執行寫入操作、讀取操作、擦除操作、垃圾收集(garbage collection)(或
回收(reclaim))操作、磨損均衡(wear leveling)操作等。在此,所述快閃記憶體轉換層利用儲存有邏輯位址(logical address)與物理位址(physical address)之間的映射資訊的映射表(mapping table)執行位址映射(address mapping)操作。
另外,對NAND快閃記憶體的塊反復執行寫入操作與擦除操作的情況下所述塊劣化(deteriorated或degraded),因此所述快閃記憶體轉換層將因為所述劣化而發生不良或預計發生不良的塊,即,用保留塊(reserved block)替代運行時的壞塊(run-time bad block)或將運行時的壞塊的有效資料(valid data)移動到空閒塊(free block),對該運行時的壞塊進行不可使用處理(retire)(即,排除使用),防止NAND快閃記憶體裝置發生誤操作。然而,NAND快閃記憶體內的運行時的壞塊持續增加導致可用物理位址空間減少的情況下,NAND快閃記憶體裝置無法為主機裝置提供足夠的邏輯位址空間,因此判定該NAND快閃記憶體裝置的壽命(end of life;EOL)已盡並廢棄。然而,儘管NAND快閃記憶體裝置無法為主機裝置提供足夠的邏輯位址空間,但主機裝置並非使用NAND快閃記憶體裝置提供的所有邏輯位址空間,因此以NAND快閃記憶體內的運行時的壞塊的個數已達到預定個數以上為由整體廢棄包括所述NAND快閃記憶體的NAND快閃記憶體裝置的話將會造成不必要的資源浪費。
本發明的一個目的是提供一種當NAND快閃記憶體內的運行時的壞塊增加導致NAND快閃記憶體裝置無法為主機裝置提供足夠的邏輯位址空間的情況下(即,判定NAND快閃記憶體裝置的壽命已盡的情況下)也能夠繼續使用NAND快閃記憶體裝置而不會發生誤操作的非揮發性記憶體系統。
為達成本發明的一個目的,本發明的實施例的非揮發性記憶體系統可包括:NAND快閃記憶體裝置,具有至少一NAND快閃記憶體及控制所述NAND快閃記憶體的記憶體控制器;主機裝置,具有檔案系統及從所述檔案系統接收指令並提供給所述NAND快閃記憶體裝置的主機控制器;以及節省儲存空間管理器,監控所述NAND快閃記憶體中發生的運行時的壞塊的個數與位置,監控所述檔案系統的邏輯位址使用現況(use-state),在所述運行時的壞塊的所述個數增加時減少所述檔案系統可用的邏輯位址空間。
根據一個實施例,所述節省儲存空間管理器包含於所述主機控制器或所述記憶體控制器,並能夠與所述檔案系統及包含於所述記憶體控制器的快閃記憶體轉換層進行交互(interaction)。
根據一個實施例,所述節省儲存空間管理器可以使所述檔案系統回收(recall)所述檔案系統未使用的第一邏輯位址中的一部分以減少所述邏輯位址空間。
根據一個實施例,所述節省儲存空間管理器能夠可以使所述檔案系統在回收所述第一邏輯位址中的所述一部分之前對所述檔案系統正在使用的第二邏輯位址執行碎片移除(defragmentation)操作以連續地再分配所述第一邏輯位址。
根據一個實施例,所述節省儲存空間管理器可以使所述檔案系統生成佔用(occupy)所述檔案系統未使用的第一邏輯位址的一部分的虛擬檔案(dummy file)以減少所述邏輯位址空間。
根據一個實施例,所述節省儲存空間管理器在減少所述邏輯位址空間時可以使所述記憶體控制器用保留塊替代(replace)所述NAND快閃記憶體內的所述運行時的壞塊。
根據一個實施例,所述節省儲存空間管理器在每次所述運行時的壞塊的所述個數大於基準個數時使所述檔案系統減少所述邏輯位址空間,所述基準個數可以隨著所述NAND快閃記憶體裝置的使用而增大。
根據一個實施例,所述保留塊可以在製造所述NAND快閃記憶體裝置時被設定後不隨所述NAND快閃記憶體裝置的使用而增加。
根據一個實施例,所述保留塊可以在製造所述NAND快閃記憶體裝置時被設定後因隨著所述NAND快閃記憶體裝置的使用將所述NAND快閃記憶體內的空閒塊中的一部分轉換成所述保留塊而增加。
根據一個實施例,所述節省儲存空間管理器可以在減少
所述邏輯位址空間時使所述記憶體控制器對所述NAND快閃記憶體內的所述運行時的壞塊進行不可使用處理(retire)。
根據一個實施例,所述節省儲存空間管理器可以使所述記憶體控制器在對所述NAND快閃記憶體內的所述運行時的壞塊進行不可使用處理之前將所述運行時的壞塊的有效資料移動到空閒塊。
根據一個實施例,所述節省儲存空間管理器在每次所述運行時的壞塊的所述個數大於基準個數時使所述檔案系統減少所述邏輯位址空間,所述基準個數可以隨著所述NAND快閃記憶體裝置的使用而增大。
為達成本發明的一個目的,本發明的實施例的NAND快閃記憶體裝置可包括至少一NAND快閃記憶體及控制所述NAND快閃記憶體的記憶體控制器。其中,所述記憶體控制器可包括監控所述NAND快閃記憶體中發生的運行時的壞塊的個數與位置,監控主機裝置所具有的檔案系統的邏輯位址使用現況,在所述運行時的壞塊的所述個數增加時減少所述檔案系統可用的邏輯位址空間的節省儲存空間管理器。
為達成本發明的一個目的,本發明的實施例的主機裝置可包括檔案系統及從所述檔案系統接收指令並提供給NAND快閃記憶體裝置的主機控制器。其中,所述主機控制器可包括監控所述NAND快閃記憶體裝置所具有的至少一NAND快閃記憶體中發生的運行時的壞塊的個數與位置,監控所述檔案系統的邏輯位址
使用現況,在所述運行時的壞塊的所述個數增加時減少所述檔案系統可用的邏輯位址空間的節省儲存空間管理器。
本發明的實施例的非揮發性記憶體系統包括NAND快閃記憶體裝置(在此,NAND快閃記憶體裝置包括NAND快閃記憶體及控制NAND快閃記憶體的記憶體控制器)及主機裝置(在此,主機裝置包括檔案系統及從檔案系統接收指令並提供給NAND快閃記憶體裝置的主機控制器),還包括監控主機裝置或NAND快閃記憶體裝置的NAND快閃記憶體中發生的運行時的壞塊的個數與位置,監控檔案系統的邏輯位址使用現況,在NAND快閃記憶體中發生的運行時的壞塊的個數增加時減少檔案系統可用的邏輯位址空間的節省儲存空間管理器,因此NAND快閃記憶體內的運行時的壞塊增加導致NAND快閃記憶體裝置無法為主機裝置提供足夠的邏輯位址空間的情況下(即,判定NAND快閃記憶體裝置的壽命已盡的情況下)也能夠繼續使用NAND快閃記憶體裝置,確保其無誤操作。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
100:非揮發性記憶體系統
120:NAND快閃記憶體裝置
122:NAND快閃記憶體
124:記憶體控制器
126:快閃記憶體轉換層
140:主機裝置
142:檔案系統
144:主機控制器
160:節省儲存空間管理器
DUM:虛擬檔案
FLA:第一邏輯位址
LAS:第二邏輯位址空間
ORG:第一邏輯位址空間
REA:回收的邏輯位址
S110、S120、S130、S140、S150、S210、S220、S230、S240、S250、S260、S310、S320、S330、S340、S350、S360:步驟
SLA:第二邏輯位址
圖1是顯示本發明的實施例的非揮發性記憶體系統的方塊
圖。
圖2a是顯示在圖1的非揮發性記憶體系統中節省儲存空間管理器包含於主機裝置的一例的示意圖。
圖2b是顯示在圖1的非揮發性記憶體系統中節省儲存空間管理器包含於NAND快閃記憶體裝置的一例的示意圖。
圖3是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器減少邏輯位址空間的一例的示意圖。
圖4是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器減少邏輯位址空間的另一例的示意圖。
圖5是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器減少邏輯位址空間的又一例的示意圖。
圖6是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器確認減少邏輯位址空間的一例的流程圖。
圖7是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器確認減少邏輯位址空間的另一例的流程圖。
圖8是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器確認減少邏輯位址空間的又一例的流程圖。
以下參見附圖更具體地說明本發明的優選實施例。對附圖上的相同構成要素使用相同的附圖標標記,並省略對相同的構成要素進行重複說明。
圖1是顯示本發明的實施例的非揮發性記憶體系統的方塊圖,圖2a是顯示在圖1的非揮發性記憶體系統中節省儲存空間管理器包含於主機裝置的一例的示意圖,圖2b是顯示在圖1的非揮發性記憶體系統中節省儲存空間管理器包含於NAND快閃記憶體裝置的一例的示意圖。
參見圖1至圖2b,非揮發性記憶體系統100可包括NAND快閃記憶體裝置120及主機裝置140。在此,非揮發性記憶體系統100還可以包括包含於NAND快閃記憶體裝置120或包含於主機裝置140的節省儲存空間管理器(save storage manager;SSM)160。
NAND快閃記憶體裝置120可包括至少一NAND快閃記憶體122及控制NAND快閃記憶體122的記憶體控制器124。為便於說明,圖1示出NAND快閃記憶體裝置120包括一個NAND快閃記憶體122,但NAND快閃記憶體裝置120可包括多個NAND快閃記憶體122。主機裝置140可具有檔案系統142及從檔案系統142接收指令並提供給NAND快閃記憶體裝置120的主機控制器144。通常,NAND快閃記憶體裝置120基於NAND快閃記憶體122的物理結構對包含於NAND快閃記憶體122的記憶體單元執行寫入操作、讀取操作及擦除操作,相比於隨機存取記憶體裝置(例如,動態(dynamic random access memory;DRAM)裝置等)具有諸多局限性。具體來講,NAND快閃記憶體裝置120基於NAND快閃記憶體122的物理結構對包含於NAND快閃記憶體122的記憶體單元以頁為單位執行讀取操作與寫入操作,以塊為單位執行
擦除操作。因此,NAND快閃記憶體裝置120為支援檔案系統142而將快閃記憶體轉換層126設置於記憶體控制器124,利用快閃記憶體轉換層126執行讀取操作、寫入操作、擦除操作、合併(merge)操作、熱備份(copyback)操作、壓縮(compaction)操作、垃圾收集操作(或回收操作)、磨損均衡操作等。換而言之,記憶體控制器124通過運行以軟體方式構成的快閃記憶體轉換層126執行所述操作。在此,快閃記憶體轉換層126利用儲存有邏輯位址與物理位址之間的映射資訊的映射表執行將主機裝置140(即,檔案系統142)識別的邏輯位址轉換為NAND快閃記憶體裝置120的物理位址的位址映射操作。
通常,NAND快閃記憶體裝置120對NAND快閃記憶體122的塊反復執行寫入操作與擦除操作的情況下所述塊將會劣化(即,包含於所述塊的記憶體單元劣化)。在此,構成NAND快閃記憶體122的記憶體單元的壽命是有限的,對所述塊執行預定次數以上的寫入操作與擦除操作的情況下,包含於所述塊的記憶體單元的壽命已盡,因此所述塊無法正常操作。因此,快閃記憶體轉換層126將因所述劣化而發生不良或預計發生不良的塊,即,用保留塊替代運行時的壞塊或將運行時的壞塊的有效資料移動到空閒塊並對該運行時的壞塊進行不可使用處理,防止NAND快閃記憶體裝置120誤操作。然而,NAND快閃記憶體122內的運行時的壞塊繼續增加導致可用的物理位址空間減少的情況下,NAND快閃記憶體裝置120無法為主機裝置140提供足夠的邏輯位址空
間,因此判定NAND快閃記憶體裝置120壽命已盡並廢棄。但是,由於實際上主機裝置140使用由NAND快閃記憶體裝置120提供的所有邏輯位址空間的情況極少,因此儘管主機裝置140並非使用由NAND快閃記憶體裝置120提供的所有邏輯位址空間,卻以NAND快閃記憶體122內的運行時的壞塊的個數增加到預定個數以上為由整體廢棄NAND快閃記憶體裝置120並不優選。
由於這種原因,非揮發性記憶體系統100在NAND快閃記憶體122內的運行時的壞塊增加導致NAND快閃記憶體裝置120無法為主機裝置140提供足夠的邏輯位址空間的情況下(即,判定NAND快閃記憶體裝置120的壽命(EOL)已盡的情況下),可以減少主機裝置140的檔案系統142可用的邏輯位址空間以繼續使用NAND快閃記憶體裝置120,確保其無誤操作。為此,非揮發性記憶體系統100可包括監控NAND快閃記憶體裝置120的NAND快閃記憶體122中發生的運行時的壞塊的個數與位置、監控主機裝置140的檔案系統142的邏輯位址使用現況以及在所述運行時的壞塊的個數增加時減少主機裝置140的檔案系統142可用的邏輯位址空間的節省儲存空間管理器160。在此,節省儲存空間管理器160以軟體形式構成,能夠與主機裝置140的檔案系統142及包含於NAND快閃記憶體裝置120的記憶體控制器124的快閃記憶體轉換層126進行交互。根據一個實施例,如圖2a所示,節省儲存空間管理器160可包含於主機裝置140的主機控制器144。該情況下,節省儲存空間管理器160能夠與檔案系統142順
暢地進行交互。根據其他實施例,如圖2b所示,節省儲存空間管理器160可包含於NAND快閃記憶體裝置120的記憶體控制器124。該情況下,節省儲存空間管理器160能夠與包含於記憶體控制器124的快閃記憶體轉換層126順暢地進行交互。
節省儲存空間管理器160能夠監控NAND快閃記憶體裝置120的NAND快閃記憶體122中發生的運行時的壞塊的個數與位置。根據一個實施例,節省儲存空間管理器160可包括用於儲存關於所述運行時的壞塊的個數與位置的資訊的預定的表。在此,所述表不僅可以包括關於所述運行時的壞塊的個數與位置的資訊,還可以包括關於空閒塊的個數與位置的資訊、關於保留塊的個數與位置的資訊等。並且,節省儲存空間管理器160可監控主機裝置140的檔案系統142的邏輯位址使用現況(例如,追蹤(tracing)邏輯塊位址(logical block address;LBA)分配明細)。根據一個實施例,節省儲存空間管理器160可包括用於儲存關於所述邏輯位址使用現況的資訊的預定的表。並且,節省儲存空間管理器160可以隨著NAND快閃記憶體裝置120的NAND快閃記憶體122內運行時的壞塊的個數增加時減少主機裝置140的檔案系統142可用的邏輯位址空間。換而言之,節省儲存空間管理器160在NAND快閃記憶體122內的運行時的壞塊的個數增加導致NAND快閃記憶體裝置120物理上無法承擔本應該為主機裝置140提供的原來的邏輯位址空間的情況下,可以回收主機裝置140(即,檔案系統142)未使用的非使用邏輯位址空間或生成佔用
所述非使用邏輯位址空間的虛擬檔案,以此減少主機裝置140(即,檔案系統142)可用的邏輯位址空間,並將此告知給NAND快閃記憶體裝置120使得處理所述運行時的壞塊。如上,節省儲存空間管理器160縮小NAND快閃記憶體裝置120應物理承擔的用於主機裝置140的邏輯位址空間,因此即使所述運行時的壞塊被保留塊替代或被進行不可使用處理也能夠確保NAND快閃記憶體裝置120正常操作。
根據一個實施例,節省儲存空間管理器160能夠使檔案系統142回收檔案系統142未使用的非使用邏輯位址空間,即,第一邏輯位址的一部分,以此減少檔案系統142可用的邏輯位址空間。換而言之,節省儲存空間管理器160在NAND快閃記憶體122內的運行時的壞塊的個數增加導致NAND快閃記憶體裝置120物理上無法承擔本應該為主機裝置140提供的原來的邏輯位址空間的情況下,以回收檔案系統142未使用的第一邏輯位址的一部分的方式減少檔案系統142可用的邏輯位址空間。後續將參見圖3對此進行具體說明。根據其他實施例,節省儲存空間管理器160可以使檔案系統142對檔案系統142正在使用的使用邏輯位址空間,即,第二邏輯位址執行碎片移除操作,連續地再分配(reallocation)檔案系統142未使用的非使用邏輯位址空間,即,第一邏輯位址後回收第一邏輯位址的一部分,以此減少檔案系統142可用的邏輯位址空間。換而言之,節省儲存空間管理器160在NAND快閃記憶體122內的運行時的壞塊的個數增加導致NAND
快閃記憶體裝置120物理上無法承擔本應該為主機裝置140提供的原來的邏輯位址空間的情況下,通過對檔案系統142正在使用的第二邏輯位址執行碎片移除操作連續地再分配檔案系統142未使用的第一邏輯位址後回收第一邏輯位址的一部分的方式減少檔案系統142可用的邏輯位址空間。後續參見圖4對此進行具体說明。根據又一實施例,節省儲存空間管理器160可以使檔案系統142生成佔用檔案系統142未使用的非使用邏輯位址空間,即,第一邏輯位址的一部分的虛擬檔案,以此減少檔案系統142可用的邏輯位址空間。換而言之,節省儲存空間管理器160在NAND快閃記憶體122內的運行時的壞塊的個數增加導致NAND快閃記憶體裝置120物理上無法承擔本應該為主機裝置140提供的原來的邏輯位址空間的情況下,通過向檔案系統142未使用的非使用邏輯位址空間,即,第一邏輯位址的一部分分配虛擬檔案的方式減少檔案系統142可用的邏輯位址空間。後續參見圖5對此進行具体說明。
另外,節省儲存空間管理器160可以通過多種方式確認是否執行減少檔案系統142可用的邏輯位址空間的操作。根據一個實施例,保留塊在製造NAND快閃記憶體裝置120時被設定後未隨NAND快閃記憶體裝置120的使用而增加的情況下,節省儲存空間管理器160可以在每次NAND快閃記憶體122內的運行時的壞塊的個數大於基準個數時使檔案系統142減少檔案系統142可用的邏輯位址空間。在此,所述基準個數可隨著NAND快閃記
憶體裝置120的使用而增大。該情況下,節省儲存空間管理器160可以使記憶體控制器124用保留塊替代NAND快閃記憶體122內的運行時的壞塊。後續參見圖6對此進行具体說明。根據其他實施例,保留塊在製造NAND快閃記憶體裝置120時被設定後因隨著NAND快閃記憶體裝置120的使用將NAND快閃記憶體122內的空閒塊中一部分轉換為保留塊而增加的情況下,節省儲存空間管理器160可以在每次NAND快閃記憶體122內的運行時的壞塊的個數大於基準個數時使檔案系統142減少檔案系統142可用的邏輯位址空間。在此,所述基準個數可隨著NAND快閃記憶體裝置120的使用而增大。該情況下,節省儲存空間管理器160可以使記憶體控制器124用保留塊替代NAND快閃記憶體122內的運行時的壞塊。後續參見圖7對此進行具体說明。根據又一實施例,NAND快閃記憶體122未應用保留塊的情況下,節省儲存空間管理器160可以在每次NAND快閃記憶體122內的運行時的壞塊的個數大於基準個數時使檔案系統142減少檔案系統142可用的邏輯位址空間。在此,所述基準個數可以隨著NAND快閃記憶體裝置120的使用而增大。該情況下,節省儲存空間管理器160可以使記憶體控制器124將NAND快閃記憶體122內的運行時的壞塊的有效資料移動到空閒塊,對所述運行時的壞塊進行不可使用處理。後續參見圖8對此進行具体說明。
如上,非揮發性記憶體系統100包括NAND快閃記憶體裝置120(在此,NAND快閃記憶體裝置120包括NAND快閃記憶
體122及控制NAND快閃記憶體122的記憶體控制器124)及主機裝置140(在此,主機裝置140包括檔案系統142及從檔案系統142接收指令並提供給NAND快閃記憶體裝置120的主機控制器144),而且包括監控主機裝置140或NAND快閃記憶體裝置120的NAND快閃記憶體122中發生的運行時的壞塊的個數與位置、監控檔案系統142的邏輯位址使用現況以及在NAND快閃記憶體122中發生的運行時的壞塊的個數增加時減少檔案系統142可用的邏輯位址空間的節省儲存空間管理器160,因此NAND快閃記憶體122內的運行時的壞塊增加導致NAND快閃記憶體裝置120無法為主機裝置140提供足夠的邏輯位址空間的情況下(即,判定NAND快閃記憶體裝置120的壽命已盡的情況下)也能夠繼續使用NAND快閃記憶體裝置120,確保其無誤操作。根據一個實施例,包含於非揮發性記憶體系統100的NAND快閃記憶體裝置120可以由eMMC(embedded multi media card)構成。該情況下,減少檔案系統142可用的邏輯位址空間的節省儲存空間管理器160的操作可以與分區大小調節功能(partition size adjustment function)、eMMC動態容量(eMMC dynamic capacity)功能、協定指令(vendor command)功能等連動。但這只是例示而已,包含於非揮發性記憶體系統100的NAND快閃記憶體裝置120可以由固態硬碟(solid state drive;SSD)、SD卡(secure digital card;SDCARD)、通用快閃記憶體(universal flash storage;UFS)、CF卡(compact flash card)、記憶棒(memory stick)、XD圖像卡(XD picture card)等構成。
圖3是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器減少邏輯位址空間的一例的示意圖。
參見圖3,節省儲存空間管理器160在NAND快閃記憶體122內的運行時的壞塊的個數增加導致NAND快閃記憶體裝置120物理上無法承擔本應該為主機裝置140提供的原來的邏輯位址空間,即,第一邏輯位址空間ORG的情況下,可以通過使檔案系統142回收檔案系統142未使用的非使用邏輯位址空間,即,第一邏輯位址FLA的一部分,將檔案系統142可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS。即,節省儲存空間管理器160可以通過使主機裝置140(即,檔案系統142)無法再使用第一邏輯位址空間ORG中第一邏輯位址FLA的一部分(即,回收的邏輯位址REA),將檔案系統142可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS。例如,檔案系統142可以將回收的邏輯位址REA標記(mark)為無效空間(invalid space)進行管理,以防止對回收的邏輯位址REA進行存取(access)。另外,節省儲存空間管理器160可以向NAND快閃記憶體裝置120告知主機裝置140(即,檔案系統142)可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS,使NAND快閃記憶體裝置120處理NAND快閃記憶體122中發生的運行時的壞塊。
圖4是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器減少邏輯位址空間的另一例的示意圖。
參見圖4,節省儲存空間管理器160在NAND快閃記憶體122內的運行時的壞塊的個數增加導致NAND快閃記憶體裝置120物理上無法承擔本應該為主機裝置140提供的原來的邏輯位址空間,即,第一邏輯位址空間ORG的情況下,可以通過使檔案系統142對檔案系統142正在使用的使用邏輯位址空間,即,第二邏輯位址SLA執行碎片移除操作(即,用整理碎片(DEFRAGMENTATION)表示)以連續地再分配檔案系統142未使用的非使用邏輯位址空間,即,第一邏輯位址FLA後,回收第一邏輯位址FLA的一部分,將檔案系統142可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS。即,節省儲存空間管理器160在第一邏輯位址FLA通過所述碎片移除操作連續地再分配(即,第一邏輯位址FLA彙集)時,可以通過使主機裝置140(即,檔案系統142)無法再使用第一邏輯位址空間ORG中第一邏輯位址FLA的一部分(即,回收的邏輯位址REA),將檔案系統142可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS。例如,檔案系統142可以將回收的邏輯位址REA標記為無效空間進行管理,以防止對回收的邏輯位址REA進行存取。另外,節省儲存空間管理器160可以向NAND快閃記憶體裝置120告知主機裝置140(即,檔案系統142)可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS,使NAND快閃記憶體裝置120處理NAND快閃記憶體122中發生的運行時的壞塊。
圖5是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器減少邏輯位址空間的又一例的示意圖。
參見圖5,節省儲存空間管理器160在NAND快閃記憶體122內的運行時的壞塊的個數增加導致NAND快閃記憶體裝置120物理上無法承擔本應該為主機裝置140提供的原來的邏輯位址空間,即,第一邏輯位址空間ORG的情況下,可以通過使檔案系統142生成檔案系統142未使用的非使用邏輯位址空間,即,佔用第一邏輯位址FLA的一部分的虛擬檔案(DUM),將檔案系統142可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS。即,節省儲存空間管理器160可以通過使主機裝置140(即,檔案系統142)無法再使用第一邏輯位址空間ORG中第一邏輯位址FLA的一部分,將檔案系統142可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS。如上,節省儲存空間管理器160可通過向檔案系統142未使用的非使用邏輯位址空間,即,第一邏輯位址FLA的一部分分配虛擬檔案的方式實質性縮小檔案系統142可用的邏輯位址空間。另外,節省儲存空間管理器160可以向NAND快閃記憶體裝置120告知主機裝置140(即,檔案系統142)可用的邏輯位址空間從第一邏輯位址空間ORG減少到第二邏輯位址空間LAS,使NAND快閃記憶體裝置120處理NAND快閃記憶體122中發生的運行時的壞塊。
圖6是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器確認減少邏輯位址空間的一例的流程圖。
參見圖6,圖6顯示包括NAND快閃記憶體裝置120的非揮發性記憶體系統100中的節省儲存空間管理器160減少邏輯位址空間,其中NAND快閃記憶體裝置120以利用製造NAND快閃記憶體裝置120時設定的保留塊一對一替代NAND快閃記憶體122內的運行時的壞塊的方式操作。在此,保留塊在製造NAND快閃記憶體裝置120時被設定後不隨NAND快閃記憶體裝置120的使用而增加。即,可在製造NAND快閃記憶體裝置120時設定預計壽命期間所需個數(即,運行時的壞塊的預計發生個數)的保留塊,所述保留塊全部耗盡的情況下廢棄該NAND快閃記憶體裝置120。具體來講,節省儲存空間管理器160可以確認NAND快閃記憶體122中發生的運行時的壞塊的個數(S110),確認NAND快閃記憶體122中發生的運行時的壞塊的個數是否大於基準個數(S120)。在此,NAND快閃記憶體122中發生的運行時的壞塊的個數不大於基準個數時,節省儲存空間管理器160可繼續重複所述步驟S110、S120。反之,NAND快閃記憶體122中發生的運行時的壞塊的個數大於基準個數時,節省儲存空間管理器160可以使檔案系統142減少檔案系統142可用的邏輯位址空間(S130)。在此,節省儲存空間管理器160可以向NAND快閃記憶體裝置120(即,記憶體控制器124)告知檔案系統142可用的邏輯位址空間減少,使記憶體控制器124用保留塊替代NAND快閃記憶體122內的運行時的壞塊(S140)。之後,節省儲存空間管理器160增大用於與運行時的壞塊的個數進行比較的基準個數(S150),根據增大的
基準個數重複所述步驟S110、S120、S130、S140及S150。如上,節省儲存空間管理器160直至製造NAND快閃記憶體裝置120時設定的保留塊全部耗盡為止,每次NAND快閃記憶體122內的運行時的壞塊的個數大於基準個數時使檔案系統142減少檔案系統142可用的邏輯位址空間,從而能夠防止儘管還有製造NAND快閃記憶體裝置120時設定的保留塊卻以NAND快閃記憶體裝置120無法為主機裝置140提供足夠的邏輯位址空間為由整體廢棄。但圖6所示的方式不過是例示而已,應理解本發明的方式不限於此。
圖7是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器確認減少邏輯位址空間的另一例的流程圖。
參見圖7,圖7顯示包括NAND快閃記憶體裝置120的非揮發性記憶體系統100中的節省儲存空間管理器160減少邏輯位址空間,其中NAND快閃記憶體裝置120以利用保留塊一對一替代NAND快閃記憶體122內的運行時的壞塊的方式操作。在此,保留塊在製造NAND快閃記憶體裝置120時被設定後因隨著NAND快閃記憶體裝置120的使用將NAND快閃記憶體122內的空閒塊中一部分轉換為保留塊而增加(即,在NAND快閃記憶體裝置120的操作過程中進一步增加)。即,製造NAND快閃記憶體裝置120時設定少量的保留塊,NAND快閃記憶體裝置120的操作過程中保留塊的個數減少(即,替代運行時的壞塊)時,空閒塊中的一部分新登記(即,轉換)為保留塊。具體來講,節省儲存空間管理
器160可以確認NAND快閃記憶體122中發生的運行時的壞塊的個數(S210),確認NAND快閃記憶體122中發生的運行時的壞塊的個數是否大於基準個數(S220)。在此,NAND快閃記憶體122中發生的運行時的壞塊的個數不大於基準個數時,節省儲存空間管理器160可繼續重複所述步驟S210、S220。反之,NAND快閃記憶體122中發生的運行時的壞塊的個數大於基準個數時,節省儲存空間管理器160可以使檔案系統142減少檔案系統142可用的邏輯位址空間(S230)。在此,節省儲存空間管理器160可以向NAND快閃記憶體裝置120(即,記憶體控制器124)告知檔案系統142可用的邏輯位址空間減少,使記憶體控制器124將空閒塊中的一部分轉換為保留塊(S240),用保留塊替代NAND快閃記憶體122內的運行時的壞塊(S250)。之後,節省儲存空間管理器160增大用於與運行時的壞塊的個數進行比較的基準個數(S260),可根據增大的基準個數重複所述步驟S210、S220、S230、S240、S250及S260。如上,節省儲存空間管理器160可以在每次NAND快閃記憶體122內的運行時的壞塊的個數大於基準個數時使檔案系統142減少檔案系統142可用的邏輯位址空間,從而能夠防止儘管還有可新登記為保留塊的空閒塊卻以NAND快閃記憶體裝置120無法向主機裝置140提供足夠的邏輯位址空間為由整體廢棄。但圖7所示的方式不過是例示而已,應理解本發明的方式不限於此。
圖8是顯示圖1的非揮發性記憶體系統中的節省儲存空間管理器確認減少邏輯位址空間的又一例的流程圖。
參見圖8,圖8顯示包括NAND快閃記憶體裝置120的非揮發性記憶體系統100中的節省儲存空間管理器160減少邏輯位址空間,其中NAND快閃記憶體裝置120不另外運用用於替代NAND快閃記憶體122內的運行時的壞塊的保留塊,而是以將運行時的壞塊的有效資料移動到空閒塊後對運行時的壞塊進行不可使用處理的方式操作。具體來講,節省儲存空間管理器160可以確認NAND快閃記憶體122中發生的運行時的壞塊的個數(S310),確認NAND快閃記憶體122中發生的運行時的壞塊的個數是否大於基準個數(S320)。在此,NAND快閃記憶體122中發生的運行時的壞塊的個數不大於基準個數時,節省儲存空間管理器160可繼續重複所述步驟S310、S320。反之,NAND快閃記憶體122中發生的運行時的壞塊的個數大於基準個數時,節省儲存空間管理器160可以使檔案系統142減少檔案系統142可用的邏輯位址空間(S330)。在此,節省儲存空間管理器160可以向NAND快閃記憶體裝置120(即,記憶體控制器124)告知檔案系統142可用的邏輯位址空間減少,使記憶體控制器124將NAND快閃記憶體122內的運行時的壞塊的有效資料移動到空閒塊(S340),對所述運行時的壞塊進行不可使用處理(S350)。之後,節省儲存空間管理器160可增大用於與運行時的壞塊的個數進行比較的基準個數(S360),根據增大的基準個數重複所述步驟S310、S320、S330、S340、S350及S360。如上,節省儲存空間管理器160在每次NAND快閃記憶體122內的運行時的壞塊的個數大於基準個數時使檔案
系統142減少檔案系統142可用的邏輯位址空間,從而能夠防止儘管還有能夠移動運行時的壞塊的有效資料的空閒塊卻以NAND快閃記憶體裝置120無法為主機裝置140提供足夠的邏輯位址空間為由整體廢棄。但圖8所示的方式不過是例示而已,本發明的方式不限於此。
產業上的可應用性:
本發明可適用於包括主機裝置及NAND快閃記憶體裝置的非揮發性記憶體系統。例如,本發明可適用於eMMC、固態硬碟(SSD)、SD卡(SDCARD)、通用快閃記憶體(UFS)、CF卡、記憶棒、XD圖像卡等。
以上參見本發明的實施例進行了說明,而本技術領域的普通技術人員應當理解:在不脫離技術方案記載的本發明的思想及領域的範圍內,其依然可以對本發明進行多種修改及變更。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100:非揮發性記憶體系統
120:NAND快閃記憶體裝置
122:NAND快閃記憶體
124:記憶體控制器
126:快閃記憶體轉換層
140:主機裝置
142:檔案系統
144:主機控制器
160:節省儲存空間管理器
Claims (9)
- 一種非揮發性記憶體系統,包括:NAND快閃記憶體裝置,具有至少一NAND快閃記憶體及控制所述NAND快閃記憶體的記憶體控制器;主機裝置,具有檔案系統及從所述檔案系統接收指令以提供所述指令給所述NAND快閃記憶體裝置的主機控制器;以及節省儲存空間管理器,監控所述NAND快閃記憶體中發生的運行時的壞塊的個數與位置,監控所述檔案系統的邏輯位址使用現況,在所述運行時的壞塊的所述個數增加時減少所述檔案系統可用的邏輯位址空間,其中所述節省儲存空間管理器在減少所述邏輯位址空間時使所述記憶體控制器用保留塊替代(replace)所述NAND快閃記憶體內的所述運行時的壞塊。
- 如申請專利範圍第1項所述的非揮發性記憶體系統,其中所述節省儲存空間管理器包含於所述主機控制器或所述記憶體控制器,且所述節省儲存空間管理器也與所述檔案系統及包含於所述記憶體控制器的快閃記憶體轉換層進行交互(interaction)。
- 如申請專利範圍第1項所述的非揮發性記憶體系統,其中所述節省儲存空間管理器使所述檔案系統回收(recall)所述檔案系統未使用的第一邏輯位址中的一部分以減少所述邏輯位址空間。
- 如申請專利範圍第3項所述的非揮發性記憶體系統,其中所述節省儲存空間管理器使所述檔案系統在回收所述第一邏輯位址中的所述一部分之前對所述檔案系統正在使用的第二邏輯位址執行碎片移除(defragmentation)操作以連續地再分配所述第一邏輯位址。
- 如申請專利範圍第1項所述的非揮發性記憶體系統,其中所述節省儲存空間管理器使所述檔案系統生成佔用(occupy)所述檔案系統未使用的第一邏輯位址的一部分的虛擬檔案(dummy file)以減少所述邏輯位址空間。
- 如申請專利範圍第1項所述的非揮發性記憶體系統,其中所述節省儲存空間管理器在每次所述運行時的壞塊的所述個數大於基準個數時使所述檔案系統減少所述邏輯位址空間,並且使所述基準個數隨著所述NAND快閃記憶體裝置的使用而增大。
- 如申請專利範圍第6項所述的非揮發性記憶體系統,其中所述保留塊在製造所述NAND快閃記憶體裝置時被設定後不隨所述NAND快閃記憶體裝置的使用而增加。
- 如申請專利範圍第6項所述的非揮發性記憶體系統,其中所述保留塊在製造所述NAND快閃記憶體裝置時被設定後因隨著所述NAND快閃記憶體裝置的使用將所述NAND快閃記憶體內的空閒塊中的一部分轉換成所述保留塊而增加。
- 一種非揮發性記憶體系統,包括: NAND快閃記憶體裝置,具有至少一NAND快閃記憶體及控制所述NAND快閃記憶體的記憶體控制器;主機裝置,具有檔案系統及從所述檔案系統接收指令以提供所述指令給所述NAND快閃記憶體裝置的主機控制器;以及節省儲存空間管理器,監控所述NAND快閃記憶體中發生的運行時的壞塊的個數與位置,監控所述檔案系統的邏輯位址使用現況,在所述運行時的壞塊的所述個數增加時減少所述檔案系統可用的邏輯位址空間,其中所述節省儲存空間管理器在減少所述邏輯位址空間時使所述記憶體控制器對所述NAND快閃記憶體內的所述運行時的壞塊進行不可使用處理(retire),其中所述節省儲存空間管理器使所述記憶體控制器在對所述NAND快閃記憶體內的所述運行時的壞塊進行不可使用處理之前將所述運行時的壞塊的有效資料移動到空閒塊,其中所述節省儲存空間管理器在每次所述運行時的壞塊的所述個數大於基準個數時使所述檔案系統減少所述邏輯位址空間,並且使所述基準個數隨著所述NAND快閃記憶體裝置的使用而增大。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0055712 | 2018-05-16 | ||
KR1020180055712A KR102098240B1 (ko) | 2018-05-16 | 2018-05-16 | 비휘발성 메모리 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201947585A TW201947585A (zh) | 2019-12-16 |
TWI708262B true TWI708262B (zh) | 2020-10-21 |
Family
ID=68532568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107117292A TWI708262B (zh) | 2018-05-16 | 2018-05-21 | 非揮發性記憶體系統、nand快閃記憶體裝置及主機裝置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10613767B2 (zh) |
KR (1) | KR102098240B1 (zh) |
CN (1) | CN110502448A (zh) |
TW (1) | TWI708262B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102335004B1 (ko) * | 2019-12-23 | 2021-12-06 | 주식회사 디에이아이오 | 비휘발성 메모리 시스템 |
CN111933199B (zh) * | 2020-08-07 | 2021-03-30 | 深圳市纵维立方科技有限公司 | 基于存储器的数据读写方法、装置及存储介质 |
US11698854B2 (en) * | 2021-08-25 | 2023-07-11 | Western Digital Technologies, Inc. | Global extension of a logical-to-physical region of a data storage device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080282045A1 (en) * | 2007-05-09 | 2008-11-13 | Sudeep Biswas | Garbage collection in storage devices based on flash memories |
US20100235605A1 (en) * | 2009-02-13 | 2010-09-16 | Nir Perry | Enhancement of storage life expectancy by bad block management |
US20110099326A1 (en) * | 2009-10-27 | 2011-04-28 | Samsung Electronics Co., Ltd. | Flash memory system and defragmentation method |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1249585C (zh) * | 1997-12-16 | 2006-04-05 | Tdk株式会社 | 闪速存储器系统 |
JP2009003783A (ja) * | 2007-06-22 | 2009-01-08 | Toshiba Corp | 不揮発性メモリの制御装置及び制御方法及び記憶装置 |
WO2011044154A1 (en) * | 2009-10-05 | 2011-04-14 | Marvell Semiconductor, Inc. | Data caching in non-volatile memory |
KR20120003283A (ko) * | 2010-07-02 | 2012-01-10 | 삼성전자주식회사 | 데이터 저장 장치 및 그것의 배드 블록 관리 방법 |
US9823981B2 (en) * | 2011-03-11 | 2017-11-21 | Microsoft Technology Licensing, Llc | Backup and restore strategies for data deduplication |
KR101751506B1 (ko) * | 2011-03-28 | 2017-06-29 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 배드 영역 관리 방법 |
KR20130044657A (ko) * | 2011-10-24 | 2013-05-03 | 삼성전자주식회사 | 파일 시스템 및 그 제어 방법 |
KR20130115603A (ko) * | 2012-04-12 | 2013-10-22 | 주식회사 유니테크반도체 | 플래시 메모리를 포함하는 메모리 장치 및 예비 블록 관리 방법 |
CN103778065B (zh) * | 2012-10-25 | 2016-12-21 | 北京兆易创新科技股份有限公司 | 一种闪速存储器及其进行坏块管理的方法 |
KR102015053B1 (ko) * | 2013-02-20 | 2019-08-27 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 데이터 처리 방법 |
KR102098697B1 (ko) * | 2013-03-15 | 2020-04-08 | 삼성전자주식회사 | 비휘발성 메모리 시스템, 이를 포함하는 시스템 및 상기 비휘발성 메모리 시스템의 적응적 사용자 저장 영역 조절 방법 |
-
2018
- 2018-05-16 KR KR1020180055712A patent/KR102098240B1/ko active IP Right Grant
- 2018-05-18 US US15/983,176 patent/US10613767B2/en active Active
- 2018-05-21 TW TW107117292A patent/TWI708262B/zh active
- 2018-05-21 CN CN201810491109.8A patent/CN110502448A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080282045A1 (en) * | 2007-05-09 | 2008-11-13 | Sudeep Biswas | Garbage collection in storage devices based on flash memories |
US20100235605A1 (en) * | 2009-02-13 | 2010-09-16 | Nir Perry | Enhancement of storage life expectancy by bad block management |
US20110099326A1 (en) * | 2009-10-27 | 2011-04-28 | Samsung Electronics Co., Ltd. | Flash memory system and defragmentation method |
Also Published As
Publication number | Publication date |
---|---|
KR102098240B1 (ko) | 2020-04-08 |
KR20190131170A (ko) | 2019-11-26 |
US10613767B2 (en) | 2020-04-07 |
US20190354293A1 (en) | 2019-11-21 |
TW201947585A (zh) | 2019-12-16 |
CN110502448A (zh) | 2019-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10452535B2 (en) | Method for reusing destination block related to garbage collection in memory device, associated memory device and controller thereof, and associated electronic device | |
TWI700586B (zh) | 計算機系統及儲存裝置之控制方法 | |
JP5192352B2 (ja) | 記憶装置及びデータ格納領域管理方法 | |
JP4844639B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
US8560770B2 (en) | Non-volatile write cache for a data storage system | |
JP5031849B2 (ja) | フラッシュメモリのブロック管理方法 | |
TWI708262B (zh) | 非揮發性記憶體系統、nand快閃記憶體裝置及主機裝置 | |
TWI484334B (zh) | 非揮發記憶體的區域式管理方法 | |
US9213634B2 (en) | Efficient reuse of segments in nonoverwrite storage systems | |
JP2007179545A (ja) | 不揮発性メモリをキャッシュとして用いる保存装置及びその管理方法 | |
CN107817945B (zh) | 一种混合内存结构的数据读取方法和系统 | |
JP4666081B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
CN109558333B (zh) | 具有可变额外存储空间的固态存储设备命名空间 | |
US20130275655A1 (en) | Memory management method and memory controller and memory storage device using the same | |
US10430288B2 (en) | Data backup method, data recovery method and storage controller | |
JP2010152778A (ja) | 半導体記憶装置 | |
CN107077420B (zh) | 覆盖擦除块映射 | |
JP4703673B2 (ja) | メモリシステム | |
JP2022143231A (ja) | ストレージデバイス、ストレージシステム、及び制御方法 | |
JP4952742B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
CN111273855A (zh) | 存储装置和存储装置的操作方法 | |
TWI808011B (zh) | 資料處理方法及對應之資料儲存裝置 | |
KR102335004B1 (ko) | 비휘발성 메모리 시스템 | |
EP4075284A1 (en) | Method and storage device for improving memory performance for intensive read workloads | |
KR100892608B1 (ko) | 플래시 메모리의 오류블록 관리 방법 |