[发明专利]一种高效的闪存数据刷新方法及基于闪存的固态硬盘有效
| 申请号: | 201911246455.0 | 申请日: | 2019-12-06 |
| 公开(公告)号: | CN111026675B | 公开(公告)日: | 2022-02-15 |
| 发明(设计)人: | 崔金华;刘伟光;刘俊伟;杨天若 | 申请(专利权)人: | 华中科技大学 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/0882;G06F11/10;G06F3/06 |
| 代理公司: | 华中科技大学专利中心 42201 | 代理人: | 李智 |
| 地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 高效 闪存 数据 刷新 方法 基于 固态 硬盘 | ||
本发明公开了一种高效的闪存数据刷新方法及基于闪存的固态硬盘,属于闪存刷新领域。本发明提出局部刷新机制,通过拷贝易受影响比特位及数据页内偏移信息到另一组合闪存块,在不擦除和拷贝原先闪存块数据情况下对闪存块进行刷新,减少闪存存储器的编程/擦除操作,延长闪存的使用寿命。采用在存储器电压感应阶段比较参考电压与闪存电压的大小关系,判断比特位是否在电压分布的主要重叠区,进而找出未来时间内可能出错的比特位,从而提升了闪存刷新的效率。维护主映射表和次级映射表,将获取刷新闪存块和组合闪存块的数据解码为完整正确的数据,所述次级映射表将物理数据页号映射到组合闪存块的组合数据页号,解决了闪存刷新后的数据读取问题。
技术领域
本发明属于闪存刷新技术领域,更具体地,涉及一种高效的闪存数据刷新方法及基于闪存的固态硬盘。
背景技术
数据保留错误已经成为闪存的主要故障之一,解决该问题的简单有效的方法就是刷新数据页以保留数据的完整性。闪存刷新即在数据保留错误超出错误检查与纠正(如低密度奇偶校验码)能力之前定期读取闪存数据,纠正可能的错误,并重新映射存储的数据。闪存刷新一般流程如下:(1)当刷新方法被触发时,选择一个需要刷新的闪存块。(2)顺序选择有效数据页读入固态硬盘控制器并通过错误检查与纠正来纠正数据页内的出错的比特位。(3)为含有出错比特位的数据页分配空闲的数据页,并写入纠正后的数据页,将原始出错的数据页变为无效。(4)顺序刷新有效数据页,重复步骤(2)和步骤(3),直至闪存块内所有需要刷新的数据页刷新完毕。(5)顺序刷新有效闪存块,重复步骤(1)~(4),直至所有需要刷新的数据页刷新完毕。
虽然刷新方法能够保证保留数据的完整性,但是它面临两方面的缺点:(1)闪存刷新时会阻止正常的I/O请求,闪存不能及时响应系统请求。(2)闪存刷新引起的写入会消耗更多的闪存存储器的编程/擦除(P/E)周期,增加了写放大,降低了闪存的使用寿命。
发明内容
针对现有刷新方法的低性能,降低闪存寿命的问题,本发明提供了一种高效的闪存数据刷新方法,其目的在于缓存易受影响的比特位,减少传统刷新方法中大量的页面拷贝,减少刷新成本,大幅度地降低刷新时间,提升固态硬盘性能和延长闪存寿命。
为实现上述目的,按照本发明的第一方面,提供了一种高效的闪存数据刷新方法,该方法包括以下步骤:
S1.当新的刷新请求到来,在闪存中顺序选择一个需要刷新的闪存块;
S2.在该闪存块中顺序地选取一页有效数据页,判断固态硬盘可用容量是否低于设定阈值或者该数据页是否读取频繁,若是,采用传统刷新方式,否则,进入步骤S3;
S3.顺序读取有效数据页中的第一个比特位;
S4.使用低密度奇偶校验码判断该比特位是否为易受影响比特位,若是,缓存该比特位的值及其页内偏移信息在一个非易失性内存中,进入步骤S5,否则,进入步骤S6;
S5.判断非易失性内存缓存是否满一页数据页,若是,将缓存数据写入闪存,进入步骤S6,否则,直接进入步骤S6;
S6.判断该比特位是否为该有效数据页的最后一个比特位,若是,进入步骤S7,否则,读取该有效数据页的下一个比特位,进入步骤S4;
S7.判断该有效数据页是否为该闪存块的最后一页数据页,若是,进入步骤S8,否则,顺序地读取该闪存块下一页有效数据页中的第一个比特位,进入步骤S4;
S8.判断该闪存块是否为闪存中最后一块闪存块,若是,结束刷新,否则,重新在闪存中选择一个需要刷新的闪存块,进入步骤S2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911246455.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





