CN108153481B - 一种nand的存储块回收方法和装置 - Google Patents

一种nand的存储块回收方法和装置 Download PDF

Info

Publication number
CN108153481B
CN108153481B CN201611105281.2A CN201611105281A CN108153481B CN 108153481 B CN108153481 B CN 108153481B CN 201611105281 A CN201611105281 A CN 201611105281A CN 108153481 B CN108153481 B CN 108153481B
Authority
CN
China
Prior art keywords
count
current
erasure
score
threshold value
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.)
Active
Application number
CN201611105281.2A
Other languages
English (en)
Other versions
CN108153481A (zh
Inventor
李斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhaoyi Innovation Technology Group Co ltd
Original Assignee
Beijing Zhaoyi Innovation Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Zhaoyi Innovation Technology Co Ltd filed Critical Beijing Zhaoyi Innovation Technology Co Ltd
Priority to CN201611105281.2A priority Critical patent/CN108153481B/zh
Publication of CN108153481A publication Critical patent/CN108153481A/zh
Application granted granted Critical
Publication of CN108153481B publication Critical patent/CN108153481B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks

Abstract

本发明实施例公开了一种NAND的存储块回收方法和装置。该方法包括:根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计;根据性能参数的统计值对每个存储块进行评分;根据评分结果确定待回收的存储块。利用该方法,解决了现有方法不能有效选择可回收存储块的问题,提高了回收存储块选择的准确性,达到了适应各存储块多方复杂性的效果,进而提升了NAND的有效使用能力。

Description

一种NAND的存储块回收方法和装置
技术领域
本发明实施例涉及存储数据处理技术,尤其涉及一种NAND的存储块回收方法和装置。
背景技术
NAND闪存是一种比硬盘驱动器更好的存储设备,NAND闪存通常包括多个存储块,由NAND管理系统进行读写等操作的管理。
存储块的特点是能够对存储块的部分空间进行写入和读出操作,但是不能部分擦除,只能将存储块整体进行擦除操作。如果有些存储块仅有少量空间被占用,但是由于不能部分擦除,导致该存储块的利用率较低,所以现有技术会将该存储块中的有效数据转移写入至其他存储块,而后将该存储块整体擦除,以便执行其他数据操作,该过程称为存储块的回收。
现有技术对待回收存储块的选择,一般是识别该存储块某个方面的性能,例如,有效数据量是否低于设定门限值,若是,则将该存储块进行回收处理。但是,此类操作并不能适应各存储块多方面的复杂性能,所以待回收存储块的选择并不准确。
发明内容
本发明实施例提供一种NAND的存储块回收方法和装置,以提高待回收存储块选择的准确性,与各存储块多方面的性能都更加匹配。
第一方面,本发明实施例提供了一种NAND的存储块回收方法,该方法包括:
根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计;
根据性能参数的统计值对每个存储块进行评分;
根据评分结果确定待回收的存储块。
第二方面,本发明实施例还提供了一种NAND的存储块回收装置,该装置包括:
性能参数统计模块,用于根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计;
评分模块,用于根据性能参数的统计值对每个存储块进行评分;
回收确定模块,用于根据评分结果确定待回收的存储块。
本发明实施例提供的一种NAND的存储块回收方法和装置,首先根据每个存储块的操作,对每个存储块的至少两种性能参数进行统计,然后根据性能参数的统计值对每个存储块进行评分;最终可以根据评分结果确定待回收的存储块。利用该方法,解决了现有方法不能有效选择可回收存储块的问题,提高了回收存储块选择的准确性,达到了适应各存储块多方复杂性的效果,进而提升了NAND的有效使用能力。
附图说明
图1是本发明实施例一提供的一种NAND的存储块回收方法的流程示意图;
图2是本发明实施例二提供的一种NAND的存储块回收方法的流程示意图;
图3是本发明实施例三提供的一种NAND的存储块回收装置的结构框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一提供的一种NAND的存储块回收方法的流程示意图,本实施例可适用于在NAND闪存中确定待回收存储块的情况,该方法可以由NAND的存储块回收装置来执行,该装置可以通过软件和/或硬件实现,一般可集成在NAND闪存的NAND管理系统中。
如图1所示,本发明实施例一提供的一种NAND的存储块回收方法,具体包括如下步骤:
S101、根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计。
本实施例中的存储块具体可指NAND闪存中组成存储单元阵列的存储单元块。一般地,可以对NAND闪存中的存储块进行擦除、读取以及编程(相当于写)等操作,其中,擦除操作以存储块为单位进行,读取和编程操作以存储块中的一个存储页为单位进行,需要说明的是,一个存储块可以由多个存储页构成。
在本实施例中,存储块所具有的性能参数可以包括擦除时间戳、读取次数、读取位翻转次数、擦写次数、重复读取次数以及数据写入量中的两个或多个,也可以不限于上述性能参数。
其中,擦除时间戳具体可用于标记对存储块进行擦除操作的时间,读取次数具体可用于标记对存储块进行读操作的次数,读取位翻转次数具体可用于标记对存储块读操作时进行位翻转的次数,擦写次数具体可用于标记对存储块进行擦除或编程操作的次数,重复读取次数具体可用于标记存储块因读取错误发生重复读取的次数,数据写入量具体可用于标记对存储块进行编程操作时写入存储块的数据量。
具体地,可以确定NAND闪存中每个存储块当前正在进行的操作,然后根据所进行的操作对相应的性能参数进行统计。示例性地,若一个存储块正在进行擦除操作,则可相应的对该存储块的擦除时间戳以及擦写次数等进行统计;同样,若一个存储块中存在进行读操作的存储页,则可相应的对该存储块的读取次数、读取位翻次数以及重复读取次数等进行统计。
S102、根据性能参数的统计值对每个存储块进行评分。
在本实施例中,在基于步骤S101对NAND闪存中的存储块进行至少两种性能参数的统计后,可以根据性能参数的统计值对相应的存储块进行评分。本实施例可以根据设定的评分规则结合性能参数的统计值对存储块进行评分,具体地,首先可以设定评分级别以及各级别对应的分值,然后可以根据评分规则分别确定存储块各性能参数相应统计值所属的评分级别及对应的评分值,最终可以根据各性能参数的评分值确定相应存储块的评分总值。需要说明的是,本实施例可通过设定各性能参数的参数门限值来设定对应于各性能参数的评分规则。
在本实施例中,不限定其设定的评分级别个数,同样不限定每个评分级别对应的分值。示例性地,可以为各性能参数的评分设定4个评分级别,且可设置第1级别对应的分值为1,第2级别对应的分值为2,第3级别对应的分值为3以及第4级别对应的分值为4;对于一个当前进行擦除操作的存储块而言,若通过设定评分规则确定其擦除时间戳的统计值属于第2级别,以及擦写次数的统计值属于第3级别,则可认为擦除时间戳的评分为2,而擦写次数的评分值为3,此时可确定该存储块的评分总值为5。
S103、根据评分结果确定待回收的存储块。
在本实施例中,基于步骤S102可以确定每个存储块的评分结果,由此可根据设定的确定条件结合评分结果确定待回收的存储块。具体地,可根据评分值高低来设定确定条件,由此对评分结果进行排序选择符合确定条件的存储块作为待回收的存储块。需要说明的是,本实施例可以在符合回收条件时对待回收的存储块根据对应的回收机制进行回收操作。
本发明实施例一提供的一种NAND的存储块回收方法,首先根据每个存储块的操作,对每个存储块的至少两种性能参数进行统计,然后根据性能参数的统计值对每个存储块进行评分;最终可以根据评分结果确定待回收的存储块。利用该方法,解决了现有方法不能有效选择可回收存储块的问题,提高了回收存储块选择的准确性,达到了适应各存储块多方复杂性的效果,进而提升了NAND的有效使用能力。
实施例二
图2是本发明实施例二提供的一种NAND的存储块回收方法的流程示意图。本发明实施例二以上述实施例为基础进行优化,在本实施例中,在根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计之前,进一步优化增加了:将最近执行的设定数量的存储块作为待统计的存储块;采用最近最少使用算法置换当前的待统计的存储块。
进一步地,还将“根据评分结果确定待回收的存储块”具体化为:在存储块可用空间达到下限值时,产生存储块回收的触发条件;根据各存储块的评分结果选择评分最高的一个存储块;识别选择的存储块的评分所属的性能参数;根据所属的性能参数确定对应的回收机制;根据确定的回收机制对选择的存储块进行空间回收操作。
如图2所示,本发明实施例二提供的一种NAND的存储块回收方法,具体包括如下操作:
需要说明的是,可以对NAND闪存中的所有存储块基于本实施例提供的方法确定是否为待回收的存储块,只是需要耗费较长的操作时间,然而实际应用中并不会对NAND闪存的所有存储块同时进行操作,且可能还会存在一些不常用到的存储块,因此,为了提高待回收的存储块的确定效率,本实施例可优选地基于下述步骤进行操作。
S201、将最近执行的设定数量的存储块作为待统计的存储块。
在本实施例中,首先可以在NAND闪存中确定设定数量的最近经常进行操作的存储块作为待统计的存储块,以在所述待统计的存储块中确定待回收的存储块,其中,所述设定数量的值可基于历史经验设定,本实施例可将设定数量优选在6~10的范围内,即可在NAND闪存中选取该范围内任意值个最近操作频繁的存储块作为待统计的存储块,可以理解的是,对存储块的最近操作可以是擦除、编程以及读取操作中的任一项。
S202、采用最近最少使用算法置换当前的待统计的存储块。
在本实施例中,基于步骤S201确定的待统计的存储块是可以动态替换的,本实施例可以采用最近最少使用算法将当前的待统计的存储块用新的存储块置换。
具体地,采用最近最少使用算法置换当前的待统计的存储块,可表述为:首先选取设定数量的存储块作为当前的待统计的存储块,在出现新的符合待统计要求的存储块时,在当前的待统计的存储块中确定最近最少使用的存储块,然后用新的符合待统计要求的存储块替换该最近最少使用的存储块。
S203、根据对上述每个存储块的操作,对每个存储块的至少两种性能参数进行统计。
在本实施例中,可以仅对确定的设定数量的待统计的存储块进行下述操作,本实施例为了便于表述,后续将待统计的存储块简称为存储块。示例性地,首先可以确定每个存储块当前正在进行的具体操作,并基于每个存储块的具体操作对该存储块当前对应的性能参数进行统计,以确定对应性能参数的统计值。
此外,本实施例将存储块的性能参数优选为:擦除时间戳、读取次数、读取位翻转次数、擦写次数、重复读取次数以及数据写入量,但不限定于上述性能参数,还可以根据NAND闪存的特性扩展其性能参数。
进一步地,根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计包括下述至少两项:在对存储块进行擦除时,对擦除时间戳进行累计,并采用当前的累计值作为擦除时间戳,标记当前擦除的存储块;每个存储块被读取时,为该存储块累计读计数;每个存储块发生读取位翻转时,为该存储块累计读时位翻转计数;每个存储块被擦写时,为该存储块累计擦写计数;每个存储块因读取错误发生重复读取时,为该存储块累计重复读计数;在向每个存储块进行数据写入时,更新该存储块中的有效数据计数。
在本实施例中,可将性能参数中擦除时间戳的值初始化为0,之后只要对一个存储块(无论是否为同一存储块)进行一次擦除操作,就将擦除时间戳的值累计加1,由此可知,当前进行擦除操作的存储块,其擦除时间戳的统计值为累加后当前的累计值;同样,也可将其余性能参数的值初始化为0,并基于上述操作对每个存储块的性能参数进行统计。
S204、根据性能参数的统计值对上述每个存储块进行评分。
在本实施例中,基于上述步骤S203可为每个存储块确定出至少两个性能参数的统计值,由此,可以根据每个存储块至少两个性能参数的统计值确定所述至少两个性能参数分别对应的评分值,进而可以将至少两个性能参数所对应评分值的总和确定为相应存储块的评分结果。
进一步地,根据性能参数的统计值对每个存储块进行评分包括针对每个存储块执行下述至少一项:
如果当前擦除时间戳(Erase Timestamp,简称ET)与擦除时间戳平均值(ET_MeanValue)之差,大于或等于第一擦除时间戳门限值(ET_TH1),则评分为1,如果当前擦除时间戳与擦除时间戳最小值(ET_MinValue)之差,大于或等于第二擦除时间戳门限值(ET_TH2),则评分为2,如果当前擦除时间戳与擦除时间戳平均值之差小于第一擦除时间戳门限值,且当前擦除时间戳与擦除时间戳最小值之差小于所述第二擦除时间戳门限值,则评分为0。
如果存储块的当前读计数(Read Count,简称RC)小于第一读计数门限值(RC_TH1),则评分为0,如果当前读计数大于或等于第一读计数门限值且小于第二读计数门限值(RC_TH2),则评分为1,如果当前读计数大于或等于第二读计数门限值,则评分为2。
如果存储块的当前位翻转计数(Bitflips,简称BF)小于第一位翻转计数门限值(BF_TH1),则评分为0,如果当前位翻转计数大于或等于第一位翻转计数门限值且小于第二位翻转计数门限值(BF_TH2),则评分为1,如果当前位翻转计数大于或等于第二位翻转计数门限值,则评分为2。
如果存储块的当前擦写计数(PE Cycles,简称PE)与擦写计数最小值(PE_MinValue)之差小于第一擦写计数门限值(PE_TH1),则评分为0,如果当前擦写计数与擦写计数最小值之差大于或等于第一擦写计数门限值且小于第二擦写计数门限值(PE_TH2),则评分为1,如果当前擦写计数与擦写计数最小值之差大于或等于第二擦写计数门限值,则评分为2。
如果存储块的当前重复读计数(Read Retry Times,简称RRT)为0,则评分为0,如果当前重复读计数大于0且小于设定最大重复读次数(TotalTimes)的一半,则评分为1,如果当前重复读计数大于或等于设定最大重复读次数的一半且小于设定最大重复读次数,则评分为2。
如果存储块的当前有效数据计数(Valid Data Count,简称VDC)大于或等于第二有效数据计数门限值(VDC_TH2),则评分为0,如果当前有效数据计数大于或等于第一有效数据计数门限值(VDC_TH1),且小于第二有效数据计数门限值,则评分为1,如果当前有效数据计数小于第一有效数据计数门限值,则评分为2。
在本实施例中,优选的设定各性能参数的评分级别为3,并优选的设定第1级别的分值为0,第2级别的分值为1,第3级别的分值为2。各性能参数与其对应评分的设定具体如下表所示:
Figure BDA0001171254930000101
在本实施例中,可以将所述擦除时间戳平均值确定为所有擦除时间戳之和与当前擦除时间戳的商,其中,当前擦除时间戳具体可表示对设定数量的待统计的存储块进行擦除操作的累计次数。所述擦除时间戳最小值具体可理解为设定数量的待统计的存储块中所具有的最小擦除时间戳。此外,所述擦写计数最小值具体可理解为设定数量的待统计的存储块中所对应的最小擦写次数。
在本实施例中,所述第一擦除时间戳门限值、第二擦除时间戳门限值、第一读计数门限值、第二读计数门限值、第一位翻转计数门限值、第二位翻转计数门限值、第一擦写计数门限值、第二擦写计数门限值、最大重复读次数、第一有效数据计数门限值以及第二有效数据计数门限值均可基于历史经验值设定。
在本实施例中,通过存储块各性能参数的统计值对存储块进行评分的目的在于:1)基于擦除时间戳对存储块评分,可以选择出NAND闪存中最不经常使用的块数据(冷数据),由此可以确定出含有冷数据的待回收存储块;2)基于存储块的读取次数进行评分,可以选择出NAND闪存中最易出现读干扰(Read Disturb)的待回收存储块;3)基于存储块的读取位翻转次数进行评分,可以选择出NAND闪存中容易出现读干扰和写干扰的待回收存储块;4)基于存储块的擦写次数进行评分,可以选择出NAND闪存中负载均衡(Wear-Leveing)的待回收存储块;5)基于存储块的重复读取次数进行评分,可以选择出NAND闪存中最不稳定的待回收存储块;6)基于存储块中的数据写入量进行评分,可以选择出数据搬离数目最小的待回收数据块。
S205、在存储块可用空间达到下限值时,产生存储块回收的触发条件。
在本实施例中,可以在产生存储块回收的触发条件后,启动待回收存储块的确定操作。
S206、根据上述各存储块的评分结果选择评分最高的一个存储块。
本实施例综合考虑各性能参数在NAND闪存中的作用,因此本实施将每个存储块所对应各性能参数评分值的总和确定为相应存储块最终的评分结果。
需要说明的是,如果待统计的存储块中出现至少两个存储块的评分结果并列最高,则可以任选其中一个作为待回收的存储块,一般地,可以优选根据存储块的编号值顺序选取其中一个。
S207、识别选择的存储块的评分所属的性能参数。
在本实施例中,确定待回收的存储块后,可以查看该存储块评分结果中各评分值所属的性能参数。
S208、根据所属的性能参数确定对应的回收机制。
本实施例根据存储块的性能参数优选地设定了三个回收机制,分别为正常回收机制、擦除回收机制以及负载均衡回收机制。具体地,可在性能参数为擦除时间戳、读取次数以及数据写入量时,确定待回收的存储块对应的回收机制为正常回收机制;还可在性能参数为读取位翻转次数以及重复读取次数时,确定待回收的存储块对应的回收机制为擦除回收机制;也可在性能参数为擦写次数时,确定待回收的存储块对应的回收机制为负载均衡回收机制。
S209、根据确定的回收机制对选择的存储块进行空间回收操作。
在本实施例中,需要说明的是,如果所确定的待回收的存储块评分值所属的性能参数分布于上述至少两个回收机制中,则首先可确定分布于上述至少两个回收机制中各性能参数的评分,由此确定评分最高的性能参数所属的回收机制,将其作为待回收存储块当前的回收机制。示例性地,假设待回收的存储块评分值所属的性能参数为擦除时间戳、读取次数、读取位翻转次数以及重复读取次数,且分别对应的评分为1、1、2和1,则可确定读取位翻转次数的评分最高,属于擦除回收机制,由此可采用擦除回收机制对待回收的存储块进行空间回收操作。
此外,当分布于上述至少两个回收机制中的各性能参数对应的评分值相同时,可以基于上述三个回收机制的优先级确定优先级最高的回收机制作为待回收存储块当前的回收机制。一般地,可认为所述正常回收机制大于擦除回收机制,且所述擦除回收机制的优先级又大于负载均衡回收机制。
本发明实施例二提供的一种NAND的存储块回收方法,具体增加了待统计存储块的确定操作,由此可以更有针对性的对部分存储块进行统计和评分,有效提高待回收存储块的确定效率;同时,还具体化了待回收存储块的确定操作,由此可以根据评分所属的性能参数确定对应的回收机制,从而更有效的对存储块进行回收,达到了适应各存储块多方复杂性的效果。
实施例三
图3是本发明实施例三提供的一种NAND的存储块回收装置的结构框图。该装置可适用于在NAND闪存中确定待回收的存储块的情况,并可以通过软件和/或硬件实现,一般可集成在NAND闪存的NAND管理系统中。如图3所示,该装置包括:性能参数统计模块31、评分模块32以及回收确定模块33。
其中,性能参数统计模块31,用于根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计;
评分模块32,用于根据性能参数的统计值对每个存储块进行评分;
回收确定模块33,用于根据评分结果确定待回收的存储块。
在本实施例中,该装置首先通过性能参数统计模块31根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计;然后通过评分模块32根据性能参数的统计值对每个存储块进行评分;最后通过回收确定模块33根据评分结果确定待回收的存储块。
本发明实施例三提供的一种NAND的存储块回收装置,解决了现有方法不能有效选择可回收存储块的问题,提高了回收存储块选择的准确性,达到了适应各存储块多方复杂性的效果,进而提升了NAND的有效使用能力。
进一步地,性能参数统计模块31,具体可用于执行下述至少两项:
在对存储块进行擦除时,对擦除时间戳进行累计,并采用当前的累计值作为擦除时间戳,标记当前擦除的存储块;每个存储块被读取时,为该存储块累计读计数;每个存储块发生读取位翻转时,为该存储块累计读时位翻转计数;每个存储块被擦写时,为该存储块累计擦写计数;每个存储块被重复读取时,为该存储块累计重复读计数;在向每个存储块进行数据写入时,更新该存储块中的有效数据计数。
进一步地,评分模块32,针对每个存储块具体用于执行下述至少一项:
如果当前擦除时间戳与擦除时间戳平均值之差,大于或等于第一擦除时间戳门限值,则评分为1,如果当前擦除时间戳与擦除时间戳最小值之差,大于或等于第二擦除时间戳门限值,则评分为2,如果当前擦除时间戳与擦除时间戳平均值之差,小于第一擦除时间戳门限值且小于所述第二擦除时间戳门限值,则评分为0;如果存储块的当前读计数小于第一读计数门限值,则评分为0,如果当前读计数大于或等于第一读计数门限值且小于第二读计数门限值,则评分为1,如果当前读计数大于或等于第二读计数门限值,则评分为2;如果存储块的当前位翻转计数小于第一位翻转计数门限值,则评分为0,如果当前位翻转计数大于或等于第一位翻转计数门限值且小于第二位翻转计数门限值,则评分为1,如果当前位翻转计数大于或等于第二位翻转计数门限值,则评分为2;如果存储块的当前擦写计数与擦写计数最小值之差小于第一擦写计数门限值,则评分为0,如果当前擦写计数与擦写计数最小值之差大于或等于第一擦写计数门限值且小于第二擦写计数门限值,则评分为1,如果当前擦写计数与擦写计数最小值之差大于或等于第二擦写计数门限值,则评分为2;如果存储块的当前重复读计数为0,则评分为0,如果当前重复读计数大于0且小于设定最大重复读次数的一半,则评分为1,如果当前重复读计数大于或等于设定最大重复读次数的一半且小于设定最大重复读次数,则评分为2;如果存储块的当前有效数据计数大于或等于第二有效数据计数门限值,则评分为0,如果当前有效数据计数大于或等于第一有效数据计数门限值,且小于第二有效数据计数门限值,则评分为1,如果当前有效数据计数小于第一有效数据计数门限值,则评分为2。
在上述实施例的基础上,该装置还优化增加了:待统计确定模块34,用于:
在根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计之前,将最近执行的设定数量的存储块作为待统计的存储块;采用最近最少使用算法置换当前的待统计的存储块。
进一步地,回收确定模块33,具体可用于:
在存储块可用空间达到下限值时,产生存储块回收的触发条件;根据各存储块的评分结果选择评分最高的一个存储块;识别选择的存储块的评分所属的性能参数;根据所属的性能参数确定对应的回收机制;根据确定的回收机制对选择的存储块进行空间回收操作。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (6)

1.一种NAND的存储块回收方法,其特征在于,包括:
将最近执行的设定数量的存储块作为待统计的存储块;采用最近最少使用算法置换当前的待统计的存储块;
根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计;
根据性能参数的统计值对每个存储块进行评分;
根据评分结果确定待回收的存储块;
其中,根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计包括下述至少两项:
在对存储块进行擦除时,对擦除时间戳进行累计,并采用当前的累计值作为擦除时间戳,标记当前擦除的存储块;
每个存储块被读取时,为该存储块累计读计数;
每个存储块发生读取位翻转时,为该存储块累计读时位翻转计数;
每个存储块被擦写时,为该存储块累计擦写计数;
每个存储块因读取错误发生重复读取时,为该存储块累计重复读计数;
在向每个存储块进行数据写入时,更新该存储块中的有效数据计数;
根据性能参数的统计值对每个存储块进行评分包括:设定评分级别以及各级别对应的分值;根据评分规则分别确定存储块各性能参数相应统计值所属的评分级别以及对应的评分值;根据各性能参数的评分值确定相应存储块的评分总值。
2.根据权利要求1所述的方法,其特征在于,根据性能参数的统计值对每个存储块进行评分包括针对每个存储块执行下述至少一项:
如果当前擦除时间戳与擦除时间戳平均值之差,大于或等于第一擦除时间戳门限值,则评分为1,如果当前擦除时间戳与擦除时间戳最小值之差,大于或等于第二擦除时间戳门限值,则评分为2,如果当前擦除时间戳与擦除时间戳平均值之差小于第一擦除时间戳门限值,且当前擦除时间戳与擦除时间戳最小值之差小于所述第二擦除时间戳门限值,则评分为0;
如果存储块的当前读计数小于第一读计数门限值,则评分为0,如果当前读计数大于或等于第一读计数门限值且小于第二读计数门限值,则评分为1,如果当前读计数大于或等于第二读计数门限值,则评分为2;
如果存储块的当前位翻转计数小于第一位翻转计数门限值,则评分为0,如果当前位翻转计数大于或等于第一位翻转计数门限值且小于第二位翻转计数门限值,则评分为1,如果当前位翻转计数大于或等于第二位翻转计数门限值,则评分为2;
如果存储块的当前擦写计数与擦写计数最小值之差小于第一擦写计数门限值,则评分为0,如果当前擦写计数与擦写计数最小值之差大于或等于第一擦写计数门限值且小于第二擦写计数门限值,则评分为1,如果当前擦写计数与擦写计数最小值之差大于或等于第二擦写计数门限值,则评分为2;
如果存储块的当前重复读计数为0,则评分为0,如果当前重复读计数大于0且小于设定最大重复读次数的一半,则评分为1,如果当前重复读计数大于或等于设定最大重复读次数的一半且小于设定最大重复读次数,则评分为2;
如果存储块的当前有效数据计数大于或等于第二有效数据计数门限值,则评分为0,如果当前有效数据计数大于或等于第一有效数据计数门限值,且小于第二有效数据计数门限值,则评分为1,如果当前有效数据计数小于第一有效数据计数门限值,则评分为2。
3.根据权利要求1-2任一所述的方法,其特征在于,根据评分结果确定待回收的存储块包括:
在存储块可用空间达到下限值时,产生存储块回收的触发条件;
根据各存储块的评分结果选择评分最高的一个存储块;
识别选择的存储块的评分所属的性能参数;
根据所属的性能参数确定对应的回收机制;
根据确定的回收机制对选择的存储块进行空间回收操作。
4.一种NAND的存储块回收装置,其特征在于,包括:
待统计确定模块,用于将最近执行的设定数量的存储块作为待统计的存储块;采用最近最少使用算法置换当前的待统计的存储块;
性能参数统计模块,用于根据对每个存储块的操作,对每个存储块的至少两种性能参数进行统计;
评分模块,用于根据性能参数的统计值对每个存储块进行评分;
回收确定模块,用于根据评分结果确定待回收的存储块;
其中,所述性能参数统计模块,具体用于执行下述至少两项:
在对存储块进行擦除时,对擦除时间戳进行累计,并采用当前的累计值作为擦除时间戳,标记当前擦除的存储块;
每个存储块被读取时,为该存储块累计读计数;
每个存储块发生读取位翻转时,为该存储块累计读时位翻转计数;
每个存储块被擦写时,为该存储块累计擦写计数;
每个存储块因读取错误发生重复读取时,为该存储块累计重复读计数;
在向每个存储块进行数据写入时,更新该存储块中的有效数据计数;
根据性能参数的统计值对每个存储块进行评分包括:设定评分级别以及各级别对应的分值;根据评分规则分别确定存储块各性能参数相应统计值所属的评分级别以及对应的评分值;根据各性能参数的评分值确定相应存储块的评分总值。
5.根据权利要求4所述的装置,其特征在于,所述评分模块,针对每个存储块具体用于执行下述至少一项:
如果当前擦除时间戳与擦除时间戳平均值之差,大于或等于第一擦除时间戳门限值,则评分为1,如果当前擦除时间戳与擦除时间戳最小值之差,大于或等于第二擦除时间戳门限值,则评分为2,如果当前擦除时间戳与擦除时间戳平均值之差小于第一擦除时间戳门限值,且当前擦除时间戳与擦除时间戳最小值之差小于所述第二擦除时间戳门限值,则评分为0;
如果存储块的当前读计数小于第一读计数门限值,则评分为0,如果当前读计数大于或等于第一读计数门限值且小于第二读计数门限值,则评分为1,如果当前读计数大于或等于第二读计数门限值,则评分为2;
如果存储块的当前位翻转计数小于第一位翻转计数门限值,则评分为0,如果当前位翻转计数大于或等于第一位翻转计数门限值且小于第二位翻转计数门限值,则评分为1,如果当前位翻转计数大于或等于第二位翻转计数门限值,则评分为2;
如果存储块的当前擦写计数与擦写计数最小值之差小于第一擦写计数门限值,则评分为0,如果当前擦写计数与擦写计数最小值之差大于或等于第一擦写计数门限值且小于第二擦写计数门限值,则评分为1,如果当前擦写计数与擦写计数最小值之差大于或等于第二擦写计数门限值,则评分为2;
如果存储块的当前重复读计数为0,则评分为0,如果当前重复读计数大于0且小于设定最大重复读次数的一半,则评分为1,如果当前重复读计数大于或等于设定最大重复读次数的一半且小于设定最大重复读次数,则评分为2;
如果存储块的当前有效数据计数大于或等于第二有效数据计数门限值,则评分为0,如果当前有效数据计数大于或等于第一有效数据计数门限值,且小于第二有效数据计数门限值,则评分为1,如果当前有效数据计数小于第一有效数据计数门限值,则评分为2。
6.根据权利要求4-5任一所述的装置,其特征在于,所述回收确定模块,具体用于:
在存储块可用空间达到下限值时,产生存储块回收的触发条件;
根据各存储块的评分结果选择评分最高的一个存储块;
识别选择的存储块的评分所属的性能参数;
根据所属的性能参数确定对应的回收机制;
根据确定的回收机制对选择的存储块进行空间回收操作。
CN201611105281.2A 2016-12-05 2016-12-05 一种nand的存储块回收方法和装置 Active CN108153481B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611105281.2A CN108153481B (zh) 2016-12-05 2016-12-05 一种nand的存储块回收方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611105281.2A CN108153481B (zh) 2016-12-05 2016-12-05 一种nand的存储块回收方法和装置

