CN111090595B - 一种nand flash垃圾回收均衡优化方法 - Google Patents

一种nand flash垃圾回收均衡优化方法 Download PDF

Info

Publication number
CN111090595B
CN111090595B CN201911134392.XA CN201911134392A CN111090595B CN 111090595 B CN111090595 B CN 111090595B CN 201911134392 A CN201911134392 A CN 201911134392A CN 111090595 B CN111090595 B CN 111090595B
Authority
CN
China
Prior art keywords
block
frequency
recovery
data volume
effective data
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
CN201911134392.XA
Other languages
English (en)
Other versions
CN111090595A (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.)
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
Xian Aeronautics Computing Technique Research Institute of AVIC
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 Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical Xian Aeronautics Computing Technique Research Institute of AVIC
Priority to CN201911134392.XA priority Critical patent/CN111090595B/zh
Publication of CN111090595A publication Critical patent/CN111090595A/zh
Application granted granted Critical
Publication of CN111090595B publication Critical patent/CN111090595B/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
    • 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/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)

Abstract

本发明提出一种NAND FLASH垃圾回收均衡优化方法,综合考虑回收块有效数据量、写入频度、磨损度等垃圾回收相关因素,并分别按照这些因素对NAND FLASH物理块进行聚类,在聚类结果中选取低编程次数类集合、高写入频度类集合、低磨损度类集合作为初始筛选集,求这三个初始筛选集的交集,得到最优回收块集合。兼顾回收效率和磨损均衡,均衡考虑垃圾回收过程相关因素,采用集合求交思想逐步缩小可选回收块范围,节省系统空间开销。

Description

一种NAND FLASH垃圾回收均衡优化方法
技术领域
本发明属于大容量存储技术领域,涉及一种NAND FLASH垃圾回收均衡优化方法。
背景技术
NAND FLASH凭着其非易失、读取速度快、存储容量大等诸多优点,近年来被广泛应用于大容量存储领域。由于NAND FLASH的固有属性,经过一段时间的编程后垃圾数据会越来越多,可供使用的空间越来越少,需要对垃圾数据占用的空间进行回收。垃圾回收过程应尽量减少回收操作,减少数据搬移的代价,减少系统开销,其中回收垃圾块的选择是最重要环节。目前存储器厂商通常使用的回收块选择方法包括静态策略和动态策略。如图1所示,静态策略是指根据回收时刻包含有效数据的多少,优先回收有效数据少的块,减少搬移数据量。动态策略是指根据数据更新的频率,优先回收更新频率低的有效数据所在的块,减少数据搬移频率。这两类方法或根据有效数据量,或根据数据更新频次选择需回收的垃圾块,没有兼顾考虑回收效率和磨损均衡。此外需根据记录的相关信息进行比较计算,比对算法复杂,系统开销大。
专利“一种选择垃圾回收目标块的方法及固态硬盘”(201810209119.8)公开了一种选择垃圾回收目标块的方法及固态硬盘,其特征在于根据各个块block中无效页所占比例和擦写次数计算各个块的回收因数得分score,选择得分最少的block作为回收目标块。该方法中需记录每个块的无效页数量及擦写次数,占用较大的存储空间,同时需要计算最大擦写次数和最小擦写次数,系统开销大。
发明内容
本发明的目的是:
本发明是为了解决现有垃圾回收方法未兼顾回收效率和磨损均衡,且回收块选择算法复杂,系统开销大的问题。
本发明的技术方案是:
一种NAND FLASH垃圾回收均衡优化方法,综合考虑NAND FLASH物理块垃圾回收过程相关因素,并分别根据这些相关因素对NAND FLASH物理块采用聚类的方法进行分类,在聚类结果中选取相关目标集合作为初始筛选集,求解上述初始筛选集的交集,得到最优回收块集合。
优选地,所述垃圾回收过程综合考虑回收块有效数据量X、写入频度Y和磨损度Z三个垃圾回收过程相关因素。
优选地,垃圾回收优化过程包括以下步骤;
a)建立多维模型F=f(X,Y,Z),其中X为有效数据量,Y为写入频度,Z为磨损度,f为关于X的正相关函数,即有效数据量越少引发的编程操作越少,f为Y的负相关函数,即选择写入频度越高的块引发的编程次数越少,f为Z的正相关函数,即选择磨损度低的块引发的磨损均衡度越高;
b)优化目标为max(F),即最大化回收效率与最大化磨损均衡度;
c)采用聚类的方法分别根据有效数据量X、写入频度Y和磨损度Z对NAND FLASH物理块进行3个维度的聚类,根据有效数据量X将数据块分类为有效数据量少的块A1和有效数据量多的块A2,根据写入频度Y将数据块分类为高频写入块B1和低频写入块B2,根据磨损度Z将数据块分类为低磨损块C1和高磨损块C2,选取A1、B1和C1作为初始筛选集;
d)求解A1、B1和C1三个初始筛选集的交集,得到最优回收块集合。
优选地,所述步骤d)中,求解A1、B1和C1三个初始筛选集的交集按如下步骤进行:
1)a=A1∩B1∩C1;
2)b=A1∩B1-a;
3)c=A1∩C1-a;
4)d=B1∩C1-a;
5)e=A1-a-b-c;
6)f=A1-a-b-d;
7)g=A1-a-c-d;
最终g即为最优回收块集合,以上步骤中“∩”代表集合交集运算符,“-”代表集合差集运算符。
本发明具有的优点是:本发明兼顾回收效率和磨损均衡,均衡考虑NAND FLASH物理块的有效数据量、写入频度、磨损度等因素,该方法将现有技术的复杂的数值问题转化为简单的离散聚类问题,有效减少运算量,并采用集合求交思想,逐步缩小可选回收块范围,节省系统空间开销。
附图说明
附图1为垃圾回收静态和动态策略示意图。
附图2为垃圾回收块均衡优化流程。
附图3为初始筛选集交集求解示意图。
具体实施方式
一种NAND FLASH垃圾回收均衡优化方法,综合考虑NAND FLASH物理块垃圾回收过程相关因素,并分别根据这些相关因素对NAND FLASH物理块采用聚类的方法进行分类,在聚类结果中选取相关目标集合作为初始筛选集,求解上述初始筛选集的交集,得到最优回收块集合。
本实施例以MICRON公司MT29F64G08AJABA型NAND FLASH的垃圾回收过程进行说明,该芯片包含16384物理块,每块包含128页。选择垃圾回收过程相关因素为有效数据量、写入频度和磨损度,采用平均聚类分析方法对物理块进行分类,回收块选择优化方法具体如下:
1)以物理块有效数据量的平均值为阈值进行分类,将数据块分类为少量有效数据块集合A1和大量有效数据量块集合A2;
2)以写入次数平均值为阈值进行分类,将数据块分类为高频写入块集合B1和低频写入块集合B2;
3)以擦除次数平均值为阈值进行分类,将数据块分类为低磨损块集合C1和高磨损块集合C2;
4)求集合a=A1∩B1∩C1;
5)求集合b=A1∩B1-a;
6)求集合c=A1∩C1-a;
7)求集合d=B1∩C1-a;
8)求集合e=A1-a-b-c;
9)求集合f=A1-a-b-d;
10)求集合g=A1-a-c-d;
g即为最优回收块集合,以上步骤中“∩”代表集合交集运算符,“-”代表集合差集运算符。

