CN108628758A - 一种选择垃圾回收目标块的方法及固态硬盘 - Google Patents
一种选择垃圾回收目标块的方法及固态硬盘 Download PDFInfo
- Publication number
- CN108628758A CN108628758A CN201810209119.8A CN201810209119A CN108628758A CN 108628758 A CN108628758 A CN 108628758A CN 201810209119 A CN201810209119 A CN 201810209119A CN 108628758 A CN108628758 A CN 108628758A
- Authority
- CN
- China
- Prior art keywords
- block
- score
- page
- erasable number
- ssd
- 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.)
- Withdrawn
Links
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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- 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/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种选择垃圾回收目标块的方法及固态硬盘,其特征在于根据各个块block中无效页所占比例和擦写次数计算各个块的回收因数得分score,选择得分最少的block作为回收目标块。通过计算SSD上各block的有效页比例和已擦除次数加权分值,尽可能全面地考虑对SSD读写性能和寿命的影响,选择有效页比例少、已擦除次数少的block作为GC的目标回收块。利用磨损均衡思维选择最优的block作为回收块,减少SSD中block擦除次数,降低数据迁移次数,减小写放大,提高SSD的使用寿命。
Description
技术领域
本发明涉及存储技术领域,尤其涉及一种选择垃圾回收目标块的方法及固态硬盘。
背景技术
由于NAND flash的固有特性,在program之前需要进行erase,而且erase 操作以block为单位进行,SSD使用过程中会产生碎片页,需要通过垃圾回收的方式回收失效页。然而垃圾回收机制会降低SSD的性能,同时缩减SSD的寿命。特别是SSD快写满时会频繁触发垃圾回收机制GC,严重降低SSD的性能。目前的GC机制目标块选择一般使用贪婪算法,不会考虑目标块的擦除次数,容易导致目标块过早被擦穿,缩短SSD的使用寿命。
图1是当前使用的GC流程示意图,主机文件系统通过闪存转换层FTL(Flashtranslation layer)对SSD进行访问,FTL包括缓存管理模块、地址映射模块和垃圾回收GC模块,FTL通过存储设备驱动层NFC对NAND Flash的物理存储空间进行访问。SSD一般一次完整的GC操作包括三个步骤:1、选择需要回收的失效目标块;2、迁移目标块中的数据到其他块中;3、擦除目标块。因此如何选择目标块是GC的关键步骤。
图2是贪婪算法选择GC目标块的流程,当触发GC后获取所有block有效页和无效页的比例,选择无效页最多的block为目标块,将目标块中有效数据进行迁移和并擦除擦除对应的块实现块回收,该种选择方式只注重回收的效率,会造成块磨损不均衡。
发明内容
针对以上缺陷,本发明目的在于如何更准确地选择垃圾回收的目标块。
为了实现上述目的,本发明提供了一种选择垃圾回收目标块的方法,其特征在于根据各个块block中无效页所占比例和擦写次数计算各个块的回收加权得分score,选择得分最少的block作为回收目标块,score具体按照如下方式获得:
其中,invalid_cnt(i)表示第i个block中无效页的数量,page_cnt表示 block中page的总数,erase_cnt(i)表示第i个block的擦写次数,max表示所有block中擦写次数最大值,min表示所有block中擦写次数最小值,kε是表示SSD系统响应能力的常数,kε越小,系统平均响应时间越短,磨损越不均衡。
一种固态硬盘,其特征在包括闪存转换层FTL、存储设备驱动层NFC和NAND Flash的物理存储空间,闪存转换层FTL包括缓存管理模块、地址映射模块和垃圾回收GC模块,FTL通过存储设备驱动层NFC对NAND Flash的物理存储空间进行访问,垃圾回收GC模块根据各个块block中无效页所占比例和擦写次数计算各个块的回收加权得分score,选择得分最少的block作为回收目标块,score 具体按照如下方式获得:
其中,invalid_cnt(i)表示第i个block中无效页的数量,page_cnt表示block中page的总数,erase_cnt(i)表示第i个block的擦写次数,max表示所有block中擦写次数最大值,min表示所有block中擦写次数最小值,kε是表示SSD系统响应能力的常数,kε越小,系统平均响应时间越短,磨损越不均衡。
本发明有益效果:通过计算SSD上各block的有效页比例和已擦除次数加权分值,尽可能全面地考虑对SSD读写性能和寿命的影响,选择有效页比例少、已擦除次数少的block作为GC的目标回收块。利用磨损均衡思维选择最优的 block作为回收块,减少SSD中block擦除次数,降低数据迁移次数,减小写放大,提高SSD的使用寿命。
附图说明
图1是当前使用的GC流程示意图;
图2是贪婪算法选择GC目标块的流程;
图3是本发明选择GC目标块的流程。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图3是本发明选择GC目标块的流程,选择适当的block作为GC目标块,综合考虑block中无效页所占比例和擦写次数,提高GC效率,延长NAND Flash 寿命;
本发明综合考虑了块磨损和回收效率,加权分值计算公式如下:
其中,invalid_cnt(i)表示第i个block中无效页的数量,page_cnt表示 block中page的总数,erase_cnt(i)表示第i个block的擦写次数,max表示所有block中擦写次数最大值,min表示所有block中擦写次数最小值,kε是表示SSD系统响应能力的常数,kε越小,系统平均响应时间越短,磨损越不均衡。
计算每个block的得分,得分最少的block作为回收目标块。
公式第一部分强调GC的效率,无效页越多,block被作为GC目标块的可能性越大。
第二部分强调磨损均衡,擦写次数越少的block越可能被作为目标块回收。
两部分的比重由系数a决定,a是所有block擦写次数最大值和最小值差值Δε的单调递增函数。kε取10时,a约为0.5,即GC效率和磨损均衡权重相等;当max=min时,a为0,算法只考虑GC效率,不考虑磨损均衡,选取有效数据最少的块进行回收(贪婪策略),SSD初始状态可能会出现这种情况;当a为1 时,算法只考虑磨损均衡,即选取擦写次数最少的block进行回收。
目标块的选择在考虑SSD读写性能的同时,能够兼顾SSD的磨损均衡,提高SSD寿命.
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
Claims (2)
1.一种选择垃圾回收目标块的方法,其特征在于根据各个块block中无效页所占比例和擦写次数计算各个块的回收因数得分score,选择得分最少的block作为回收目标块,score具体按照如下方式获得:
其中,invalid_cnt(i)表示第i个block中无效页的数量,page_cnt表示block中page的总数,erase_cnt(i)表示第i个block的擦写次数,max表示所有block中擦写次数最大值,min表示所有block中擦写次数最小值,kε是表示SSD系统响应能力的常数,kε越小,系统平均响应时间越短,磨损越不均衡。
2.一种固态硬盘,其特征在包括闪存转换层FTL、存储设备驱动层NFC和NAND Flash的物理存储空间,闪存转换层FTL包括缓存管理模块、地址映射模块和垃圾回收GC模块,FTL通过存储设备驱动层NFC对NAND Flash的物理存储空间进行访问,垃圾回收GC模块根据各个块block中无效页所占比例和擦写次数计算各个块的回收因数得分score,选择得分最少的block作为回收目标块,score具体按照如下方式获得:
其中,invalid_cnt(i)表示第i个block中无效页的数量,page_cnt表示block中page的总数,erase_cnt(i)表示第i个block的擦写次数,max表示所有block中擦写次数最大值,min表示所有block中擦写次数最小值,kε是表示SSD系统响应能力的常数,kε越小,系统平均响应时间越短,磨损越不均衡。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810209119.8A CN108628758A (zh) | 2018-03-14 | 2018-03-14 | 一种选择垃圾回收目标块的方法及固态硬盘 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810209119.8A CN108628758A (zh) | 2018-03-14 | 2018-03-14 | 一种选择垃圾回收目标块的方法及固态硬盘 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108628758A true CN108628758A (zh) | 2018-10-09 |
Family
ID=63706258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810209119.8A Withdrawn CN108628758A (zh) | 2018-03-14 | 2018-03-14 | 一种选择垃圾回收目标块的方法及固态硬盘 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108628758A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710541A (zh) * | 2018-12-06 | 2019-05-03 | 天津津航计算技术研究所 | 针对NAND Flash主控芯片Greedy垃圾回收的优化方法 |
CN110347612A (zh) * | 2019-06-04 | 2019-10-18 | 华南理工大学 | 一种适用于固态盘的动态调整垃圾回收方法 |
CN110618792A (zh) * | 2019-09-17 | 2019-12-27 | 深圳忆联信息系统有限公司 | 基于固态硬盘的内部任务优化方法、装置和计算机设备 |
CN111026673A (zh) * | 2019-11-19 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种nand flash垃圾回收动态优化方法 |
CN111090595A (zh) * | 2019-11-19 | 2020-05-01 | 中国航空工业集团公司西安航空计算技术研究所 | 一种nand flash垃圾回收均衡优化方法 |
CN111143238A (zh) * | 2019-12-27 | 2020-05-12 | 深圳融卡智能科技有限公司 | 基于eFlash存储芯片的数据擦写方法及系统 |
CN111158598A (zh) * | 2019-12-29 | 2020-05-15 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
CN111159059A (zh) * | 2019-12-27 | 2020-05-15 | 深圳大普微电子科技有限公司 | 一种垃圾回收方法、装置及非易失性的存储设备 |
CN111158592A (zh) * | 2019-12-26 | 2020-05-15 | 广东浪潮大数据研究有限公司 | 固态硬盘及其垃圾回收方法、装置和计算机可读存储介质 |
CN112328169A (zh) * | 2020-10-20 | 2021-02-05 | 浙江大华存储科技有限公司 | 固态硬盘的磨损均衡方法、装置及计算机可读存储介质 |
CN112631523A (zh) * | 2020-12-29 | 2021-04-09 | 杭州电子科技大学 | 用于固态硬盘垃圾回收受害块的选择方法 |
CN112905129A (zh) * | 2021-05-06 | 2021-06-04 | 蚂蚁金服(杭州)网络技术有限公司 | 缓存内存块的淘汰方法、装置及电子设备 |
CN113835638A (zh) * | 2021-09-24 | 2021-12-24 | 苏州浪潮智能科技有限公司 | 一种存储系统中垃圾回收目的块的确定方法、装置及设备 |
CN115269451A (zh) * | 2022-09-28 | 2022-11-01 | 珠海妙存科技有限公司 | 闪存垃圾回收方法、装置及可读存储介质 |
CN115586875A (zh) * | 2022-12-08 | 2023-01-10 | 合肥康芯威存储技术有限公司 | 存储系统的磨损均衡方法、装置和存储系统 |
CN118152301A (zh) * | 2024-05-09 | 2024-06-07 | 江苏华存电子科技有限公司 | 一种自适应学习的固态硬盘垃圾回收方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528301A (zh) * | 2015-12-07 | 2016-04-27 | 中国人民解放军信息工程大学 | 一种NAND Flash闪存垃圾回收方法 |
-
2018
- 2018-03-14 CN CN201810209119.8A patent/CN108628758A/zh not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528301A (zh) * | 2015-12-07 | 2016-04-27 | 中国人民解放军信息工程大学 | 一种NAND Flash闪存垃圾回收方法 |
Non-Patent Citations (2)
Title |
---|
姚英彪; 王发宽: "具有磨损均衡意识的混合固态硬盘FTL算法", 《计算机学报》 * |
方才华;刘景宁;童薇;高阳;雷霞: "全程优化的固态硬盘垃圾回收方法", 《计算机应用》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710541A (zh) * | 2018-12-06 | 2019-05-03 | 天津津航计算技术研究所 | 针对NAND Flash主控芯片Greedy垃圾回收的优化方法 |
CN109710541B (zh) * | 2018-12-06 | 2023-06-09 | 天津津航计算技术研究所 | 针对NAND Flash主控芯片Greedy垃圾回收的优化方法 |
CN110347612A (zh) * | 2019-06-04 | 2019-10-18 | 华南理工大学 | 一种适用于固态盘的动态调整垃圾回收方法 |
CN110618792B (zh) * | 2019-09-17 | 2023-08-29 | 深圳忆联信息系统有限公司 | 基于固态硬盘的内部任务优化方法、装置和计算机设备 |
CN110618792A (zh) * | 2019-09-17 | 2019-12-27 | 深圳忆联信息系统有限公司 | 基于固态硬盘的内部任务优化方法、装置和计算机设备 |
CN111090595A (zh) * | 2019-11-19 | 2020-05-01 | 中国航空工业集团公司西安航空计算技术研究所 | 一种nand flash垃圾回收均衡优化方法 |
CN111026673A (zh) * | 2019-11-19 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种nand flash垃圾回收动态优化方法 |
CN111026673B (zh) * | 2019-11-19 | 2023-05-05 | 中国航空工业集团公司西安航空计算技术研究所 | 一种nand flash垃圾回收动态优化方法 |
CN111090595B (zh) * | 2019-11-19 | 2022-12-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种nand flash垃圾回收均衡优化方法 |
CN111158592A (zh) * | 2019-12-26 | 2020-05-15 | 广东浪潮大数据研究有限公司 | 固态硬盘及其垃圾回收方法、装置和计算机可读存储介质 |
CN111143238A (zh) * | 2019-12-27 | 2020-05-12 | 深圳融卡智能科技有限公司 | 基于eFlash存储芯片的数据擦写方法及系统 |
CN111159059A (zh) * | 2019-12-27 | 2020-05-15 | 深圳大普微电子科技有限公司 | 一种垃圾回收方法、装置及非易失性的存储设备 |
CN111159059B (zh) * | 2019-12-27 | 2022-03-04 | 深圳大普微电子科技有限公司 | 一种垃圾回收方法、装置及非易失性的存储设备 |
CN111158598A (zh) * | 2019-12-29 | 2020-05-15 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
CN111158598B (zh) * | 2019-12-29 | 2022-03-22 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
CN112328169B (zh) * | 2020-10-20 | 2022-08-09 | 浙江大华存储科技有限公司 | 固态硬盘的磨损均衡方法、装置及计算机可读存储介质 |
CN112328169A (zh) * | 2020-10-20 | 2021-02-05 | 浙江大华存储科技有限公司 | 固态硬盘的磨损均衡方法、装置及计算机可读存储介质 |
CN112631523A (zh) * | 2020-12-29 | 2021-04-09 | 杭州电子科技大学 | 用于固态硬盘垃圾回收受害块的选择方法 |
CN112905129B (zh) * | 2021-05-06 | 2021-08-13 | 蚂蚁金服(杭州)网络技术有限公司 | 缓存内存块的淘汰方法、装置及电子设备 |
CN112905129A (zh) * | 2021-05-06 | 2021-06-04 | 蚂蚁金服(杭州)网络技术有限公司 | 缓存内存块的淘汰方法、装置及电子设备 |
CN113835638A (zh) * | 2021-09-24 | 2021-12-24 | 苏州浪潮智能科技有限公司 | 一种存储系统中垃圾回收目的块的确定方法、装置及设备 |
CN113835638B (zh) * | 2021-09-24 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 一种存储系统中垃圾回收目的块的确定方法、装置及设备 |
CN115269451A (zh) * | 2022-09-28 | 2022-11-01 | 珠海妙存科技有限公司 | 闪存垃圾回收方法、装置及可读存储介质 |
CN115586875A (zh) * | 2022-12-08 | 2023-01-10 | 合肥康芯威存储技术有限公司 | 存储系统的磨损均衡方法、装置和存储系统 |
CN118152301A (zh) * | 2024-05-09 | 2024-06-07 | 江苏华存电子科技有限公司 | 一种自适应学习的固态硬盘垃圾回收方法 |
CN118152301B (zh) * | 2024-05-09 | 2024-08-02 | 江苏华存电子科技有限公司 | 一种自适应学习的固态硬盘垃圾回收方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628758A (zh) | 一种选择垃圾回收目标块的方法及固态硬盘 | |
US11132295B2 (en) | Memory system and method for controlling nonvolatile memory | |
CN107015886B (zh) | 操作存储设备的方法和操作包括其的数据处理系统的方法 | |
JP4643667B2 (ja) | メモリシステム | |
US8200889B2 (en) | Variable space page mapping method and apparatus for flash memory device | |
US10810127B2 (en) | Solid-state hard disk and data access method for use with solid-state hard disk | |
US7529880B2 (en) | Address mapping table and method of storing mapping data in the same | |
US20150127889A1 (en) | Nonvolatile memory system | |
CN104808951A (zh) | 进行存储控制的方法和设备 | |
US20210141553A1 (en) | Storage device and operating method thereof | |
TW201349099A (zh) | 資料儲存裝置和快閃記憶體之區塊管理方法 | |
JP2011192260A (ja) | 半導体記憶装置 | |
US8667210B2 (en) | Memory management method, memory controller and memory storage apparatus | |
US20120311238A1 (en) | Memory apparatus | |
TWI773467B (zh) | 垃圾回收操作的管理機制 | |
CN108595112A (zh) | 一种优化触发机制的ssd垃圾回收方法及固态硬盘 | |
CN107590080B (zh) | 映射表更新方法、存储器控制电路单元及存储器存储装置 | |
US10719263B2 (en) | Method of handling page fault in nonvolatile main memory system | |
US20170052720A1 (en) | Data protection method, memory contorl circuit unit and memory storage apparatus | |
KR20210099870A (ko) | 메모리 시스템 및 그것의 동작방법 | |
CN115756312A (zh) | 数据访问系统、数据访问方法和存储介质 | |
TW201532064A (zh) | 修復均化的方法、系統與其相關的資料結構 | |
CN113885808A (zh) | 映射信息记录方法以及存储器控制电路单元与存储装置 | |
US10871914B2 (en) | Memory management method, memory storage device and memory control circuit unit | |
WO2021134431A1 (en) | Data removal marking in memory device |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20181009 |
|
WW01 | Invention patent application withdrawn after publication |