[发明专利]基于随机游走的固态硬盘磨损均衡方法有效
| 申请号: | 201010584084.X | 申请日: | 2010-12-07 |
| 公开(公告)号: | CN102169727A | 公开(公告)日: | 2011-08-31 |
| 发明(设计)人: | 胡事民;赵鹏 | 申请(专利权)人: | 清华大学 |
| 主分类号: | G11C29/00 | 分类号: | G11C29/00;G06F12/02 |
| 代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
| 地址: | 100084 北京市海*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 随机 游走 固态 硬盘 磨损 均衡 方法 | ||
1.一种基于随机游走的固态硬盘磨损均衡方法,其特征在于,包括以下步骤:
S1:根据固态硬盘的物理块中记录的擦写次数为每一物理块组计算其擦写次数的数学期望E和方差Var,并将所述数学期望E和方差Var存储在固态硬盘的控制器内存中的元数据表中,所述元数据表中还存储每一物理块组的块内指针;
S2:按照所述数学期望E对物理块组进行排序,并依赖所述方差Var来挑选目标物理块组;
S3:利用随机游走机制在所述目标物理块组中挑选目标物理块;
S4:将待写数据写入目标物理块,并更新所述目标物理块的擦写次数,同时更新该目标物理块所在物理块组的数学期望E和方差Var,跳转到S2继续执行。
2.如权利要求1所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,若固态硬盘未分组,所述步骤S1之前还包括:
按照逻辑分组或固态硬盘的物理结构对固态硬盘的物理块进行分组。
3.如权利要求2所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,所述按固态硬盘的物理结构对物理块进行分组是按照一个闪存平面进行分组,一个闪存平面包括2048个物理块。
4.如权利要求1所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,所述步骤S1具体包括:
若固态硬盘中不存在元数据表,分组后在所述固态硬盘的控制器的内存中创建元数据表,读取每个物理块组内的所有物理块的元数据中的擦写次数,计算每个物理块组的数学期望E和方差Var,块内指针初始化为0。
5.如权利要求1所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,所述步骤S2具体包括:
根据所述数学期望E对物理块组按从大到小或从小到大进行排序;
利用所述方差Var在数学期望E最小的M个物理块组中选择方差最大的物理块组为目标物理块组。
6.如权利要求5所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,所述M取值为1-5。
7.如权利要求1所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,所述步骤S3具体包括:
从所述目标物理块组中的块内指针所指的位置作为起始位置,根据预定的步长向左或向右移动所述块内指针利用当前位置相邻的物理块的擦写次数来影响左右移动的概率,计算向左移动的概率公式如公式(1)所示:
P(L)为向左移动的概率,ecL为左相邻物理块的擦写次数,ecR为右相邻物理块的擦写次数;
每步的随机游走均通过伪随机函数生成一个0到1区间的小数,若该小数若在0到P(L)之间,则向左移动,否则向右移动;
通过随机游走,块内指针最后移动到的物理块作为目标物理块。
8.如权利要求7所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,所述预定步长为1-10个物理块。
9.如权利要求1所述的基于随机游走的固态硬盘磨损均衡方法,其特征在于,所述步骤S4具体包括:
若挑选的目标物理块中存在数据,则将其移动到已擦除并准备存放数据的物理块上;
擦除目标物理块,并更新所述目标物理块中的擦写次数,同时更新该目标物理块所在物理块组的数学期望E和方差Var,读取目标物理块的元数据中保存该物理块的擦写次数,按照下述公式(2)直接计算并更新物理块组的数学期望E,按公式(3)计算物理块组的方差Var,不需要读取所有物理块中的擦写次数;
E=E′+(ec-ec′)/N (2)
其中,E′为原来的数学期望,Var′为原来的方差,ec为更新后的擦写次数,ec′为原来的擦写次数,N为块组中的块的个数;
跳转到S2继续执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010584084.X/1.html,转载请声明来源钻瓜专利网。





