CN114281255B - 存储装置区块管理方法、存储器存储装置及存储器控制器 - Google Patents
存储装置区块管理方法、存储器存储装置及存储器控制器 Download PDFInfo
- Publication number
- CN114281255B CN114281255B CN202111555150.5A CN202111555150A CN114281255B CN 114281255 B CN114281255 B CN 114281255B CN 202111555150 A CN202111555150 A CN 202111555150A CN 114281255 B CN114281255 B CN 114281255B
- Authority
- CN
- China
- Prior art keywords
- block
- physical
- physical block
- memory
- memory module
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 19
- 230000005055 memory storage Effects 0.000 title claims description 25
- 238000005299 abrasion Methods 0.000 claims abstract description 12
- 239000004698 Polyethylene Substances 0.000 claims description 9
- 238000000034 method Methods 0.000 claims description 8
- -1 polyethylene Polymers 0.000 claims description 3
- 229920000573 polyethylene Polymers 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 2
- 230000002035 prolonged effect Effects 0.000 abstract description 5
- 238000012163 sequencing technique Methods 0.000 abstract description 4
- 238000012937 correction Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 5
- 239000002245 particle Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供一种存储装置区块管理方法、存储器存储装置及存储器控制器,存储装置区块管理方法包括:从存储器模块中,依据实体区块的ECC值对所有可用的实体区块进行归类分组处理,得到多个实体区块群组;对多个实体区块群组进行ECC值排序;对每一实体区块群组内的所有实体区块进行磨损值排序;在使用存储器模块时,优先在ECC值最小的实体区块群组内挑选磨损值最小的实体区块进行使用。藉此,可保证前期或者经常更新的数据得到最稳定的保护,并进一步提高存储装置的使用寿命。
Description
技术领域
本发明涉及一种存储器管理技术,尤其涉及一种存储装置区块管理方法、存储器存储装置及存储器控制器。
背景技术
目前,对于存储装置内存储模块的区块管理一般采用的是存储均衡算法,即建立一份均衡表格,用于记录存储装置内存储模块的每一区块的当前擦除次数,而当该存储模块进行数据写入时会查找这份均衡表格找寻当前擦除次数较低的区块先使用,以达到均衡使用存储模块的每个区块的目的,提高存储模块的实际使用寿命。但由于这种存储均衡算法均衡使用存储模块的每个区块时仅单独考虑每一区块的当前擦除次数,并没有考虑每一区块的好坏程度,因而,无法保证前期或者经常更新的数据得到最稳定的保护,且提高存储装置的使用寿命亦有限。
发明内容
本发明提供一种存储装置区块管理方法、存储器存储装置及存储器控制器,可保证前期或者经常更新的数据得到最稳定的保护,并进一步提高存储装置的使用寿命。
本发明的实施例提供一种存储装置区块管理方法,用于存储器存储装置,其中所述存储器存储装置包括存储器模块,所述存储器模块包括多个实体区块,每一所述实体区块包括多个实体页,所述存储装置区块管理方法包括:
从所述存储器模块中,依据所述实体区块的ECC值对所有可用的所述实体区块进行归类分组处理,得到多个实体区块群组;
对所述多个实体区块群组进行ECC值排序;
对每一所述实体区块群组内的所有所述实体区块进行磨损值排序;
在使用所述存储器模块时,优先在所述ECC值最小的实体区块群组内挑选所述磨损值最小的实体区块进行使用。
本发明的实施例另提供一种存储器存储装置,其包括连接接口、存储器模块及存储器控制器。所述连接接口用以连接至主机系统。所述存储器模块包括多个实体单元。所述存储器控制器连接至所述连接接口与所述存储器模块。所述存储器控制器用以执行上述的存储装置区块管理方法。
本发明的实施例另提供一种存储器控制器,其用以控制存储器模块。所述存储器模块包括多个实体单元。所述存储器控制器包括主机接口、存储器接口及存储器控制电路。所述主机接口用以连接至主机系统。所述存储器接口用以连接至所述存储器模块。所述存储器控制电路连接至所述主机接口与所述存储器接口。所述存储器控制电路用以执行上述的存储装置区块管理方法。
基于上述,首先,从存储器模块中,依据实体区块的ECC值对所有可用的实体区块进行归类分组处理,得到多个实体区块群组。然后,对多个实体区块群组进行ECC值排序,及对每一实体区块群组内的所有实体区块进行磨损值排序。最后,在使用存储器模块时,优先在ECC值最小的实体区块群组内挑选磨损值最小的实体区块进行使用。藉此,可保证前期或者经常更新的数据得到最稳定的保护,并进一步提高存储装置的使用寿命。
附图说明
图1是根据本发明的实施例所示出的存储器存储装置的示意图;
图2是根据本发明的实施例所示出的存储器控制器的示意图;
图3是根据本发明的实施例所示出的存储器模块的示意图;
图4是根据本发明的实施例所示出的存储装置区块管理方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
图1是根据本发明的实施例所示出的存储器存储装置的示意图。请参照图1,存储器存储系统10包括主机系统11与存储器存储装置12。主机系统11可为任意型态的计算机系统。例如。主机系统11可为笔记本计算机、台式计算机、智能手机、平板计算机、工业计算机、游戏机、数码相机等各式电子系统。存储器存储装置12用以存储来自主机系统11的数据。例如,存储器存储装置12可包括固态硬盘、U盘、存储卡或其他类型的非易失性存储装置。主机系统11可经由串行高级技术附件(Serial Advanced Technology Attachment,SATA)接口、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)、通用串行总线(Universal Serial Bus,USB)或其他类型的连接接口电性连接至存储器存储装置12。因此,主机系统11可将数据存储至存储器存储装置12和/或从存储器存储装置12读取数据。
存储器存储装置12可包括连接接口121、存储器模块122及存储器控制器123。连接接口121用以将存储器存储装置12连接至主机系统11。例如,连接接口121可支持SATA、PCIExpress或USB等连接接口标准。存储器存储装置12可经由连接接口121与主机系统11通信。
存储器模块122用以存储数据。存储器模块122可包括可复写式非易失性存储器模块。存储器模块122包括存储单元阵列。存储器模块122中的存储单元是以电压的形式来存储数据。例如,存储器模块122可包括单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块、三阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模块、四阶存储单元(Quad Level Cell,QLC)NAND型快闪存储器模块或其他具有相似特性的存储器模块。
存储器控制器123连接至连接接口121与存储器模块122。存储器控制器123可用以控制存储器存储装置12。例如,存储器控制器123可控制连接接口121与存储器模块122以进行数据存取与数据管理。例如,存储器控制器123可包括中央处理单元(CPU)、或是其他可编程的一般用途或特殊用途的微处理器、数字信号处理器(Digital Signal Processor,DSP)、可编程控制器、专用集成电路(Application Specific Integrated Circuits,ASIC)、可编程逻辑器件(Programmable Logic Device,PLD)或其他类似装置或这些装置的组合。
在一实施例中,存储器控制器123亦称为快闪存储器控制器。在一实施例中,存储器模块122亦称为快闪存储器模块。存储器模块122可接收来自存储器控制器123的指令序列并根据此指令序列存取存储单元。
图2是根据本发明的实施例所示出的存储器控制器的示意图。请参照图1与图2,存储器控制器123包括主机接口21、存储器接口22及存储器控制电路23。主机接口21用以经由连接接口121连接至主机系统11,以与主机系统11通信。存储器接口22用以连接至存储器模块122。
存储器控制电路23连接至主机接口21与存储器接口22。存储器控制电路23用以负责存储器存储装置12的整体或部分运作。存储器控制电路23可经由主机接口21与主机系统11通信并经由存储器接口22存取存储器模块122。在一实施例中,存储器控制电路23也可视为存储器控制器123的控制核心。在以下实施例中,对于存储器控制电路23的说明等同于对于存储器控制器123的说明。
图3是根据本发明的实施例所示出的存储器模块的示意图。请参照图1至图3,存储器模块122包括多个实体区块30,每一实体块30包括多个实体页31。一个实体区块30中的多个实体页31可被同时程序化以存储数据。此外,一个实体区块30中的所有实体页31的存储数据可被同时擦除。
在一实施例中,存储器控制电路23可从存储器模块122中,依据实体区块30的ECC值对所有可用的实体区块30进行归类分组处理,得到多个包含多个实体区块30的实体区块群组。
具体地,当存储器存储装置12被制造完成而进行第一次格式化(亦称为开卡)时,存储器控制电路23会对存储器模块122中的所有实体区块30进行写入、测试以及读取测试,建立一坏块表,该坏块表中记录存储器模块122中所有的区块状态,如包括每一实体区块30的错误比特数。实际情况中,由于有ECC("Error Correcting Code"的简写,中文名称是"错误检查和纠正")的存在,且不同的存储器控制电路23,其ECC校正能力可能不同,亦可能不同。存储器控制电路23的ECC校正能力指当其控制的实体区块30出现错误比特数时,其能校正过来的最大阈值。针对当前的存储器控制电路23而言,当实体区块30的错误比特数不大于其ECC校正能力的阈值时,即表示该实体区块30可用。
上述实体区块30的错误比特数可直接作为相应实体区块30的ECC值,此时,在一实施例中,存储器控制电路23可从存储器模块122的坏块表中读取每一实体区块30的错误比特数,以得到相应的实体区块30的ECC值后,将多个ECC值相同的实体区块30归属在同一实体区块群组中,以得到多个实体区块群组。
具体地,其中每一个实体区块群组可包含一或多个实体区块30,且每一个实体区块30其在某一个时间段的ECC值只能属于某一个实体区块群组。每一个实体区块群组的ECC值都是不相同的。每一个实体区块群组包含的实体区块30的数量可以是相同的也可是不相同的。在某一时间点,属于同一个实体区块群组的实体区块30具有相同的ECC值,而属于不同群组的实体区块30具有不同的ECC值。此外,在划分实体区块群组后,某一个实体区块30所属的实体区块群组可能会动态改变,而非是永远固定的,这是基于区块存储数据的原理所决定的。
基于上述表述可知,存储器模块122的坏块表记录存储器模块122的区块状态,如每一实体区块30的错误比特数。具体地为那些实体区块30能够通过测试是由于其没有一个比特错误数,哪些实体区块30能通过是由于ECC校正才能通过测试的,记录其明细,以当前的存储器控制电路23的ECC校正能力为16比特为例,那么实体区块30的错误比特数不大于16比特的都可认定是通过测试,可以使用的,示例性如表1所示:
表1坏块表
0bit | PBA(1) | ………… | PBA(a) |
1bit | PBB(1) | ………… | PBB(b) |
2bit | PBC(1) | ………… | PBC(c) |
… | …… | …… | ……… |
16bit | PBQ(1) | ………… | PBQ(q) |
坏块 | PBR(1) | ………… | PBR(r) |
表1仅为便于说明本申请坏块表的工作原理作出的示意图,并非坏块表的实际表现形式。一般来说,在存储器存储装置12开卡时会优先将错误比特数小的实体区块30分配至数据区与闲置区。上述提到的ECC校正能力取决于存储器控制电路23,其是以错误检查与校正电路的方式设置于存储器控制电路23中,以及编解码方法的不同,也对应着ECC校正能力,如BCH和LDPC,两者的校正方法是不相同的,后者是概率校验,简单来讲,超过阈值后,错误是有大概率不能被校正过来,本实施例不做具体限定,只是举例说明。
上述提到的坏块表在存储器存储装置12开卡时建立,使用过程中更新它。上述的表1中,区块位址为PBA(1)至PBA(a)的实体区块有0个错误比特数、区块位址为PBB(1)至PBB(b)的实体区块有1个错误比特数、区块位址为PBC(1)至PBC(c)的实体区块有2个错误比特数、……、区块位址为PBQ(1)至PBQ(q)的实体区块有16个错误比特数、区块位址为PBR(1)至PBR(r)的实体区块是坏块(表示这些实体区块的错误比特数大于16),这些坏块出厂就有或者使用过程中产生的。表1中的字母a至r均表示大于1的正整数,两个不同的字母表示的正整数可以相等亦可以不相等。此时,存储器控制电路23将多个ECC值相同的实体区块30归属在同一实体区块群组中,以得到多个实体区块群组。以表1为例,可得到16个实体区块群组,如区块位址为PBA(1)至PBA(a)的实体区块有0个错误比特数,可对应归属在ECC值为0的实体区块群组;区块位址为PBB(1)至PBB(b)的实体区块有1个错误比特数,可对应归属在ECC值为1的实体区块群组;区块位址为PBC(1)至PBC(c)的实体区块有2个错误比特数,可对应归属在ECC值为1的实体区块群组;……;区块位址为PBQ(1)至PBQ(q)的实体区块有16个错误比特数,可对应归属在ECC值为16的实体区块群组。此时,存储器控制电路23对多个实体区块群组进行ECC值排序的操作可以是按照ECC值从小到大的顺序,对多个实体区块群组进行排列,即ECC值为0的实体区块群组排在最前面,ECC值为16的实体区块群组排在最后面。
在一实施例中,存储器控制电路23亦可从存储器模块122的坏块表中读取每一实体区块30的错误比特数,以得到相应的实体区块30的ECC值后。将多个ECC值属于同一ECC值区间范围内的实体区块归属在同一实体区块群组中,以得到多个实体区块群组。同样以表1为例,可划分出0~2、3~5、6~8、9~11、12~14、15~16共6个ECC值区间范围,此时,可得到6个实体区块群组,以ECC值区间范围为0~2为例,区块位址为PBA(1)至PBA(a)的实体区块有0个错误比特数,对应的ECC值均为0;区块位址为PBB(1)至PBB(b)的实体区块有1个错误比特数,对应的ECC值均为1;区块位址为PBC(1)至PBC(c)的实体区块有2个错误比特数,对应的ECC值均为2;这些ECC值为0、1、2的实体区块,即区块地址为PBA(1)至PBA(a)、PBB(1)至PBB(b)、PBC(1)至PBC(c)的实体区块可归属在同一实体区块群组中,该实体区块群组对应的ECC值区间范围为0~2。其余实体区块群组的分类与此类同。此时,存储器控制电路23对多个实体区块群组进行ECC值排序的操作可以是按照ECC值区间范围从小到大的顺序,对多个实体区块群组进行排列,即ECC值区间范围为0~2的实体区块群组排在最前面,ECC值区间范围为15~16的实体区块群组排在最后面。此时,针对每一实体区块群组而言,其群组内的所有实体区块30的ECC值均在同一ECC值区间范围,即可能存在实体区块30的ECC值相接近但不同的情况,后续针对这种实体区块群组进行群组内的磨损值排序时,亦只考虑磨损值的情况,不在考虑ECC值,后续不在赘述。一般而言,存储器模块122中的每一实体区块30的使用寿命主要跟其擦除次数相关,而每一实体区块30的擦除次数又跟其采用的电子结构相关,这些电子结构包括单层存储单元(Single-Level Cell,简称SLC)、双层存储单元(Multi-Level Cell,简称MLC)、三层存储单元(Trinary-Level Cell,简称TLC)以及四层存储单元(Quad-Level Cell,简称QLC)。其中,SLC为单层电子结构,每个cell可以存放1bit数据,SLC达到1bit/cell,写入数据的时候电压变化区间小,P/E寿命较长,理论擦写次数在10万次以上。MLC为使用高低电压的而不同构建的双层电子结构,MLC达到2bit/cell,P/E寿命较长,理论擦写次数在3000-5000次左右。TLC是MLC闪存延伸,TLC达到3bit/cell,由于存储密度较高,所以容量理论上是MLC的1.5倍,成本较低,但是P/E寿命相对要低一些,理论擦写次数在1000-3000次不等。QLC闪存颗粒拥有比TLC更高的存储密度,同时成本上相比TLC更低,优势就是可以将容量做的更大,成本上更低,劣势就是P/E寿命更短,理论擦写次数仅150次。因而,为确保存储器模块122的使用寿命,需均衡使用存储器模块122中的每一实体区块30。PEMax值是已知的,设定一阈值,其为PEMax值的一半,可优先使用平均值中最小值的实体区块。而对于使用寿命相同的实体区块30,则优选使用磨损值最小的实体区块。
在一实施例中,存储器控制电路23可对每一实体区块群组内的所有实体区块30进行磨损值排序。该磨损值排序是对于同一实体区块群组内的所有实体区块30的排序。每一实体区块30对应的磨损值主要跟相应实体区块30的当前擦除次数有关。因而,存储器控制电路23可从存储器模块122的均衡表中读取每一实体区块30的当前擦除次数,并将该当前擦除次数作为该磨损值,来得到每一实体区块30的磨损值后,按照磨损值从小到大的顺序,对每一实体区块群组内的所有实体区块30进行排列。上述提到的均衡表同样可在存储器存储装置12开卡时建立,使用过程中更新它。该均衡表可记录每一实体区块30的当前擦除次数,当某一实体区块30进行一次擦除操作后,需在该均衡表中对相应实体区块30的当前擦除次数进行一次更新。
在一些示例中,每一实体区块30对应的磨损值除了跟相应实体区块30的当前擦除次数有关外,还跟相应实体区块30的有效数据页数有关。此时,在一实施例中,存储器控制电路23可从存储器模块122的均衡表中读取每一实体区块30的当前擦除次数,及从存储器模块122的坏块表中读取每一实体区块30的实体页总数及每一实体区块30的有效数据页数后,再根据当前擦除次数、实体页总数、有效数据页数以及相应的实体区块群组内的擦除次数最小值,计算得到每一实体区块30的磨损磨损值,并按照磨损值从小到大的顺序,对每一实体区块群组内的所有实体区块30进行排列。
基于上述可知,存储器模块122的均衡表中记录有每一实体区块30的当前擦除次数,因而,存储器控制电路23可从存储器模块122的均衡表中读取,获得每一实体区块30的当前擦除次数,从而得知,对每一实体区块30而言,其相应的实体区块群组内的所有实体区块30的当前擦除次数,从中找出最小值,作为相应的实体区块群组内的擦除次数最小值。存储器模块122的坏块表中记录存储器模块122的区块状态,如每一实体区块30的实体页的总数及每一实体区块30的有效数据页数。因而,存储器控制电路23可直接从存储器模块122的坏块表中读取,获得每一实体区块30的实体页总数及每一实体区块30的有效数据页数。每一实体区块30的有效数据页数具体可指相应实体区块30内的所有实体页31中写有效数据的实体页的数量。
在一实施例中,根据当前擦除次数、实体页总数、有效数据页数以及相应的实体区块群组内的擦除次数最小值,计算得到每一实体区块30的磨损值的方式可以如下所示:
设定一变量M,
则每一实体区块30的磨损值x=M*Ntp+(1-M)Nvp,其中,PEx表示序号为X的实体区块30的当前擦除次数值;PEMin表示相应的实体区块群组内的擦除次数最小值,Ntp表示序号为X的实体区块30的实体页总数,Nvp表示序号为X的实体区块30的有效数据页数。存储器存储装置12开卡时,PEMin为零,此时M=1,所有实体区块30的磨损值均相等,存储器控制电路23在使用存储器模块122时,可选择任一实体区块30进行使用。在存储器存储装置12使用过程中,一般来讲,存储器模块122中M*Ntp是相等的,此时x的数值取决于(1-M)Nvp的大小,大多数情况下,Nvp是不相等的,若是有相同的,对于此类X值得区块,择一选择即可;因而,实体区块30的挑选取决于实体区块30的当前擦除次数与实体区块30中的有效数据页的数值。可见,本公式综合考量实体区块30的当前擦除次数与实体区块30的有效数据页数,可更加精准地选择合适的实体区块30进行使用,与现有技术相比,可以进一步提高存储器存储装置12的使用寿命。
在一实施例中,存储器控制电路23使用存储器模块122时,优先在ECC值最小的实体区块群组内挑选磨损值最小的实体区块30进行使用。藉此,可保证前期或者经常更新的数据得到最稳定的保护,并进一步提高存储装置的使用寿命。
在一实施例中,存储器控制电路23对所挑选的实体区块30进行数据写入时,在预写入数据的实体区块30为空块时,将当前需要写入的数据写入实体区块30。具体体现为,存储器控制电路23先检测预写入数据的实体区块30是否为空块。若预写入数据的实体区块30不为空块,则将预写入数据的实体区块30擦除为空块后,将当前需要写入的数据写入实体区块30;若预写入数据的实体区块30为空块,则直接将当前需要写入的数据写入实体区块30。即在每次向实体区块30写入数据之前,需要确保该实体区块30为空块(即未写有数据的实体区块30)才将数据写入,若该实体区块30不为空块(即为数据块,其可能写有无效数据,该无效数据指该数据本身已被删除或已被移动到其它实体区块30中),则需要将该块中的已有数据先擦除,再将当前需要写入的数据写入该块。
图4是根据本发明的实施例所示出的存储装置区块管理方法的流程图。请参照图4,在步骤S401中,从存储器模块中,依据实体区块的ECC值对所有可用的实体区块进行归类分组处理,得到多个实体区块群组。在步骤S402中,对多个实体区块群组进行ECC值排序。在步骤S403中,对每一实体区块群组内的所有实体区块进行磨损值排序。在步骤S404中,在使用该存储器模块时,优先在ECC值最小的实体区块群组内挑选磨损值最小的实体区块进行使用。
然而,图4中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图4中各步骤可以实作为多个程序码或是电路,本发明不加以限制。此外,图4的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,在使用存储器模块时,优先在ECC值最小的实体区块群组内挑选磨损值最小的实体区块进行使用。藉此,可保证前期或者经常更新的数据得到最稳定的保护,并与现有技术相比,可进一步提高存储装置的使用寿命。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种存储装置区块管理方法,其特征在于,用于存储器存储装置,其中所述存储器存储装置包括存储器模块,所述存储器模块包括多个实体区块,每一所述实体区块包括多个实体页,所述存储装置区块管理方法包括:
从所述存储器模块的坏块表中读取每一所述实体区块的错误比特数,以得到相应的所述实体区块的ECC值;
将多个ECC值相同的所述实体区块归属在同一所述实体区块群组中,以得到所述多个实体区块群组;
按照ECC值区间范围从小到大的顺序,对所述多个实体区块群组进行排列;
从所述存储器模块的均衡表中读取每一所述实体区块的当前擦除次数;
从所述存储器模块的坏块表中读取每一所述实体区块的实体页总数以及每一所述实体区块的有效数据页数;
根据所述当前擦除次数、所述实体页总数、所述有效数据页数以及相应的所述实体区块群组内的擦除次数最小值,计算得到每一所述实体区块的磨损值,具体包括:
设定一变量M,
则每一所述实体区块的磨损值x=M*Ntp+(1-M)Nvp,其中,PEx表示序号为X的所述实体区块的当前擦除次数值;PEMin表示相应的所述实体区块群组内的擦除次数最小值,Ntp表示序号为X的所述实体区块的实体页总数,Nvp表示序号为X的所述实体区块的有效数据页数;
按照磨损值从小到大的顺序,对每一所述实体区块群组内的所有实体区块进行排列;
在使用所述存储器模块时,优先在所述ECC值最小的实体区块群组内挑选所述磨损值最小的实体区块进行使用。
2.根据权利要求1所述的存储装置区块管理方法,其特征在于,从所述存储器模块中,依据所述实体区块的ECC值对所有可用的所述实体区块进行归类分组处理,得到多个实体区块群组的操作具体包括:
从所述存储器模块的坏块表中读取每一所述实体区块的错误比特数,以得到相应的所述实体区块的ECC值;
将多个ECC值相同的所述实体区块归属在同一所述实体区块群组中,以得到所述多个实体区块群组。
3.根据权利要求2所述的存储装置区块管理方法,其特征在于,对所述多个实体区块群组进行ECC值排序的操作具体包括:
按照ECC值从小到大的顺序,对所述多个实体区块群组进行排列。
4.根据权利要求1所述的存储装置区块管理方法,其特征在于,对每一所述实体区块群组内的所有所述实体区块进行磨损值排序的操作具体包括:
从所述存储器模块的均衡表中读取每一所述实体区块的当前擦除次数,并将所述当前擦除次数作为所述磨损值,来得到每一所述实体区块的磨损值;
按照磨损值从小到大的顺序,对每一所述实体区块群组内的所有实体区块进行排列。
5.根据权利要求1-4任一项所述的存储装置区块管理方法,其特征在于,还包括:
对所挑选的所述实体区块进行数据写入时,在预写入数据的实体区块为空块时,将当前需要写入的数据写入所述实体区块。
6.根据权利要求5所述的存储装置区块管理方法,其特征在于,在预写入数据的实体区块为空块时,将当前需要写入的数据写入所述实体区块的操作具体包括:
检测预写入数据的实体区块是否为空块;
若所述预写入数据的实体区块不为空块,则将所述预写入数据的实体区块擦除为空块后,将当前需要写入的数据写入所述实体区块;
若所述预写入数据的实体区块为空块,则直接将当前需要写入的数据写入所述实体区块。
7.一种存储器存储装置,其特征在于,包括:
连接接口,用以连接至主机系统;
存储器模块,其包括多个实体区块,每一所述实体区块包括多个实体页;以及
存储器控制器,连接至所述连接接口与所述存储器模块,
其中所述存储器控制器用以执行如权利要求1-6任一项所述的存储装置区块管理方法。
8.一种存储器控制器,其特征在于,用以控制存储器模块,其中所述存储器模块包括多个实体区块,每一所述实体区块包括多个实体页,且所述存储器控制器包括:
主机接口,用以连接至主机系统;
存储器接口,用以连接至所述存储器模块;以及
存储器控制电路,连接至所述主机接口与所述存储器接口,
其中所述存储器控制电路用以执行如权利要求1-6任一项所述的存储装置区块管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111555150.5A CN114281255B (zh) | 2021-12-17 | 2021-12-17 | 存储装置区块管理方法、存储器存储装置及存储器控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111555150.5A CN114281255B (zh) | 2021-12-17 | 2021-12-17 | 存储装置区块管理方法、存储器存储装置及存储器控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114281255A CN114281255A (zh) | 2022-04-05 |
CN114281255B true CN114281255B (zh) | 2024-03-08 |
Family
ID=80872914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111555150.5A Active CN114281255B (zh) | 2021-12-17 | 2021-12-17 | 存储装置区块管理方法、存储器存储装置及存储器控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114281255B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106933490A (zh) * | 2015-12-29 | 2017-07-07 | 伊姆西公司 | 控制对磁盘阵列进行读写操作的方法和装置 |
CN108205423A (zh) * | 2016-12-20 | 2018-06-26 | 华为技术有限公司 | 一种物理硬盘磨损均衡方法、装置及系统 |
CN108563397A (zh) * | 2018-01-04 | 2018-09-21 | 威盛电子股份有限公司 | 存储装置以及数据保存方法 |
CN111104045A (zh) * | 2018-10-25 | 2020-05-05 | 深圳市中兴微电子技术有限公司 | 一种存储控制方法、装置、设备和计算机存储介质 |
CN111625187A (zh) * | 2020-05-15 | 2020-09-04 | 合肥康芯威存储技术有限公司 | 一种存储器及其控制方法与存储系统 |
CN111639041A (zh) * | 2020-05-29 | 2020-09-08 | 深圳宏芯宇电子股份有限公司 | 存储器控制方法、存储器存储装置及存储器控制器 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140115422A1 (en) * | 2012-10-24 | 2014-04-24 | Laurence H. Cooke | Non-volatile memory error correction |
US9983829B2 (en) * | 2016-01-13 | 2018-05-29 | Sandisk Technologies Llc | Physical addressing schemes for non-volatile memory systems employing multi-die interleave schemes |
US11112979B2 (en) * | 2019-07-26 | 2021-09-07 | Micron Technology, Inc. | Runtime memory allocation to avoid and delay defect effects in memory sub-systems |
-
2021
- 2021-12-17 CN CN202111555150.5A patent/CN114281255B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106933490A (zh) * | 2015-12-29 | 2017-07-07 | 伊姆西公司 | 控制对磁盘阵列进行读写操作的方法和装置 |
CN108205423A (zh) * | 2016-12-20 | 2018-06-26 | 华为技术有限公司 | 一种物理硬盘磨损均衡方法、装置及系统 |
CN108563397A (zh) * | 2018-01-04 | 2018-09-21 | 威盛电子股份有限公司 | 存储装置以及数据保存方法 |
CN111104045A (zh) * | 2018-10-25 | 2020-05-05 | 深圳市中兴微电子技术有限公司 | 一种存储控制方法、装置、设备和计算机存储介质 |
CN111625187A (zh) * | 2020-05-15 | 2020-09-04 | 合肥康芯威存储技术有限公司 | 一种存储器及其控制方法与存储系统 |
CN111639041A (zh) * | 2020-05-29 | 2020-09-08 | 深圳宏芯宇电子股份有限公司 | 存储器控制方法、存储器存储装置及存储器控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN114281255A (zh) | 2022-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10713178B2 (en) | Mapping table updating method, memory controlling circuit unit and memory storage device | |
US8892814B2 (en) | Data storing method, and memory controller and memory storage apparatus using the same | |
US8832527B2 (en) | Method of storing system data, and memory controller and memory storage apparatus using the same | |
US8370680B2 (en) | Solid state storage system for controlling reserved area and method of controlling the same | |
US10620874B2 (en) | Memory management method, memory control circuit unit and memory storage apparatus | |
US10747471B2 (en) | Cell programming method, memory control circuit unit and memory storage device | |
US11573704B2 (en) | Memory control method, memory storage device and memory control circuit unit | |
US10564862B2 (en) | Wear leveling method, memory control circuit unit and memory storage apparatus | |
TWI651721B (zh) | 解碼方法以及儲存控制器 | |
US20090024787A1 (en) | Data writing method and apparatus | |
US9946476B2 (en) | Memory management method, memory control circuit unit and memory storage apparatus | |
US9236148B2 (en) | Memory management method, memory control circuit unit and memory storage apparatus | |
US10474386B1 (en) | Memory management method and storage controller | |
US9983805B1 (en) | Memory management method, memory control circuit unit and memory storage apparatus | |
US9990152B1 (en) | Data writing method and storage controller | |
US10509583B1 (en) | Memory management method and storage controller | |
US10871909B2 (en) | Block management method, memory control circuit unit and apparatus using mapping tables and block recognition machine learning with block parameters as training data | |
US11442662B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US10824340B2 (en) | Method for managing association relationship of physical units between storage area and temporary area, memory control circuit unit, and memory storage apparatus | |
CN114281255B (zh) | 存储装置区块管理方法、存储器存储装置及存储器控制器 | |
CN115185468A (zh) | 存储器管理方法、存储器控制器及存储器存储装置 | |
US20210056018A1 (en) | Cold area determining method, memory controlling circuit unit and memory storage device | |
US11409472B1 (en) | Trim command processing method, memory control circuit unit and memory storage apparatus | |
CN116954480A (zh) | 区块管理方法、存储器控制器及存储器存储装置 | |
TWI762843B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |