CN111026673A - 一种nand flash垃圾回收动态优化方法 - Google Patents

一种nand flash垃圾回收动态优化方法 Download PDF

Info

Publication number
CN111026673A
CN111026673A CN201911133701.1A CN201911133701A CN111026673A CN 111026673 A CN111026673 A CN 111026673A CN 201911133701 A CN201911133701 A CN 201911133701A CN 111026673 A CN111026673 A CN 111026673A
Authority
CN
China
Prior art keywords
nand flash
priority
blocks
block
clustering
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
Application number
CN201911133701.1A
Other languages
English (en)
Other versions
CN111026673B (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 CN201911133701.1A priority Critical patent/CN111026673B/zh
Publication of CN111026673A publication Critical patent/CN111026673A/zh
Application granted granted Critical
Publication of CN111026673B publication Critical patent/CN111026673B/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)

Abstract

本发明提供一种NAND FLASH垃圾回收动态优化方法,综合考虑NAND FLASH物理块的有效数据量X、写入频度Y、磨损度Z等垃圾回收过程相关因素,根据实际使用需求定义这三种因素优先级顺序,按照第1优先级因素对NAND FLASH物理块进行聚类,对第1优先级聚类结果按照第2优先级因素进行聚类,对第2优先级聚类结果按照第3优先级因素进行聚类,最终得到最优回收块集合。本发明兼顾回收效率和磨损均衡,采用集合思想逐步缩小可选回收块范围,有效减少运算量,节省系统空间开销。

Description

一种NAND FLASH垃圾回收动态优化方法
技术领域
本发明属于大容量存储技术领域,涉及一种NAND FLASH垃圾回收动态优化方法。
背景技术
由于NAND FLASH具有不可覆盖写的特点,要更新某一页数据只能采用“异地更新”方式,即数据更新时需要将数据编程至空白页面(即擦除过的状态),源数据随之失效而成为垃圾数据。经过一段时间的编程后垃圾数据会越来越多,可供使用的空间越来越少,需要对垃圾数据占用的空间进行回收(即擦除),而NAND FLASH擦除以块为单位,垃圾数据所在块中一般仍存在有效数据,因而需要将有效数据先进行搬移,从而完成垃圾回收。
垃圾回收过程应尽量减少回收操作,减少数据搬移的代价,减少系统开销,其中回收垃圾块的选择是最重要环节。现有技术中使用的回收块选择方法可归纳为静态和动态两种策略。如图1所示,静态策略是指根据回收时刻包含有效数据的多少,优先回收有效数据少的块,减少搬移数据量。动态策略是指根据数据更新的频率,优先回收更新频率低的有效数据所在的块,减少数据搬移频率。在静态策略和动态策略中,需要记录存储块中有效数据的占用情况或记录数据更新的频次,并根据记录的相关信息进行比较计算从而得到最终决策。这个过程需要记录的数据量大,同时比对算法计算量大,空间和时间开销大。
专利“一种选择垃圾回收目标块的方法及固态硬盘”(201810209119.8)公开了一种选择垃圾回收目标块的方法及固态硬盘,其特征在于根据各个块block中无效页所占比例和擦写次数计算各个块的回收因数得分score,选择得分最少的block作为回收目标块。该方法中需记录每个块的无效页数量及擦写次数,占用较大的存储空间,同时需要计算最大擦写次数和最小擦写次数,系统开销大。
发明内容
本发明的目的是:
本发明是为了解决现有垃圾回收方法未兼顾回收效率和磨损均衡,且回收块选择算法复杂,系统开销大的问题。
本发明的技术方案是:
一种NAND FLASH垃圾回收动态优化方法,综合考虑NAND FLASH物理块垃圾回收过程相关因素,根据实际使用需求定义相关因素的优先级顺序,根据第1优先级因素对NANDFLASH物理块采用聚类的方法进行分类,对第1优先级聚类结果根据第2优先级因素采用聚类的方法进行分类,对第2优先级聚类结果根据第3优先级因素采用聚类的方法进行分类,以此类推,最终得到最优回收块集合。
垃圾回收优化目标为回收效率最大化(最少编程次数)及磨损均衡度最大化。
所述垃圾回收过程综合考虑回收块有效数据量X、写入频度Y和磨损度Z三个垃圾回收过程相关因素,并不限于这几种因素。
优化过程包括以下步骤:
a)对所有NAND FLASH物理块根据第1优先级因素采用聚类的方法进行分类,得到初次筛选块集合A;
b)对初次筛选块集合A根据第2优先级因素采用聚类的方法进行分类,得到二次筛选块集合B;
c)对二次筛选块集合B根据第3优先级因素采用聚类的方法进行分类,得到三次回收块集合C;
d)对三次回收块集合C根据第4优先级因素采用聚类的方法进行分类,以此类推,最终得到最优回收块集合。
所述聚类的方法是按如下步骤进行分类:
a)按照有效数据量X对NAND FLASH物理块进行聚类,将数据块分类为有效数据量少的块集合Xl和有效数据量多的块集合Xh,选择引发编程次数少的Xl做为回收块筛选集合;
b)按照有效数据量Y对NAND FLASH物理块进行聚类,将数据块分类为低频写入块Yl和高频写入块Yh,选择引发编程次数少的Yh做为回收块筛选集合;
c)按照有效数据量Z对NAND FLASH物理块进行聚类,将数据块分类为低磨损块Zl和高磨损块Zh,选择引发的磨损均衡度越高的Zl做为回收块筛选集合。
本发明具有的优点是:全面考虑NAND FLASH物理块的有效数据量、写入频度、磨损度等垃圾回收过程相关因素,兼顾回收效率和磨损均衡,采用集合思想将现有技术中复杂的数值计算问题转化为简单的离散聚类问题,逐步缩小可选回收块范围,有效减少运算量,节省系统空间开销。采用比较判断运算,使用数字电路实现简单、效率高。
附图说明
附图1为垃圾回收静态和动态策略示意图。
附图2为垃圾回收块动态优化流程。
附图3为筛选集合逐级求优示意图。
具体实施方式
一种NAND FLASH垃圾回收动态优化方法,综合考虑NAND FLASH物理块垃圾回收过程相关因素,根据实际使用需求定义相关因素的优先级顺序,根据第1优先级因素对NANDFLASH物理块采用聚类的方法进行分类,对第1优先级聚类结果根据第2优先级因素采用聚类的方法进行分类,对第2优先级聚类结果根据第3优先级因素采用聚类的方法进行分类,以此类推,最终得到最优回收块集合。
本实施例以MICRON公司MT29F64G08AJABA型NAND FLASH的垃圾回收过程进行说明,该芯片包含16384物理块,每块包含128页。选择垃圾回收过程相关因素为有效数据量、写入频度和磨损度,采用平均聚类分析方法对物理块进行分类,以优先级顺序为有效数据量X>写入频度Y>磨损度Z为例说明垃圾回收块选择优化过程,步骤如下:
a)对NAND FLASH所有物理块按照有效数据量X进行聚类,数据占用小的物理块归为集合Xl,数据占用大的物理块归为集合Xh,选择Xl做为初次筛选块集合A;
b)对初次筛选块集合A按照写入频度Y进行聚类,写入频度低的物理块归为Yl和写入频度高的物理块归为Yh,选择Yh做为二次筛选块集合B;
c)对二次筛选块集合B按照磨损度Z进行聚类,磨损频度低的物理块归为Zl和磨损频度高的的物理块归为Zh,选择Zl做为最终回收块集合C。

Claims (4)

1.一种NAND FLASH垃圾回收动态优化方法,其特征在于:综合考虑NAND FLASH物理块垃圾回收过程相关因素,根据实际使用需求定义相关因素的优先级顺序,根据第1优先级因素对NAND FLASH物理块采用聚类的方法进行分类,对第1优先级聚类结果根据第2优先级因素采用聚类的方法进行分类,对第2优先级聚类结果根据第3优先级因素采用聚类的方法进行分类,以此类推,最终得到最优回收块集合。
2.根据权利要求1的一种NAND FLASH垃圾回收动态优化方法,其特征在于:所述垃圾回收过程综合考虑回收块有效数据量X、写入频度Y和磨损度Z三个垃圾回收过程相关因素。
3.根据权利要求1的一种NAND FLASH垃圾回收动态优化方法,其特征在于优化方法包括以下步骤:
a)对所有NAND FLASH物理块根据第1优先级因素采用聚类的方法进行分类,得到初次筛选块集合A;
b)对初次筛选块集合A根据第2优先级因素采用聚类的方法进行分类,得到二次筛选块集合B;
c)对二次筛选块集合B根据第3优先级因素采用聚类的方法进行分类,得到三次回收块集合C;
d)对三次回收块集合C根据第4优先级因素采用聚类的方法进行分类,以此类推,最终得到最优回收块集合。
4.根据权利要求1的一种NAND FLASH垃圾回收动态优化方法,其特征在于所述聚类的方法是按如下步骤进行分类:
a)按照有效数据量X对NAND FLASH物理块进行聚类,将数据块分类为有效数据量少的块集合Xl和有效数据量多的块集合Xh,选择引发编程次数少的Xl做为回收块筛选集合;
b)按照有效数据量Y对NAND FLASH物理块进行聚类,将数据块分类为低频写入块Yl和高频写入块Yh,选择引发编程次数少的Yh做为回收块筛选集合;
c)按照有效数据量Z对NAND FLASH物理块进行聚类,将数据块分类为低磨损块Zl和高磨损块Zh,选择引发的磨损均衡度越高的Zl做为回收块筛选集合。
CN201911133701.1A 2019-11-19 2019-11-19 一种nand flash垃圾回收动态优化方法 Active CN111026673B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911133701.1A CN111026673B (zh) 2019-11-19 2019-11-19 一种nand flash垃圾回收动态优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911133701.1A CN111026673B (zh) 2019-11-19 2019-11-19 一种nand flash垃圾回收动态优化方法

Publications (2)

Publication Number Publication Date
CN111026673A true CN111026673A (zh) 2020-04-17
CN111026673B CN111026673B (zh) 2023-05-05

Family

ID=70200564

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911133701.1A Active CN111026673B (zh) 2019-11-19 2019-11-19 一种nand flash垃圾回收动态优化方法

Country Status (1)

Country Link
CN (1) CN111026673B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022088374A1 (zh) * 2020-10-30 2022-05-05 北京泽石科技有限公司 数据处理方法及装置
CN118069068A (zh) * 2024-04-16 2024-05-24 苏州元脑智能科技有限公司 固态硬盘的管理方法、装置、电子设备以及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241471A (zh) * 2006-11-03 2008-08-13 三星电子株式会社 快闪存储器系统及其垃圾收集方法
CN104714891A (zh) * 2013-12-11 2015-06-17 华为技术有限公司 一种闪存数据管理方法及装置
CN106484323A (zh) * 2016-09-13 2017-03-08 郑州云海信息技术有限公司 一种固态存储的损耗均衡方法及系统
CN106528000A (zh) * 2016-12-02 2017-03-22 郑州云海信息技术有限公司 一种数据存储装置及其读写性能优化方法、系统
CN106874213A (zh) * 2017-01-12 2017-06-20 杭州电子科技大学 一种融合多种机器学习算法的固态硬盘热数据识别方法
CN107220185A (zh) * 2017-05-23 2017-09-29 建荣半导体(深圳)有限公司 基于闪存的数据存储方法、装置以及闪存芯片
CN108628758A (zh) * 2018-03-14 2018-10-09 深圳忆联信息系统有限公司 一种选择垃圾回收目标块的方法及固态硬盘
CN108646977A (zh) * 2018-03-07 2018-10-12 深圳忆联信息系统有限公司 一种ssd冷热数据判断的方法及垃圾回收方法
CN109144885A (zh) * 2017-06-27 2019-01-04 北京忆恒创源科技有限公司 固态存储设备的垃圾回收方法与固态存储设备
WO2019062231A1 (zh) * 2017-09-27 2019-04-04 北京忆恒创源科技有限公司 垃圾回收方法及其存储设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241471A (zh) * 2006-11-03 2008-08-13 三星电子株式会社 快闪存储器系统及其垃圾收集方法
CN104714891A (zh) * 2013-12-11 2015-06-17 华为技术有限公司 一种闪存数据管理方法及装置
CN106484323A (zh) * 2016-09-13 2017-03-08 郑州云海信息技术有限公司 一种固态存储的损耗均衡方法及系统
CN106528000A (zh) * 2016-12-02 2017-03-22 郑州云海信息技术有限公司 一种数据存储装置及其读写性能优化方法、系统
CN106874213A (zh) * 2017-01-12 2017-06-20 杭州电子科技大学 一种融合多种机器学习算法的固态硬盘热数据识别方法
CN107220185A (zh) * 2017-05-23 2017-09-29 建荣半导体(深圳)有限公司 基于闪存的数据存储方法、装置以及闪存芯片
CN109144885A (zh) * 2017-06-27 2019-01-04 北京忆恒创源科技有限公司 固态存储设备的垃圾回收方法与固态存储设备
WO2019062231A1 (zh) * 2017-09-27 2019-04-04 北京忆恒创源科技有限公司 垃圾回收方法及其存储设备
CN108646977A (zh) * 2018-03-07 2018-10-12 深圳忆联信息系统有限公司 一种ssd冷热数据判断的方法及垃圾回收方法
CN108628758A (zh) * 2018-03-14 2018-10-09 深圳忆联信息系统有限公司 一种选择垃圾回收目标块的方法及固态硬盘

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
罗勇: "基于混合缓存机制的垃圾回收策略研究", 《中国优秀硕士学位论文全文数据库-信息科技辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022088374A1 (zh) * 2020-10-30 2022-05-05 北京泽石科技有限公司 数据处理方法及装置
CN118069068A (zh) * 2024-04-16 2024-05-24 苏州元脑智能科技有限公司 固态硬盘的管理方法、装置、电子设备以及存储介质

Also Published As

Publication number Publication date
CN111026673B (zh) 2023-05-05

Similar Documents

Publication Publication Date Title
CN111090595B (zh) 一种nand flash垃圾回收均衡优化方法
CN104298465B (zh) 固态储存装置中的区块分组方法
CN111026673B (zh) 一种nand flash垃圾回收动态优化方法
CN102799535A (zh) 固态硬盘的数据处理方法及固态硬盘
CN102243613B (zh) 管理固态存储器中垃圾收集的系统和方法
TWI409819B (zh) 平均地使用一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器
CN105074673A (zh) 用于数据存储系统的基于优先级的垃圾收集
CN107092566B (zh) 数据储存装置及其数据维护方法
CN104933169A (zh) 基于热点文件优先的文件系统碎片整理方法
CN102508788A (zh) Ssd及ssd垃圾回收方法和装置
CN107102954B (zh) 一种基于失效概率的固态存储分级管理方法及系统
CN1549133A (zh) 快闪存储器的平行双轨使用方法
CN110531927B (zh) 一种基于块分级的垃圾回收方法及非易失性的存储设备
CN105204783B (zh) 一种基于数据生存期的固态盘垃圾回收方法
CN109558075B (zh) 一种利用数据冷热属性存储数据的方法及装置
CN109710541A (zh) 针对NAND Flash主控芯片Greedy垃圾回收的优化方法
CN111090392A (zh) 一种基于特征码的冷热数据分离方法
CN107423229A (zh) 一种面向页级ftl的缓冲区改进方法
CN101794253B (zh) 内存储存装置及其控制方法、热门数据控管模块
CN102207909A (zh) 一种基于代价的闪存数据库缓冲区置换方法
CN110502451A (zh) 固态硬盘垃圾回收方法、装置、固态硬盘和存储介质
CN101894077B (zh) 一种数据存储方法及系统
CN102637145B (zh) 用来进行区块管理的方法、记忆装置及其控制器
CN109388520A (zh) 数据备份方法、数据恢复方法以及存储控制器
CN116151522A (zh) 一种基于dea的高速公路路面养护辅助决策方法及系统

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