Publications (2)

Publication Number Publication Date
CN108153481A CN108153481A (zh) 2018-06-12
CN108153481B true CN108153481B (zh) 2021-08-03

Family

ID=62471029

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611105281.2A Active CN108153481B (zh) 2016-12-05 2016-12-05 一种nand的存储块回收方法和装置

Country Status (1)

Country Link
CN (1) CN108153481B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109491606B (zh) * 2018-11-01 2021-10-15 郑州云海信息技术有限公司 一种全闪存储空间管理方法、系统、设备及计算机介质
CN114281261A (zh) * 2021-12-24 2022-04-05 深圳忆联信息系统有限公司 固态硬盘空闲块的预擦除方法、装置、计算机设备及存储介质
CN115454710B (zh) * 2022-11-10 2023-03-24 珠海妙存科技有限公司 闪存数据读取方法及其装置、电子设备、存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1815629A (zh) * 2005-11-25 2006-08-09 康佳集团股份有限公司 一种闪存装置的脏块回收方法
CN101339526A (zh) * 2007-06-19 2009-01-07 三星电子株式会社 检测由于读干扰而造成的位错误的存储系统及其方法
CN102789423A (zh) * 2012-07-11 2012-11-21 山东华芯半导体有限公司 四池闪存磨损均衡方法
CN103092766A (zh) * 2012-12-28 2013-05-08 北京时代民芯科技有限公司 一种用于nand flash的均衡损耗实现方法
CN103593300A (zh) * 2013-11-15 2014-02-19 浪潮电子信息产业股份有限公司 一种内存分配回收方法
CN104102459A (zh) * 2014-07-03 2014-10-15 优佰特电子科技(无锡)有限公司 一种闪存设备的数据处理方法及闪存设备
CN104375895A (zh) * 2013-08-13 2015-02-25 华为技术有限公司 用于多种存储器间的数据存储调度方法以及装置
CN105528301A (zh) * 2015-12-07 2016-04-27 中国人民解放军信息工程大学 一种NAND Flash闪存垃圾回收方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590728B2 (en) * 2004-03-10 2009-09-15 Eric White System and method for detection of aberrant network behavior by clients of a network access gateway
US7707232B2 (en) * 2005-05-13 2010-04-27 Microsoft Corporation Implementation for collecting unmanaged memory
CN103049389B (zh) * 2012-12-14 2016-08-03 锐迪科科技有限公司 Nand闪存控制器及其写入控制方法
CN104156317A (zh) * 2014-08-08 2014-11-19 浪潮(北京)电子信息产业有限公司 一种非易失性闪存的擦写管理方法及系统
US10409526B2 (en) * 2014-12-17 2019-09-10 Violin Systems Llc Adaptive garbage collection

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1815629A (zh) * 2005-11-25 2006-08-09 康佳集团股份有限公司 一种闪存装置的脏块回收方法
CN101339526A (zh) * 2007-06-19 2009-01-07 三星电子株式会社 检测由于读干扰而造成的位错误的存储系统及其方法
CN102789423A (zh) * 2012-07-11 2012-11-21 山东华芯半导体有限公司 四池闪存磨损均衡方法
CN103092766A (zh) * 2012-12-28 2013-05-08 北京时代民芯科技有限公司 一种用于nand flash的均衡损耗实现方法
CN104375895A (zh) * 2013-08-13 2015-02-25 华为技术有限公司 用于多种存储器间的数据存储调度方法以及装置
CN103593300A (zh) * 2013-11-15 2014-02-19 浪潮电子信息产业股份有限公司 一种内存分配回收方法
CN104102459A (zh) * 2014-07-03 2014-10-15 优佰特电子科技(无锡)有限公司 一种闪存设备的数据处理方法及闪存设备
CN105528301A (zh) * 2015-12-07 2016-04-27 中国人民解放军信息工程大学 一种NAND Flash闪存垃圾回收方法