Claims (1)

1.一种NAND FLASH垃圾回收均衡优化方法,其特征在于:综合考虑NAND FLASH物理块垃圾回收过程相关因素,并分别根据这些相关因素对NAND FLASH物理块采用聚类的方法进行分类,在聚类结果中选取相关目标集合作为初始筛选集,求解上述初始筛选集的交集,得到最优回收块集合;所述垃圾回收过程综合考虑回收块有效数据量X、写入频度Y和磨损度Z三个垃圾回收过程相关因素;垃圾回收过程包括以下步骤;
a)建立多维模型F=f(X,Y,Z),其中X为有效数据量,Y为写入频度,Z为磨损度,f为关于X的正相关函数,即有效数据量越少引发的编程操作越少,f为Y的负相关函数,即选择写入频度越高的块引发的编程次数越少,f为Z的正相关函数,即选择磨损度低的块引发的磨损均衡度越高;
b)优化目标为max(F),即最大化回收效率与最大化磨损均衡度;
c)采用聚类的方法分别根据有效数据量X、写入频度Y和磨损度Z对NAND FLASH物理块进行3个维度的聚类,根据有效数据量X将数据块分类为有效数据量少的块A1和有效数据量多的块A2,根据写入频度Y将数据块分类为高频写入块B1和低频写入块B2,根据磨损度Z将数据块分类为低磨损块C1和高磨损块C2,选取A1、B1和C1作为初始筛选集;
d)求解A1、B1和C1三个初始筛选集的交集,得到最优回收块集合;求解A1、B1和C1三个初始筛选集的交集按如下步骤进行:
1)a=A1∩B1∩C1;
2)b=A1∩B1-a;
3)c=A1∩C1-a;
4)d=B1∩C1-a;
5)e=A1-a-b-c;
6)f=A1-a-b-d;
7)g=A1-a-c-d;
最终g即为最优回收块集合,以上步骤中“∩”代表集合交集运算符,“-”代表集合差集运算符。
CN201911134392.XA 2019-11-19 2019-11-19 一种nand flash垃圾回收均衡优化方法 Active CN111090595B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911134392.XA CN111090595B (zh) 2019-11-19 2019-11-19 一种nand flash垃圾回收均衡优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911134392.XA CN111090595B (zh) 2019-11-19 2019-11-19 一种nand flash垃圾回收均衡优化方法

Publications (2)

Publication Number Publication Date
CN111090595A CN111090595A (zh) 2020-05-01
CN111090595B true CN111090595B (zh) 2022-12-20

Family

ID=70393292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911134392.XA Active CN111090595B (zh) 2019-11-19 2019-11-19 一种nand flash垃圾回收均衡优化方法

Country Status (1)

Country Link
CN (1) CN111090595B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306414A (zh) * 2020-10-30 2021-02-02 北京泽石科技有限公司 数据处理方法及装置
CN112416814A (zh) * 2020-11-25 2021-02-26 合肥大唐存储科技有限公司 固态硬盘中垃圾回收的管理方法、存储介质和电子装置
CN113569116A (zh) * 2021-07-31 2021-10-29 中国电子科技集团公司第十五研究所 基于属性相关性的网络告警信息聚类方法
WO2023082252A1 (zh) * 2021-11-15 2023-05-19 华为技术有限公司 一种垃圾回收方法、存储器和存储器管理装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007019198A2 (en) * 2005-08-03 2007-02-15 Sandisk Corporation Non-volatile memory with scheduled reclaim operations
CN101339808A (zh) * 2008-07-28 2009-01-07 华中科技大学 存储块的擦除方法及装置
CN103218306A (zh) * 2013-03-29 2013-07-24 四川长虹电器股份有限公司 一种实现基于ubi的动态磨损均衡的方法
CN106339324A (zh) * 2016-08-19 2017-01-18 浪潮(北京)电子信息产业有限公司 一种选择垃圾回收块的方法及装置
CN106528000A (zh) * 2016-12-02 2017-03-22 郑州云海信息技术有限公司 一种数据存储装置及其读写性能优化方法、系统
CN106951187A (zh) * 2017-03-07 2017-07-14 记忆科技(深圳)有限公司 一种固态存储静态磨损均衡的实现方法
CN107301132A (zh) * 2017-06-09 2017-10-27 华中科技大学 一种闪存垃圾回收优化方法
CN108628758A (zh) * 2018-03-14 2018-10-09 深圳忆联信息系统有限公司 一种选择垃圾回收目标块的方法及固态硬盘
CN109710541A (zh) * 2018-12-06 2019-05-03 天津津航计算技术研究所 针对NAND Flash主控芯片Greedy垃圾回收的优化方法
CN109739776A (zh) * 2018-12-06 2019-05-10 天津津航计算技术研究所 用于NAND Flash主控芯片的Greedy垃圾回收系统
CN110347612A (zh) * 2019-06-04 2019-10-18 华南理工大学 一种适用于固态盘的动态调整垃圾回收方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402242B2 (en) * 2009-07-29 2013-03-19 International Business Machines Corporation Write-erase endurance lifetime of memory storage devices
US9405670B2 (en) * 2011-06-09 2016-08-02 Tsinghua University Wear leveling method and apparatus
US10338817B2 (en) * 2014-12-30 2019-07-02 Sandisk Technologies Llc Systems and methods for storage recovery
US20170017405A1 (en) * 2015-07-14 2017-01-19 HGST Netherlands B.V. Systems and methods for improving flash-oriented file system garbage collection
US11416162B2 (en) * 2017-09-27 2022-08-16 Beijing Memblaze Technology Co., Ltd Garbage collection method and storage device
TWI644207B (zh) * 2017-12-29 2018-12-11 國科美國研究實驗室 Method for garbage collection of data storage device
CN108681435B (zh) * 2018-05-25 2021-06-29 郑州云海信息技术有限公司 一种固态硬盘的磨损均衡方法、装置、设备及存储介质
CN109254927A (zh) * 2018-08-30 2019-01-22 浪潮电子信息产业股份有限公司 一种固态硬盘磨损均衡的实现方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007019198A2 (en) * 2005-08-03 2007-02-15 Sandisk Corporation Non-volatile memory with scheduled reclaim operations
CN101339808A (zh) * 2008-07-28 2009-01-07 华中科技大学 存储块的擦除方法及装置
CN103218306A (zh) * 2013-03-29 2013-07-24 四川长虹电器股份有限公司 一种实现基于ubi的动态磨损均衡的方法
CN106339324A (zh) * 2016-08-19 2017-01-18 浪潮(北京)电子信息产业有限公司 一种选择垃圾回收块的方法及装置
CN106528000A (zh) * 2016-12-02 2017-03-22 郑州云海信息技术有限公司 一种数据存储装置及其读写性能优化方法、系统
CN106951187A (zh) * 2017-03-07 2017-07-14 记忆科技(深圳)有限公司 一种固态存储静态磨损均衡的实现方法
CN107301132A (zh) * 2017-06-09 2017-10-27 华中科技大学 一种闪存垃圾回收优化方法
CN108628758A (zh) * 2018-03-14 2018-10-09 深圳忆联信息系统有限公司 一种选择垃圾回收目标块的方法及固态硬盘
CN109710541A (zh) * 2018-12-06 2019-05-03 天津津航计算技术研究所 针对NAND Flash主控芯片Greedy垃圾回收的优化方法
CN109739776A (zh) * 2018-12-06 2019-05-10 天津津航计算技术研究所 用于NAND Flash主控芯片的Greedy垃圾回收系统
CN110347612A (zh) * 2019-06-04 2019-10-18 华南理工大学 一种适用于固态盘的动态调整垃圾回收方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
DT-GC: Adaptive Garbage Collection with Dynamic Thresholds for SSDs;Yi Qin 等;《2014 International Conference on Cloud Computing and Big Data》;20150319;第182-187页 *
NAND flash aware data management system for high-speed SSDs by garbage collection overhead suppression;Ayumi Soga 等;《2014 IEEE 6th International Memory Workshop (IMW)》;20140708;第1-4页 *
全程优化的固态硬盘垃圾回收方法;方才华 等;《计算机应用》;20170510;第37卷(第5期);第1257-1262页 *
基于多阈值的闪存磨损均衡算法;拓晶等;《微电子学与计算机》;20180105(第01期);全文 *
基于逻辑区间冷热分离的NAND闪存垃圾回收算法;覃仁谅等;《微电子学与计算机》;20190505(第05期);全文 *
磨损均衡算法在NAND Flash管理中的改进;潘沁等;《微计算机信息》;20070330(第07期);全文 *

Also Published As

Publication number Publication date
CN111090595A (zh) 2020-05-01

Similar Documents

Publication Publication Date Title
CN111090595B (zh) 一种nand flash垃圾回收均衡优化方法
CN109783020B (zh) 一种基于ssd-smr混合键值存储系统的垃圾回收方法
TWI409819B (zh) 平均地使用一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器
CN106874213A (zh) 一种融合多种机器学习算法的固态硬盘热数据识别方法
US9430376B2 (en) Priority-based garbage collection for data storage systems
CN102508788B (zh) Ssd及ssd垃圾回收方法和装置
US20140122774A1 (en) Method for Managing Data of Solid State Storage with Data Attributes
CN102799535A (zh) 固态硬盘的数据处理方法及固态硬盘
CN108108128A (zh) 一种混合ssd的磨损均衡方法及ssd
CN110688326A (zh) 一种基于多阈值的闪存磨损均衡算法
CN106227471A (zh) 固态硬盘和应用于固态硬盘的数据存取方法
CN110531927A (zh) 一种基于块分级的垃圾回收方法及非易失性的存储设备
CN109582593A (zh) 一种基于计算的ftl地址映射方法及数据读、写方法
CN107797772A (zh) 一种基于闪存介质的垃圾回收系统及方法
CN110347612A (zh) 一种适用于固态盘的动态调整垃圾回收方法
CN107092563A (zh) 一种垃圾回收方法及装置
CN106569962A (zh) 一种基于增强时间局部性的热点数据识别方法
CN112347001B (zh) 闪存垃圾回收的校验方法、装置及电子设备
CN109558075B (zh) 一种利用数据冷热属性存储数据的方法及装置
CN109918448A (zh) 一种基于用户行为的云存储数据分级方法
CN112445429B (zh) 固态硬盘物理块的管理方法及系统
CN112035061A (zh) 固态硬盘资源分配方法、装置和存储介质
CN111026673B (zh) 一种nand flash垃圾回收动态优化方法
CN115114180A (zh) 在快闪存储器中进行耗损平衡操作的方法和相关控制器以及储存系统
CN105988950B (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