您的位置:首页 > 其它

Nand Flash管理算法介绍之垃圾回收类型介绍

2018-01-03 14:34 393 查看
本文简简单单讲述FTL垃圾回收的几种基本的类型:

1. Greedy Algorithm

贪婪算法,找有效页数最少的块进行回收。因为不考虑磨损均衡,所以可能会对某些块进行多次擦除,导致这些块比其它块要更早达到PECS,有隐患。但是在随机写入的case下,贪婪算法看起来效果比较好,因为随机写入导致无效页分布也是随机的。

2. Cost-Benefit Algorithm(CA)

此算法考虑到块擦除的频率,公式如下,根据下列公式计算出每个块的权重值,选择权重最大的块进行回收。





age:此块距离上次擦除的时间。

u:此块有效页比例

好处:既可以选择有效页数少的块进行回收,也可以避免块长时间没有回收。

缺点:没有考虑到块的擦除次数,没有很好均衡块的擦除次数。

3. Cost-Age-Time Algorithm(CAT)

CAT算法,在CA的基础上,增加考虑了块的擦除次数,每个块的权重计算公式如下,FW选择权重最小的块进行回收。





age:此块最后一次修改的时间。

u:此块有效页比例

CT:块擦除次数。

好处:和CA相比,均衡了块的擦除次数。还可以在回收的时候,把冷、热数据写到不同的块上,从而达到更好的磨损均衡效果。

4. CICL Algorithm(不知道全称)

综合效果比较好的算法,综合了回收效率和块擦除次数。每个块的权重计算公式如下,FW选择权重最小的进行回收。





ui:块i中有效页的比率

εi:块i擦除的次数

εmax:所有块中最大擦除次数

λ:磨损均衡权重比例,取值范围[0,1],是个浮动的值,取决于当前块擦除最大、最小的差值。

当λ值较小,那么优先以回收效率为先,反之,以磨损均衡为先。也就是说,在磨损均衡较好的情况下,λ取值较小,反之λ取值较大。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: