[发明专利]一种维持闪存损耗均衡的方法在审
申请号: | 201410689234.1 | 申请日: | 2014-11-26 |
公开(公告)号: | CN104360957A | 公开(公告)日: | 2015-02-18 |
发明(设计)人: | 周玉洁;韦月 | 申请(专利权)人: | 上海爱信诺航芯电子科技有限公司 |
主分类号: | G06F12/06 | 分类号: | G06F12/06;G11C29/42 |
代理公司: | 上海信好专利代理事务所(普通合伙) 31249 | 代理人: | 张静洁;徐雯琼 |
地址: | 200241 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 维持 闪存 损耗 均衡 方法 | ||
1.一种维持闪存损耗均衡的方法,其特征在于,该方法包含以下步骤:
S1、扫描闪存的所有块,经过统计分析得出扫描结果,从中挑选出可用块;
S2、对闪存中经扫描后挑选出的可用块,统计比特出错情况并进行分级,针对每个级别设定相应的擦除次数的初始值;
S3、根据闪存中每个可用块的擦除次数的初始值,将其归类为空闲块或数据块,从而形成空闲块组和数据块组;
S4、进行损耗均衡处理,将数据块组中当前擦除次数最少的数据块和空闲块组中当前擦除次数最多的空闲块进行交换。
2.如权利要求1所述的维持闪存损耗均衡的方法,其特征在于,所述的S1中,具体包含以下步骤:
S11、对闪存的每个块的每个页写入数据,然后读出数据,再利用错误检查纠正技术判断每个页中有多少个比特出错并记录下来;
S12、判断每个页的比特出错数目是否小于设定值;如当前页的比特出错数小于等于设定值,则确认当前页可用;如当前页的比特出错数大于设定值,则确认当前页不可用;
S13、判断每个块的不可用页的数目是否小于设定值;如当前块的不可用页的数目小于等于设定值,则确认当前块可用;如当前块的不可用页的数目大于设定值,则确认当前块不可用。
3.如权利要求2所述的维持闪存损耗均衡的方法,其特征在于,所述的S2中,具体包含以下步骤:
S21、统计每个可用块的比特出错情况,并划分错误级别;
S22、对每个错误级别分别设定对应的擦除次数的初始值,错误级别越高,设定的擦除次数的初始值越大;
S23、按照每个可用块所对应的错误级别,分别设定并记录与该错误级别相对应的每个可用块的擦除次数的初始值。
4.如权利要求3所述的维持闪存损耗均衡的方法,其特征在于,所述的S21中,具体包含以下步骤:
S211、针对闪存中的每个可用块,将其中每个页中的比特出错数目相加,计算得到每个可用块的比特出错总数;
S212、根据每个可用块的比特出错总数划分每个可用块的错误级别,比特出错总数越大,错误级别越高;
S213、记录每个可用块所对应的错误级别。
5.如权利要求3或4所述的维持闪存损耗均衡的方法,其特征在于,所述的S22中,设定的擦除次数的初始值必须小于闪存块预先限定的最大擦除次数。
6.如权利要求5所述的维持闪存损耗均衡的方法,其特征在于,所述的S3具体为:判断每个可用块的擦除次数的初始值是否小于设定值;
若当前块的擦除次数的初始值小于设定值,则将其归类为空闲块,放入空闲块组;
若当前块的擦除次数的初始值大于等于设定值,则将其归类为数据块,放入数据块组。
7.如权利要求6所述的维持闪存损耗均衡的方法,其特征在于,所述的S3中,还包含将数据写入数据块的步骤,具体为:
当要将新数据写入数据块组中的其中一个数据块中时,先从空闲块组中挑选一个当前擦除次数最少的空闲块,对该空闲块进行擦除操作,将该空闲块的当前擦除次数加1并记录;
将新数据写入该空闲块中;
交换所述的空闲块与数据块的位置,即将该写入了新数据的空闲块作为数据块放入数据块组中,而将需要写入新数据的数据块作为空闲块放入空闲块组中。
8.如权利要求6或7所述的维持闪存损耗均衡的方法,其特征在于,所述的S4中,具体包含以下步骤:
S41、从数据块组中挑选一个当前擦除次数最小的数据块;
S42、从空闲块组中挑选一个当前擦除次数最大的空闲块;
S43、比较挑选出的数据块和空闲块的各自当前擦除次数的大小;如空闲块的当前擦除次数小于等于数据块的当前擦除次数,结束损耗均衡处理;如空闲块的当前擦除次数大于数据块的当前擦除次数,则继续进行步骤S44;
S44、计算挑选出的空闲块的当前擦除次数与挑选出的数据块的当前擦除次数的差值;
S45、比较所述的差值与预先设定的损耗均衡阈值的大小;如所述的差值大于损耗均衡阈值,结束损耗均衡处理;如所述的差值大于等于损耗均衡阈值,则继续进行步骤S46;
S46、对挑选出的空闲块进行擦除操作,将该空闲块的当前擦除次数加1并记录,将挑选出的数据块中的数据读出并写入至空闲块中,将该数据块作为新的空闲块放入空闲块组,并将写入了数据的空闲块作为新的数据块放入原数据块在数据块组中的位置,结束损耗均衡处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海爱信诺航芯电子科技有限公司,未经上海爱信诺航芯电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410689234.1/1.html,转载请声明来源钻瓜专利网。