CN104866429A - 存储器管理方法、存储器控制电路单元与存储器存储装置 - Google Patents
存储器管理方法、存储器控制电路单元与存储器存储装置 Download PDFInfo
- Publication number
- CN104866429A CN104866429A CN201410066911.4A CN201410066911A CN104866429A CN 104866429 A CN104866429 A CN 104866429A CN 201410066911 A CN201410066911 A CN 201410066911A CN 104866429 A CN104866429 A CN 104866429A
- Authority
- CN
- China
- Prior art keywords
- erased cell
- entity erased
- those
- threshold value
- erasing
- 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
Abstract
本发明提出一种存储器管理方法、存储器控制电路单元与存储器存储装置。本方法包括判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值;依据判断结果,选择根据闲置区的每个实体抹除单元的抹除次数或是最大错误比特数目,由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元;以及依据已排序实体抹除单元从闲置区中提取排序在最前面的一实体抹除单元来写入数据。基此,本方法可有效地延长可复写式非易失性存储器模块的使用寿命。
Description
技术领域
本发明是有关于一种存储器管理方法,且特别是有关于用于可复写式非易失性存储器模块的存储器管理方法、存储器控制电路单元与存储器存储装置。
背景技术
数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器模块(rewritablenon-volatile memory)具有数据非易失性、省电、体积小、无机械结构、读写速度快等特性,最适于可携式电子产品,例如笔记型计算机。固态硬盘就是一种以闪存作为存储媒体的存储器存储装置。因此,近年闪存产业成为电子产业中相当热门的一环。
耗损平均(Wear Leveling)是用于管理可复写式非易失性存储器模块上的一种技术。可复写式非易失性存储器模块的实体抹除单元有抺写次数的限制,针对同一个单一区块,进行重复抺除、写入,将会造成读取速度变慢,甚至损坏而无法使用。耗损平均技术目的在于平均使用可复写式非易失性存储器模块中的每个实体抹除单元,以避免某些「特定」实体抹除单元因过度使用,导致使用次数过大而老化,除了存储在其上的数据错误发生率提高以及老化速率增加之外,也会因为使用次数到达制造厂商保证的极限值,被标记成坏实体抹除单元,而不能继续使用。
但是并不是每个实体抹除单元在使用次数达到厂商保证的极限值之后就一定会损坏。更具体来说,在多个使用次数达到厂商保证的极限值的实体抹除单元中,部份的实体抹除单元所发生的错误比特数目较少,另一部份的实体抹除单元所发生的错误比特数目较多,而错误比特数目较少且错误比特数目在错误检查与校正保护能力之内的实体抹除单元,其数据所发生的错误还可以利用错误检查与校正(ECC)而校正回来,而继续使用。
过去都是以写入或抹除次数来作为耗损平均的参考基准,并不会考虑到使用次数达到厂商保证的极限值的实体抹除单元是否还可以继续使用,一旦使用次数一达到极限值,便标记该实体抹除单元为坏实体抹除单元并且不再使用,导致不能有效地充分利用可复写式非易失性存储器模块的使用寿命。
发明内容
本发明提供一种存储器管理方法、存储器控制电路单元与存储器存储装置,能够有效地延长存储器的使用寿命。
本发明提出一种用于可复写式非易失性存储器模块的存储器管理方法,其中可复写式非易失性存储器模块具有多个实体抹除单元。本存储器管理方法包括:记录每个实体抹除单元的抹除次数;将实体抹除单元至少分组为闲置区与数据区以及判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值。本存储器管理方法还包括:若可复写式非易失性存储器模块的使用次数不大于使用次数门坎值时,根据闲置区的每个实体抹除单元的抹除次数,由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元;以及若可复写式非易失性存储器模块的使用次数大于使用次数门坎值时,根据闲置区的实体抹除单元的最大错误比特数目,由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元。本存储器管理方法还包括:依据已排序实体抹除单元从闲置区中提取排序在最前面的第一实体抹除单元来写入数据。
在本发明的一范例实施例中,上述判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值的步骤包括:依据每个实体抹除单元的抹除次数,计算实体抹除单元的平均抹除次数;判断实体抹除单元的平均抹除次数是否大于抹除次数门坎值;若实体抹除单元的平均抹除次数大于抹除次数门坎值时,则识别可复写式非易失性存储器模块的使用次数大于使用次数门坎值;以及若实体抹除单元的平均抹除次数不大于抹除次数门坎值时,则识别可复写式非易失性存储器模块的使用次数不大于使用次数门坎值。
在本发明的一范例实施例中,上述判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值的步骤包括:判断是否实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值;若实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值时,则识别可复写式非易失性存储器模块的使用次数大于使用次数门坎值;以及若每个实体抹除单元的抹除次数皆不大于抹除次数门坎值时,则识别可复写式非易失性存储器模块的使用次数不大于使用次数门坎值。
在本发明的一范例实施例中,上述判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值的步骤包括:判断是否实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值;若实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值时,则识别可复写式非易失性存储器模块的使用次数大于使用次数门坎值;以及若每个实体抹除单元的抹除次数皆不大于抹除次数门坎值时,则识别可复写式非易失性存储器模块的使用次数不大于使用次数门坎值。
在本发明的一范例实施例中,上述每个实体抹除单元包括多个实体程序化单元,且每个实体程序化单元可存储至少一个错误检查与校正框。并且,上述存储器管理方法还包括:持续记录发生在实体抹除单元中的第一实体抹除单元的每一个错误检查与校正框的错误比特的数目;以及以数目中的最大数目作为第一实体抹除单元的最大错误比特数目。
在本发明的一范例实施例中,上述根据闲置区的每个实体抹除单元的抹除次数,由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元的步骤还包括:将闲置区的每个实体抹除单元的抹除次数乘上一个第三预先定义值得到一个抹除次数加权值;以及根据闲置区的实体抹除单元各自的抹除次数加权值由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元。
在本发明的一范例实施例中,上述根据闲置区的每个实体抹除单元的最大错误比特数目,由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元的步骤包括:根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值,并根据加权值由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元。
在本发明的一范例实施例中,上述根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值的步骤包括:将每个实体抹除单元的抹除次数乘上第一预先定义值以产生对应每个实体抹除单元的抹除次数权重值;将每个实体抹除单元的最大错误比特数目乘上第二预先定义值以产生对应每个实体抹除单元的最大错误比特数目权重值;以及将每个实体抹除单元各自的抹除次数权重值加上最大错误比特数目权重值所获得的值作为每个实体抹除单元的加权值。
本发明提出一种用于控制可复写式非易失性存储器模块的存储器控制电路单元。此存储器控制电路单元包括主机接口、存储器接口与存储器管理电路。主机接口用以电性连接至主机系统。存储器接口用以电性连接至可复写式非易失性存储器模块,其中可复写式非易失性存储器模块具有多个实体抹除单元。存储器管理电路电性连接至主机接口与存储器接口,并且用以记录每个实体抹除单元的抹除次数。在此,存储器管理电路还用以将实体抹除单元至少分组为闲置区与数据区,并且判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值。若可复写式非易失性存储器模块的使用次数不大于使用次数门坎值时,存储器管理电路还用以根据闲置区的每个实体抹除单元的抹除次数,由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元,并且若可复写式非易失性存储器模块的使用次数大于使用次数门坎值时,存储器管理电路还用以根据闲置区的实体抹除单元的最大错误比特数目,由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元。再者,存储器管理电路还用以对上述可复写式非易失性存储器模块下达一指令序列,其中此指令序列用以依据已排序实体抹除单元从闲置区中提取排序在最前面的第一实体抹除单元来写入数据。
在本发明的一范例实施例中,在上述判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值的运作中,存储器管理电路用以依据每个实体抹除单元的抹除次数,计算实体抹除单元的平均抹除次数,判断实体抹除单元的平均抹除次数是否大于抹除次数门坎值。若实体抹除单元的平均抹除次数大于抹除次数门坎值时,则存储器管理电路识别可复写式非易失性存储器模块的使用次数大于使用次数门坎值。若实体抹除单元的平均抹除次数不大于抹除次数门坎值时,则存储器管理电路识别可复写式非易失性存储器模块的使用次数不大于使用次数门坎值。
在本发明的一范例实施例中,在上述判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值的运作中,存储器管理电路用以判断是否实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值。若实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值时,则存储器管理电路识别可复写式非易失性存储器模块的使用次数大于使用次数门坎值。若每个实体抹除单元的抹除次数皆不大于抹除次数门坎值时,则存储器管理电路识别可复写式非易失性存储器模块的使用次数不大于使用次数门坎值。
在本发明的一范例实施例中,上述每个实体抹除单元包括多个实体程序化单元,且每个实体程序化单元可存储至少一个错误检查与校正框。并且存储器管理电路用以持续记录发生在实体抹除单元中的第一实体抹除单元的每一个错误检查与校正框的错误比特的数目,并且将这些数目中的最大数目作为第一实体抹除单元的最大错误比特数目。
在本发明的一范例实施例中,在上述根据闲置区的每个实体抹除单元的抹除次数,由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元的运作中还包括:存储器管理电路用以将闲置区的每个实体抹除单元的抹除次数乘上一个第三预先定义值得到一个抹除次数加权值;以及根据闲置区的每个实体抹除单元各自的抹除次数加权值由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元。
在本发明的一范例实施例中,在上述根据闲置区的每个实体抹除单元的最大错误比特数目,由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元的运作中,存储器管理电路根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值,并根据加权值由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元。
在本发明的一范例实施例中,在上述根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值的运作中,存储器管理电路将每个实体抹除单元的抹除次数乘上第一预先定义值以产生对应每个实体抹除单元的抹除次数权重值,将每个实体抹除单元的最大错误比特数目乘上第二预先定义值以产生对应每个实体抹除单元的最大错误比特数目权重值,并且将每个实体抹除单元各自的抹除次数权重值加上最大错误比特数目权重值所获得的值作为每个实体抹除单元的加权值。
本发明提出一种存储器存储装置,其包括连接接口单元、可复写式非易失性存储器模块与存储器控制电路单元。连接接口单元用以电性连接至主机系统。可复写式非易失性存储器模块具有多个实体抹除单元。存储器控制电路单元电性连接至连接接口单元与可复写式非易失性存储器模块,并且用以记录每个实体抹除单元的抹除次数。此外,存储器控制电路单元还用以将实体抹除单元至少分组为闲置区与数据区,并且判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值。若可复写式非易失性存储器模块的使用次数不大于使用次数门坎值时,存储器控制电路单元还用以根据闲置区的每个实体抹除单元的抹除次数,由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元。若可复写式非易失性存储器模块的使用次数大于使用次数门坎值时,存储器控制电路单元还用以根据闲置区的实体抹除单元的最大错误比特数目,由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元。再者,存储器控制电路单元还用以依据已排序实体抹除单元从闲置区中提取排序在最前面的第一实体抹除单元来写入数据。
在本发明的一范例实施例中,在上述判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值的运作中,存储器控制电路单元用以依据每个实体抹除单元的抹除次数,计算实体抹除单元的平均抹除次数,且判断实体抹除单元的平均抹除次数是否大于抹除次数门坎值。若实体抹除单元的平均抹除次数大于抹除次数门坎值时,则存储器控制电路单元识别可复写式非易失性存储器模块的使用次数大于使用次数门坎值。若实体抹除单元的平均抹除次数不大于抹除次数门坎值时,则存储器控制电路单元识别可复写式非易失性存储器模块的使用次数不大于使用次数门坎值。
在本发明的一范例实施例中,在上述判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值的运作中,存储器控制电路单元用以判断是否实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值。若实体抹除单元中至少一个实体抹除单元的抹除次数大于抹除次数门坎值时,则存储器控制电路单元识别可复写式非易失性存储器模块的使用次数大于使用次数门坎值。若每个实体抹除单元的抹除次数皆不大于抹除次数门坎值时,则存储器控制电路单元识别可复写式非易失性存储器模块的使用次数不大于使用次数门坎值。
在本发明的一范例实施例中,上述每个实体抹除单元包括多个实体程序化单元,且每个实体程序化单元可存储至少错误检查与校正框。并且存储器控制电路单元用以持续记录发生在实体抹除单元中的第一实体抹除单元的每一个错误检查与校正框的错误比特的数目,且将这些数目中的最大数目作为第一实体抹除单元的最大错误比特数目。
在本发明的一范例实施例中,在上述根据闲置区的每个实体抹除单元的抹除次数,由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元的运作中还包括:存储器控制电路单元用以将闲置区的每个实体抹除单元的抹除次数乘上一个第三预先定义值得到一个抹除次数加权值;以及根据闲置区的每个实体抹除单元各自的抹除次数加权值由小到大排序闲置区的实体抹除单元以形成多个已排序实体抹除单元。
在本发明的一范例实施例中,在上述根据闲置区的每个实体抹除单元的最大错误比特数目,由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元的运作中,存储器控制电路单元用以根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值,并根据加权值由小到大排序闲置区的实体抹除单元以形成已排序实体抹除单元。
在本发明的一范例实施例中,在上述根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值的运作中,存储器控制电路单元用以将每个实体抹除单元的抹除次数乘上第一预先定义值以产生对应每个实体抹除单元的抹除次数权重值,将每个实体抹除单元的最大错误比特数目乘上第二预先定义值以产生对应每个实体抹除单元的最大错误比特数目权重值,并且将每个实体抹除单元各自的抹除次数权重值加上最大错误比特数目权重值所获得的值作为每个实体抹除单元的加权值。
基于上述,本发明可以让可复写式非易失性存储器模块中,使用次数达到厂商保证的极限值的实体抹除单元还可以继续被使用,以达到延长可复写式非易失性存储器模块的使用寿命的效果。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是根据一范例实施例所示出的主机系统与存储器存储装置的示意图;
图2是根据本发明范例实施例所示出的计算机、输入/输出装置与存储器存储装置的示意图;
图3是根据本发明范例实施例所示出的主机系统与存储器存储装置的示意图;
图4是示出图1所示的存储器存储装置的概要方块图;
图5是根据一范例实施例所示出的存储器控制电路单元的概要方块图;
图6与图7是根据第一范例实施例所示出的管理实体区块的范例示意图;
图8是根据一范例实施例所示出的错误检查与校正框的范例示意图;
图9为根据本发明的范例实施例,所示出的根据可复写式非易失性存储器模块的使用次数,来延长可复写式非易失性存储器模块的使用寿命的存储器管理方法的流程图;
图10为根据本发明的范例实施例,所示出的根据可复写式非易失性存储器模块的实体抹除单元的平均抹除次数,来延长可复写式非易失性存储器模块的使用寿命的存储器管理方法的流程图;
图11为根据本发明的范例实施例,所示出的根据闲置区的其中之一的实体抹除单元的抹除次数,来延长可复写式非易失性存储器模块106的使用寿命的存储器管理方法的流程图。
附图标记说明:
1000:主机系统;
1100:计算机;
1102:微处理器;
1104:随机存取存储器;
1106:输入/输出装置;
1108:系统总线;
1110:数据传输接口;
1202:鼠标;
1204:键盘;
1206:显示器;
1208:打印机;
1212:U盘;
1214:存储卡;
1216:固态硬盘;
1310:数码相机;
1312:SD卡;
1314:MMC卡;
1316:存储棒;
1318:CF卡;
1320:嵌入式存储装置;
100:存储器存储装置;
102:连接接口单元;
104:存储器控制电路单元;
106:可复写式非易失性存储器模块;
202:存储器管理电路;
204:主机接口;
206:存储器接口;
208:缓冲存储器;
210:电源管理电路;
212:错误检查与校正电路;
410(0)~410(N):实体抹除单元;
502:系统区;
504:数据区;
506:闲置区;
508:取代区;
LBA(0)~LBA(H):逻辑单元;
LZ(0)~LZ(M):逻辑区域;
410(F):位于闲置区504的第一实体抹除单元;
802:位于闲置区504的第一实体抹除单元410(F)的第一实体程序化单元;
804:位于闲置区504的第一实体抹除单元410(F)的第二实体程序化单元;
801:第一实体程序化单元的第一错误检查与校正框;
803:第一实体程序化单元的第二错误检查与校正框;
805:第一实体程序化单元的第三错误检查与校正框;
807:第一实体程序化单元的第四错误检查与校正框;
809:第二实体程序化单元的第一错误检查与校正框;
811:第二实体程序化单元的第二错误检查与校正框;
813:第二实体程序化单元的第三错误检查与校正框;
815:第二实体程序化单元的第四错误检查与校正框;
S901、S903、S905、S907:存储器管理方法的步骤;
S1001、S1003、S1005、S1007、S1009、S1011、S1113:存储器管理方法的步骤;
S1101、S1103、S1105、S1107、S1109、S1111、S1113:存储器管理方法的步骤。
具体实施方式
图1是根据一范例实施例所示出的主机系统与存储器存储装置的示意图。
请参照图1,主机系统1000一般包括计算机1100与输入/输出(input/output,I/O)装置1106。计算机1100包括微处理器1102、随机存取存储器(randomaccess memory,RAM)1104、系统总线1108与数据传输接口1110。图2是根据本发明范例实施例所示出的计算机、输入/输出装置与存储器存储装置的示意图,输入/输出装置1106包括如图2的鼠标1202、键盘1204、显示器1206与打印机1208。必须了解的是,图2所示的装置非限制输入/输出装置1106,输入/输出装置1106可还包括其它装置。
在本发明实施例中,存储器存储装置100是通过数据传输接口1110与主机系统1000的其它组件电性连接。通过微处理器1102、随机存取存储器1104与输入/输出装置1106的运作可将数据写入至存储器存储装置100或从存储器存储装置100中读取数据。例如,存储器存储装置100可以是如图2所示的U盘1212、存储卡1214或固态硬盘(Solid State Drive,SSD)1216等的可复写式非易失性存储器模块存储装置。
图3是根据本发明范例实施例所示出的主机系统与存储器存储装置的示意图。
一般而言,主机系统1000为可实质地与存储器存储装置100配合以存储数据的任意系统。虽然在本范例实施例中,主机系统1000是以计算机系统来做说明,然而,在本发明另一范例实施例中主机系统1000可以是数码相机、摄影机、通信装置、音频播放器或视频播放器等系统。例如,在主机系统为数码相机(摄影机)1310时,可复写式非易失性存储器模块存储装置则为其所使用的SD卡1312、MMC卡1314、存储棒(memory stick)1316、CF卡1318或嵌入式存储装置1320(如图3所示)。嵌入式存储装置1320包括嵌入式多媒体卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒体卡是直接电性连接在主机系统的基板上。
图4是示出图1所示的存储器存储装置的概要方块图。
请参照图4,存储器存储装置100包括连接接口单元102、存储器控制电路单元104与可复写式非易失性存储器模块106。
在本范例实施例中,连接接口单元102是兼容于序列先进附件(SerialAdvanced Technology Attachment,SATA)标准。然而,必须了解的是,本发明不限于此,连接接口单元102也可以是符合并列先进附件(Parallel AdvancedTechnology Attachment,PATA)标准、电气和电子工程师协会(Institute ofElectrical and Electronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准、通用序列总线(Universal Serial Bus,USB)标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II,UHS-II)接口标准、序列先进附件(Serial Advanced Technology Attachment,SATA)标准、存储棒(Memory Stick,MS)接口标准、多媒体存储卡(Multi Media Card,MMC)接口标准、小型快闪(Compact Flash,CF)接口标准、整合式驱动电子接口(Integrated DeviceElectronics,IDE)标准或其它适合的标准。在本范例实施例中,连接接口单元可与存储器控制电路单元封装在一个芯片中,或布设在一包含存储器控制电路单元的芯片外。
存储器控制电路单元104用以执行以硬件形式或固体形式实作的多个逻辑闸或控制指令,并且根据主机系统1000的指令对可复写式非易失性存储器模块106下达指令序列以进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块106是电性连接至存储器控制电路单元104,并且用以存储主机系统1000所写入的数据。可复写式非易失性存储器模块106具有实体抹除单元410(0)~410(N)。例如,实体抹除单元410(0)~410(N)可属于同一个存储器晶粒(die)或者属于不同的存储器晶粒。每一实体抹除单元分别具有复数个实体程序化单元,例如本发明的范例实施例中,每一个实体抹除单元包含258个实体程序化单元,而其中属于同一个实体抹除单元的实体程序化单元可被独立地写入且被同时地抹除。然而,必须了解的是,本发明不限于此,每一实体抹除单元是可由64个实体程序化单元、256个实体程序化单元或其它任意个实体程序化单元所组成。
更详细来说,实体抹除单元为抹除的最小单位。也即,每一实体抹除单元含有最小数目之一并被抹除的存储包。实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。每一实体程序化单元通常包括数据比特区与冗余比特区。数据比特区包含多个实体存取地址用以存储使用者的数据,而冗余比特区用以存储系统的数据(例如,控制信息与错误更正码)。在本范例实施例中,每一个实体程序化单元的数据比特区中会包含4个实体存取地址,且一个实体存取地址的大小为512字节(byte)。然而,在其它范例实施例中,数据比特区中也可包含数目更多或更少的实体存取地址,本发明并不限制实体存取地址的大小以及个数。例如,在一范例实施例中,实体抹除单元为实体区块,并且实体程序化单元为实体页面或实体扇区,但本发明不以此为限。
在本范例实施例中,可复写式非易失性存储器模块106为多阶存储包(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储包中可存储2个比特数据的存储器模块)。然而,本发明不限于此,可复写式非易失性存储器模块106也可是单阶存储包(Single Level Cell,SLC)NAND型快闪存储器模块(即,一个存储包中可存储1个比特数据的快闪存储器模块)、复数阶存储包(Trinary Level Cell,TLC)NAND型快闪存储器模块(即,一个存储包中可存储3个比特数据的快闪存储器模块)、其它快闪存储器模块或其它具有相同特性的存储器模块。
图5是根据一范例实施例所示出的存储器控制电路单元的概要方块图。
请参照图5,存储器控制电路单元104包括存储器管理电路202、主机接口204与存储器接口206。
存储器管理电路202用以控制存储器控制电路单元104的整体运作。具体来说,存储器管理电路202具有多个控制指令,并且在存储器存储装置100运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。
在本范例实施例中,存储器管理电路202的控制指令是以固体形式来实作。例如,存储器管理电路202具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置100运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在本发明另一范例实施例中,存储器管理电路202的控制指令也可以程序代码形式存储在可复写式非易失性存储器模块106的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路202具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有驱动码,并且当存储器控制电路单元104被使能时,微处理器单元会先执行此驱动码段来将存储在可复写式非易失性存储器模块106中的控制指令加载至存储器管理电路202的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在本发明另一范例实施例中,存储器管理电路202的控制指令也可以一硬件形式来实作。例如,存储器管理电路202包括微控制器、存储包管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储包管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是电性连接至微控制器。其中,存储包管理电路用以管理可复写式非易失性存储器模块106的实体抹除单元;存储器写入电路用以对可复写式非易失性存储器模块106下达写入指令以将数据写入至可复写式非易失性存储器模块106中;存储器读取电路用以对可复写式非易失性存储器模块106下达读取指令以从可复写式非易失性存储器模块106中读取数据;存储器抹除电路用以对可复写式非易失性存储器模块106下达抹除指令以将数据从可复写式非易失性存储器模块106中抹除;而数据处理电路用以处理欲写入至可复写式非易失性存储器模块106的数据以及从可复写式非易失性存储器模块106中读取的数据。
主机接口204是电性连接至存储器管理电路202并且用以接收与识别主机系统1000所传送的指令与数据。也就是说,主机系统1000所传送的指令与数据会透过主机接口204来传送至存储器管理电路202。在本范例实施例中,主机接口204是兼容于SATA标准。然而,必须了解的是本发明不限于此,主机接口204也可以是兼容于PATA标准、IEEE1394标准、PCI Express标准、USB标准、UHS-I接口标准、UHS-II接口标准、MS标准、MMC标准、CF标准、IDE标准或其它适合的数据传输标准。
存储器接口206是电性连接至存储器管理电路202并且用以存取可复写式非易失性存储器模块106。也就是说,欲写入至可复写式非易失性存储器模块106的数据会经由存储器接口206转换为可复写式非易失性存储器模块106所能接受的格式。
在本发明一范例实施例中,存储器控制电路单元104还包括缓冲存储器208、电源管理电路210与错误检查与校正电路212。
缓冲存储器208是电性连接至存储器管理电路202并且用以暂存来自于主机系统1000的数据与指令或来自于可复写式非易失性存储器模块106的数据。
电源管理电路210是电性连接至存储器管理电路202并且用以控制存储器存储装置100的电源。
错误检查与校正电路212是电性连接至存储器管理电路202并且用以执行错误检查与校正程序以确保数据的正确性。具体来说,当存储器管理电路202从主机系统1000中接收到写入指令时,错误检查与校正电路212会为对应此写入指令的数据产生对应的错误检查与校正码(Error Checking andCorrecting Code,ECC Code),并且存储器管理电路202会将对应此写入指令的数据与对应的错误检查与校正码写入至可复写式非易失性存储器模块106中。之后,当存储器管理电路202从可复写式非易失性存储器模块106中读取数据时会同时读取此数据对应的错误检查与校正码,并且错误检查与校正电路212会依据此错误检查与校正码对所读取的数据执行错误检查与校正程序。
图6与图7是根据一范例实施例所示出的管理实体抹除单元的范例示意图。
请参照图6,存储器控制电路单元104(或存储器管理电路202)会将实体抹除单元410(0)~410-(N)逻辑地分组为数据区502、闲置区504、系统区506与取代区508。
逻辑上属于数据区502与闲置区504的实体抹除单元是用以存储来自于主机系统1000的数据。具体来说,数据区502的实体抹除单元是被视为已存储数据的实体抹除单元,而闲置区504的实体抹除单元是用以替换数据区502的实体抹除单元。也就是说,当从主机系统1000接收到写入指令与欲写入的数据时,存储器管理电路202会从闲置区504中提取实体抹除单元,并且将数据写入至所提取的实体抹除单元中,以替换数据区502的实体抹除单元。
逻辑上属于系统区506的实体抹除单元是用以记录系统数据。例如,系统数据包括关于可复写式非易失性存储器模块的制造商与型号、可复写式非易失性存储器模块的实体抹除单元数、每一实体抹除单元的实体程序化单元数等。
逻辑上属于取代区508中的实体抹除单元是用于坏实体抹除单元取代程序,以取代损坏的实体抹除单元。具体来说,若取代区508中仍存有正常的实体抹除单元并且数据区502的实体抹除单元损坏时,存储器管理电路202会从取代区508中提取正常的实体抹除单元来更换损坏的实体抹除单元。
特别是,数据区502、闲置区504、系统区506与取代区508的实体抹除单元的数量会依据不同的存储器规格而有所不同。此外,必须了解的是,在存储器存储装置100的运作中,实体抹除单元关联至数据区502、闲置区504、系统区506与取代区508的分组关系会动态地变动。例如,当闲置区504中的实体抹除单元损坏而被取代区508的实体抹除单元取代时,则原本取代区508的实体抹除单元会被关联至闲置区504。
请参照图7,存储器控制电路单元104(或存储器管理电路202)会配置逻辑单元LBA(0)~LBA(H)以映像数据区502的实体抹除单元,其中每一逻辑单元具有多个逻辑子单元以映像对应的实体抹除单元的实体程序化单元。并且,当主机系统100欲写入数据至逻辑单元或更新存储在逻辑单元中的数据时,存储器控制电路单元104(或存储器管理电路202)会从闲置区504中提取一个实体抹除单元来写入数据,以轮替数据区502的实体抹除单元。在本范例实施例中,逻辑子单元可以是逻辑页面或逻辑扇区。
为了识别每个逻辑单元的数据被存储在那个实体抹除单元,在本范例实施例中,存储器控制电路单元104(或存储器管理电路202)会记录逻辑单元与实体抹除单元之间的映像。并且,当主机系统1000欲在逻辑子单元中存取数据时,存储器控制电路单元104(或存储器管理电路202)会确认此逻辑子单元所属的逻辑单元,并且对可复写式非易失性存储器模块106下答对应的指令序列以在此逻辑单元所映像的实体抹除单元中来存取数据。例如,在本范例实施例中,存储器控制电路单元104(或存储器管理电路202)会在可复写式非易失性存储器模块106中存储逻辑转实体地址映像表来记录每一逻辑单元所映像的实体抹除单元,并且当欲存取数据时存储器控制电路单元104(或存储器管理电路202)会将逻辑转实体地址映像表加载至缓冲存储器208来维护。
值得一提的是,由于缓冲存储器208的容量有限无法存储记录所有逻辑单元的映像关系的映像表,因此,在本范例实施例中,存储器控制电路单元104(或存储器管理电路202)会将逻辑单元LBA(0)~LBA(H)分组为多个逻辑区域LZ(0)~LZ(M),并且为每一逻辑区域配置一个逻辑转实体地址映像表。特别是,当存储器控制电路单元104(或存储器管理电路202)欲更新某个逻辑单元的映像时,对应此逻辑单元所属的逻辑区域的逻辑转实体地址映像表会被加载至缓冲存储器208来被更新。
如上所述,在本范例实施例中,存储器存储装置100的可复写式非易失性存储器模块106是以实体程序化单元为基础来进行管理,因此,在执行写入指令时,不管目前数据是要写入至那个逻辑单元的逻辑子单元,存储器控制电路单元104(或存储器管理电路202)皆会以一个实体程序化单元接续一个实体程序化单元的方式来写入数据。具体来说,存储器控制电路单元104(或存储器管理电路202)会从闲置区504中提取一个空的实体抹除单元作为目前使用的实体抹除单元来写入数据。并且,当此目前使用的实体抹除单元已被写满时,存储器控制电路单元104(或存储器管理电路202)会再从闲置区504中提取另一个空的实体抹除单元作为目前使用的实体抹除单元,以继续写入对应来自于主机系统1000的写入指令的数据。特别是,为了避免闲置区504的实体抹除单元被耗尽,当存储器控制电路单元104(或存储器管理电路202)欲从闲置区504中提取实体抹除单元且闲置区504的实体抹除单元的数目下降到所设定的垃圾回收门坎值时,存储器控制电路单元104(或存储器管理电路202)会先执行数据合并程序,来使数据区502的至少一个实体抹除单元中的数据成为无效数据,并且将数据区502中所存储的数据皆为无效数据的实体抹除单元关联回闲置区504,以致在闲置区504的实体抹除单元的数目大于所设定的垃圾回收门坎值。例如,在执行数据合并程序时,存储器控制电路单元104(或存储器管理电路202)至少需使用一个空的实体抹除单元,因此,垃圾回收门坎值至少会被设定为大于1的数值。
图8是根据一范例实施例所示出的错误检查与校正框的范例示意图。
如上所述,在存储器存储装置100的错误检查与校正电路212会被配置来验证可复写式非易失性存储器模块106中所存储的数据是否正确。然而,在执行错误校正程序时,无论是编码或译码步骤,错误检查与校正电路212都是需要清楚知道所要保护的数据长度为何,如此才能计算出正确的特征码,以检查出正确的错误位置。在本范例实施例中,当存储器控制电路单元104(或存储器管理电路202)接收到数据时,存储器控制电路单元104(或存储器管理电路202)会先将数据分割为多个码框(frame),之后错误检查与校正电路212再产生各码框对应的错误校正码,以将这些码框与其各自所对应的错误校正码分别编码形成为错误检查与校正框。在此,错误检查与校正框的大小是根据传输单位的大小来分割,此传输单位的大小是依据可复写式非易失性存储器模块106的规格书来决定。也就是说,每个传输单位需保护(protect)多少个比特(bit)。例如传输单位为512bytes,保护12个比特,存储器控制电路单元104(或存储器管理电路202)会将数据切割为每单位为512bytes。而错误检查与校正电路212则会针对每512bytes的数据进行错误校正编码,故每个错误检查与校正框的大小就是512bytes,但本发明不限于此,错误检查与校正框的大小也可以是1K bytes或2K bytes等等。值得一提的是,每个实体程序化单元的大小会至少大于一个错误检查与校正框的大小,以使存储在实体程序化单元的数据,以错误检查与校正框的大小为单位,可以受到错误检查与校正电路212的保护。
请参照图8,在本范例实施例中,存储在闲置区504中的第一实体抹除单元410(F)中的第一实体程序化单元802的大小为2K bytes(2048bytes),可存储4个错误检查与校正框大小的数据,分别为第一错误检查与校正框801、第二错误检查与校正框803、第三错误检查与校正框805、第四错误检查与校正框807、每个错误检查与校正框的大小为512bytes。
在操作可复写式非易失性存储器模块106的过程时,存储器控制电路单元104(或存储器管理电路202),会持续记录每个错误检查与校正框所发生的错误比特数目,并且以这些错误比特数目中的最大数目做为此第一实体程序化单元802的最大错误比特数目。举例来说,假设第一错误检查与校正框801的错误比特数目为3,第二错误检查与校正框803的错误比特数目为4、第三错误检查与校正框805的错误比特数目为5、第四错误检查与校正框807的错误比特数目为11,则第一实体程序化单元802的最大错误比特数目即为11。依此类推,在操作可复写式非易失性存储器模块106的过程时也取得并记录第二实体程序化单元804的最大错误比特数目。而存储器控制电路单元104(或存储器管理电路202)会比较第一实体抹除单元410(F)的每个实体程序化单元的最大错误比特数目,取最大者做为第一实体抹除单元410(F)的最大错误比特数目,举例来说,当第一实体抹除单元410(F)的每个实体程序化单元的最大错误比特数目中最大值为11时,则第一实体抹除单元410(F)的最大错误比特数目即为11。
在本范例实施例中,存储器控制电路单元104(或存储器管理电路202)会记录此第一实体抹除单元410(F)的最大错误比特数目11。举例来说,在一个最大错误比特数目表中,并且将此最大错误比特数目表存储在缓冲存储器208中,并在可复写式非易失性存储器模块使用的过程中,持续记录每个实体抹除单元的最大错误比特数目,并更新最大错误比特数目表。此外,每次所记录的每个实体抹除单元的最大错误比特数目,也会与在最大错误比特数目表中对应每个实体抹除单元的最大错误比特数目的记录值做大小的比较,选择较大的错误比特数目以更新在最大错误比特数目表中对应的记录值。举例来说,第一实体抹除单元410(F)在最大错误比特数目表中所记录的最大错误比特数目为11,当在可复写式非易失性存储器模块使用的过程中,记录到第一实体抹除单元410(F)的最大错误比特数目为12,则存储器控制电路单元104(或存储器管理电路202)会将此刚纪录到的最大比特数目(即,12)与第一实体抹除单元410(F)在最大错误比特数目表中之前所记录的最大错误比特数目(即,11)做比较,取较大者更新到最大错误比特数目表中,即更新第一实体抹除单元410(F)记录在最大错误比特数目表中的最大错误比特数目的记录值为12。
例如,在本范例实施例中,错误检查与校正电路212的最大保护能力,为12个比特,故当错误检查与校正框所发生的错误比特数目大于12(例如,13)时,错误检查与校正电路212将无法校正在错误检查与校正框内的错误数据,导致存储在此错误检查与校正框的数据不能正常读取,成为不能恢复的损毁数据。当此状况发生时,也代表具有此损毁数据的实体抹除单元已经过于老化而不堪使用,基此,存储器控制电路单元104(或存储器管理电路202)会将错误比特数目超过错误检查与校正电路212最大保护能力的实体程序化单元标记成坏实体程序化单元,并记录在一个坏实体程序化单元分布表中。
而在另一范例实施例中,存储器控制电路单元104(或存储器管理电路202)会将闲置区的实体抹除单元依照各自的最大错误比特数目来分群组。举例来说,错误检查与校正电路212的最大保护能力为12个比特,存储器控制电路单元104(或存储器管理电路202)在记录闲置区的每个实体抹除单元的最大错误比特数目之后,会分成三个群组来分组闲置区的实体抹除单元,例如,错误比特数目为0~4的实体抹除单元为第一群组、错误比特数目为5~9的实体抹除单元为第二群组,以及错误比特数目为10~12的实体抹除单元为第三群组。
在分组之后,存储器控制电路单元104(或存储器管理电路202)会将错误比特数目较多的群组排序比较在较后面,以上述的例子,便是第一群组排序在第二群组之前,第二群组排序在第三群组之前,而分组到每个群组的实体抹除单元便不另外在其所属的群组中做排序。而当存储器控制电路单元104(或存储器管理电路202)要从闲置区提取实体抹除单元时,会从排序在前方的群组中的实体抹除单元开始提取,也就是说,依照上述的例子,会从分组到第一群组的实体抹除单元开始提取。
综合上述,本发明的目的在于使可复写式非易失性存储器模块的实体抹除单元,不论是否实体抹除单元的抹除次数已经达到制造厂商保证的极限值,可在错误比特数目不大于错误检查与校正电路212保护能力时,继续被使用,以延长可复写式非易失性存储器模块106的使用寿命。
值得一提的是,在本范例实施例中,所提及的错误检查与校正框以及依照最大错误比特数目做分组的例子,仅用于说明用,本发明不限于此。
以下将举数个范例实施例,配合附图以详细说明根据本发明的概念,利用错误比特数目来决定使用率,以延长可复写式非易失性存储器模块106的使用寿命的存储器管理方法。
[第一范例实施例]
图9为根据本发明的一范例实施例,所示出的根据可复写式非易失性存储器模块的使用次数,来延长可复写式非易失性存储器模块的使用寿命的存储器管理方法的流程图。
请参考图9,在步骤S901中,存储器控制电路单元104(或存储器管理电路202)会判断可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值。在本范例实施例中,使用次数的计算方式以及使用次数门坎值可以从出厂时设定,或是出厂后由固体或是软件设定,本发明不限于此。例如,可复写式非易失性存储器模块的使用次数可以根据整体可复写式非易失性存储器模块的写入数据量来做计算。举例来说,存储器控制电路单元104(或存储器管理电路202)从出厂之后便开始记录所写入的数据量,不论是进行复制、搬移或是合并,只要有进行程序化,便记录在程序化过程中共写入了多少数据到可复写式非易失性存储器模块中。只要此写入的数据的量达到一个默认值,存储器控制电路单元104(或存储器管理电路202)便会判定可复写式非易失性存储器模块的使用次数已经到达使用次数门坎值。
若可复写式非易失性存储器模块的使用次数不大于使用次数门坎值,则在步骤S903中,仅根据闲置区的每个实体抹除单元的抹除次数,由小到大排序该闲置区的实体抹除单元,以形成已排序实体抹除单元。举例来说,为了便于说明,假设制造厂商保证的抹除次数的极限值为3000,且在可复写式非易失性存储器模块的闲置区504内只有三个实体抹除单元,分别为抹除次数为300的第一实体抹除单元410(F)、抹除次数为200的第二实体抹除单元410(F+1)、抹除次数为100的第三实体抹除单元410(F+2),则存储器控制电路单元104(或存储器管理电路202)会根据抹除次数由小到大排序此三个实体抹除单元,形成已排序的三个实体抹除单元,由前往后的顺序为第三实体抹除单元410(F+2)、第二实体抹除单元410(F+1)、第一实体抹除单元410(F)。值得一提的是,上述的“根据抹除次数”也包含以抹除次数为基准做计算之后,从计算结果来排序此三个实体抹除单元,形成已排序的三个实体抹除单元。举例来说,此三个实体抹除单元的抹除次数可乘上一第三预先定义值来得到的一抹除次数加权值,并根据此三个实体抹除单元各自的抹除次数加权值来排序此三个实体抹除单元,但,本发明不限制于此计算方法。
经过步骤S903,形成已排序实体抹除单元之后,在步骤S907中,存储器控制电路单元104(或存储器管理电路202)会根据已排序实体抹除单元,对可复写式非易失性存储器模块106下达指令序列以提取排序在最前面的实体抹除单元来写入数据。在上面的例子中,即先提取已排序的三个实体抹除单元中的第三实体抹除单元410(F+2)来写入数据,并结束根据闲置区的实体抹除单元的平均抹除次数,来延长可复写式非易失性存储器模块的使用寿命的流程。
若可复写式非易失性存储器模块的使用次数大于使用次数门坎值,则在步骤S905中,存储器控制电路单元104(或存储器管理电路202)根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值,并根据加权值由小到大排序该闲置区的实体抹除单元以形成已排序实体抹除单元。
例如,在一范例实施例中,存储器控制电路单元104(或存储器管理电路202)会对闲置区的每个实体抹除单元的抹除次数乘上一个第一预先定义值来产生抹除次数权重值,将闲置区的每个实体抹除单元所记录的最大错误比特数目乘上一个第二预先定义值来产生最大错误比特数目权重值,并且将闲置区的每个实体抹除单元的抹除次数权重值加上最大错误比特数目权重以得到加权值。
举例来说,为了便于说明,假设制造厂商保证的抹除次数的极限值为3000、错误检查与校正电路212的保护能力为12个比特、第一预先定义值为1、第二预先定义值为100,且在可复写式非易失性存储器模块的闲置区504内只有三个实体抹除单元,分别为抹除次数为3001的第一实体抹除单元410(F)、抹除次数为3010的第二实体抹除单元410(F+1)、抹除次数为3100的第三实体抹除单元410(F+2),并且第一实体抹除单元410(F)所记录的最大错误比特数目为11、第二实体抹除单元410(F+1)所记录的最大错误比特数目为10、第一实体抹除单元410(F+2)所记录的最大错误比特数目为9。基此,第一实体抹除单元410(F)的抹除次数权重值为3001(即,3001乘上1)、第二实体抹除单元410(F+1)的抹除次数权重值为3010(即,3010乘上1)、第三实体抹除单元410(F+2)的抹除次数权重值为3100(即,3100乘上1)。此外,第一实体抹除单元410(F)的最大错误比特数目权重值为1100(即,11乘上100)、第二实体抹除单元410(F+1)的最大错误比特数目权重值为1000(即,10乘上100)且第三实体抹除单元410(F+2)的最大错误比特数目权重值为900(即,9乘上100)。在计算出闲置区的全部实体抹除单元的抹除次数权重值和最大错误比特数目权重值之后,存储器控制电路单元104(或存储器管理电路202)会将闲置区504的每个实体抹除单元的抹除次数权重值和最大错误比特数目权重值相加,以获得每个实体抹除单元的加权值。也就是说,第一实体抹除单元410(F)的加权值为4101(即,3001加上1100)、第二实体抹除单元410(F+1)的加权值为4010(即,3010加上1000)且第三实体抹除单元410(F+2)的加权值为4000(即,3100加上900)。之后,存储器控制电路单元104(或存储器管理电路202)会根据加权值由小到大排序此三个实体抹除单元,形成已排序的三个实体抹除单元,由前往后的顺序为第三实体抹除单元410(F+2)、第二实体抹除单元410(F+1)、第一实体抹除单元410(F)。值得一提的是,若是第一预先定义值设定成零,加权值就会只有最大错误比特数目权重值,也就是说会变成单纯只以最大错误比特数目的多少为依据由小到大排序此三个实体抹除单元;另一方面,若是第二预先定义值设定为零,加权值就会只有抹除次数权重值,也就是说会变成单纯只以抹除次数的多少为依据由小到大排序此三个实体抹除单元。
经过步骤S905,形成已排序实体抹除单元之后,在步骤S907中,存储器控制电路单元104(或存储器管理电路202)会根据闲置区中已排序实体抹除单元,提取排序在最前面的实体抹除单元来写入数据。在上面的例子中,即先提取已排序的三个实体抹除单元中的第三实体抹除单元410(F+2)来写入数据,并结束根据闲置区的实体抹除单元的平均抹除次数,来延长可复写式非易失性存储器模块的使用寿命的流程。
值得一提的是,在本范例实施例中,计算加权值的方法,仅为说明用,本发明不受限于此。
[第二范例实施例]
第二范例实施例的步骤相似于上述第一范例,其差异之处在于,在第二范例实施例中是根据可复写式非易失性存储器模块的平均抹除次数来识别可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值,以下将针对不同于第一范例的地方进行描述。
图10为根据本发明的范例实施例,所示出的根据可复写式非易失性存储器模块的实体抹除单元的平均抹除次数,来延长可复写式非易失性存储器模块的使用寿命的存储器管理方法的流程图。
请参考图10,在步骤S1001中,存储器控制电路单元104(或存储器管理电路202)会计算可复写式非易失性存储器模块106的实体抹除单元的平均抹除次数。
接着在步骤S1003中,存储器控制电路单元104(或存储器管理电路202)会判断可复写式非易失性存储器模块106的实体抹除单元的平均抹除次数是否大于平均抹除次数门坎值。在本范例实施例中,平均抹除次数门坎值可以从出厂时设定,或是出厂后由固件或是软件设定,本发明不限于此。
若可复写式非易失性存储器模块106的实体抹除单元的平均抹除次数不大于平均抹除次数门坎值,则接着步骤S1005,存储器控制电路单元104(或存储器管理电路202)会识别此可复写式非易失性存储器模块106的使用次数不大于使用次数门坎值,并接着步骤S1007,根据闲置区的每个实体抹除单元的抹除次数,由小到大排序该闲置区的实体抹除单元,以形成已排序实体抹除单元。此排序方法与第一范例实施例相同,故省略于此。
经过步骤S1007,形成已排序实体抹除单元之后,在步骤S1013中,存储器控制电路单元104(或存储器管理电路202)会根据已排序实体抹除单元,提取排序在最前面的实体抹除单元来写入数据。此提取方法与第一范例实施例相同,故省略于此。
若可复写式非易失性存储器模块106的实体抹除单元的平均抹除次数大于平均抹除次数门坎值,则接着步骤S1009,存储器控制电路单元104(或存储器管理电路202)会识别此可复写式非易失性存储器模块的使用次数大于使用次数门坎值,并接着步骤S1011,根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值,并根据加权值由小到大排序该闲置区的实体抹除单元以形成已排序实体抹除单元。
其中根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值的方式,与第一范例实施例相同,故省略于此。
经过步骤S1011,形成已排序实体抹除单元之后,在步骤S1013中,存储器控制电路单元104(或存储器管理电路202)会根据闲置区中已排序实体抹除单元,提取排序在最前面的实体抹除单元来写入数据。此提取方法与第一范例实施例相同,故省略于此。
值得一提的是,在本范例实施例中,存储器控制电路单元104(或存储器管理电路202)会计算可复写式非易失性存储器模块106的全部实体抹除单元的平均抹除次数,来识别可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值。但本发明不限于此。在另一范例实施例中,存储器控制电路单元104(或存储器管理电路202)根据其中一部份的实体抹除单元的平均抹除次数来识别可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值。例如,根据闲置区504的实体抹除单元的平均抹除次数来识别可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值。
[第三范例实施例]
第三范例实施例的步骤相似于上述第二范例,其差异之处在于,在第三范例实施例中是以个别实体抹除单元的抹除次数来识别可复写式非易失性存储器模块的使用次数是否大于使用次数门坎值,以下将针对不同于第二范例的地方进行描述。
图11为根据本发明的范例实施例,所示出的根据闲置区的其中之一的实体抹除单元的抹除次数,来延长可复写式非易失性存储器模块106的使用寿命的存储器管理方法的流程图。
请参考图11,在步骤S1101中,存储器控制电路单元104(或存储器管理电路202)会记录可复写式非易失性存储器模块106内每个实体抹除单元的抹除次数。
接着在步骤S1103中,存储器控制电路单元104(或存储器管理电路202)会判断可复写式非易失性存储器模块106中是否有任一实体抹除单元的抹除次数大于平均抹除次数门坎值。在本范例实施例中,平均抹除次数门坎值可以从出厂时设定,或是出厂后由硬件或是软件设定,本发明不限于此。
倘所有实体抹除单元的抹除次数皆不大于平均抹除次数门坎值,则接着步骤S1105,存储器控制电路单元104(或存储器管理电路202)会识别此可复写式非易失性存储器模块的使用次数不大于使用次数门坎值,并接着步骤S1107,根据闲置区的每个实体抹除单元的抹除次数,由小到大排序该闲置区的实体抹除单元,以形成已排序实体抹除单元。此排序方法与第一范例实施例相同,故省略于此。
经过步骤S1107,形成已排序实体抹除单元之后,在步骤S1113中,存储器控制电路单元104(或存储器管理电路202)会根据已排序实体抹除单元,提取排序在最前面的实体抹除单元来写入数据。此提取方法与第一范例实施例相同,故省略于此。
若可复写式非易失性存储器模块106有任一实体抹除单元的抹除次数大于平均抹除次数门坎值,则接着步骤S1109,存储器控制电路单元104(或存储器管理电路202)会识别此可复写式非易失性存储器模块的使用次数大于使用次数门坎值,并接着步骤S1111,根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值,并根据加权值由小到大排序该闲置区的实体抹除单元以形成已排序实体抹除单元。
其中根据闲置区的每个实体抹除单元的抹除次数与最大错误比特数目,计算出对应每个实体抹除单元的加权值的方式,与第一范例实施例相同,故省略于此。
经过步骤S1111,形成已排序实体抹除单元之后,在步骤S1113中,存储器控制电路单元104(或存储器管理电路202)会根据闲置区中已排序实体抹除单元,提取排序在最前面的实体抹除单元来写入数据。此提取方法与第一范例实施例相同,故省略于此。
基于上述,本发明范例实施例的存储器管理方法、存储器控制电路单元与存储器存储装置可以让可复写式非易失性存储器模块中,使用次数达到厂商保证的极限值的实体抹除单元还可以继续被使用,不会因为超过此极限值就被标记成坏实体抹除单元而停止使用,并且依据每个实体抹除单元的错误比特数目来排序实体抹除单元的使用顺序。也就是说,在实体抹除单元超过平均抹除次数门坎值之后,除了可以使错误比特数目还在错误检查与校正电路的保护能力内的这些实体抹除单元还可以继续被使用之外,还可依据每个实体抹除单元的错误程度来改变每个实体抹除单元的使用频率,使闲置区内错误程度较高的实体抹除单元因为排序到提取顺序的较后方而降低其使用频率,使闲置区内错误程度较低的实体抹除单元因为排序到提取顺序的较前方而增加其使用频率,有着平均老化的作用,最后更可达到延长可复写式非易失性存储器模块的使用寿命的效果。
最后应说明的是:以上各实施例仅用于说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (21)
1.一种存储器管理方法,其特征在于,用于一可复写式非易失性存储器模块,其中该可复写式非易失性存储器模块具有多个实体抹除单元,该存储器管理方法包括:
记录每一该些实体抹除单元的一抹除次数;
将该些实体抹除单元至少分组为一闲置区与一数据区;
判断该可复写式非易失性存储器模块的一使用次数是否大于一使用次数门坎值;
若该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值,根据该闲置区的每一该些实体抹除单元的抹除次数,由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元;
若该可复写式非易失性存储器模块的使用次数大于该使用次数门坎值时,根据该闲置区的该些实体抹除单元的多个最大错误比特数目,由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元;以及
依据该些已排序实体抹除单元从该闲置区中提取排序在最前面的一第一实体抹除单元来写入数据。
2.根据权利要求1所述的存储器管理方法,其特征在于,上述判断该可复写式非易失性存储器模块的该使用次数是否大于该使用次数门坎值的步骤包括:
依据每一该些实体抹除单元的抹除次数,计算该些实体抹除单元的一平均抹除次数;
判断该些实体抹除单元的该平均抹除次数是否大于一抹除次数门坎值;
若该些实体抹除单元的该平均抹除次数大于该抹除次数门坎值时,则识别该可复写式非易失性存储器模块的该使用次数大于该使用次数门坎值;以及
若该些实体抹除单元的该平均抹除次数不大于该抹除次数门坎值时,则识别该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值。
3.根据权利要求1所述的存储器管理方法,其特征在于,上述判断该可复写式非易失性存储器模块的该使用次数是否大于该使用次数门坎值的步骤包括:
判断是否该些实体抹除单元中至少一个实体抹除单元的抹除次数大于一抹除次数门坎值;
若该些实体抹除单元中至少一个实体抹除单元的抹除次数大于该抹除次数门坎值时,则识别该可复写式非易失性存储器模块的该使用次数大于该使用次数门坎值;以及
若每一该些实体抹除单元的该抹除次数皆不大于该抹除次数门坎值时,则识别该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值。
4.根据权利要求1所述的存储器管理方法,其特征在于,每一该些实体抹除单元包括多个实体程序化单元,且每一该些实体程序化单元可存储至少一错误检查与校正框,其中该存储器管理方法还包括:
持续记录发生在该些实体抹除单元中的该第一实体抹除单元的每一错误检查与校正框的错误比特的数目;以及
以该些数目中的一最大数目作为该第一实体抹除单元的一最大错误比特数目。
5.根据权利要求1所述的存储器管理方法,其特征在于,上述根据该闲置区的每一该些实体抹除单元的抹除次数,由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元的步骤还包括:
将该闲置区的每一该些实体抹除单元的抹除次数乘上一第三预先定义值得到一抹除次数加权值;以及
根据该抹除次数加权值由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元。
6.根据权利要求1所述的存储器管理方法,其特征在于,上述根据该闲置区的每一该些实体抹除单元的最大错误比特数目,由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元的步骤包括:
根据该闲置区的每一该些实体抹除单元的该抹除次数与该最大错误比特数目,计算出对应每一该些实体抹除单元的一加权值,并根据该加权值由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元。
7.根据权利要求6所述的存储器管理方法,其特征在于,上述根据该闲置区的每一该些实体抹除单元的该抹除次数与该最大错误比特数目,计算出对应每一该些实体抹除单元的该加权值的步骤包括:
将每一该些实体抹除单元的抹除次数乘上一第一预先定义值以产生对应每一该些实体抹除单元的一抹除次数权重值;
将每一该些实体抹除单元的最大错误比特数目乘上一第二预先定义值以产生对应每一该些实体抹除单元的一最大错误比特数目权重值;以及
将每一该些抹除次数权重值加上每一该些最大错误比特数目权重值所获得的值作为每一该些实体抹除单元的加权值。
8.一种存储器控制电路单元,其特征在于,用于控制一可复写式非易失性存储器模块,该存储器控制电路单元包括:
一主机接口,用以电性连接至一主机系统;
一存储器接口,用以电性连接至该可复写式非易失性存储器模块,其中该可复写式非易失性存储器模块具有多个实体抹除单元;以及
一存储器管理电路,电性连接至该主机接口与该存储器接口,并且用以记录每一该些实体抹除单元的一抹除次数,
其中该存储器管理电路还用以将该些实体抹除单元至少分组为一闲置区与一数据区,
其中该存储器管理电路还用以判断该可复写式非易失性存储器模块的一使用次数是否大于一使用次数门坎值,其中
若该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值时,该存储器管理电路还用以根据该闲置区的每一该些实体抹除单元的抹除次数,由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元,
若该可复写式非易失性存储器模块的使用次数大于该使用次数门坎值时,该存储器管理电路还用以根据该闲置区的该些实体抹除单元的多个最大错误比特数目,由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元,
其中该存储器管理电路还用以对该可复写式非易失性存储器模块下达一指令序列,其中该指令序列用以依据该些已排序实体抹除单元从该闲置区中提取排序在最前面的一第一实体抹除单元来写入数据。
9.根据权利要求8所述的存储器控制电路单元,其特征在于,在上述判断该可复写式非易失性存储器模块的该使用次数是否大于该使用次数门坎值的运作中,该存储器管理电路依据每一该些实体抹除单元的抹除次数,计算该些实体抹除单元的一平均抹除次数,并且判断该些实体抹除单元的该平均抹除次数是否大于一抹除次数门坎值,
其中若该些实体抹除单元的该平均抹除次数大于该抹除次数门坎值时,则该存储器管理电路识别该可复写式非易失性存储器模块的该使用次数大于该使用次数门坎值,
若该些实体抹除单元的该平均抹除次数不大于该抹除次数门坎值时,则该存储器管理电路识别该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值。
10.根据权利要求8所述的存储器控制电路单元,其特征在于,在上述判断该可复写式非易失性存储器模块的该使用次数是否大于该使用次数门坎值的运作中,该存储器管理电路判断是否该些实体抹除单元中至少一个实体抹除单元的抹除次数大于一抹除次数门坎值,
其中若该些实体抹除单元中至少一个实体抹除单元的抹除次数大于该抹除次数门坎值时,则该存储器管理电路识别该可复写式非易失性存储器模块的该使用次数大于该使用次数门坎值,
若每一该些实体抹除单元的该抹除次数皆不大于该抹除次数门坎值时,则该存储器管理电路识别该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值。
11.根据权利要求8所述的存储器控制电路单元,其特征在于,每一该些实体抹除单元包括多个实体程序化单元,且每一该些实体程序化单元可存储至少一错误检查与校正框,其中该存储器管理电路还用以持续记录发生在该些实体抹除单元中的该第一实体抹除单元的每一错误检查与校正框的错误比特的数目,并且将该些数目中的一最大数目作为该第一实体抹除单元的一最大错误比特数目。
12.根据权利要求8所述的存储器控制电路单元,其特征在于,其中在上述根据该闲置区的每一该些实体抹除单元的抹除次数,由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元的运作中还包括:
该存储器管理电路用以将该闲置区的每一该些实体抹除单元的抹除次数乘上一第三预先定义值得到一抹除次数加权值;以及
根据该抹除次数加权值由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元。
13.根据权利要求8所述的存储器控制电路单元,其特征在于,
其中在上述根据该闲置区的每一该些实体抹除单元的最大错误比特数目,由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元的运作中,该存储器管理电路根据该闲置区的每一该些实体抹除单元的该抹除次数与该最大错误比特数目,计算出对应每一该些实体抹除单元的一加权值,并根据该加权值由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元。
14.根据权利要求13所述的存储器控制电路单元,其特征在于,在上述根据该闲置区的每一该些实体抹除单元的该抹除次数与该最大错误比特数目,计算出对应每一该些实体抹除单元的该加权值的运作中,该存储器管理电路将每一该些实体抹除单元的抹除次数乘上一第一预先定义值以产生对应每一该些实体抹除单元的一抹除次数权重值,将每一该些实体抹除单元的最大错误比特数目乘上一第二预先定义值以产生对应每一该些实体抹除单元的一最大错误比特数目权重值,并且将每一该些抹除次数权重值加上每一该些最大错误比特数目权重值所获得的值作为每一该些实体抹除单元的加权值。
15.一种存储器存储装置,其特征在于,包括:
一连接接口单元,用以电性连接至一主机系统;
一可复写式非易失性存储器模块,具有多个实体抹除单元;以及
一存储器控制电路单元,电性连接至该连接接口单元与该可复写式非易失性存储器模块,并且用以记录每一该些实体抹除单元的一抹除次数,
其中该存储器控制电路单元还用以将该些实体抹除单元至少分组为一闲置区与一数据区,
其中该存储器控制电路单元还用以判断该可复写式非易失性存储器模块的一使用次数是否大于一使用次数门坎值,其中
若该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值时,该存储器控制电路单元还用以根据该闲置区的每一该些实体抹除单元的抹除次数,由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元,
若该可复写式非易失性存储器模块的使用次数大于该使用次数门坎值时,该存储器控制电路单元还用以根据该闲置区的该些实体抹除单元的多个最大错误比特数目,由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元,
其中该存储器控制电路单元还用以依据该些已排序实体抹除单元从该闲置区中提取排序在最前面的一第一实体抹除单元来写入数据。
16.根据权利要求15项所述的存储器存储装置,其特征在于,在上述判断该可复写式非易失性存储器模块的该使用次数是否大于该使用次数门坎值的运作中,该存储器控制电路单元依据每一该些实体抹除单元的抹除次数,计算该些实体抹除单元的一平均抹除次数,并且判断该些实体抹除单元的该平均抹除次数是否大于一抹除次数门坎值,
其中若该些实体抹除单元的该平均抹除次数大于该抹除次数门坎值时,则该存储器控制电路单元识别该可复写式非易失性存储器模块的该使用次数大于该使用次数门坎值,
其中若该些实体抹除单元的该平均抹除次数不大于该抹除次数门坎值时,则该存储器控制电路单元识别该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值。
17.根据权利要求15所述的存储器存储装置,其特征在于,在上述判断该可复写式非易失性存储器模块的该使用次数是否大于该使用次数门坎值的运作中,该存储器控制电路单元用以判断是否该些实体抹除单元中至少一个实体抹除单元的抹除次数大于一抹除次数门坎值,
其中若该些实体抹除单元中至少一个实体抹除单元的抹除次数大于该抹除次数门坎值时,则该存储器控制电路单元识别该可复写式非易失性存储器模块的该使用次数大于该使用次数门坎值,
其中若每一该些实体抹除单元的该抹除次数皆不大于该抹除次数门坎值时,则该存储器控制电路单元识别该可复写式非易失性存储器模块的该使用次数不大于该使用次数门坎值。
18.根据权利要求15所述的存储器存储装置,其特征在于,每一该些实体抹除单元包括多个实体程序化单元,且每一该些实体程序化单元可存储至少一错误检查与校正框,其中该存储器控制电路单元还用以持续记录发生在该些实体抹除单元中的该第一实体抹除单元的每一错误检查与校正框的错误比特的数目,并且将该些数目中的一最大数目作为该第一实体抹除单元的一最大错误比特数目。
19.根据权利要求15所述的存储器存储装置,其特征在于,在上述根据该闲置区的每一该些实体抹除单元的抹除次数,由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元的运作中还包括:
该存储器控制电路单元用以将该闲置区的每一该些实体抹除单元的抹除次数乘上一第三预先定义值得到一抹除次数加权值;以及
根据该抹除次数加权值由小到大排序该闲置区的该些实体抹除单元以形成多个已排序实体抹除单元。
20.根据权利要求15所述的存储器存储装置,其特征在于,其中在上述根据该闲置区的每一该些实体抹除单元的最大错误比特数目,由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元的运作中,该存储器控制电路单元用以根据该闲置区的每一该些实体抹除单元的该抹除次数与该最大错误比特数目,计算出对应每一该些实体抹除单元的一加权值,并根据该加权值由小到大排序该闲置区的该些实体抹除单元以形成该些已排序实体抹除单元。
21.根据权利要求20所述的存储器存储装置,其特征包括,在上述根据该闲置区的每一该些实体抹除单元的该抹除次数与该最大错误比特数目,计算出对应每一该些实体抹除单元的该加权值的运作中,该存储器控制电路单元用以将每一该些实体抹除单元的抹除次数乘上一第一预先定义值以产生对应每一该些实体抹除单元的一抹除次数权重值,将每一该些实体抹除单元的最大错误比特数目乘上一第二预先定义值以产生对应每一该些实体抹除单元的一最大错误比特数目权重值,并且将每一该些抹除次数权重值加上每一该些最大错误比特数目权重值所获得的值作为每一该些实体抹除单元的加权值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410066911.4A CN104866429B (zh) | 2014-02-26 | 2014-02-26 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410066911.4A CN104866429B (zh) | 2014-02-26 | 2014-02-26 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104866429A true CN104866429A (zh) | 2015-08-26 |
CN104866429B CN104866429B (zh) | 2018-02-02 |
Family
ID=53912274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410066911.4A Active CN104866429B (zh) | 2014-02-26 | 2014-02-26 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104866429B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI571881B (zh) * | 2015-10-23 | 2017-02-21 | 群聯電子股份有限公司 | 有效資料合併方法、記憶體控制器與記憶體儲存裝置 |
CN107204205A (zh) * | 2016-03-16 | 2017-09-26 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN108182035A (zh) * | 2017-12-28 | 2018-06-19 | 湖南国科微电子股份有限公司 | 一种提高ssd可靠性的方法 |
CN109032957A (zh) * | 2017-06-09 | 2018-12-18 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN110213432A (zh) * | 2019-05-13 | 2019-09-06 | 惠州Tcl移动通信有限公司 | 一种芯片工作频率的设置方法、移动终端及存储介质 |
CN110275668A (zh) * | 2018-03-14 | 2019-09-24 | 群联电子股份有限公司 | 区块管理方法、存储器控制电路单元与存储器存储装置 |
CN111240602A (zh) * | 2020-01-21 | 2020-06-05 | 合肥兆芯电子有限公司 | 闪存的数据整理方法、控制电路单元与存储装置 |
CN111258505A (zh) * | 2020-01-21 | 2020-06-09 | 合肥兆芯电子有限公司 | 快闪存储器的数据合并方法、控制电路单元与存储装置 |
CN111831210A (zh) * | 2019-04-18 | 2020-10-27 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN112988076A (zh) * | 2021-04-26 | 2021-06-18 | 群联电子股份有限公司 | 快闪存储器控制方法、存储装置及控制器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200723303A (en) * | 2005-12-06 | 2007-06-16 | Phison Electronics Corp | Distributed writing method for flash memory |
TW200917270A (en) * | 2007-10-04 | 2009-04-16 | Phison Electronics Corp | Wear leveling method and controller using the same |
TW201019336A (en) * | 2008-11-14 | 2010-05-16 | Phison Electronics Corp | Error correcting controller and flash memory chip system and error correcting method thereof |
CN101874240A (zh) * | 2007-11-19 | 2010-10-27 | 三德动力有限公司 | 增加存储器的多个块的寿命 |
CN102789423A (zh) * | 2012-07-11 | 2012-11-21 | 山东华芯半导体有限公司 | 四池闪存磨损均衡方法 |
-
2014
- 2014-02-26 CN CN201410066911.4A patent/CN104866429B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200723303A (en) * | 2005-12-06 | 2007-06-16 | Phison Electronics Corp | Distributed writing method for flash memory |
TW200917270A (en) * | 2007-10-04 | 2009-04-16 | Phison Electronics Corp | Wear leveling method and controller using the same |
CN101874240A (zh) * | 2007-11-19 | 2010-10-27 | 三德动力有限公司 | 增加存储器的多个块的寿命 |
US7903486B2 (en) * | 2007-11-19 | 2011-03-08 | Sandforce, Inc. | System, method, and computer program product for increasing a lifetime of a plurality of blocks of memory |
TW201019336A (en) * | 2008-11-14 | 2010-05-16 | Phison Electronics Corp | Error correcting controller and flash memory chip system and error correcting method thereof |
CN102789423A (zh) * | 2012-07-11 | 2012-11-21 | 山东华芯半导体有限公司 | 四池闪存磨损均衡方法 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI571881B (zh) * | 2015-10-23 | 2017-02-21 | 群聯電子股份有限公司 | 有效資料合併方法、記憶體控制器與記憶體儲存裝置 |
CN107204205A (zh) * | 2016-03-16 | 2017-09-26 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN107204205B (zh) * | 2016-03-16 | 2020-05-26 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN109032957A (zh) * | 2017-06-09 | 2018-12-18 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN109032957B (zh) * | 2017-06-09 | 2022-11-22 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN108182035A (zh) * | 2017-12-28 | 2018-06-19 | 湖南国科微电子股份有限公司 | 一种提高ssd可靠性的方法 |
CN110275668B (zh) * | 2018-03-14 | 2022-09-13 | 群联电子股份有限公司 | 区块管理方法、存储器控制电路单元与存储器存储装置 |
CN110275668A (zh) * | 2018-03-14 | 2019-09-24 | 群联电子股份有限公司 | 区块管理方法、存储器控制电路单元与存储器存储装置 |
CN111831210B (zh) * | 2019-04-18 | 2023-12-15 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN111831210A (zh) * | 2019-04-18 | 2020-10-27 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN110213432A (zh) * | 2019-05-13 | 2019-09-06 | 惠州Tcl移动通信有限公司 | 一种芯片工作频率的设置方法、移动终端及存储介质 |
CN111258505A (zh) * | 2020-01-21 | 2020-06-09 | 合肥兆芯电子有限公司 | 快闪存储器的数据合并方法、控制电路单元与存储装置 |
CN111240602B (zh) * | 2020-01-21 | 2023-09-26 | 合肥兆芯电子有限公司 | 闪存的数据整理方法、控制电路单元与存储装置 |
CN111258505B (zh) * | 2020-01-21 | 2023-09-26 | 合肥兆芯电子有限公司 | 快闪存储器的数据合并方法、控制电路单元与存储装置 |
CN111240602A (zh) * | 2020-01-21 | 2020-06-05 | 合肥兆芯电子有限公司 | 闪存的数据整理方法、控制电路单元与存储装置 |
CN112988076A (zh) * | 2021-04-26 | 2021-06-18 | 群联电子股份有限公司 | 快闪存储器控制方法、存储装置及控制器 |
CN112988076B (zh) * | 2021-04-26 | 2023-08-15 | 群联电子股份有限公司 | 快闪存储器控制方法、存储装置及控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN104866429B (zh) | 2018-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104866429A (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
TWI479314B (zh) | 系統資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
US9141530B2 (en) | Data writing method, memory controller and memory storage device | |
TWI540582B (zh) | 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置 | |
CN105005450A (zh) | 数据写入方法、存储器存储装置及存储器控制电路单元 | |
CN104765568A (zh) | 数据存储方法、存储器控制电路单元与存储器存储装置 | |
CN104765569A (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
TW201348960A (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI545432B (zh) | 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置 | |
CN103514096A (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN103544115A (zh) | 数据写入方法、存储器控制器与存储器存储装置 | |
CN104636267A (zh) | 存储器控制方法、存储器存储装置与存储器控制电路单元 | |
US9430325B2 (en) | Method for programming data, memory storage device and memory control circuit unit | |
US20130332653A1 (en) | Memory management method, and memory controller and memory storage device using the same | |
CN103678162B (zh) | 系统数据储存方法、存储器控制器与存储器储存装置 | |
CN105022695A (zh) | 数据存储方法、存储器控制电路单元与存储器存储装置 | |
TWI548991B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN103593296A (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN103914391B (zh) | 数据读取方法、存储器控制器与存储器存储装置 | |
CN104252317A (zh) | 数据写入方法、存储器控制器与存储器存储装置 | |
TW201526006A (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
US9778862B2 (en) | Data storing method for preventing data losing during flush operation, 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 | |
CN106354651B (zh) | 平均磨损方法、存储器控制电路单元及存储器储存装置 | |
CN104252600A (zh) | 数据保护方法、存储器控制器与存储器储存装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |