CN110347335B - 一种固态硬盘数据存储方法、装置 - Google Patents

一种固态硬盘数据存储方法、装置 Download PDF

Info

Publication number
CN110347335B
CN110347335B CN201910461799.7A CN201910461799A CN110347335B CN 110347335 B CN110347335 B CN 110347335B CN 201910461799 A CN201910461799 A CN 201910461799A CN 110347335 B CN110347335 B CN 110347335B
Authority
CN
China
Prior art keywords
data
error rate
block
storage time
information area
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
CN201910461799.7A
Other languages
English (en)
Other versions
CN110347335A (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.)
Zhejiang Kangying Semiconductor Technology Co ltd
Original Assignee
Henan Wenzheng Electronic Data Processing Co ltd
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 Henan Wenzheng Electronic Data Processing Co ltd filed Critical Henan Wenzheng Electronic Data Processing Co ltd
Priority to CN201910461799.7A priority Critical patent/CN110347335B/zh
Publication of CN110347335A publication Critical patent/CN110347335A/zh
Application granted granted Critical
Publication of CN110347335B publication Critical patent/CN110347335B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明提供了一种固态硬盘数据存储方法,包括:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系;建立第一信息区域和第二信息区域,第一信息区域记录空闲块的擦写次数,以及计算出的经过预设保存时间后的误码率,第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过预设保存时间后的误码率;从第一信息区域确定出经过预设保存时间后的误码率最高的特定空闲块,从第二信息区域确定出经过预设保存时间后的误码率最高的特定数据块;当确定所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块。本发明能够均衡固态硬盘各个块的擦写次数。

Description

一种固态硬盘数据存储方法、装置
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种固态硬盘数据存储方法、装置。
背景技术
固态硬盘因其高速读写性能、低故障率,正在逐步取代机械硬盘,成为主流存储设备。固态硬盘主要通过错误检查和纠正(Error Correcting Code, ECC)模块纠正存储数据的错误,随着固态硬盘使用时间的增长,存储数据的错误率逐渐升高,当出现错误的比特位数超过ECC纠错能力时,将出现不可纠正错误,则固态硬盘不能再继续使用。
为了避免少数块被频繁的擦写,快速提升误码率,影响到固态硬盘整体寿命,闪存转换层(Flash Translation Layer, FTL)技术被提出,FTL能够均衡各个块的擦写次数,延长数据的有效保存时间。然而,对于固态硬盘较少擦写的冷块数据,目前的FTL算法并不能很好的处理,如果FTL算法完全不回收冷块,那么相比于被频繁擦写的热块,热块与冷块之间的磨损程度不均衡,会降低固态硬盘使用寿命;如果FTL算法将热块与冷块视为同等的块进行回收,又会频繁产生冷热块之间的数据搬运,降低了固态硬盘I/O性能的同时,也会额外增添硬盘的损耗。
发明内容
为此,本发明提供一种固态硬盘数据存储方法、装置,以力图解决或者至少缓解上面存在的至少一个问题。
根据本发明实施例的一个方面,提供了一种固态硬盘数据存储方法,方法包括:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系;建立第一信息区域和第二信息区域,所述第一信息区域记录空闲块的擦写次数,以及计算出的经过预设保存时间后的误码率,所述第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过预设保存时间后的误码率;从所述第一信息区域确定出经过预设保存时间后的误码率最高的特定空闲块,从所述第二信息区域确定出经过预设保存时间后的误码率最高的特定数据块;当确定所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块。
较佳地,根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系,包括:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的函数关系;将所述函数关系简化为指定擦写次数下,保存时间与误码率之间的分段线性关系。
较佳地,根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系,包括:通过测试方式,统计指定擦写次数下,采用同一型号闪存单元的固态硬盘的块的指定保存时间与误码率之间的关系。
较佳地,将所述特定数据块的数据迁移至所述特定空闲块,包括:在固态硬盘未进行操作系统指示的数据读、写操作期间,将所述特定数据块的数据读取至动态随机存取存储器DRAM,以及将所述DRAM的数据写入所述特定空闲块;当确定所述DRAM的数据已写入所述特定空闲块时,擦除所述特定数据块的数据;更新所述第一信息区域和第二信息区域的记录。
较佳地,还包括:当接收到操作系统指示的数据读、写指令时,执行所述操作系统指示的数据读、写指令,读、写的数据可覆盖所述DRAM中的所述特定数据块的数据。
较佳地,所述固态硬盘的块的误码率增加速度随着保存时间增长而下降。
根据本发明实施例的另一个方面,提供了一种固态硬盘控制器装置,包括:关系确定单元,用于根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系;信息维护单元,用于建立第一信息区域和第二信息区域,所述第一信息区域记录空闲块的擦写次数,以及计算出的经过预设保存时间后的误码率,所述第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过预设保存时间后的误码率;块选取单元,用于从所述第一信息区域确定出经过预设保存时间后的误码率最高的特定空闲块,从所述第二信息区域确定出经过预设保存时间后的误码率最高的特定数据块;迁移单元,用于当确定所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块。
较佳地,所述关系确定单元具体用于:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的函数关系;将所述函数关系简化为指定擦写次数下,保存时间与误码率之间的分段线性关系。
较佳地,所述关系确定单元具体用于:通过测试方式,统计指定擦写次数下,采用同一型号闪存单元的固态硬盘的块的指定保存时间与误码率之间的关系。
较佳地,所述迁移单元具体用于:在固态硬盘未进行操作系统指示的数据读、写操作期间,将所述特定数据块的数据读取至动态随机存取存储器DRAM,以及将所述DRAM的数据写入所述特定空闲块;当确定所述DRAM的数据已写入所述特定空闲块时,擦除所述特定数据块的数据;更新所述第一信息区域和第二信息区域的记录。
较佳地,还包括:读写管理单元,用于当接收到操作系统指示的数据读、写指令时,执行所述操作系统指示的数据读、写指令,读、写的数据可覆盖所述DRAM中的所述特定数据块的数据。
本发明通过预估块的误码率,选取经过预设保存时间后误码率相等的空闲块和数据块,将数据块的数据迁移至空闲块,既避免完全不回收数据块,导致热块与冷块之间的磨损程度不均衡,降低固态硬盘使用寿命,也避免将所有数据块视为同等的块进行回收,频繁产生冷热块之间的数据搬运,降低了固态硬盘I/O性能的同时,额外增添硬盘的损耗,因此,是实现了折衷的冷块处理策略。一方面,提升了较少擦写的冷块的利用效率,改善冷块与热块擦写次数失衡的情况,另一方面,以误码率作为数据迁移指征,始终将误码率维持在存储系统的最低水平;又一方面,实现在预设保存时间内,迁移后的数据误码率是低于迁移前的数据误码率的,并且这个时间是能够计算出来并且可调控的,从而可控地保持着硬盘整体的存储安全性能。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1示出了根据本发明的一种固态硬盘数据存储方法的流程示意图;图2、图3示出了根据本发明的一种固态硬盘的块的误码率与保存时间关系的示意图;图4示出了根据本发明具体实施例的示意图;图5示出了根据本发明的一种固态硬盘控制器装置的结构示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
如图1所示,根据本发明的实施例的一种固态硬盘数据存储方法,包括:S110、根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系;S120、建立第一信息区域和第二信息区域,所述第一信息区域记录空闲块的擦写次数,以及计算出的经过预设保存时间后的误码率,所述第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过预设保存时间后的误码率;S130、从所述第一信息区域确定出经过预设保存时间后的误码率最高的特定空闲块,从所述第二信息区域确定出经过预设保存时间后的误码率最高的特定数据块;S140、当确定所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块。
首先,执行步骤S110,根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系。尽管硬盘的误码率受到多种因素影响,例如读干扰、编程干扰、擦除错误、保持错误等,但对于长期存储的冷数据而言,决定其误码率的主要是两个因素:一、擦写次数,反复的擦写会不断降低闪存的隧穿氧化物的绝缘性能,进而降低闪存的电荷保持能力;二、保存时间,同一数据随着保存时间的不断增加,不断有电荷发生隧穿效应,电荷的变化累积起来,造成误码率的逐渐升高。仅仅考虑以上两个因素与误码率的关系,能够简化误码率的计算模型,降低固态硬盘控制器的计算开销。
通常来说,固态硬盘的闪存生厂厂家拥有闪存的误码率相关参数,根据闪存的误码率相关参数,可计算出硬盘的块的擦写次数、保存时间与误码率之间的关系。又或者,可直接同一型号的固态硬盘进行测试,来获取硬盘的块的擦写次数、保存时间与误码率之间的关系。
本发明提供两种测试方案,方案一、根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的函数关系;将所述函数关系简化为指定擦写次数下,保存时间与误码率之间的分段线性关系。方案二、通过测试方式,统计指定擦写次数下,采用同一型号闪存单元的固态硬盘的块的指定保存时间与误码率之间的关系。
方案一中先通过大量测试,确定硬盘的块的擦写次数、保存时间与误码率的实验数据,再通过数据拟合,确定三者之间的函数关系,以上函数关系,计算起来比较复杂,需要进行简化。具体地,将函数关系简化为指定擦写次数下,保存时间与误码率之间的分段线性关系。如图2所示,指定擦写次数下,保存时间与误码率之间的函数关系为一段曲线,如图3所示,指定擦写次数下,保存时间与误码率之间的关系为分段线性关系。显然,从图2和图3可以看出,保存时间与误码率之间的函数关系在转化为分段线性关系时,对数据计算准确度造成的影响有限,但能够大幅减小计算开销,即根据测试结果发现,分段线性处理的结果准确率是可以满足实际使用要求的。本发明可以处理为2段线性关系、3段线性关系、4段线性关系......分段越多,准确率越高。
方案二采用了更为简单的测试方法,即统计指定擦写次数下,采用同一型号闪存单元的固态硬盘的块的指定保存时间与误码率之间的关系。例如,统计100次、200次、300次......擦写次数下100小时、200小时、300小时......保存时间下的误码率,多次测试取平均值或者中间值,形成一张查找表。在实际应用过程中,根据块的擦写次数、保存时间,在表中查找接近的参数,即可得到对应的误码率。
在步骤S120中,建立第一信息区域和第二信息区域,所述第一信息区域记录空闲块的擦写次数,以及计算出的经过预设保存时间后的误码率,所述第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过预设保存时间后的误码率。第一信息区域和第二信息区域的数据结构可以是列表、链表、或者树结构,第一信息区域和第二信息区域位于固态硬盘特定的存储区域,该存储区域为专用存储区域。
随后,在步骤S130中,从所述第一信息区域确定出经过预设保存时间后的误码率最高的特定空闲块,从所述第二信息区域确定出经过预设保存时间后的误码率最高的特定数据块。
随后,在步骤S140中,当确定所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块。
步骤S140中,比较的是空闲块和数据块经过预设保存时间后的误码率。如图2和图3所示,对于同一擦写次数的数据块,误码率是随着时间从初始值逐渐升高的。尽管擦写次数多的块的误码率上升速度要快于擦写次数少的块,但是通过计算可以实现在人为设定的时间段内,迁移后的数据误码率是低于迁移前的数据误码率的。比如,经过计算,在三个月内,迁移后的数据误码率是低于迁移前的数据误码率的,那么,在三个月时间内,只需要进行一次数据迁移,而且在这期间,数据安全性得到了提升。
需要注意的是,在测试过程中,发现固态硬盘的块随着保存时间增长误码率增加的速度是下降的,该特征是本发明方案实现的前提,使得预设保存时间后,擦写次数较多的空闲块的误码率和擦写次数较少的数据块的误码率相等成为可能。
此外,如果数据块擦写不频繁,冷块和热块之间的擦写次数并未形成较大差距,那么理论上数据没有必要进行迁移,实际上此时也不会满足所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等的条件,进而不会触发数据迁移过程。如果数据块擦写频繁,保存性能恶化较快,那么,保存性能恶化较快的块将首先满足所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等的条件,进而触发数据迁移过程。
图4对数据迁移过程进行了进一步的说明。在当前时刻,经过计算,500小时后,1000次擦写的数据块与2000次擦写的空闲块误码率相等,此时进行数据迁移,可以保证500小时内硬盘安全性能得到提升,至少500小时后才有继续触发下一次数据迁移的可能。整个硬盘安全性能的可靠性处于受控状态,并且始终保持在最低水平的误码率。
在背景技术中提到,频繁数据迁移会降低硬盘的I/O性能,本发明提供的方案能够将数据迁移的次数降低到很低的水平,从而避免影响到硬盘的I/O性能。为了进一步地降低对硬盘I/O性能的影响,在一种实施例中,步骤S140的将所述特定数据块的数据迁移至所述特定空闲块,包括:在固态硬盘未进行操作系统指示的数据读、写操作期间,将所述特定数据块的数据读取至动态随机存取存储器DRAM,以及将所述DRAM的数据写入所述特定空闲块;当确定所述DRAM的数据已写入所述特定空闲块时,擦除所述特定数据块的数据;更新所述第一信息区域和第二信息区域的记录。即固态硬盘仅在空闲时段进行数据迁移操作。
进一步地,还包括:当接收到操作系统指示的数据读、写指令时,执行所述操作系统指示的数据读、写指令,读、写的数据可覆盖所述DRAM中的所述特定数据块的数据。由于之前已经提到,当确定所述DRAM的数据已写入所述特定空闲块时,擦除所述特定数据块的数据,所以操作系统的读、写数据覆盖掉DRAM中的特定数据块的数据,并不会导致特定数据块的数据丢失。该方法能够节省出相应的DRAM空间,进一步降低对固态硬盘I/O性能的影响。
也就是说,相比于现有技术中频繁将冷块迁移至热块的技术方案,本发明提供的数据存储方法不仅通过较少的数据迁移次数降低了数据迁移对I/O性能的影响,还利用空闲时间段迁移数据和操作系统读、写数据可覆盖DRAM的两种方式进一步降低对I/O性能的影响,用户在使用过程中,基本不会感知到数据迁移过程中会带来固态硬盘I/O下降等不良体验。
如图5所示,本发明还提供了一种固态硬盘控制器装置,包括:关系确定单元210,用于根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系;信息维护单元220,用于建立第一信息区域和第二信息区域,所述第一信息区域记录空闲块的擦写次数,以及计算出的经过预设保存时间后的误码率,所述第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过预设保存时间后的误码率;块选取单元230,用于从所述第一信息区域确定出经过预设保存时间后的误码率最高的特定空闲块,从所述第二信息区域确定出经过预设保存时间后的误码率最高的特定数据块;迁移单元240,用于当确定所述特定空闲块的误码率和所述特定数据块的经过预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块。
可选地,所述关系确定单元210具体用于:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的函数关系;将所述函数关系简化为指定擦写次数下,保存时间与误码率之间的分段线性关系。
可选地,所述关系确定单元210具体用于:通过测试方式,统计指定擦写次数下,采用同一型号闪存单元的固态硬盘的块的指定保存时间与误码率之间的关系。
可选地,所述迁移单元240具体用于:在固态硬盘未进行操作系统指示的数据读、写操作期间,将所述特定数据块的数据读取至动态随机存取存储器DRAM,以及将所述DRAM的数据写入所述特定空闲块;当确定所述DRAM的数据已写入所述特定空闲块时,擦除所述特定数据块的数据;更新所述第一信息区域和第二信息区域的记录。
可选地,还包括:读写管理单元,用于当接收到操作系统指示的数据读、写指令时,执行所述操作系统指示的数据读、写指令,读、写的数据可覆盖所述DRAM中的所述特定数据块的数据。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种固态硬盘数据存储方法,其特征在于,包括:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系;建立第一信息区域和第二信息区域,所述第一信息区域记录空闲块的擦写次数,以及计算出的经过第一预设保存时间后的误码率,所述第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过第二预设保存时间后的误码率;从所述第一信息区域确定出经过所述第一预设保存时间后的误码率最高的特定空闲块,从所述第二信息区域确定出经过所述第二预设保存时间后的误码率最高的特定数据块,当确定所述特定空闲块的误码率和所述特定数据块的经过所述第二预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块;所述固态硬盘的块的误码率的增加速度随着保存时间增长而下降。
2.如权利要求1所述的方法,其特征在于,根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系,包括:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的函数关系;将所述函数关系简化为指定擦写次数下,保存时间与误码率之间的分段线性关系。
3.如权利要求1所述的方法,其特征在于,根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系,包括:通过测试方式,统计指定擦写次数下,采用同一型号闪存单元的固态硬盘的块的指定保存时间与误码率之间的关系。
4.如权利要求1所述的方法,其特征在于,将所述特定数据块的数据迁移至所述特定空闲块,包括:在固态硬盘未进行操作系统指示的数据读、写操作期间,将所述特定数据块的数据读取至动态随机存取存储器DRAM,以及将所述DRAM的数据写入所述特定空闲块;当确定所述DRAM的数据已写入所述特定空闲块时,擦除所述特定数据块的数据;更新所述第一信息区域和第二信息区域的记录。
5.如权利要求4所述的方法,其特征在于,还包括:当接收到操作系统指示的数据读、写指令时,执行所述操作系统指示的数据读、写指令,读、写的数据可覆盖所述DRAM中的所述特定数据块的数据。
6.一种固态硬盘控制器装置,其特征在于,包括:关系确定单元,用于根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的关系;信息维护单元,用于建立第一信息区域和第二信息区域,所述第一信息区域记录空闲块的擦写次数,以及计算出的经过第一预设保存时间后的误码率,所述第二信息区域记录数据块的擦写次数和已保存时间,以及计算出的经过第二预设保存时间后的误码率;块选取单元,用于从所述第一信息区域确定出经过所述第一预设保存时间后的误码率最高的特定空闲块,从所述第二信息区域确定出经过所述第二预设保存时间后的误码率最高的特定数据块;迁移单元,用于当确定所述特定空闲块的误码率和所述特定数据块的经过所述第二预设保存时间后的误码率相等时,将所述特定数据块的数据迁移至所述特定空闲块;所述固态硬盘的块的误码率的增加速度随着保存时间增长而下降。
7.如权利要求6所述的装置,其特征在于,所述关系确定单元具体用于:根据预先测试结果,确定硬盘的块的擦写次数、保存时间与误码率之间的函数关系;将所述函数关系简化为指定擦写次数下,保存时间与误码率之间的分段线性关系。
8.如权利要求6所述的装置,其特征在于,所述关系确定单元具体用于:通过测试方式,统计指定擦写次数下,采用同一型号闪存单元的固态硬盘的块的指定保存时间与误码率之间的关系。
9.如权利要求6所述的装置,其特征在于,所述迁移单元具体用于:在固态硬盘未进行操作系统指示的数据读、写操作期间,将所述特定数据块的数据读取至动态随机存取存储器DRAM,以及将所述DRAM的数据写入所述特定空闲块;当确定所述DRAM的数据已写入所述特定空闲块时,擦除所述特定数据块的数据;更新所述第一信息区域和第二信息区域的记录。
10.如权利要求9所述的装置,其特征在于,还包括:读写管理单元,用于当接收到操作系统指示的数据读、写指令时,执行所述操作系统指示的数据读、写指令,读、写的数据可覆盖所述DRAM中的所述特定数据块的数据。
CN201910461799.7A 2019-07-30 2019-07-30 一种固态硬盘数据存储方法、装置 Active CN110347335B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910461799.7A CN110347335B (zh) 2019-07-30 2019-07-30 一种固态硬盘数据存储方法、装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910461799.7A CN110347335B (zh) 2019-07-30 2019-07-30 一种固态硬盘数据存储方法、装置

Publications (2)

Publication Number Publication Date
CN110347335A CN110347335A (zh) 2019-10-18
CN110347335B true CN110347335B (zh) 2022-12-13

Family

ID=68174420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910461799.7A Active CN110347335B (zh) 2019-07-30 2019-07-30 一种固态硬盘数据存储方法、装置

Country Status (1)

Country Link
CN (1) CN110347335B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111552650B (zh) * 2020-04-13 2021-03-02 深圳市时创意电子有限公司 一种数据保存方法、装置、存储介质和数据存储设备
CN111736765B (zh) * 2020-05-28 2023-01-06 苏州浪潮智能科技有限公司 一种数据块状态的监管方法、设备以及介质
CN111859643B (zh) * 2020-07-08 2023-12-19 上海威固信息技术股份有限公司 一种三维闪存编程时延模型的建立方法及基于该模型的预测方法
CN112162935B (zh) * 2020-09-30 2021-06-08 深圳市时创意电子有限公司 存储芯片的数据处理方法、装置、计算机设备及存储介质
CN116917873A (zh) * 2021-05-31 2023-10-20 华为技术有限公司 数据存取方法、存储控制器和存储设备
CN114327279A (zh) * 2021-12-29 2022-04-12 湖南国科微电子股份有限公司 一种迁移数据的方法及装置
CN116469442B (zh) * 2022-03-23 2024-05-03 武汉置富半导体技术有限公司 芯片数据保持时间的预测方法、装置及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218306A (zh) * 2013-03-29 2013-07-24 四川长虹电器股份有限公司 一种实现基于ubi的动态磨损均衡的方法
CN105593943A (zh) * 2013-08-07 2016-05-18 智能存储系统股份有限公司 具有动态擦除块组合机制的数据贮存系统及其操作方法
CN106547491A (zh) * 2016-11-22 2017-03-29 郑州云海信息技术有限公司 一种固态硬盘中数据搬移的方法及系统
CN106598484A (zh) * 2016-11-17 2017-04-26 华为技术有限公司 数据的存储方法、闪存芯片以及存储装置
CN108122589A (zh) * 2017-12-19 2018-06-05 深圳忆联信息系统有限公司 一种消除Nand误码率不一致的方法及固态硬盘
CN108369818A (zh) * 2016-03-09 2018-08-03 华为技术有限公司 一种闪存设备的刷新方法和装置
CN108628552A (zh) * 2018-05-10 2018-10-09 南京道熵信息技术有限公司 一种改善Flash磨损寿命的方法、控制装置及存储系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298534B2 (en) * 2013-09-05 2016-03-29 Kabushiki Kaisha Toshiba Memory system and constructing method of logical block

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218306A (zh) * 2013-03-29 2013-07-24 四川长虹电器股份有限公司 一种实现基于ubi的动态磨损均衡的方法
CN105593943A (zh) * 2013-08-07 2016-05-18 智能存储系统股份有限公司 具有动态擦除块组合机制的数据贮存系统及其操作方法
CN108369818A (zh) * 2016-03-09 2018-08-03 华为技术有限公司 一种闪存设备的刷新方法和装置
CN106598484A (zh) * 2016-11-17 2017-04-26 华为技术有限公司 数据的存储方法、闪存芯片以及存储装置
CN106547491A (zh) * 2016-11-22 2017-03-29 郑州云海信息技术有限公司 一种固态硬盘中数据搬移的方法及系统
CN108122589A (zh) * 2017-12-19 2018-06-05 深圳忆联信息系统有限公司 一种消除Nand误码率不一致的方法及固态硬盘
CN108628552A (zh) * 2018-05-10 2018-10-09 南京道熵信息技术有限公司 一种改善Flash磨损寿命的方法、控制装置及存储系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Retention Time Based Data Management Policy for Improving the Lifespan of SSDs;Yongju Song et al.;《IEEE Xplore》;20180528;全文 *
基于权重堆排序的NAND Flash静态磨损均衡机制;刘彦 等;《计算机工程与科学》;20190228;第41卷(第2期);全文 *
面向Flash存储器的FAT文件系统可靠性增强机制;王冬等;《航空计算技术》;20170525(第03期);全文 *

Also Published As

Publication number Publication date
CN110347335A (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
CN110347335B (zh) 一种固态硬盘数据存储方法、装置
US9489303B2 (en) Techniques for controlling recycling of blocks of memory
TWI420303B (zh) 基於寫入頻率將資料寫至記憶體不同部份之方法、非暫態電腦可讀媒體與裝置
KR101348665B1 (ko) 플래시 디스크 메모리의 기대 수명을 추정하고 리포팅하는방법
CN106909318B (zh) 固态硬盘使用方法及装置
US20100205354A1 (en) Storage device using flash memory
JP2019168937A (ja) メモリシステム、制御方法及びコントローラ
JP2009512119A (ja) 訂正済みデータの格納および処理方法
EP3489956A1 (en) Erase management in memory systems
US20090024787A1 (en) Data writing method and apparatus
CN107179880B (zh) 储存装置、其控制单元、及可用于储存装置的数据搬移方法
CN108255414B (zh) 固态硬盘访问方法及装置
US20190340121A1 (en) Accelerating garbage collection of flushed logical erase blocks in non-volatile memory
CN112732181B (zh) 一种ssd的数据迁移方法及相关装置
CN112347001B (zh) 闪存垃圾回收的校验方法、装置及电子设备
CN107193485B (zh) 储存装置、其控制单元、及可用于储存装置的数据储存方法
CN113392036A (zh) 固态存储器及其数据写入方法、装置
US20110087828A1 (en) Method for enhancing performance of accessing a flash memory, and associated memory device and controller thereof
US20220171562A1 (en) Garbage collection in a memory component using an adjusted parameter
CN113076062B (zh) 一种提升qlcssd寿命的方法和设备
CN112631518A (zh) 一种数据存储的方法和设备
CN117854564A (zh) 闪存存储方法、设备及计算机可读存储介质
CN116431077A (zh) 一种高可靠性ssd存储控制方法
CN117493221A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230419

Address after: 518000, 4th Floor, Kangjia R&D Building, No. 28 Keji South 12th Road, Gaoxin District, Yuehai Street, Nanshan District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Kangying Semiconductor Technology Co.,Ltd.

Address before: 453000 c1-082, Chuangye building, No. 1 Park, Chuangye Road, Xinxiang City, Henan Province

Patentee before: Henan Wenzheng Electronic Data Processing Co.,Ltd.

CP03 Change of name, title or address

Address after: Room 506, Building 17, No. 2723 Fuchunwan Avenue, Chunjiang Street, Fuyang District, Hangzhou City, Zhejiang Province, 311400

Patentee after: Zhejiang Kangying Semiconductor Technology Co.,Ltd.

Country or region after: China

Address before: 518000, 4th Floor, Kangjia R&D Building, No. 28 Keji South 12th Road, Gaoxin District, Yuehai Street, Nanshan District, Shenzhen, Guangdong Province

Patentee before: Shenzhen Kangying Semiconductor Technology Co.,Ltd.

Country or region before: China