Also Published As

Publication number Publication date
CN108153481A (zh) 2018-06-12

Similar Documents

Publication Publication Date Title
US20200167083A1 (en) Techniques for controlling recycling of blocks of memory
US8904089B2 (en) Method for performing block management/Flash memory management, and associated memory device and controller thereof
CN108681435B (zh) 一种固态硬盘的磨损均衡方法、装置、设备及存储介质
US20160034202A1 (en) Multi-tiered storage device system and method thereof
US20090323419A1 (en) Read-time wear-leveling method in storage system using flash memory device
US20120079168A1 (en) Method for performing block management, and associated memory device and controller thereof
US10409525B2 (en) Memory management method, memory control circuit unit and memory storage device
CN106775496B (zh) 一种存储数据处理方法及装置
US20110238890A1 (en) Memory controller, memory system, personal computer, and method of controlling memory system
US8874830B2 (en) Method for controlling memory array of flash memory, and flash memory using the same
CN106775474B (zh) 一种Nand Flash磨损均衡方法、装置及存储器
CN108153481B (zh) 一种nand的存储块回收方法和装置
CN106486167B (zh) 改进闪速存储器清除的方法和系统
US8140737B2 (en) Method for enhancing life cycle of memory
CN108897492B (zh) 一种数据写入方法和装置
CN103019887A (zh) 数据备份方法及装置
CN104360957A (zh) 一种维持闪存损耗均衡的方法
CN110673789B (zh) 固态硬盘的元数据存储管理方法、装置、设备及存储介质
CN111930301A (zh) 垃圾回收优化方法、装置、存储介质及电子设备
US20110093649A1 (en) Method for managing a plurality of blocks of a flash memory, and associated memory device and controller thereof
CN114996173B (zh) 一种管理存储设备写操作的方法和装置
US8954646B2 (en) Method for managing a plurality of blocks of a flash memory, and associated memory device and controller thereof
CN110532195B (zh) 存储器系统的工作负荷分簇及执行其的方法
CN112256193A (zh) 一种提高固态硬盘数据安全性的方法、装置和存储介质
CN105117168A (zh) 一种信息处理方法和电子设备

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
TA01 Transfer of patent application right

Effective date of registration: 20200828

Address after: 100083 Beijing City, Haidian District Xueyuan Road No. 30, large industrial building A block 12 layer

Applicant after: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc.

Address before: 202, room 52, building 2, 100176 North View Garden, Daxing District economic and Technological Development Zone, Beijing

Applicant before: BEIJING JINGCUN TECHNOLOGY Co.,Ltd.

Applicant before: HEFEI BRANCH OF BEIJING JINGCUN TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094

Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd.

Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing

Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc.

CP03 Change of name, title or address