CN102880570B - 固态硬盘的加权磨损均衡方法及系统 - Google Patents
固态硬盘的加权磨损均衡方法及系统 Download PDFInfo
- Publication number
- CN102880570B CN102880570B CN201210324780.6A CN201210324780A CN102880570B CN 102880570 B CN102880570 B CN 102880570B CN 201210324780 A CN201210324780 A CN 201210324780A CN 102880570 B CN102880570 B CN 102880570B
- Authority
- CN
- China
- Prior art keywords
- block
- solid state
- abrasion equilibrium
- state hard
- hard disc
- 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.)
- Expired - Fee Related
Links
- 238000005299 abrasion Methods 0.000 title claims abstract description 85
- 239000007787 solid Substances 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000015572 biosynthetic process Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Optical Recording Or Reproduction (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明适用于计算机技术领域,提供了一种固态硬盘的加权磨损均衡方法,所述方法包括:记录所述固态硬盘的至少一坏块,以及所述坏块周围的块编号;根据所述坏块周围的块编号生成哈希表;所述固态硬盘进行磨损均衡时,对所述哈希表中的块的磨损均衡系数加权处理。本发明还相应的提供一种实现上述方法的磨损均衡系统。借此,本发明可以提高固态硬盘的性能及使用寿命。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种固态硬盘的加权磨损均衡方法及系统。
背景技术
固态硬盘(SolidStateDisk,简称SSD)是一种基于永久性存储器,如闪存,或非永久性存储器,同步动态随机存取存储器(SDRAM)的计算机外部存储设备。其具有读写速度快,低功耗,无噪音,抗震动,低热量,体积小,工作范围大,广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空等、导航设备等领域。如果能够克服容价比低,和寿命限制,将会得到更广泛的应用。
由于固态硬盘的存储介质flash具有擦除次数有限,先擦后写的特点,会带来使用寿命有限的缺陷。为了延长flash的寿命,不让部分block因为过度擦写造成整块盘的损坏。磨损均衡(WearLeveling)技术,让flash的存储单元擦除次数尽可能的平均。均衡磨损分为动态Wear-leveling和静态Wear-leveling。结合图1,动态Wear-leveling:保证数据的编写和循环的擦除会被均匀地分布到NANDFlash的所有块中。该算法之所以是动态的是因为它每次都在缓冲区处理数据,然后写入闪存中。主要是为了避免让应用程序重复不断地对同一个存储区域进行擦除/写入,从而让该存储单元出现永久性损坏。当出现一个写数据请求时,动态Wear-Leveling就会开始启动。该算法先对ECT的空闲块池进行浏览,寻找一个擦除计数值最小的块单元。一旦找到符合要求的块,就将数据写入,并将该块送入数据块池。然后将新块的物理地址与主机发送过来的逻辑地址在转换映射表上建立彼此的映射关系。结合图2,静态Wear-Leveling:对那些处于不活动状态的块单元进行寻址,并把数据写入它们之中。静态Wear-Leveling使用两个触发机制定期地进行操作。第一个触发机制是检测不活动块单元的闲置存储阶段。如果这个闲置阶段超过了所设定的上限,就会启动ECT进行浏览操作,寻找在数据块池中擦除计数值最小的块单元,以及空闲块池中擦除计数值最大的块单元。第二个触发机制就会将数据块池中最小的擦除计数值与空闲块池中最大的计数值进行相减,如果结果超过了设定上限,那么在数据块池中擦除计数值最小的块单元的数据就会被转移到空闲块池中擦除计数值最大的块单元中。
上述均衡磨损的方法确实能够再现有技术基础上,尽可能擦写操作均匀的分布到每一个block上。但是,上述方法是假定所谓的存储单元block出现损坏的概率是一样的。但实际上,因为在坏块周围的block因为生产工艺,物理构成,工作环境的较高相似性,其出现坏块的概率会相对高一些,各块的损坏概率是有一定差别的。
综上可知,现有的固态硬盘的磨损均衡的方法,在实际使用上显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种固态硬盘的加权磨损均衡方法及系统,可以提高固态硬盘的性能及使用寿命。
为了实现上述目的,本发明提供一种固态硬盘的加权磨损均衡方法,所述方法包括:
记录所述固态硬盘的至少一坏块,以及所述坏块周围的块编号;
根据所述坏块周围的块编号生成哈希表;
所述固态硬盘进行磨损均衡时,对所述哈希表中的块的磨损均衡系数加权处理。
根据本发明的加权磨损均衡的方法,每个所述坏块周围的块编号对应一哈希表。
根据本发明的加权磨损均衡的方法,所述记录所述固态硬盘的至少一坏块,以及所述坏块周围的块编号步骤包括:
记录所述固态硬盘的出厂坏块,以及所述出厂坏块周围的块编号;
所述固态硬盘进行磨损均衡时,对所述哈希表中的块的磨损均衡系数加权处理步骤包括:
对所述出厂坏块周围的块编号对应的哈希表中的块的磨损均衡系数增加第一加权项。
根据本发明的加权磨损均衡的方法,所述记录所述固态硬盘的至少一坏块,以及所述坏块周围的块编号的步骤包括:
记录所述固态硬盘运行时产生的坏块,以及所述坏块周围的块编号;
所述固态硬盘进行磨损均衡时,对所述哈希表中的块的磨损均衡系数加权处理步骤包括:
对所述固态硬盘运行时产生的坏块周围的块编号对应的哈希表中的块的磨损均衡系数增加第二加权项。
根据本发明的加权磨损均衡的方法,所述第一加权项大于第二加权项。
本发明还提供一种固态硬盘的加权磨损均衡系统,包括:
记录模块,用于记录所述固态硬盘的至少一坏块,以及所述坏块周围的块编号;
哈希表生成模块,用于根据所述坏块周围的块编号生成哈希表;
计算处理模块,用于所述固态硬盘进行磨损均衡时,对所述哈希表中的块的磨损均衡系数加权处理。
根据本发明的加权磨损均衡系统,每个所述坏块周围的块编号对应一哈希表。
根据本发明的加权磨损均衡系统,所述记录模块包括第一记录子模块,用于记录所述固态硬盘的出厂坏块,以及所述出厂坏块周围的块编号;
所述计算处理模块用于对所述出厂坏块周围的块编号对应的哈希表中的块的磨损均衡系数增加第一加权项。
根据本发明的加权磨损均衡系统,所述记录模块还包括第二记录子模块,用于记录所述固态硬盘运行时产生的坏块,以及所述坏块周围的块编号;
所述计算处理模块用于对所述出厂坏块周围的块编号对应的哈希表中的块的磨损均衡系数增加第二加权项。
根据本发明的加权磨损均衡系统,所述第一加权项大于第二加权项。
本发明通过记录固态硬盘中的坏块以及坏块周围的块编号,并根据所述坏块周围的块编号生成一哈希表,该哈希表内记录的块是坏块周围的正常块。当固态硬盘进行磨损均衡时,对所述哈希表中记录的块的磨损均衡系数加权处理。借此,本发明可以减少对一些特定块的擦除次数,提高固态硬盘的性能及使用寿命。
附图说明
图1是现有技术的固态硬盘动态磨损均衡原理示意图;
图2是现有技术的固态硬盘静态磨损均衡原理示意图;
图3是本发明一实施例的磨损均衡系统的结构示意图;
图4是本发明一实施例的哈希表结构示意图;
图5是本发明一实施例的磨损均衡方法流程图;
图6是本发明一实施例的磨损均衡过程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图3,本发明提供了一种固态硬盘的加权磨损均衡系统,该系统100包括记录模块10、哈希表生成模块20以及计算处理模块30,其中:
记录模块10用于记录固态硬盘中的坏块。具体应用中,固态硬盘的坏块可能是有多种原因产生,比如由于加工工艺的失误,在出厂时即产生坏块;另外,固态硬盘在使用过程中,由于部分block的擦除次数较为频繁而产生坏块。本实施例中,记录模块10通过第一记录子模块11记录固态硬盘的出厂坏块,以及该出厂坏块周围的正常块的编号,通过第二记录子模块12记录固态硬盘运行时产生的坏块,以及该坏块周围的正常块的编号。
哈希表生成模块20用于根据固态硬盘的坏块周围的正常块的编号生成哈希表,每个所述坏块周围的块编号对应一哈希表。结合图4所示固态硬盘的分布,出厂坏块周围的正常块编号构成第一哈希表40,固态硬盘运行时产生的坏块周围的正常块编号构成第二哈希表50。
计算处理模块30用于固态硬盘进行磨损均衡时,对哈希表中的块的磨损均衡系数加权处理。若系统100对固态硬盘的出厂坏块周围的块进行磨损均衡,即对第一哈希表40中包括的正常块进行磨损均衡,则计算处理模块30对其磨损均衡系数增加第一加权项m%,也就是该块每被擦除一次,记录其擦除次数为(1+m%);若系统100对固态硬盘的运行时出现的坏块周围的块进行磨损均衡,即对第二哈希表50中包括的正常块进行磨损均衡,则计算处理模块30对其磨损均衡系数增加第二加权项n%,也就是该块每被擦除一次,记录其擦除次数为(1+n%),本发明的应用中,m%>n%。
对于出厂坏块,可以认为该块的生产工艺不合格,而该块周围的块出现问题的概率相对于其他正常块会高一些;对于固态硬盘在运行中出现的坏块,虽然各个块之间是相互独立的,但是从工作环境、特征各方面来说,该块周围的正常块出现问题的概率同样会更高一些。本发明通过对这些正常块的磨损技术进行加权,可以在磨损均衡算法中,减少对这些块的擦除而不影响之前的磨损均衡算法。
本发明的在磨损均衡系统采用的算法,让所有的块处于相互接近的擦除次数,避免对某些块的过度擦除,影响整个固态硬盘的寿命,而加权磨损均衡方法是预期某些特定的块的寿命可能会短一些,因此通过加权的方式,在进行实际磨损均衡时,减少对这些特定块的擦除,使得整块固态硬盘的寿命提高。
参见图5,本发明提供了一种基于固态硬盘的加权磨损均衡方法,其可以通过如图1所示的系统100实现,该方法包括:
步骤S501,记录模块10记录所述固态硬盘的至少一坏块,以及所述坏块周围的块编号。具体的,固态硬盘的坏块包括出厂坏块及运行时产生的坏块,记录模块10可通过其第一记录子模块11记录固态硬盘的出厂坏块,以及所述出厂坏块周围的块编号,通过第二记录子模块12记录固态硬盘运行时产生的坏块,以及所述坏块周围的块编号。
步骤S502,哈希表生成模块20根据所述坏块周围的块编号生成哈希表。具体的,固态硬盘的每个坏块周围的块编号各对应一哈希表。比如出厂坏块周围的正常块编号构成第一哈希表40,固态硬盘运行时产生的坏块周围的正常块编号构成第二哈希表50。
步骤S503,计算处理模块30在所述固态硬盘进行磨损均衡时,对所述哈希表中的块的磨损均衡系数加权处理。若系统100对固态硬盘的出厂坏块周围的块进行磨损均衡,即对第一哈希表40中包括的正常块进行磨损均衡,则计算处理模块30对其磨损均衡系数增加第一加权项m%,也就是该块每被擦除一次,记录其擦除次数为(1+m%);若系统100对固态硬盘的运行时出现的坏块周围的块进行磨损均衡,即对第二哈希表50中包括的正常块进行磨损均衡,则计算处理模块30对其磨损均衡系数增加第二加权项n%,也就是该块每被擦除一次,记录其擦除次数为(1+n%)。
优选的,本发明的实施例中,m%>n%,关于m和n的具体值,则根据具体的情况和测试结构做调整,可达到最好的效果。
图6是本发明一实施例提供的磨损均衡过程示意图,首先从空闲块pool中取出一个空闲块,写入相关数据,使该块成为数据块pool中的一个,然后在空闲块pool中空闲块的数量低于一个阈值的时候,启动垃圾回收机制,把擦除次数比较少的块回收到空闲数据块。
综上所述,本发明通过记录固态硬盘中的坏块以及坏块周围的块编号,并根据所述坏块周围的块编号生成一哈希表,该哈希表内记录的块是坏块周围的正常块。当固态硬盘进行磨损均衡时,对所述哈希表中记录的块的磨损均衡系数加权处理。借此,本发明可以减少对一些特定块的擦除次数,提高固态硬盘的性能及使用寿命。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (10)
1.一种固态硬盘的加权磨损均衡方法,其特征在于,所述方法包括:
记录所述固态硬盘的至少一坏块,以及所述坏块周围的正常块的块编号;
根据所述坏块周围的正常块的块编号生成哈希表;
所述固态硬盘进行磨损均衡时,对所述哈希表中的正常块的磨损均衡系数加权处理。
2.根据权利要求1所述的加权磨损均衡方法,其特征在于,每个所述坏块周围的正常块的块编号对应一哈希表。
3.根据权利要求2所述的加权磨损均衡方法,其特征在于,所述记录所述固态硬盘的至少一坏块,以及所述坏块周围的正常块的块编号步骤包括:
记录所述固态硬盘的出厂坏块,以及所述出厂坏块周围的正常块的块编号;
所述固态硬盘进行磨损均衡时,对所述哈希表中的正常块的磨损均衡系数加权处理步骤包括:
对所述出厂坏块周围的块编号对应的哈希表中的正常块的磨损均衡系数增加第一加权项。
4.根据权利要求3所述的加权磨损均衡方法,其特征在于,所述记录所述固态硬盘的至少一坏块,以及所述坏块周围的正常块的块编号的步骤包括:
记录所述固态硬盘运行时产生的坏块,以及所述坏块周围的正常块的块编号;
所述固态硬盘进行磨损均衡时,对所述哈希表中的正常块的磨损均衡系数加权处理步骤包括:
对所述固态硬盘运行时产生的坏块周围的正常块的块编号对应的哈希表中的块的磨损均衡系数增加第二加权项。
5.根据权利要求4所述的加权磨损均衡方法,其特征在于,所述第一加权项大于第二加权项。
6.一种固态硬盘的加权磨损均衡系统,其特征在于,包括:
记录模块,用于记录所述固态硬盘的至少一坏块,以及所述坏块周围的正常块的块编号;
哈希表生成模块,用于根据所述坏块周围的正常块的块编号生成哈希表;
计算处理模块,用于所述固态硬盘进行磨损均衡时,对所述哈希表中的正常块的磨损均衡系数加权处理。
7.根据权利要求6所述的加权磨损均衡系统,其特征在于,每个所述坏块周围的正常块的块编号对应一哈希表。
8.根据权利要求7所述的加权磨损均衡系统,其特征在于,所述记录模块包括第一记录子模块,用于记录所述固态硬盘的出厂坏块,以及所述出厂坏块周围的正常块的块编号;
所述计算处理模块用于对所述出厂坏块周围的正常块的块编号对应的哈希表中的块的磨损均衡系数增加第一加权项。
9.根据权利要求8所述的加权磨损均衡系统,其特征在于,所述记录模块还包括第二记录子模块,用于记录所述固态硬盘运行时产生的坏块,以及所述坏块周围的正常块的块编号;
所述计算处理模块用于对所述出厂坏块周围的正常块的块编号对应的哈希表中的块的磨损均衡系数增加第二加权项。
10.根据权利要求9所述的加权磨损均衡系统,其特征在于,所述第一加权项大于第二加权项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210324780.6A CN102880570B (zh) | 2012-09-05 | 2012-09-05 | 固态硬盘的加权磨损均衡方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210324780.6A CN102880570B (zh) | 2012-09-05 | 2012-09-05 | 固态硬盘的加权磨损均衡方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102880570A CN102880570A (zh) | 2013-01-16 |
CN102880570B true CN102880570B (zh) | 2016-04-27 |
Family
ID=47481901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210324780.6A Expired - Fee Related CN102880570B (zh) | 2012-09-05 | 2012-09-05 | 固态硬盘的加权磨损均衡方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102880570B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
HUE035390T2 (en) | 2013-09-24 | 2018-05-02 | Huawei Tech Co Ltd | Data migration process, data migration device and storage device |
CN105786722B (zh) * | 2014-12-25 | 2020-10-27 | 研祥智能科技股份有限公司 | 基于异构混合内存的nvm内存擦写控制方法和系统 |
CN104778127B (zh) * | 2015-03-25 | 2018-04-13 | 合肥格易集成电路有限公司 | 一种nand flash写数据的方法和装置 |
US11042330B2 (en) | 2017-03-01 | 2021-06-22 | Samsung Electronics Co., Ltd. | Methods and systems for distributed data storage |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101354681A (zh) * | 2008-09-23 | 2009-01-28 | 美商威睿电通公司 | 存储器系统、非易失性存储器的磨损均衡方法及装置 |
CN102317925A (zh) * | 2009-02-12 | 2012-01-11 | 株式会社东芝 | 存储器系统和控制存储器系统的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8806106B2 (en) * | 2010-11-12 | 2014-08-12 | Seagate Technology Llc | Estimating wear of non-volatile, solid state memory |
-
2012
- 2012-09-05 CN CN201210324780.6A patent/CN102880570B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101354681A (zh) * | 2008-09-23 | 2009-01-28 | 美商威睿电通公司 | 存储器系统、非易失性存储器的磨损均衡方法及装置 |
CN102317925A (zh) * | 2009-02-12 | 2012-01-11 | 株式会社东芝 | 存储器系统和控制存储器系统的方法 |
Non-Patent Citations (2)
Title |
---|
《固态硬盘存储管理与差错控制技术研究》;张磊;《中国优秀硕士学位论文全文数据库信息科技辑》;20120430(第4期);第12-14页 * |
《固态硬盘的存储管理策略与实现技术》;李涛;《万方学位论文》;20110314;第24-26页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102880570A (zh) | 2013-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10101931B1 (en) | Mitigating read errors following programming in a multi-level non-volatile memory | |
US9934151B2 (en) | System and method for dynamic optimization for burst and sustained performance in solid state drives | |
CN101441599B (zh) | 一种固态硬盘的均衡方法和固态硬盘 | |
US20180165022A1 (en) | Health-aware garbage collection in a memory system | |
US10956049B2 (en) | Wear-aware block mode conversion in non-volatile memory | |
US9971698B2 (en) | Using access-frequency hierarchy for selection of eviction destination | |
WO2014003982A1 (en) | Bad block management mechanism | |
US20190391746A1 (en) | Background mitigation reads in a non-volatile memory system | |
US10922234B2 (en) | Method and system for online recovery of logical-to-physical mapping table affected by noise sources in a solid state drive | |
CN102981963A (zh) | 一种固态盘的闪存转换层的实现方法 | |
CN102880570B (zh) | 固态硬盘的加权磨损均衡方法及系统 | |
US11797199B2 (en) | Balancing utilization of memory pools of physical blocks of differing storage densities | |
KR20120078096A (ko) | 비휘발성 메모리 및 휘발성 메모리를 포함하는 메모리 시스템 및 그 시스템을 이용한 처리 방법 | |
CN102981969A (zh) | 重复数据删除的方法及其固态硬盘 | |
CN107967125A (zh) | 闪存转换层的管理方法、装置及计算机可读存储介质 | |
US20190340121A1 (en) | Accelerating garbage collection of flushed logical erase blocks in non-volatile memory | |
Zhou et al. | SCORE: A novel scheme to efficiently cache overlong ECCs in NAND flash memory | |
CN103942006B (zh) | 双盘式数据快取方法及系统 | |
US20230315299A1 (en) | Systems and method for tracking activations to perform row hammer mitigation in memory modules | |
CN111078128B (zh) | 数据管理方法、装置及固态硬盘 | |
CN111435403B (zh) | 一种闪存系统的磨损均衡方法及装置 | |
Tjioe et al. | Making garbage collection wear conscious for flash SSD | |
Chen et al. | Refinery swap: An efficient swap mechanism for hybrid DRAM–NVM systems | |
Lin et al. | Flash-aware linux swap system for portable consumer electronics | |
CN110399205B (zh) | 一种基于状态感知的虚拟机内存动态调节方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160427 |
|
CF01 | Termination of patent right due to non-payment of annual fee |