CN111400201A - 快闪存储器的数据整理方法、存储装置及控制电路单元 - Google Patents
快闪存储器的数据整理方法、存储装置及控制电路单元 Download PDFInfo
- Publication number
- CN111400201A CN111400201A CN202010196343.5A CN202010196343A CN111400201A CN 111400201 A CN111400201 A CN 111400201A CN 202010196343 A CN202010196343 A CN 202010196343A CN 111400201 A CN111400201 A CN 111400201A
- Authority
- CN
- China
- Prior art keywords
- garbage collection
- flash memory
- collection operation
- unit
- units
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
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
- 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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0817—Cache consistency protocols using directory methods
- G06F12/0822—Copy directories
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- 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
- G06F2212/1024—Latency reduction
-
- 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/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/7205—Cleaning, compaction, garbage collection, erase control
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5671—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge trapping in an insulator
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)
- Memory System (AREA)
Abstract
本发明提供一种快闪存储器的数据整理方法、快闪存储器控制电路单元与快闪存储器存储装置。本方法可应用于立体结构的快闪存储器、嵌入式存储器装置或固态硬盘。此方法包括:在背景模式执行背景垃圾收集操作;在背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停背景垃圾收集操作且退出背景模式;执行写入指令;以及完成执行写入指令后进入背景模式并继续执行背景垃圾收集操作。藉此,可优化前景模式中执行写入指令的执行效率。
Description
技术领域
本发明涉及一种存储器管理技术,尤其涉及一种快闪存储器的数据整理方法、快闪存储器存储装置及快闪存储器控制电路单元。
背景技术
数码相机、手机与MP3播放器在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器模块(rewritable non-volatilememory module)(例如,快闪存储器)具有数据非易失性、省电、体积小、读写速度快以及无机械结构等特性,因此适合内建于上述所举例的各种可携式多媒体装置中。因此,近年快闪存储器产业成为电子产业中相当热门的一环。
以快闪存储器为基础的存储器存储装置无法覆写已经存在的存储数据,而需要对存储数据通过垃圾收集(garbage collection)操作来释放实体抹除单元。一般来说,在执行垃圾收集过程中会先选择多个实体抹除单元当作来源实体抹除单元,并选择一个实体抹除单元当作目标实体抹除单元。接着将来源实体抹除单元中的有效数据搬移(或复制)至目标实体抹除单元,并且抹除来源实体抹除单元以释放出来源实体抹除单元的无效数据所占用的空间。然而,在目标实体抹除单元被关闭(即,被设定不能再被写入任何数据)之前,主机系统的每一个写入指令都要进行垃圾收集。如此一来,执行垃圾收集的期间会影响快闪存储器存储装置在已更新(dirty)状态下,主机系统的写入指令的运作效率,进而导致快闪存储器存储装置的延迟。因此,如何降低因为执行垃圾收集操作所导致的延迟,进而提升快闪存储器存储装置的运作效率,为本领域技术人员所关心的议题。
发明内容
本发明提供一种快闪存储器的数据整理方法、快闪存储器存储装置及快闪存储器控制电路单元,可通过动态选择垃圾收集操作的来源实体抹除单元和动态管理执行垃圾收集操作的时间来提高写入指令的执行效率。
本发明的范例实施例提供一种快闪存储器的数据整理方法,用于包括可复写式非易失性存储器模块的存储器存储装置,且所述快闪存储器的数据整理方法包括:在背景模式执行背景垃圾收集操作;在所述背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停所述背景垃圾收集操作且退出所述背景模式;执行所述写入指令;以及完成执行所述至少一写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作。
在本发明的一实施例中,所述方法还包括:在执行所述背景垃圾收集操作时,将一或多个来源实体抹除单元的有效数据复制至目标实体抹除单元;抹除所述一或多个来源实体抹除单元且释放所述一或多个来源实体抹除单元为空闲实体抹除单元;以及在暂停所述背景垃圾收集操作时,暂停将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元,并保留所述目标实体抹除单元且自所述背景模式进入前景模式以执行所述至少一个写入指令。
在本发明的一实施例中,在所述背景模式执行所述背景垃圾收集操作的步骤包括:依据多个实体抹除单元对应的有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
在本发明的一实施例中,执行所述至少一个写入指令的步骤包括:若在执行所述至少一个写入指令的过程中有执行前景垃圾收集操作,则依据所述实体抹除单元对应的最新所述有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
在本发明的一实施例中,所述背景垃圾收集操作与所述前景垃圾收集操作共用相同的所述目标实体抹除单元。
在本发明的一实施例中,用于判断执行所述背景垃圾收集操作的第一启动阀值大于判断执行所述前景垃圾收集操作的第二启动阀值。
在本发明的一实施例中,完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作的步骤更包括:在完成执行所述至少一个写入指令后经过预定时间后进入所述背景模式;依据所述实体抹除单元对应的最新所述有效计数执行所述背景垃圾收集操作,选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
本发明的范例实施例提供一种快闪存储器存储装置,包括连接接口单元、可复写式非易失性存储器模块以及快闪存储器控制电路单元。所述连接接口单元用以耦接至主机系统。所述快闪存储器控制电路单元耦接至所述连接接口单元与所述可复写式非易失性存储器模块,其中所述快闪存储器控制电路单元用以在背景模式执行背景垃圾收集操作。所述快闪存储器控制电路单元更用以在所述背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停所述背景垃圾收集操作且退出所述背景模式。所述快闪存储器控制电路单元更用以执行所述至少一个写入指令。并且,所述快闪存储器控制电路单元更用以完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作。
在本发明的一实施例中,所述快闪存储器控制电路单元更用以在执行所述背景垃圾收集操作时,将一或多个来源实体抹除单元的有效数据复制至目标实体抹除单元。所述快闪存储器控制电路单元更用以抹除所述一或多个来源实体抹除单元且释放所述一或多个来源实体抹除单元为空闲实体抹除单元。并且,所述快闪存储器控制电路单元更用以在暂停所述背景垃圾收集操作时,暂停将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元,并保留所述目标实体抹除单元且自所述背景模式进入前景模式以执行所述至少一个写入指令。
在本发明的一实施例中,在所述背景模式执行所述背景垃圾收集操作的运作中,所述快闪存储器控制电路单元更用以依据多个实体抹除单元对应的有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
在本发明的一实施例中,执行所述至少一个写入指令的运作中,若在执行所述至少一个写入指令的过程中有执行前景垃圾收集操作,则所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
在本发明的一实施例中,所述背景垃圾收集操作与所述前景垃圾收集操作共用相同的所述目标实体抹除单元。
在本发明的一实施例中,用于判断执行所述背景垃圾收集操作的第一启动阀值大于判断执行所述前景垃圾收集操作的第二启动阀值。
在本发明的一实施例中,完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作的运作中,所述快闪存储器控制电路单元更用以在完成执行所述至少一个写入指令后经过预定时间后进入所述背景模式。并且,所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数执行所述背景垃圾收集操作,选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
本发明的范例实施例提供一种快闪存储器控制电路单元,用于控制包括可复写式非易失性存储器模块的快闪存储器存储装置,且所述快闪存储器控制电路单元包括主机接口、存储器接口以及存储器管理电路。所述主机接口用以耦接至主机系统。所述存储器接口用以耦接至所述可复写式非易失性存储器模块。所述存储器管理电路耦接至所述主机接口与所述存储器接口。所述快闪存储器控制电路单元用以在背景模式执行背景垃圾收集操作。所述快闪存储器控制电路单元更用以在所述背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停所述背景垃圾收集操作且退出所述背景模式。所述快闪存储器控制电路单元更用以执行所述至少一个写入指令。并且,所述快闪存储器控制电路单元更用以完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作。
在本发明的一实施例中,所述快闪存储器控制电路单元更用以在执行所述背景垃圾收集操作时,将一或多个来源实体抹除单元的有效数据复制至目标实体抹除单元。所述快闪存储器控制电路单元更用以抹除所述一或多个来源实体抹除单元且释放所述一或多个来源实体抹除单元为空闲实体抹除单元。并且,所述快闪存储器控制电路单元更用以在暂停所述背景垃圾收集操作时,暂停将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元,并保留所述目标实体抹除单元且自所述背景模式进入前景模式以执行所述至少一个写入指令。
在本发明的一实施例中,在所述背景模式执行所述背景垃圾收集操作的运作中,所述快闪存储器控制电路单元更用以依据多个实体抹除单元对应的有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
在本发明的一实施例中,执行所述至少一个写入指令的运作中,若在执行所述至少一个写入指令的过程中有执行前景垃圾收集操作,则所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
在本发明的一实施例中,所述背景垃圾收集操作与所述前景垃圾收集操作共用相同的所述目标实体抹除单元。
在本发明的一实施例中,用于判断执行所述背景垃圾收集操作的第一启动阀值大于判断执行所述前景垃圾收集操作的第二启动阀值。
在本发明的一实施例中,完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作的运作中,所述快闪存储器控制电路单元更用以在完成执行所述至少一个写入指令后经过预定时间后进入所述背景模式。并且,所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数执行所述背景垃圾收集操作,选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
基于上述,在前景垃圾收集操作及背景垃圾收集操作可将来源实体抹除单元的有效数据搬移(或复制)至相同的目标实体抹除单元。并且在前景模式下,当可复写式非易失性存储器模块的空闲实体抹除单元数量不大于启动阀值,则依据多个实体抹除单元对应的有效计数选择多个来源实体抹除单元以执行垃圾收集操作。并且当可复写式非易失性存储器模块的空闲实体抹除单元数量大于启动阀值,则执行写入指令。换言之,通过动态选择垃圾收集操作的来源实体抹除单元和动态管理执行垃圾收集操作的时间,可有效提高写入指令的执行效率。
附图说明
图1是根据一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图;
图2是根据另一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图;
图3是根据另一范例实施例所示出的主机系统与存储器存储装置的示意图;
图4是根据本发明的一范例实施例所示出的存储器存储装置的概要方块图;
图5是根据本发明的一范例实施例所示出的存储器控制电路单元的概要方块图;
图6是根据本发明的一范例实施例所示出的管理可复写式非易失性存储器模块的示意图;
图7是根据本发明的一范例实施例所示出的快闪存储器的数据整理方法的范例;
图8是根据本发明的一范例实施例所示出的目标实体抹除单元的示意图;
图9是根据本发明的一范例实施例所示出的快闪存储器的数据整理方法的流程图;
图10是根据本发明的一范例实施例所示出的快闪存储器的数据整理方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
一般而言,存储器存储装置(亦称,存储器存储系统)包括可复写式非易失性存储器模块与控制器(亦称,控制电路单元)。通常存储器存储装置是与主机系统一起使用,以使主机系统可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图1是根据一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。且图2是根据另一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。
请参照图1与图2,主机系统11一般包括处理器111、随机存取存储器(randomaccess memory,RAM)112、只读存储器(read only memory,ROM)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114皆耦接至系统总线(system bus)110。
在本范例实施例中,主机系统11是通过数据传输接口114与存储器存储装置10耦接。例如,主机系统11可经由数据传输接口114将数据写入至存储器存储装置10或从存储器存储装置10中读取数据。此外,主机系统11是通过系统总线110与I/O装置12耦接。例如,主机系统11可经由系统总线110将输出信号传送至I/O装置12或从I/O装置12接收输入信号。
在本范例实施例中,处理器111、随机存取存储器112、只读存储器113及数据传输接口114是可设置在主机系统11的主机板20上。数据传输接口114的数目可以是一或多个。通过数据传输接口114,主机板20可以经由有线或无线方式耦接至存储器存储装置10。存储器存储装置10可例如是U盘201、存储卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器存储装置204。无线存储器存储装置204可例如是近距离无线通信(Near FieldCommunication Storage,NFC)存储器存储装置、无线传真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通信技术为基础的存储器存储装置。此外,主机板20也可以通过系统总线110耦接至全球定位系统(Global Positioning System,GPS)模块205、网络接口卡206、无线传输装置207、键盘208、屏幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主机板20可通过无线传输装置207存取无线存储器存储装置204。
在一范例实施例中,所提及的主机系统为可实质地与存储器存储装置配合以存储数据的任意系统。虽然在上述范例实施例中,主机系统是以电脑系统来作说明,然而,图3是根据另一范例实施例所示出的主机系统与存储器存储装置的示意图。请参照图3,在另一范例实施例中,主机系统31也可以是数码相机、摄影机、通信装置、音频播放器、视频播放器或平板电脑等系统,而存储器存储装置30可为其所使用的SD卡32、CF卡33或嵌入式存储装置34等各式非易失性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embeddedMMC,eMMC)341和/或嵌入式多芯片封装(embedded Multi Chip Package,eMCP)存储装置342等各类型将存储器模块直接耦接于主机系统的基板上的嵌入式存储装置。
图4是根据本发明的一范例实施例所示出的存储器存储装置的概要方块图。请参照图4,存储器存储装置10(在本实施例中即,快闪存储器存储装置)包括连接接口单元402、存储器控制电路单元404(在本实施例中即,快闪存储器控制电路单元)与可复写式非易失性存储器模块406。
连接接口单元402用以将存储器存储装置10耦接至主机系统11。存储器存储装置10可通过连接接口单元402与主机系统11通信。在本范例实施例中,连接接口单元402是相容于串行高级技术附件(Serial Advanced Technology Attachment,SATA)标准。然而,必须了解的是,本发明不限于此,连接接口单元402亦可以是符合并行高级技术附件(Parallel Advanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准、通用串行总线(Universal Serial Bus,USB)标准、SD接口标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II,UHS-II)接口标准、存储棒(MemoryStick,MS)接口标准、MCP接口标准、MMC接口标准、eMMC接口标准、通用快闪存储器(Universal Flash Storage,UFS)接口标准、eMCP接口标准、CF接口标准、整合式驱动电子接口(Integrated Device Electronics,IDE)标准或其他适合的标准。连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元404的芯片外。
存储器控制电路单元404用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令并且根据主机系统11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块406是耦接至存储器控制电路单元404并且用以存储主机系统11所写入的数据。可复写式非易失性存储器模块406可以是单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块(即,一个存储单元中可存储1个比特的快闪存储器模块)、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个比特的快闪存储器模块)、三阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储3个比特的快闪存储器模块)、四阶存储单元(Quad Level Cell,QLC)NAND型快闪存储器模块(即,一个存储单元中可存储4个比特的快闪存储器模块)、其他快闪存储器模块或其他具有相同特性的存储器模块。
可复写式非易失性存储器模块406中的每一个存储单元是以电压(以下亦称为临界电压)的改变来存储一或多个比特。具体来说,每一个存储单元的控制栅极(controlgate)与通道之间有一个电荷捕捉层。通过施予一写入电压至控制栅极,可以改变电荷补捉层的电子量,进而改变存储单元的临界电压。此改变存储单元的临界电压的操作亦称为“把数据写入至存储单元”或“程序化(programming)存储单元”。随着临界电压的改变,可复写式非易失性存储器模块406中的每一个存储单元具有多个存储状态。通过施予读取电压可以判断一个存储单元是属于哪一个存储状态,藉此取得此存储单元所存储的一或多个比特。
在本范例实施例中,可复写式非易失性存储器模块406的存储单元可构成多个实体程序化单元,并且此些实体程序化单元可构成多个实体抹除单元。具体来说,同一条字线上的存储单元可组成一或多个实体程序化单元。若每一个存储单元可存储2个以上的比特,则同一条字线上的实体程序化单元可至少可被分类为下实体程序化单元与上实体程序化单元。例如,一存储单元的最低有效位(Least Significant Bit,LSB)是属于下实体程序化单元,并且一存储单元的最高有效位(Most Significant Bit,MSB)是属于上实体程序化单元。一般来说,在MLC NAND型快闪存储器中,下实体程序化单元的写入速度会大于上实体程序化单元的写入速度,和/或下实体程序化单元的可靠度是高于上实体程序化单元的可靠度。
在本范例实施例中,实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。例如,实体程序化单元可为实体页面(page)或是实体扇(sector)。若实体程序化单元为实体页面,则此些实体程序化单元可包括数据比特区与冗余(redundancy)比特区。数据比特区包含多个实体扇,用以存储使用者数据,而冗余比特区用以存储系统数据(例如,错误更正码等管理数据)。在本范例实施例中,数据比特区包含32个实体扇,且一个实体扇的大小为512字节(byte,B)。然而,在其他范例实施例中,数据比特区中也可包含8个、16个或数目更多或更少的实体扇,并且每一个实体扇的大小也可以是更大或更小。另一方面,实体抹除单元为抹除的最小单位。亦即,每一实体抹除单元含有最小数目之一并被抹除的存储单元。例如,实体抹除单元为实体区块(block)。
图5是根据本发明的一范例实施例所示出的存储器控制电路单元的概要方块图。请参照图5,存储器控制电路单元404包括存储器管理电路502、主机接口504及存储器接口506。
存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路502的操作时,等同于说明存储器控制电路单元404的操作。
在本范例实施例中,存储器管理电路502的控制指令是以固件型式来实作。例如,存储器管理电路502具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在另一范例实施例中,存储器管理电路502的控制指令亦可以代码型式存储于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路502具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元404被致能时,微处理器单元会先执行此开机码来将存储于可复写式非易失性存储器模块406中的控制指令载入至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在另一范例实施例中,存储器管理电路502的控制指令亦可以一硬件型式来实作。例如,存储器管理电路502包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是耦接至微控制器。存储单元管理电路用以管理可复写式非易失性存储器模块406的存储单元或存储单元群组。存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令序列以将数据写入至可复写式非易失性存储器模块406中。存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令序列以从可复写式非易失性存储器模块406中读取数据。存储器抹除电路用以对可复写式非易失性存储器模块406下达抹除指令序列以将数据从可复写式非易失性存储器模块406中抹除。数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。写入指令序列、读取指令序列及抹除指令序列可分别包括一或多个程序码或指令码并且用以指示可复写式非易失性存储器模块406执行相对应的写入、读取及抹除等操作。在一范例实施例中,存储器管理电路502还可以下达其他类型的指令序列给可复写式非易失性存储器模块406以指示执行相对应的操作。
主机接口504是耦接至存储器管理电路502。存储器管理电路502可通过主机接口504与主机系统11通信。主机接口504可用以接收与识别主机系统11所传送的指令与数据。例如,主机系统11所传送的指令与数据可通过主机接口504来传送至存储器管理电路502。此外,存储器管理电路502可通过主机接口504将数据传送至主机系统11。在本范例实施例中,主机接口504是相容于SATA标准。然而,必须了解的是本发明不限于此,主机接口504亦可以是相容于PATA标准、IEEE 1394标准、PCI Express标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口506是耦接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。具体来说,若存储器管理电路502要存取可复写式非易失性存储器模块406,存储器接口506会传送对应的指令序列。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示抹除数据的抹除指令序列、以及用以指示各种存储器操作(例如,改变读取电压电平或执行垃圾收集操作等)的相对应的指令序列。这些指令序列例如是由存储器管理电路502产生并且通过存储器接口506传送至可复写式非易失性存储器模块406。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或代码。例如,在读取指令序列中,会包括读取的识别码、存储器地址等信息。
在一范例实施例中,存储器控制电路单元404还包括错误检查与校正电路508、缓冲存储器510与电源管理电路512。
错误检查与校正电路508是耦接至存储器管理电路502并且用以执行错误检查与校正操作以确保数据的正确性。具体来说,当存储器管理电路502从主机系统11中接收到写入指令时,错误检查与校正电路508会为对应此写入指令的数据产生对应的错误更正码(error correcting code,ECC)和/或错误检查码(error detecting code,EDC),并且存储器管理电路502会将对应此写入指令的数据与对应的错误更正码和/或错误检查码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的错误更正码和/或错误检查码,并且错误检查与校正电路508会依据此错误更正码和/或错误检查码对所读取的数据执行错误检查与校正操作。
缓冲存储器510是耦接至存储器管理电路502并且用以暂存来自于主机系统11的数据与指令或来自于可复写式非易失性存储器模块406的数据。电源管理电路512是耦接至存储器管理电路502并且用以控制存储器存储装置10的电源。
在一范例实施例中,图4的可复写式非易失性存储器模块406亦称为快闪(flash)存储器模块,且存储器控制电路单元404亦称为用于控制快闪存储器模块的快闪存储器控制器。在一范例实施例中,图5的存储器管理电路502亦称为快闪存储器管理电路。
图6是根据本发明的一范例实施例所示出的管理可复写式非易失性存储器模块的示意图。请参照图6,存储器管理电路502可将可复写式非易失性存储器模块406的实体单元610(0)~610(B)逻辑地分组至存储区601与替换区602。存储区601中的实体单元610(0)~610(A)是用以存储数据,而替换区602中的实体单元610(A+1)~610(B)则是用以替换存储区601中损坏的实体单元。例如,若从某一个实体单元中读取的数据所包含的错误过多而无法被更正时,此实体单元会被视为是损坏的实体单元。须注意的是,若替换区602中没有可用的实体抹除单元,则存储器管理电路502可能会将整个存储器存储装置10宣告为写入保护(write protect)状态,而无法再写入数据。
在本范例实施例中,每一个实体单元是指一个实体抹除单元。然而,在另一范例实施例中,一个实体单元亦可以是指一个实体地址、一个实体程序化单元或由多个连续或不连续的实体地址组成。存储器管理电路502会配置逻辑单元612(0)~612(C)以映射存储区601中的实体单元610(0)~610(A)。在本范例实施例中,每一个逻辑单元是指一个逻辑地址。然而,在另一范例实施例中,一个逻辑单元也可以是指一个逻辑程序化单元、一个逻辑抹除单元或者由多个连续或不连续的逻辑地址组成。此外,逻辑单元612(0)~612(C)中的每一者可被映射至一或多个实体单元。
存储器管理电路502可将逻辑单元与实体单元之间的映射关系(亦称为逻辑-实体地址映射关系)记录于至少一逻辑-实体地址映射表。当主机系统11欲从存储器存储装置10读取数据或写入数据至存储器存储装置10时,存储器管理电路502可根据此逻辑-实体地址映射表来执行对于存储器存储装置10的数据存取操作。
需先说明的是,以下说明存储器控制电路单元404的操作时,等同于说明存储器管理电路502的操作。
在本实施例提供的快闪存储器的数据整理方法可应用于立体(3D)结构的快闪存储器、嵌入式存储器装置或固态硬盘,但本发明不限于此。
在本实施例中,存储器存储装置10在背景模式执行背景垃圾收集操作。若存储器存储装置10在执行背景垃圾收集操作时接收到主机系统11的写入指令,则存储器存储装置10暂停背景垃圾收集操作且退出背景模式进入前景模式。接着,存储器存储装置10自主机系统11接收多个写入指令,在完成执行写入指令后进入背景模式并继续执行背景垃圾收集操作。具体来说,当存储器存储装置10接收到来自主机系统11的写入指令时,存储器控制电路单元404需立即执行并且回应主机系统11,以避免逾时。于此,为回应主机系统11所执行的程序的模式称为前景模式。相对地,存储器控制电路单元404亦可在闲置下(即,未收到主机系统11所传送的指令)运作。例如可在闲置时执行垃圾收集操作等。于此,不是为了回应主机系统11所执行的程序的模式称为背景模式。在本实施例中,存储器存储装置10在空闲时间(idle time)自前景模式进入背景模式,并在符合背景模式的垃圾收集条件时执行垃圾收集操作。
背景模式的垃圾收集条件可例如,存储器控制电路单元404判断可复写式非易失性存储器模块406的空闲实体抹除单元(free physical erasing unit)数量是否大于背景垃圾收集操作的启动阀值。并且,当可复写式非易失性存储器模块406的空闲实体抹除单元数量不大于启动阀值时,存储器控制电路单元404执行背景垃圾收集操作。在执行背景垃圾收集操作时,存储器控制电路单元404将多个来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元,并抹除来源实体抹除单元且释放来源实体抹除单元为空闲实体抹除单元。此外,在暂停背景垃圾收集操作时,存储器控制电路单元404暂停将来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元,并保留目标实体抹除单元且自背景模式进入前景模式以执行写入指令。
一般而言,若在前景模式执行写入指令时发生空闲实体抹除单元的数量不够时,存储器控制电路单元404会在完成执行一写入指令后执行垃圾收集操作。然而执行垃圾收集操作时必须停止执行其他写入指令,因而会造成延迟。
因此在本实施例提供的快闪存储器的数据整理方法中,存储器控制电路单元404在进入前景模式后,可以判断可复写式非易失性存储器模块406的空闲实体抹除单元数量是否大于前景垃圾收集操作的启动阀值。并且,当可复写式非易失性存储器模块406的空闲实体抹除单元数量不大于启动阀值时,存储器控制电路单元404执行前景垃圾收集操作。在一实施例中,用于判断执行背景垃圾收集操作的启动阀值大于判断执行前景垃圾收集操作的启动阀值。
在一实施例中,存储器控制电路单元404在背景模式执行背景垃圾收集操作时,依据多个实体抹除单元对应的有效计数(valid count)选择多个来源实体抹除单元执行垃圾收集操作。具体而言,存储器控制电路单元404在空闲实体抹除单元数量不大于启动阀值时,会依据各实体抹除单元对应的有效计数决定各实体抹除单元的排列顺序。接着在执行背景垃圾收集操作时,存储器控制电路单元404依据排序顺序选择可复写式非易失性存储器模块406包括的实体抹除单元中的一或多个作为来源实体抹除单元,并将来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元。若某一个来源实体抹除单元所存储的有效数据皆已被搬移(或复制),则存储器控制电路单元404抹除此来源实体抹除单元且释放已抹除的来源实体抹除单元为空闲实体抹除单元。存储器控制电路单元404可依据释放的空闲实体抹除单元的数量增加空闲实体抹除单元数量。
在一范例实施例中,各实体抹除单元的排列顺序关连于各实体抹除单元中有效数据的多寡(此处以有效计数表示的)。依据有效计数的数值大小,可决定在执行背景垃圾收集操作时作为来源实体抹除单元的实体抹除单元。在本范例实施例中,存储器控制电路单元404会依据各实体抹除单元对应的有效计数的数值大小,从有效计数的数值小的实体抹除单元排序到有效计数的数值大的实体抹除单元。在本范例实施例中,存储器控制电路单元404从有效计数的数值最小的实体抹除单元开始,依照排列顺序选择实体抹除单元作为来源实体抹除单元,并依据被选择的来源实体抹除单元执行垃圾收集操作。
在一实施例中,若存储器控制电路单元404在执行写入指令时判断可复写式非易失性存储器模块406的空闲实体抹除单元数量不大于前景垃圾收集操作的启动阀值,而需执行前景垃圾收集操作时,则存储器控制电路单元404依据实体抹除单元对应的有效计数的数值大小更新实体抹除单元的排列顺序。并且,存储器控制电路单元404依据更新的排列顺序选择可复写式非易失性存储器模块406包括的实体抹除单元中的一或多个作为来源实体抹除单元,并将来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元。
在一实施例中,背景垃圾收集操作与前景垃圾收集操作共用相同的目标实体抹除单元。具体而言,在本实施例中,存储器控制电路单元404在执行前景垃圾收集操作时,将来源实体抹除单元的有效数据搬移(或复制)至与执行背景垃圾收集操作时相同的目标实体抹除单元中。然而,本发明并不限于此,在另一实施例中,背景垃圾收集操作与前景垃圾收集操作也可使各自对应的目标实体抹除单元。
换句话说,由于在执行前景垃圾收集操作之前,已执行了一些写入操作,改变了实体抹除单元的有效计数,因此在本实施例提供的快闪存储器的数据整理方法中,存储器控制电路单元404在前景模式判断是否执行垃圾收集操作时,可以根据当前实体抹除单元的有效计数来动态地选择垃圾收集操作的来源实体抹除单元,而非以执行背景垃圾收集时的实体抹除单元的有效计数来选择来源实体抹除单元,而可达到释放最多实体抹除单元的目的。
在另一实施例中,在执行前景垃圾收集操作时,已抹除的来源实体抹除单元会被释放为空闲实体抹除单元,并且存储器控制电路单元404可依据释放的空闲实体抹除单元的数量增加空闲实体抹除单元数量。此时,空闲实体抹除单元数量增加,存储器控制电路单元404判断空闲实体抹除单元数量是否大于启动阀值。若存储器控制电路单元404判断空闲实体抹除单元数量不大于启动阀值,表示可复写式非易失性存储器模块406中空闲实体抹除单元的数量仍不足,因此存储器控制电路单元404继续执行前景垃圾收集操作。相对地,若存储器控制电路单元404判断空闲实体抹除单元数量大于启动阀值则停止执行前景垃圾收集操作,并继续执行写入指令。
另一方面,当空闲实体抹除单元数量大于启动阀值时,存储器控制电路单元404执行写入指令。此时,存储器存储装置10自主机系统11持续接收多个写入指令,执行写入指令时存储器控制电路单元404将写入指令对应的数据写入至可复写式非易失性存储器模块406中,因此空闲实体抹除单元的数量会减少。在执行写入指令时,存储器控制电路单元404可以判断空闲实体抹除单元数量是否大于启动阀值。若存储器控制电路单元404判断空闲实体抹除单元数量不大于启动阀值,则依据实体抹除单元对应的有效计数重新决定来源实体抹除单元的排列顺序,以依据更新的排列顺序执行垃圾收集操作。垃圾收集操作的具体方式如前所述,在此不再赘述。
在一实施例中,存储器控制电路单元404在完成执行写入指令后经过预定时间后进入背景模式。并且在进入背景模式后,存储器控制电路单元404依据实体抹除单元对应的最新有效计数的数值大小更新实体抹除单元的排列顺序,依据排列顺序选择可复写式非易失性存储器模块406包括的实体抹除单元中的一或多个作为来源实体抹除单元,并将来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元。于此,存储器控制电路单元404将来源实体抹除单元的有效数据搬移(或复制)至与暂停执行背景垃圾收集操作时相同的目标实体抹除单元。
图7是根据本发明的一范例实施例所示出的快闪存储器的数据整理方法的范例。图8是根据本发明的一范例实施例所示出的目标实体抹除单元的示意图。请参照图7,在本范例实施例中,存储器控制电路单元404的执行时间区分为空闲时间TIDLE及前景操作时间TFG。存储器控制电路单元404在空闲时间TIDLE进入背景模式。在背景模式中存储器控制电路单元404可以进行数据搬移(或复制)的操作,例如在本范例实施例中,存储器控制电路单元404在符合背景模式的垃圾收集条件时执行垃圾收集操作。具体而言,在时间点A至时间点B之间的空闲时间TIDLE进入背景垃圾收集时间TBG并执行背景垃圾收集操作。存储器控制电路单元404会依据可复写式非易失性存储器模块406包括的各实体抹除单元对应的有效计数的数值大小,从有效计数的数值小的实体抹除单元排序到有效计数的数值大的实体抹除单元。存储器控制电路单元404从有效计数的数值最小的实体抹除单元开始,依照排列顺序选择实体抹除单元作为来源实体抹除单元,并同时选择一个实体抹除单元作为目标实体抹除单元(例如图8中的实体抹除单元810)。在本实施例中,存储器控制电路单元404例如从实体抹除单元中选择5个实体抹除单元作为来源实体抹除单元。接着,存储器控制电路单元404依据被选择的来源实体抹除单元执行垃圾收集操作,将被选择的5个来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元810。存储器控制电路单元404抹除来源实体抹除单元且释放已抹除的来源实体抹除单元为空闲实体抹除单元,并依据释放的空闲实体抹除单元的数量增加空闲实体抹除单元数量。然而,存储器控制电路单元404可能会在背景垃圾收集操作未完成时接收主机系统11的写入指令。例如图7中的时间点B。
在时间点B,主机系统11发送多个写入指令,存储器存储装置10自主机系统11接收多个写入指令,并从空闲时间TIDLE进入前景操作时间TFG,亦即,退出背景模式进入前景模式来处理写入指令。此时,存储器控制电路单元404暂停背景垃圾收集操作且自背景模式进入前景模式。在本实施例中,由于背景垃圾收集操作暂停,在背景垃圾收集时选择5个来源实体抹除单元中的数据可能还没全部被搬移(或复制)至目标实体抹除单元。请参照图8,存储器控制电路单元404仅完成搬移(或复制)其中3个来源实体抹除单元的数据至目标实体抹除单元的子实体抹除单元810(0)~810(2),存储器控制电路单元404会保留目标实体抹除单元810并进入前景模式。在前景模式中,存储器控制电路单元404判断可复写式非易失性存储器模块406的空闲实体抹除单元数量是否大于启动阀值THFG。换句话说,存储器控制电路单元404判断空闲实体抹除单元数量是否满足在前景模式执行垃圾收集操作的条件。在本范例实施例中,时间点B时的空闲实体抹除单元数量不满足在前景模式执行垃圾收集操作的条件(即,空闲实体抹除单元数量大于启动阀值THFG),存储器控制电路单元404执行写入指令,并且不执行垃圾收集操作。
接着,存储器存储装置10在时间点B至时间点C(即,时间间隔T1)自主机系统11持续接收多个写入指令,执行写入指令时存储器控制电路单元404将写入指令对应的数据写入至可复写式非易失性存储器模块406中,因此空闲实体抹除单元数量会减少。在执行写入指令时,存储器控制电路单元404可以持续判断空闲实体抹除单元数量是否大于启动阀值THFG。
在时间点C,存储器控制电路单元404判断空闲实体抹除单元数量满足在前景模式执行垃圾收集操作的条件(即,空闲实体抹除单元数量不大于启动阀值THFG),则依据实体抹除单元对应的有效计数重新选择实体抹除单元中的一或多个作为来源实体抹除单元以执行垃圾收集操作。于此,重新选择的来源实体抹除单元可能会与先前(例如,背景模式)选择的来源实体抹除单元不同。具体而言,在时间点C,存储器控制电路单元404会依据各实体抹除单元对应的有效计数的数值大小,从有效计数的数值小的实体抹除单元排序到有效计数的数值大的实体抹除单元。存储器控制电路单元404从有效计数的数值最小的实体抹除单元开始,依照排列顺序选择实体抹除单元作为来源实体抹除单元,并同时选择一个实体抹除单元作为目标实体抹除单元。在本范例实施例中,存储器控制电路单元404执行前景垃圾收集操作,并将来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元801的子实体抹除单元810(3)~810(5)。存储器控制电路单元404抹除来源实体抹除单元且释放已抹除的来源实体抹除单元为空闲实体抹除单元,并依据释放的空闲实体抹除单元的数量增加空闲实体抹除单元数量。在另一实施例中,存储器控制电路单元404可以选择其他的目标实体抹除单元,本发明不限于此。
接着,存储器控制电路单元404在时间点C至时间点D(即,时间间隔T2)执行前景垃圾收集操作,持续释放空闲实体抹除单元,因此空闲实体抹除单元数量会增加。在执行垃圾收集操作时,存储器控制电路单元404可以持续判断空闲实体抹除单元数量是否大于启动阀值THFG。在时间点D,存储器控制电路单元404判断空闲实体抹除单元数量不满足在前景模式执行垃圾收集操作的条件(即,空闲实体抹除单元数量大于启动阀值THFG),则存储器控制电路单元404执行写入指令。
时间点D至时间点E(即,时间间隔T3)及时间点F至时间点G(即,时间间隔T5)的相关内容可参照前述时间点B至时间点C所述的实施内容,并且时间点E至时间点F(即,时间间隔T4)的相关内容可参照前述时间点C至时间点D所述的实施内容,在此不再赘述。在时间点E至时间点F,存储器控制电路单元404重新选择来源实体抹除单元以执行前景垃圾收集操作,并可将来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元801的子实体抹除单元810(6)~810(9)。在另一实施例中,存储器控制电路单元404可以选择其他的目标实体抹除单元,本发明不限于此。
接着,在时间点G,存储器存储装置10不再从主机系统11接收到写入指令,因此存储器控制电路单元404从前景操作时间TFG进入空闲时间TIDLE,亦即,退出前景模式进入背景模式。背景模式的相关内容可参照前述时间点A至时间点B所述的实施内容,在此不再赘述。在时间点G,存储器控制电路单元404可等待预设时间Tpreset,并在经过预设时间Tpreset后进入背景垃圾收集时间TBG并执行背景垃圾收集操作,并可重新选择来源实体抹除单元以将来源实体抹除单元的有效数据搬移(或复制)至目标实体抹除单元801的子实体抹除单元810(10)~810(14)。在另一实施例中,存储器控制电路单元404可以选择其他的目标实体抹除单元,本发明不限于此。最后,存储器控制电路单元404关闭目标实体抹除单元以完成垃圾收集操作。
图9是根据本发明的一范例实施例所示出的快闪存储器的数据整理方法的流程图。在步骤S902中,在背景模式执行背景垃圾收集操作。在步骤S904中,在背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停背景垃圾收集操作且退出背景模式。在步骤S906中,执行写入指令。在步骤S908中,完成执行写入指令后进入背景模式并继续执行背景垃圾收集操作。
图10是根据本发明的一范例实施例所示出的快闪存储器的数据整理方法的流程图。请参照图10,在步骤S1002中,暂停背景垃圾收集操作且退出背景模式进入前景模式。在步骤S1004中,判断可复写式非易失性存储器模块的空闲实体抹除单元数量是否大于启动阀值。在可复写式非易失性存储器模块的空闲实体抹除单元数量不大于启动阀值(步骤S1004,判断为否)时,依据多个实体抹除单元对应的有效计数选择多个来源实体抹除单元以执行前景垃圾收集操作(步骤S1006)。在可复写式非易失性存储器模块的空闲实体抹除单元数量大于启动阀值(步骤S1004,判断为是)时,执行写入指令(步骤S1008)。
然而,图9与图10中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图9与图10中各步骤可以实作为多个代码或是电路,本发明不加以限制。此外,图9与图10的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,本发明提供的快闪存储器的数据整理方法、快闪存储器存储装置及快闪存储器控制电路单元,可在响应主机系统的写入指令时,依据当前空闲实体抹除单元的状态动态判断垃圾收集操作是否可以等待。当发现当前空闲实体抹除单元数量超过启动阀值时,快闪存储器控制电路单元会将现在的垃圾收集操作先待决(pending)起来,并执行写入指令。并且在下次满足前景模式的垃圾收集条件时再执行垃圾收集操作。
综上所述,本发明在前景垃圾收集操作及背景垃圾收集操作可将来源实体抹除单元的有效数据搬移(或复制)至相同的目标实体抹除单元。并且在前景模式下,当可复写式非易失性存储器模块的空闲实体抹除单元数量不大于启动阀值,则依据多个实体抹除单元对应的有效计数选择多个来源实体抹除单元以执行垃圾收集操作。并且当可复写式非易失性存储器模块的空闲实体抹除单元数量大于启动阀值,则执行写入指令。基此,本发明通过动态选择垃圾收集操作的来源实体抹除单元和动态管理执行垃圾收集操作的时间,可减少在前景模式执行垃圾收集操作的机率,并尽可能的在背景模式执行垃圾收集操作。并且,通过动态选择垃圾收集操作的来源实体抹除单元,可快速释放空闲实体抹除单元。据以,可减少垃圾收集操作所造成的延迟,而有效提高写入指令的执行效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (21)
1.一种快闪存储器的数据整理方法,用于包括可复写式非易失性存储器模块的快闪存储器存储装置,且所述快闪存储器的数据整理方法包括:
在背景模式执行背景垃圾收集操作;
在所述背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停所述背景垃圾收集操作且退出所述背景模式;
执行所述至少一个写入指令;以及
完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作。
2.根据权利要求1所述的快闪存储器的数据整理方法,还包括:
在执行所述背景垃圾收集操作时,将一或多个来源实体抹除单元的有效数据复制至目标实体抹除单元;
抹除所述一或多个来源实体抹除单元且释放所述一或多个来源实体抹除单元为空闲实体抹除单元;以及
在暂停所述背景垃圾收集操作时,暂停将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元,并保留所述目标实体抹除单元且自所述背景模式进入前景模式以执行所述至少一个写入指令。
3.根据权利要求2所述的快闪存储器的数据整理方法,其中在所述背景模式执行所述背景垃圾收集操作的步骤包括:
依据多个实体抹除单元对应的有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
4.根据权利要求3所述的快闪存储器的数据整理方法,其中执行所述至少一个写入指令的步骤包括:
若在执行所述至少一个写入指令的过程中有执行前景垃圾收集操作,则依据所述实体抹除单元对应的最新所述有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
5.根据权利要求4所述的快闪存储器的数据整理方法,其中所述背景垃圾收集操作与所述前景垃圾收集操作共用相同的所述目标实体抹除单元。
6.根据权利要求4所述的快闪存储器的数据整理方法,其中用于判断执行所述背景垃圾收集操作的第一启动阀值大于判断执行所述前景垃圾收集操作的第二启动阀值。
7.根据权利要求3所述的快闪存储器的数据整理方法,其中完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作的步骤还包括:
在完成执行所述至少一个写入指令后经过预定时间后进入所述背景模式;
依据所述实体抹除单元对应的最新所述有效计数执行所述背景垃圾收集操作,选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
8.一种快闪存储器存储装置,包括:
连接接口单元,用以耦接至主机系统;
可复写式非易失性存储器模块;以及
快闪存储器控制电路单元,耦接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述快闪存储器控制电路单元用以在背景模式执行背景垃圾收集操作,
所述快闪存储器控制电路单元更用以在所述背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停所述背景垃圾收集操作且退出所述背景模式,
所述快闪存储器控制电路单元更用以执行所述至少一个写入指令,并且
所述快闪存储器控制电路单元更用以完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作。
9.根据权利要求8所述的快闪存储器存储装置,其中所述快闪存储器控制电路单元更用以在执行所述背景垃圾收集操作时,将一或多个来源实体抹除单元的有效数据复制至目标实体抹除单元,
所述快闪存储器控制电路单元更用以抹除所述一或多个来源实体抹除单元且释放所述一或多个来源实体抹除单元为空闲实体抹除单元,并且
所述快闪存储器控制电路单元更用以在暂停所述背景垃圾收集操作时,暂停将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元,并保留所述目标实体抹除单元且自所述背景模式进入前景模式以执行所述至少一个写入指令。
10.根据权利要求9所述的快闪存储器存储装置,其中在所述背景模式执行所述背景垃圾收集操作的运作中,
所述快闪存储器控制电路单元更用以依据多个实体抹除单元对应的有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
11.根据权利要求10所述的快闪存储器存储装置,其中执行所述少一个写入指令的运作中,
若在执行所述至少一个写入指令的过程中有执行前景垃圾收集操作,则所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
12.根据权利要求11所述的快闪存储器存储装置,其中所述背景垃圾收集操作与所述前景垃圾收集操作共用相同的所述目标实体抹除单元。
13.根据权利要求11所述的快闪存储器存储装置,其中用于判断执行所述背景垃圾收集操作的第一启动阀值大于判断执行所述前景垃圾收集操作的第二启动阀值。
14.根据权利要求10所述的快闪存储器存储装置,其中完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作的运作中,
所述快闪存储器控制电路单元更用以在完成执行所述至少一个写入指令后经过预定时间后进入所述背景模式,并且
所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数执行所述背景垃圾收集操作,选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
15.一种快闪存储器控制电路单元,用于控制包括可复写式非易失性存储器模块的快闪存储器存储装置,且所述快闪存储器控制电路单元包括:
主机接口,用以耦接至主机系统;
存储器接口,用以耦接至所述可复写式非易失性存储器模块;以及
存储器管理电路,耦接至所述主机接口与所述存储器接口,
其中所述快闪存储器控制电路单元用以在背景模式执行背景垃圾收集操作,
所述快闪存储器控制电路单元更用以在所述背景垃圾收集操作未完成时接收主机系统的至少一个写入指令,暂停所述背景垃圾收集操作且退出所述背景模式,
所述快闪存储器控制电路单元更用以执行所述至少一个写入指令,并且
所述快闪存储器控制电路单元更用以完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作。
16.根据权利要求15所述的快闪存储器控制电路单元,其中所述快闪存储器控制电路单元更用以在执行所述背景垃圾收集操作时,将一或多个来源实体抹除单元的有效数据复制至目标实体抹除单元,
所述快闪存储器控制电路单元更用以抹除所述一或多个来源实体抹除单元且释放所述一或多个来源实体抹除单元为空闲实体抹除单元,并且
所述快闪存储器控制电路单元更用以在暂停所述背景垃圾收集操作时,暂停将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元,并保留所述目标实体抹除单元且自所述背景模式进入前景模式以执行所述至少一个写入指令。
17.根据权利要求16所述的快闪存储器控制电路单元,其中在所述背景模式执行所述背景垃圾收集操作的运作中,
所述快闪存储器控制电路单元更用以依据多个实体抹除单元对应的有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
18.根据权利要求17所述的快闪存储器控制电路单元,其中执行所述至少一个写入指令的运作中,
若在执行所述至少一个写入指令的过程中有执行前景垃圾收集操作,则所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
19.根据权利要求18所述的快闪存储器控制电路单元,其中所述背景垃圾收集操作与所述前景垃圾收集操作共用相同的所述目标实体抹除单元。
20.根据权利要求18所述的快闪存储器控制电路单元,其中用于判断执行所述背景垃圾收集操作的第一启动阀值大于判断执行所述前景垃圾收集操作的第二启动阀值。
21.根据权利要求17所述的快闪存储器控制电路单元,其中完成执行所述至少一个写入指令后进入所述背景模式并继续执行所述背景垃圾收集操作的运作中,
所述快闪存储器控制电路单元更用以在完成执行所述至少一个写入指令后经过预定时间后进入所述背景模式,并且
所述快闪存储器控制电路单元更用以依据所述实体抹除单元对应的最新所述有效计数执行所述背景垃圾收集操作,选择所述实体抹除单元中的一或多个作为所述一或多个来源实体抹除单元,并将所述一或多个来源实体抹除单元的有效数据复制至所述目标实体抹除单元。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010196343.5A CN111400201B (zh) | 2020-03-19 | 2020-03-19 | 快闪存储器的数据整理方法、存储装置及控制电路单元 |
US16/851,116 US11341039B2 (en) | 2020-03-19 | 2020-04-17 | Data arrangement method of flash memory, flash memory storage device and flash memory control circuit unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010196343.5A CN111400201B (zh) | 2020-03-19 | 2020-03-19 | 快闪存储器的数据整理方法、存储装置及控制电路单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400201A true CN111400201A (zh) | 2020-07-10 |
CN111400201B CN111400201B (zh) | 2022-08-16 |
Family
ID=71432691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010196343.5A Active CN111400201B (zh) | 2020-03-19 | 2020-03-19 | 快闪存储器的数据整理方法、存储装置及控制电路单元 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11341039B2 (zh) |
CN (1) | CN111400201B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11341039B2 (en) * | 2020-03-19 | 2022-05-24 | Hefei Core Storage Electronic Limited | Data arrangement method of flash memory, flash memory storage device and flash memory control circuit unit |
CN116610597A (zh) * | 2023-07-20 | 2023-08-18 | 合肥康芯威存储技术有限公司 | 一种存储器件及其垃圾回收的控制方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11797199B2 (en) * | 2021-07-06 | 2023-10-24 | International Business Machines Corporation | Balancing utilization of memory pools of physical blocks of differing storage densities |
US11995342B2 (en) * | 2021-12-22 | 2024-05-28 | Micron Technology, Inc. | Host initiated garbage collection |
US12079481B2 (en) * | 2022-08-29 | 2024-09-03 | Micron Technology, Inc. | Memory block erase protocol |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101171641A (zh) * | 2005-04-01 | 2008-04-30 | 桑迪士克股份有限公司 | 在非易失性存储器的高速缓存操作中使用数据锁存器 |
CN101477492A (zh) * | 2009-01-21 | 2009-07-08 | 华中科技大学 | 一种用于固态硬盘的循环重写闪存均衡方法 |
US20150081996A1 (en) * | 2013-09-17 | 2015-03-19 | Red Hat, Inc. | Pauseless garbage collector write barrier |
US20150268879A1 (en) * | 2014-03-21 | 2015-09-24 | Phison Electronics Corp. | Memory management method, memory storage device and memory control circuit unit |
CN106326136A (zh) * | 2015-07-02 | 2017-01-11 | 广明光电股份有限公司 | 固态硬盘搜集垃圾区块的方法 |
CN106681935A (zh) * | 2016-12-29 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种固态硬盘垃圾回收方法 |
CN108334275A (zh) * | 2017-01-19 | 2018-07-27 | 新唐科技股份有限公司 | 数据储存方法及其装置 |
CN108733510A (zh) * | 2017-04-25 | 2018-11-02 | 慧荣科技股份有限公司 | 数据储存装置及映射表重建方法 |
CN109254926A (zh) * | 2017-07-13 | 2019-01-22 | 慧荣科技股份有限公司 | 数据储存装置及非挥发式存储器操作方法 |
CN109491588A (zh) * | 2017-09-13 | 2019-03-19 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
US20190243567A1 (en) * | 2018-02-02 | 2019-08-08 | Western Digital Technologies, Inc. | Adjustable performance parameters for ssds |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5560003A (en) * | 1992-12-21 | 1996-09-24 | Iowa State University Research Foundation, Inc. | System and hardware module for incremental real time garbage collection and memory management |
US5819304A (en) * | 1996-01-29 | 1998-10-06 | Iowa State University Research Foundation, Inc. | Random access memory assembly |
US5943692A (en) * | 1997-04-30 | 1999-08-24 | International Business Machines Corporation | Mobile client computer system with flash memory management utilizing a virtual address map and variable length data |
WO2003012646A1 (en) * | 2001-08-01 | 2003-02-13 | Valaran Corporation | Method and system for multimode garbage collection |
US20060184719A1 (en) * | 2005-02-16 | 2006-08-17 | Sinclair Alan W | Direct data file storage implementation techniques in flash memories |
US7730269B2 (en) * | 2006-08-29 | 2010-06-01 | International Business Machines Corporation | Load management to reduce communication signaling latency in a virtual machine environment |
US8185685B2 (en) * | 2007-12-14 | 2012-05-22 | Hitachi Global Storage Technologies Netherlands B.V. | NAND flash module replacement for DRAM module |
US8447918B2 (en) * | 2009-04-08 | 2013-05-21 | Google Inc. | Garbage collection for failure prediction and repartitioning |
US8452911B2 (en) * | 2010-09-30 | 2013-05-28 | Sandisk Technologies Inc. | Synchronized maintenance operations in a multi-bank storage system |
KR20150106778A (ko) | 2014-03-12 | 2015-09-22 | 삼성전자주식회사 | 메모리 시스템 및 메모리 시스템의 제어 방법 |
US10310770B2 (en) * | 2015-11-05 | 2019-06-04 | Hitachi, Ltd. | Nonvolatile memory device, and storage apparatus having nonvolatile memory device |
US9921956B2 (en) | 2016-07-20 | 2018-03-20 | Sandisk Technologies Llc | System and method for tracking block level mapping overhead in a non-volatile memory |
US10452282B2 (en) | 2017-04-07 | 2019-10-22 | Micron Technology, Inc. | Memory management |
US10423508B2 (en) * | 2017-08-11 | 2019-09-24 | Alibaba Group Holding Limited | Method and system for a high-priority read based on an in-place suspend/resume write |
KR102532084B1 (ko) * | 2018-07-17 | 2023-05-15 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
CN111400201B (zh) * | 2020-03-19 | 2022-08-16 | 合肥兆芯电子有限公司 | 快闪存储器的数据整理方法、存储装置及控制电路单元 |
-
2020
- 2020-03-19 CN CN202010196343.5A patent/CN111400201B/zh active Active
- 2020-04-17 US US16/851,116 patent/US11341039B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101171641A (zh) * | 2005-04-01 | 2008-04-30 | 桑迪士克股份有限公司 | 在非易失性存储器的高速缓存操作中使用数据锁存器 |
CN101477492A (zh) * | 2009-01-21 | 2009-07-08 | 华中科技大学 | 一种用于固态硬盘的循环重写闪存均衡方法 |
US20150081996A1 (en) * | 2013-09-17 | 2015-03-19 | Red Hat, Inc. | Pauseless garbage collector write barrier |
US20150268879A1 (en) * | 2014-03-21 | 2015-09-24 | Phison Electronics Corp. | Memory management method, memory storage device and memory control circuit unit |
CN106326136A (zh) * | 2015-07-02 | 2017-01-11 | 广明光电股份有限公司 | 固态硬盘搜集垃圾区块的方法 |
CN106681935A (zh) * | 2016-12-29 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种固态硬盘垃圾回收方法 |
CN108334275A (zh) * | 2017-01-19 | 2018-07-27 | 新唐科技股份有限公司 | 数据储存方法及其装置 |
CN108733510A (zh) * | 2017-04-25 | 2018-11-02 | 慧荣科技股份有限公司 | 数据储存装置及映射表重建方法 |
CN109254926A (zh) * | 2017-07-13 | 2019-01-22 | 慧荣科技股份有限公司 | 数据储存装置及非挥发式存储器操作方法 |
CN109491588A (zh) * | 2017-09-13 | 2019-03-19 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
US20190243567A1 (en) * | 2018-02-02 | 2019-08-08 | Western Digital Technologies, Inc. | Adjustable performance parameters for ssds |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11341039B2 (en) * | 2020-03-19 | 2022-05-24 | Hefei Core Storage Electronic Limited | Data arrangement method of flash memory, flash memory storage device and flash memory control circuit unit |
CN116610597A (zh) * | 2023-07-20 | 2023-08-18 | 合肥康芯威存储技术有限公司 | 一种存储器件及其垃圾回收的控制方法 |
CN116610597B (zh) * | 2023-07-20 | 2023-10-17 | 合肥康芯威存储技术有限公司 | 一种存储器件及其垃圾回收的控制方法 |
Also Published As
Publication number | Publication date |
---|---|
US11341039B2 (en) | 2022-05-24 |
US20210294737A1 (en) | 2021-09-23 |
CN111400201B (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111400201B (zh) | 快闪存储器的数据整理方法、存储装置及控制电路单元 | |
CN107590080B (zh) | 映射表更新方法、存储器控制电路单元及存储器存储装置 | |
CN110879793B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN107818808B (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
CN113885692B (zh) | 存储器效能优化方法、存储器控制电路单元以及存储装置 | |
CN107239225B (zh) | 存储器管理方法、存储器储存装置及存储器控制电路单元 | |
US11755242B2 (en) | Data merging method, memory storage device for updating copied L2P mapping table according to the physical address of physical unit | |
CN111737165B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN106775479B (zh) | 存储器管理方法、存储器储存装置及存储器控制电路单元 | |
CN112051971B (zh) | 数据整并方法、存储器存储装置及存储器控制电路单元 | |
CN110308876B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN111767005A (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN112394883B (zh) | 数据整并方法、存储器存储装置及存储器控制电路单元 | |
CN110096215B (zh) | 存储器管理方法、存储器储存装置及存储器控制电路单元 | |
CN112835536A (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
TWI738272B (zh) | 快閃記憶體之資料整理方法、快閃記憶體儲存裝置及快閃記憶體控制電路單元 | |
CN117632038B (zh) | 损耗平衡方法、存储器存储装置及存储器控制电路单元 | |
CN112445418B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
TWI793966B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI831366B (zh) | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN111813325B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN111414128B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN112114737B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN112015327B (zh) | 数据写入方法、存储器存储装置及存储器控制电路单元 | |
US20220147443A1 (en) | Data merge method, memory storage device, and memory control circuit unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |