[发明专利]控制闪存的写操作的方法和闪存的控制器有效
申请号: | 201410371031.8 | 申请日: | 2014-07-31 |
公开(公告)号: | CN105302474B | 公开(公告)日: | 2018-03-16 |
发明(设计)人: | 石亮;沙行勉;朱冠宇;王元钢;底晔佳 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京龙双利达知识产权代理有限公司11329 | 代理人: | 王君,肖鹂 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制 闪存 操作 方法 控制器 | ||
技术领域
本发明的实施例涉及信息技术领域,并更具体地,涉及一种控制闪存的写操作的方法和闪存的控制器。
背景技术
闪存是一种非易失性存储器,能够靠存储元周围的氧化层在一定时间内保存表示数据值的电荷。并且闪存的很多优点,比如随机访问速度快、低功耗等,使得闪存的应用范围越来越广,不仅广泛应用于各种嵌入式设备,还应用于各种个人设备,如笔记本等。随着技术的不断发展,闪存尺寸变得越来越小,并且密度越来越大,每个存储元可以保存两个,三个甚至四个比特。但是,闪存的性能却成为了新的挑战。
现有技术采用闪存存储块中存储页的ECC(Error Correction Code,纠错码)来和可擦写次数来确定写操作速度,在闪存使用的早期,更加充分的利用了纠错码的纠错能力,一定程度上提高了闪存的性能。
然而现有技术在进行写操作时,对所有的闪存存储块均采用了默认的可擦写次数,由于存储块之间存在制程差异现象,存储块的实际可擦写次数并不一定与默认的可擦写次数相同,因此采用这种方法时存储块的性能仍然较低。
发明内容
本发明的实施例提供了一种控制闪存的写操作的方法和闪存的控制器,能够提高存储块的性能。
第一方面,提供了一种闪存的控制器,该闪存包括至少一个存储块,闪存的控制器包括:获取模块,用于获取写操作速度表,写操作速度表记录有多个可擦写次数范围和多个写操作速度之间的一一对应关系;第一确定模块,用于确定目标存储块的实际可擦写次数,其中,目标存储块的实际可擦写次数与目标存储块的默认可擦写次数相异,目标存储块的默认可擦写次数存储在闪存中;第二确定模块,用于根据实际可擦写次数所在的可擦写次数范围,查找写操作速度表,以确定实际可擦写次数所对应的写操作速度;控制模块,用于根据实际可擦写次数所对应的写操作速度,控制针对目标存储块的写操作。
结合第一方面,在第一方面的第一种可能实现的方式中,第一确定模块具体用于:根据写操作速度表,确定目标存储块的实际可擦写次数。结合第一方面的第一种可能实现的方式,在第一方面的第二种可能的实现方式中,第一确定模块具体用于:从写操作速度表中,确定多个写操作速度;基于多个写操作速度,多次写入测试数据,其中,测试数据是每次以多个写操作速度中不同的写操作速度写入的;多次读取测试数据以及测试数据的纠错码,以确定在读取的测试数据为正确的情况下,写入所读取的正确的测试数据时采用的最大的写操作速度;根据最大的写操作速度,确定实际可擦写次数。
结合第一方面的第二种可能实现的方式,在第一方面的第三种可能的实现方式中,第一确定模块具体用于:针对目标存储块的每个存储页,多次读取测试数据和测试数据的纠错码,以确定在读取的测试数据为正确的情况下,写入所读取的正确的测试数据时采用的最大的写操作速度,其中,每个存储页对应于每个最大的写操作速度,确定所有的最大的写操作速度中的最小值;根据最小值对应的可擦写次数范围确定实际可擦写次数。
结合第一方面的第三种可能实现的方式,在第一方面的第四种可能的实现方式中,第一确定模块具体用于:确定与最小值对应的可擦写次数范围相邻的可擦写次数范围;将相邻的可擦写次数范围的上界确定为实际可擦写次数。
结合第一方面、第一方面的第一种至第四种中的任一种可能实现的方式,在第一方面的第五种可能的实现方式中,该闪存的控制器还包括:映射模块,用于将目标存储块映射到实际可擦写次数所在的可擦写次数范围;匹配模块,用于将多个数据热度级别和多个可擦写次数范围匹配,使得多个数据热度级别中的每个数据热度级别对应于多个可擦写次数范围中的至少一个可擦写次数范围,其中,多个数据热度级别包括第一数据热度级别和第二数据热度级别,当第一数据热度级别大于第二数据热度级别时,与第一数据热度级别对应的可擦写次数范围的下界不小于与第二数据热度级别对应的可擦写次数范围的下界;控制模块具体用于:从多个数据热度级别中,确定目标数据的数据热度级别;根据与目标数据的数据热度级匹配的可擦写次数范围,确定使用目标存储块存储目标数据。
结合第一方面的第五种可能实现的方式,在第一方面的第六种可能的实现方式中,匹配模块具体用于:根据映射到每个可擦写次数范围的所有存储块的数目,将多个数据热度级别和多个可擦写次数范围匹配。
结合第一方面的第六种可能实现的方式,在第一方面的第七种可能的实现方式中,多个数据热度级别是根据数据大小确定的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410371031.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:信息处理装置及其控制方法
- 下一篇:终端的单手控制方法及装置