2.4 SSD之磨损均衡(WL

编程入门 行业动态 更新时间:2024-10-10 10:27:24

2.4 SSD之<a href=https://www.elefans.com/category/jswz/34/1751736.html style=磨损均衡(WL"/>

2.4 SSD之磨损均衡(WL

NAND寿命受限于擦除次数,对相同的block进行频繁改写和擦除很容易就造成永久性伤害,使SSD寿命下降或性能降低,因此引入WL尽量平均地擦除和写入所有block,以延长SSD寿命。当然太过激进的WL算法也会导致SSD寿命的快速下降。

“SSD data path”这篇文章最后介绍了 page loyout,有记录block id和erase count。另外fw里还有维护一个表ECT(erase count table),每个block的擦除次数都会记录在这个表里。ECT存放在NAND中,SSD上电时在SRAM中维护并定时更新进NAND中。企业级SSD有超级电容或钽电容做掉电保护,这个会另外写文章讲掉电保护。

WL分为动态和静态。

动态WL:是在缓存处理数据,就是说有Write操作时,从空闲block链表里拿ECT最小的block写入,这个block从空闲链表加入到数据块链表,并建立地址映射关系。

从用户层来看,假如每次都是对同一个逻辑地址重复写数据,fw里是会把真实数据存放的物理地址重新建立映射关系。

静态WL:动态WL无法对cold数据进行处理,冷数据就是在NAND中很长时间没有读写操作的数据。

一个触发机制是检测闲置数据超过设定的阈值,然后找出数据块链表中ECT最大和最小的block。

Hot-Cold Swapping:结合GC的CAT算法,每个block记录擦除次数,fw定期检查,如果有2个block擦除次数的差值大于设置的阈值,就会交换。

NAND中也有很多坏块,包括出厂时的硬坏块,还有使用过程中产生的软坏块,在状态寄存器标示后倒出数据,并加入到坏块表里,这些会另外文章里介绍。

Block耐磨度实际上并不是完全一致的,有的TLC block能达到1万次的寿命,有的可能几百次,也有的出厂时就有坏块,单纯的靠擦除次数是不能统计block寿命的。还要看block擦除时耗费的时间,时间越短越健康。还可以通过破坏性PE测试,记录原始误码率/不可纠正误码率/操作时间,建立数学模型。

对每个block和page耐磨度进行评估,耐磨好的多擦除。如果不可纠正误码率(UBER,UncorrectableBit Error Rate)达到阈值,TLC可以转SLC。

更多推荐

2.4 SSD之磨损均衡(WL

本文发布于:2024-03-11 23:05:01,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1730136.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:磨损   SSD   WL

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!