CN101419573A - 一种存储管理的方法、***和存储设备 - Google Patents
一种存储管理的方法、***和存储设备 Download PDFInfo
- Publication number
- CN101419573A CN101419573A CNA2008101801482A CN200810180148A CN101419573A CN 101419573 A CN101419573 A CN 101419573A CN A2008101801482 A CNA2008101801482 A CN A2008101801482A CN 200810180148 A CN200810180148 A CN 200810180148A CN 101419573 A CN101419573 A CN 101419573A
- Authority
- CN
- China
- Prior art keywords
- block
- blank
- data
- module
- blank block
- 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.)
- Pending
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
- 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/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- 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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明实施例公开了一种存储管理的方法、***和存储设备,所述存储管理的方法包括:从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;在所述选出的一个或多个空白块上写入原目标块数据和更新数据;将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。通过本发明实施例,能够实现对存储设备中物理块的有效管理,提高写入数据的操作效率,节约***开销,保证存储设备中物理块使用的均衡性,从而延长存储器的使用寿命。
Description
技术领域
本发明涉及存储技术领域,特别涉及一种存储管理的方法、***和存储设备。
背景技术
SSD(Solid State Disk,固态硬盘)是由控制单元与存储单元组成的硬盘。控制单元负责读取、写入数据,存储单元负责存储数据。存储单元多采用非易失性的Flash(闪存)芯片作为存储介质。闪存具有特殊的写和擦除特征,从而导致存储器具有一些特殊的操作,一般操作流程为:首先将该次操作目标块的数据拷贝至RAM(Random-Access Memory,随机存取存储器)中,然后擦除该块,再更新RAM中的数据,最后回写到目标块中。现有技术中,典型的算法是维护对每块的擦写计数,并利用计数来定义冷热数据块并进行交换。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
其一,由于闪存的最小擦除单位为块,而最小写单位为页。基于闪存的该特性,闪存的写速度较低。另外,大多算法是在接收到新数据写指令时才进行Flash管理,回收分配空白块,这样也使写操作时间增多。其二,算法过于复杂,数据结构过多,致使***开销过大。其三,闪存可分为SLC(SingleLevel Cell,单层单元)单层式存储与MLC(Multi Level Cell,多层单元)多层式存储两种。两种介质的擦写寿命分别为:SLC大约10万次,MLC大约1万次。由于闪存的擦除次数有限,因此,如何均衡擦除闪存块,平均每块的擦除次数成为延长SSD使用寿命的关键问题。
发明内容
本发明实施例提供一种存储管理的方法、***和存储设备,以实现对存储器中物理块的有效管理,提高写入数据的操作效率,节约***开销,保证存储器中物理块使用的均衡性,从而延长存储器的使用寿命。
为达到上述目的,本发明实施例一方面提供一种存储管理的方法,包括以下步骤:
从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;
在所述选出的一个或多个空白块上写入原目标块数据和更新数据;
将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
另一方面,本发明实施例还提供一种存储设备,包括:
选择模块,用于从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;
输入模块,用于在所述选择模块选出的一个或多个空白块上写入原目标块数据和更新数据;
归类模块,用于将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
本发明实施例还提供一种存储管理***,包括:控制设备和存储设备,
所述控制设备,用于将任务命令向所述存储设备发送;
所述存储设备,用于执行所述控制设备发送的任务命令,包括:
选择模块,用于从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;
输入模块,用于在所述选择模块选出的一个或多个空白块上写入原目标块数据和更新数据;
归类模块,用于将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
与现有技术相比,本发明实施例具有以下优点:
通过根据预设的分组规则对存储器物理块进行分组,在每次执行写入数据任务时,到建立的空白块集合中选取一个或多个空白块,然后在选出的空白块上写入数据,减少写操作时间,有效保证了每次写入数据操作的快速执行;通过及时对无效数据块的擦除和搜索空白块,保证空白块数量满足写入大量数据的要求,另外,通过对物理块的静态均衡操作,保证对所有物理块擦除次数的均衡性,从而延长存储器的使用寿命。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种存储管理方法的流程图;
图2是本发明实施例中另一种数据写入流程图;
图3是本发明实施例中块组间转换示意图;
图4是本发明实施例中物理块静态均衡过程示意图;
图5是本发明实施例中存储设备的结构示意图;
图6是本发明实施例中存储管理***的结构示意图
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明各个实施例中,有效数据块、空白块、未擦除块和原目标块等指的是存储介质上的物理块,也就是存储介质上的物理块包括:有效数据块、空白块、未擦除块和原目标块等。
本发明实施例提供一种存储管理的方法,如图1所示,可以包括以下步骤:
S101、从根据预设的分组规则建立的空白块集合中选出一个或多个空白块。
其中,预设的分组规则具体可以包括:将已经被写入数据的有效数据块组成映射表集合,该映射表集合中的成员通过逻辑地址映射表中的逻辑地址读出;将未被写入数据的空白块组成空白块集合,该空白块集合中的成员通过对存储介质上至少一个物理块遍历获得;将已经被写入但未被擦除的无效数据块组成未擦除块集合,等等。
具体的,首先根据块擦除次数列表计算存储介质上至少一个物理块的平均擦除次数,然后在空白块集合中查找小于所述平均擦除次数的空白块,从小于所述平均擦除次数的空白块中选出一个或多个空白块。
S102、在所述选出的一个或多个空白块上写入原目标块数据和更新数据。
在空白块上写入原目标块数据和更新数据之后,将写入原目标块数据和更新数据的空白块的逻辑地址设置为原目标块的逻辑地址。
当所述空白块集合中的空白块被用完,暂停写入数据,搜索空白块和无效数据块;将搜索到的所述无效数据块进行擦除,使得所述无效数据块成为空白块;将擦除后的所述空白块和搜索到的所述空白块放入所述空白块集合中。
S103、将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
另外,本发明实施例提供的存储管理的方法,还可以包括以下步骤:
根据块擦除次数列表计算存储介质上至少一个物理块的平均擦除次数;在所述空白块集合中查找小于所述平均擦除次数的空白块;从所述小于所述平均擦除次数的空白块中选出一个或多个空白块。
本发明实施例提供的存储管理的方法,还可以包括以下步骤:
在所述逻辑地址映射表中查找所述映射表集合中擦除次数小于所述平均擦除次数的静态数据块;在所述空白块集合中查找一个擦除次数最多的空白块;在所述擦除次数最多的空白块上写入所述静态数据块数据;将所述静态数据块放入所述未擦除块集合中。
通过采用本发明实施例,在每次执行写入数据任务时,到建立的空白块集合中选取一个或多个空白块,然后在选出的空白块上写入数据,减少写操作时间,有效保证了每次写入数据的操作效率,节约***开销,实现对存储器中物理块的有效管理;通过及时对无效数据块的擦除和搜索空白块,保证空白块数量满足写入大量数据的要求;另外,通过对物理块的静态均衡操作,保证对所有物理块擦除次数的均衡性,从而延长存储器的使用寿命。
为了更清楚地说明本发明实施例,建立以下列表:
逻辑地址映射表:用于记录被写入数据的物理块的逻辑地址和该物理块的物理地址间基本的逻辑映射关系,物理块的逻辑地址和物理地址一一对应。
块擦除次数列表:用于记录存储介质上至少一个物理块被擦除的次数。
未擦除块列表:用于记录未被擦除的物理块。
根据以上列表,将固态硬盘SSD装置的Flash芯片上现有物理块分为三组:映射表组、空白块组和未擦除块组。
其中,
映射表组:用于管理已经被写入了数据的物理块,该组的成员可直接从逻辑地址映射表中读出,不需要再申请其他存储资源记录该部分内容。
空白块组:用于管理被擦除过的空白块,该组成员主要是在上电时通过对存储介质上至少一个物理块遍历获得。该组成员的多少可根据需要而定,一般要求比较多,以满足大量数据写入时的需要。在运行时,由擦除任务提供或空白块搜索任务提供。
未擦除块组:用于管理未被擦除的物理块,该组成员被记录在未擦除块列表中。在运行时,每次写入数据完成后,都有可能产生一个未擦除块。等待空闲时,将未擦除块进行擦除,然后放入空白块组中。
当有数据写入时,本发明实施例提供的具体实施方案如图2所示,可以包括以下步骤:
S201、从空白块组中选出一块空白块,将原目标块数据和更新数据写入该空白块中。
如果当空白块组中的空白块使用完后,而写数据的任务还在继续时,要先暂停写任务,搜索一定数量的空白块放入空白块组中,或者搜索到一定数量的无效数据块,将无效数据块擦除放入空白块组中之后再继续执行写数据的任务。
S202、将该空白块放入映射表组,更新逻辑地址映射表,将该空白块的逻辑地址设置为前目标快逻辑地址,完成新的地址映射。
S203、将原目标块放入未擦除块组,等待空闲时间擦除该目标块上的数据。
利用空闲时间对无效数据块上的数据进行擦除,保证了在写入数据时提高写操作的效率。
在写入数据过程中,一些物理块在空白块组、映射表组和未擦除块组间发生了身份转换,具体转换过程如图3所示:
301、在空白块组中选出一块空白块并写入数据。
302、将写入数据后的该空白块放入映射表组中,并更新逻辑地址映射表。
303、数据写入后,映射表组中原目标块中的数据不再有效,将该目标块放入未擦除块组中。
304、在空闲时,擦除未擦除块组中的无效数据块,将擦除后的物理块放入空白块组中。
305、当空闲时或空白块组中的空白块个数少于门限n(n可以根据存储介质的性质自行设定)时,通过对存储介质上至少一个物理块遍历搜索空白块,将搜索到的空白块放入空白块组中。
当所有任务处于空闲状态且离上一次静态均衡时间已经足够长的时候执行静态均衡任务,将映射表组中的静态数据块与空白块组中的擦除次数最多的空白块进行交换。静态数据块的条件为:EBC<AVC-th,其中,EBC为块擦除次数,AVC为块平均擦除次数,AVC根据块擦除次数列表计算得到,th根据不同的Flash而定,如1000。如图4所示,为闪存物理块静态均衡过程示意图。
在映射表列表中搜索有效数据块,同时,在空白块组中查找一个擦除次数最多的空白块。当查到的有效数据块被擦除次数EBC小于块平均擦除次数AVC-th时,将静态数据块上的数据写入该空白块,然后将两个物理块的数据地址进行交换,更新映射表列表。然后再继续查找静态数据块,直至上述映射表组中再没有擦除次数EBC小于AVC-th的有效数据块。
通过本发明实施例,充分利用了空闲时间对闪存进行管理,减少了每次写操作的时间,有效保证了写操作的快速执行;所有的空白块轮番操作,保证所有块被擦除的次数相近,空闲时的静态均衡操作,进一步保证所有块被擦除的均衡性,从而延长固态硬盘SSD的使用寿命。
本发明实施例方法的各个步骤可以根据实际需要对顺序进行调整。
需要说明的是,本发明实施例中提供的对闪存Flash管理方式,并不局限于单片Flash情况,可运用于多个Flash,或Flash阵列;另外,本发明实施例中提出将物理块分几个组,以及建几张表只为了说明本发明的原理,本发明并不局限于该情况。
本发明实施例还提供了一种存储设备,如图5所示,可以包括:选择模块501、输入模块503以及归类模块505,
其中,选择模块501用于从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;
输入模块503用于在选择模块501选出的一个或多个空白块上写入原目标块数据和更新数据;
归类模块505用于将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
另外,存储设备还可以包括:映射表管理模块507、空白块管理模块509、未擦除块管理模块511和地址更新模块513。
其中,映射表管理模块507用于将已经被写入数据的有效数据块组成所述映射表集合,所述映射表集合中的成员通过逻辑地址映射表中的逻辑地址读出;空白块管理模块509用于将未被写入数据的空白块组成所述空白块集合,所述空白块集合中的成员通过对存储介质上至少一个物理块遍历获得;未擦除块管理模块511用于将已经被写入但未被擦除的无效数据块组成所述未擦除块集合。
地址更新模块513,用于将通过输入模块503写入原目标块数据和更新数据的空白块的逻辑地址设置为所述原目标块的逻辑地址。
另外,存储设备还可以包括:搜索模块515,用于搜索空白块和无效数据块;擦除模块517,用于将搜索模块515搜索到的所述无效数据块进行擦除,使得所述无效数据块成为空白块;归类模块505还用于将擦除模块517擦除后的所述空白块和搜索模块515搜索到的所述空白块放入空白块管理模块509所管理的空白块集合中。
本发明实施例提供的存储设备还可以包括计算模块519,用于根据块擦除次数列表计算存储介质上至少一个物理块的平均擦除次数。
则选择模块501还可以包括:查找子模块5011,用于在空白块管理模块509所管理的空白块集合中查找小于通过计算模块519计算得到的平均擦除次数的空白块;挑选子模块5013,用于从根据查找子模块5011查找的小于所述平均擦除次数的空白块中选出一个或多个空白块。
该存储设备还可以包括:查找模块521,用于查找映射表管理模块507的映射表集合中擦除次数小于计算模块519计算得到的平均擦除次数的静态数据块,还用于在空白块管理模块509的空白块集合中查找一个擦除次数最多的空白块。
其中,输入模块503还用于在查找模块521查找的擦除次数最多的空白块上写入所述静态数据块数据;归类模块505还用于将查找模块521查找到的静态数据块放入未擦除块管理模块511所管理的未擦除块集合中。
本发明实施例设备的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
本发明实施例还提供一种存储管理***,如图6所示,可以包括:控制设备61和存储设备63,
其中,控制设备61用于将任务命令向存储设备63发送;存储设备63用于执行控制设备61发送的任务命令,包括:选择模块631,用于从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;输入模块633,用于在选择模块631选出的一个或多个空白块上写入原目标块数据和更新数据;归类模块635,用于将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
其中,上述任务命令包括:写入数据任务、或空白块搜索任务、或擦除任务的执行和终止、或静态均衡任务的执行和终止。
则控制设备61还可以包括:
写入数据控制模块611,用于将所述写入数据任务命令向存储设备63发送;空白块搜索控制模块613,用于将所述空白块搜索任务命令向存储设备63发送;擦除控制模块615,用于将所述擦除任务向存储设备63发送;静态均衡控制模块617,用于将所述静态均衡任务向存储设备63发送。
本发明实施例***的各个模块可以集成于一个装置,也可以分布于多个装置。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过本发明实施例提供的存储设备和存储管理***,在每次执行写入数据任务时,到建立的空白块组中选取一个或多个空白块,然后在选出的空白块上写入数据,减少写操作时间,有效保证了每次写入数据操作的快速执行;通过及时对无效数据块的擦除和搜索空白块,保证空白块数量满足写入大量数据的要求,另外,通过对物理块的静态均衡操作,保证对所有物理块擦除次数的均衡性,从而延长存储器的使用寿命。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明实施例可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (19)
1、一种存储管理的方法,其特征在于,包括:
从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;
在所述选出的一个或多个空白块上写入原目标块数据和更新数据;
将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
2、如权利要求1所述存储管理的方法,其特征在于,在所述选出的一个或多个空白块上写入原目标块数据和更新数据之后,还包括:
将所述写入原目标块数据和更新数据的空白块的逻辑地址设置为所述原目标块的逻辑地址。
3、如权利要求1所述存储管理的方法,其特征在于,当所述空白块集合中的空白块被用完,暂停写入数据时,所述方法还包括:
搜索空白块和无效数据块;
将搜索到的所述无效数据块进行擦除,使得所述无效数据块成为空白块;
将擦除后的所述空白块和搜索到的所述空白块放入所述空白块集合中。
4、如权利要求1所述存储管理的方法,其特征在于,还包括:
根据块擦除次数列表计算所述存储介质上至少一个物理块的平均擦除次数。
5、如权利要求4所述存储管理的方法,其特征在于,所述从根据预设的分组规则建立的空白块集合中选出一个或多个空白块,还包括:
在所述空白块集合中查找擦除次数小于所述平均擦除次数的空白块;
从所述擦除次数小于所述平均擦除次数的空白块中选出一个或多个空白块。
6、如权利要求4所述存储管理的方法,其特征在于,还包括:
在所述逻辑地址映射表中查找所述映射表集合中擦除次数小于所述平均擦除次数的静态数据块;
在所述空白块集合中查找擦除次数最多的空白块;
在所述擦除次数最多的空白块上写入所述静态数据块数据;
将所述写入所述静态数据块数据的空白块放入所述映射表集合中;
将所述静态数据块放入所述未擦除块集合中。
7、一种存储设备,其特征在于,包括:
选择模块,用于从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;
输入模块,用于在所述选择模块选出的一个或多个空白块上写入原目标块数据和更新数据;
归类模块,用于将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
8、如权利要求7所述的存储设备,其特征在于,还包括:
映射表管理模块,用于将已经被写入数据的有效数据块组成所述映射表集合,所述映射表集合中的成员通过逻辑地址映射表中的逻辑地址读出;
空白块管理模块,用于将未被写入数据的空白块组成所述空白块集合,所述空白块集合中的成员通过对存储介质上至少一个物理块遍历获得;
未擦除块管理模块,用于将已经被写入但未被擦除的无效数据块组成所述未擦除块集合。
9、如权利要求7所述的存储设备,其特征在于,还包括:
地址更新模块,用于将所述写入原目标块数据和更新数据的空白块的逻辑地址设置为所述原目标块的逻辑地址。
10、如权利要求7所述的存储设备,其特征在于,还包括:
搜索模块,用于搜索空白块和无效数据块;
擦除模块,用于将所述搜索模块搜索到的所述无效数据块进行擦除,使得所述无效数据块成为空白块;
所述归类模块还用于,将所述擦除模块擦除后的所述空白块和所述搜索模块搜索到的所述空白块放入所述空白块集合中。
11、如权利要求7所述的存储设备,其特征在于,还包括:
计算模块,用于根据块擦除次数列表计算所述存储介质上至少一个物理块的平均擦除次数。
12、如权利要求11所述的存储设备,其特征在于,所述选择模块包括:
查找子模块,用于在所述空白块集合中查找擦除次数小于所述计算模块计算得到的平均擦除次数的空白块;
挑选子模块,用于从根据所述查找子模块查找到的空白块中选出一个或多个空白块。
13、如权利要求11所述的存储设备,其特征在于,还包括:
查找模块,用于在所述映射表管理模块的映射表集合中查找擦除次数小于所述计算模块计算得到的平均擦除次数的静态数据块。
14、如权利要求13所述的存储设备,其特征在于,所述查找模块,还用于在所述空白块管理模块的空白块集合中,查找擦除次数最多的空白块。
15、如权利要求13或14所述的存储设备,其特征在于,
所述输入模块,还用于在所述查找模块查找到的擦除次数最多的空白块上写入所述静态数据块数据;
所述归类模块,还用于将所述查找模块查找到的静态数据块放入所述未擦除块集合中。
16、如权利要求7-15任意一项所述的存储设备,其特征在于,所述设备的类型包括:
硬盘、或flash。
17、一种存储管理***,其特征在于,包括:控制设备和存储设备,
所述控制设备,用于将任务命令向所述存储设备发送;
所述存储设备,用于执行所述控制设备发送的任务命令,包括:
选择模块,用于从根据预设的分组规则建立的空白块集合中选出一个或多个空白块;
输入模块,用于在所述选择模块选出的一个或多个空白块上写入原目标块数据和更新数据;
归类模块,用于将所述原目标块放入根据所述预设的分组规则建立的未擦除块集合中,将所述写入原目标块数据和更新数据的空白块放到根据所述预设的分组规则建立的映射表集合中。
18、如权利要求17所述存储管理的***,其特征在于,所述任务命令包括:写入数据任务、或空白块搜索任务、或擦除任务的执行和终止、或静态均衡任务的执行和终止。
19、如权利要求17或18所述存储管理的***,其特征在于,所述控制设备包括:
写入数据控制模块,用于将所述写入数据任务命令向所述存储设备发送;
空白块搜索控制模块,用于将所述空白块搜索任务命令向所述存储设备发送;
擦除控制模块,用于将所述擦除任务向所述存储设备发送;
静态均衡控制模块,用于将所述静态均衡任务向所述存储设备发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101801482A CN101419573A (zh) | 2008-12-01 | 2008-12-01 | 一种存储管理的方法、***和存储设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101801482A CN101419573A (zh) | 2008-12-01 | 2008-12-01 | 一种存储管理的方法、***和存储设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101419573A true CN101419573A (zh) | 2009-04-29 |
Family
ID=40630369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008101801482A Pending CN101419573A (zh) | 2008-12-01 | 2008-12-01 | 一种存储管理的方法、***和存储设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101419573A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102243613A (zh) * | 2010-05-12 | 2011-11-16 | 西部数据技术公司 | 管理固态存储器中垃圾收集的***和方法 |
CN102622310A (zh) * | 2011-01-30 | 2012-08-01 | 成都市华为赛门铁克科技有限公司 | 无效数据擦除方法、装置及*** |
CN102810092A (zh) * | 2011-05-31 | 2012-12-05 | 腾讯科技(深圳)有限公司 | 数据读写方法及*** |
CN106021123A (zh) * | 2016-05-09 | 2016-10-12 | 深圳大学 | 一种3d闪存物理块的选取方法及选取*** |
CN106155915A (zh) * | 2015-04-16 | 2016-11-23 | 中兴通讯股份有限公司 | 数据存储的处理方法及装置 |
CN106775443A (zh) * | 2015-11-23 | 2017-05-31 | 爱思开海力士有限公司 | 存储器***及其操作方法 |
CN107102819A (zh) * | 2014-12-12 | 2017-08-29 | 西安三星电子研究有限公司 | 向固态硬盘写入数据的方法及设备 |
WO2019136975A1 (zh) * | 2018-01-12 | 2019-07-18 | 江苏华存电子科技有限公司 | 一种非易失性存储器的磨损均衡方法和装置 |
CN110286848A (zh) * | 2019-05-08 | 2019-09-27 | 西安万像电子科技有限公司 | 数据处理方法及装置 |
CN110688084A (zh) * | 2019-10-14 | 2020-01-14 | 深圳市蓝度汽车电控技术有限公司 | 一种先入先出的flash数据存储方法、***及终端 |
CN110874194A (zh) * | 2018-08-31 | 2020-03-10 | 奈瑞尔德有限公司 | 持久存储设备管理 |
CN110895444A (zh) * | 2018-09-12 | 2020-03-20 | 厦门歌乐电子企业有限公司 | 一种电子设备以及数据读写方法 |
CN111930300A (zh) * | 2020-06-28 | 2020-11-13 | 深圳佰维存储科技股份有限公司 | 数据写入方法、装置、计算机可读存储介质及电子设备 |
CN111949202A (zh) * | 2019-05-17 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种存储器及其控制方法和控制装置 |
CN112181303A (zh) * | 2020-09-29 | 2021-01-05 | 广东艾科技术股份有限公司 | 数据存储方法、装置、计算机设备和存储介质 |
CN113039529A (zh) * | 2018-11-15 | 2021-06-25 | 美光科技公司 | 存储器的地址混淆 |
-
2008
- 2008-12-01 CN CNA2008101801482A patent/CN101419573A/zh active Pending
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102243613B (zh) * | 2010-05-12 | 2015-11-25 | 西部数据技术公司 | 管理固态存储器中垃圾收集的***和方法 |
CN102243613A (zh) * | 2010-05-12 | 2011-11-16 | 西部数据技术公司 | 管理固态存储器中垃圾收集的***和方法 |
US9026716B2 (en) | 2010-05-12 | 2015-05-05 | Western Digital Technologies, Inc. | System and method for managing garbage collection in solid-state memory |
CN102622310A (zh) * | 2011-01-30 | 2012-08-01 | 成都市华为赛门铁克科技有限公司 | 无效数据擦除方法、装置及*** |
WO2012100726A1 (zh) * | 2011-01-30 | 2012-08-02 | 成都市华为赛门铁克科技有限公司 | 无效数据擦除方法、装置及*** |
CN102810092B (zh) * | 2011-05-31 | 2017-07-07 | 腾讯科技(深圳)有限公司 | 数据读写方法及*** |
CN102810092A (zh) * | 2011-05-31 | 2012-12-05 | 腾讯科技(深圳)有限公司 | 数据读写方法及*** |
CN107102819A (zh) * | 2014-12-12 | 2017-08-29 | 西安三星电子研究有限公司 | 向固态硬盘写入数据的方法及设备 |
CN106155915A (zh) * | 2015-04-16 | 2016-11-23 | 中兴通讯股份有限公司 | 数据存储的处理方法及装置 |
CN106155915B (zh) * | 2015-04-16 | 2021-01-08 | 中兴通讯股份有限公司 | 数据存储的处理方法及装置 |
CN106775443A (zh) * | 2015-11-23 | 2017-05-31 | 爱思开海力士有限公司 | 存储器***及其操作方法 |
CN106775443B (zh) * | 2015-11-23 | 2020-03-31 | 爱思开海力士有限公司 | 存储器***及其操作方法 |
CN106021123A (zh) * | 2016-05-09 | 2016-10-12 | 深圳大学 | 一种3d闪存物理块的选取方法及选取*** |
CN106021123B (zh) * | 2016-05-09 | 2019-03-08 | 深圳大学 | 一种3d闪存物理块的选取方法及选取*** |
WO2019136975A1 (zh) * | 2018-01-12 | 2019-07-18 | 江苏华存电子科技有限公司 | 一种非易失性存储器的磨损均衡方法和装置 |
CN110874194A (zh) * | 2018-08-31 | 2020-03-10 | 奈瑞尔德有限公司 | 持久存储设备管理 |
CN110895444A (zh) * | 2018-09-12 | 2020-03-20 | 厦门歌乐电子企业有限公司 | 一种电子设备以及数据读写方法 |
CN113039529A (zh) * | 2018-11-15 | 2021-06-25 | 美光科技公司 | 存储器的地址混淆 |
US11853230B2 (en) | 2018-11-15 | 2023-12-26 | Micron Technology, Inc. | Address obfuscation for memory |
CN110286848A (zh) * | 2019-05-08 | 2019-09-27 | 西安万像电子科技有限公司 | 数据处理方法及装置 |
CN111949202A (zh) * | 2019-05-17 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种存储器及其控制方法和控制装置 |
CN110688084A (zh) * | 2019-10-14 | 2020-01-14 | 深圳市蓝度汽车电控技术有限公司 | 一种先入先出的flash数据存储方法、***及终端 |
CN111930300A (zh) * | 2020-06-28 | 2020-11-13 | 深圳佰维存储科技股份有限公司 | 数据写入方法、装置、计算机可读存储介质及电子设备 |
CN112181303A (zh) * | 2020-09-29 | 2021-01-05 | 广东艾科技术股份有限公司 | 数据存储方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101419573A (zh) | 一种存储管理的方法、***和存储设备 | |
US9390004B2 (en) | Hybrid memory management | |
US9189389B2 (en) | Memory controller and memory system | |
CN101458613B (zh) | 一种混合分级阵列的实现方法、混合分级阵列和存储*** | |
US11429284B2 (en) | Data categorization based on invalidation velocities | |
CN101937319B (zh) | 存储器***及其映射方法 | |
KR101464338B1 (ko) | 불휘발성 메모리 장치를 이용한 데이터 저장장치, 메모리시스템, 그리고 컴퓨터 시스템 | |
KR101477047B1 (ko) | 메모리 시스템 및 그것의 블록 병합 방법 | |
US8874872B2 (en) | Garbage collection management in memories | |
CN104866428B (zh) | 数据存取方法和数据存取装置 | |
CN106874211A (zh) | 存储器***及非易失性存储器的控制方法 | |
WO2016135955A1 (ja) | 不揮発性メモリデバイス | |
CN106874217A (zh) | 存储器***及控制方法 | |
US20100088461A1 (en) | Solid state storage system using global wear leveling and method of controlling the solid state storage system | |
CN101369451A (zh) | 固态存储器、包含其的计算机***和操作其的方法 | |
JP2001350665A (ja) | ブロックアラインメント機能付き半導体記憶装置 | |
US20170003911A1 (en) | Information processing device | |
US20230088790A1 (en) | Using a common pool of blocks for user data and a system data structure | |
CN102520885B (zh) | 一种混合硬盘的数据管理*** | |
CN116364148A (zh) | 一种面向分布式全闪存储***的磨损均衡方法及*** | |
KR101026634B1 (ko) | 하이브리드 플래시 메모리의 데이터 저장 방법 | |
Rizvi et al. | Data storage framework on flash memory based SSD RAID 0 for performance oriented applications | |
CN105739923A (zh) | 一种可配置的数据管理方法 | |
CN112559384B (zh) | 一种基于非易失存储器的混合固态盘动态分区方法 | |
Bai et al. | A parallel flash translation layer based on page group-block hybrid-mapping method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090429 |