0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析固态硬盘纠错算法的发展

SSDFans 来源:cc 2019-01-11 10:45 次阅读

纠错编码算法(Error Correction Code, ECC)是传输过程中发生错误后能在接收端自行发现并纠正的码。早期被广泛应用于通信领域,在发送端完成数据编码,在接收端完成数据译码,保证数据的可靠传输。NAND Flash作为一种广泛使用的存储介质,容易受到PE次数、数据保存时间、温度和Cell间干扰等因素的影响,数据写入后再读出无法保证绝对的正确性,因此需要ECC算法做数据恢复。

在2D NAND Flash时代,SSD控制器一般采用BCH编码保护数据正确性,BCH的几个特性

1. 对于固定的码长和码率,有一组固定的生成多项式和校验多项式,不需要单独设计;

2. 有相对固定的编码和译码算法;

3. 当错误数据个数小于一个指定值时,可以100%恢复数据;当数据错误个数大于这个指定值时,100%不能恢复数据;

4. BCH编码只能接收硬信息,即一个有效数据只能用1 bit表示;

但是随着3D NAND Flash技术的逐步成熟,3D NAND Flash表现出了更好的可靠性。因此,原本采用2D MLC的产品纷纷转投3D TLC(可靠性对比: 2D MLC > 3D TLC > 2D TLC),对SSD主控的ECC编码提出了更高的要求,因此,具备更强纠错能力的低密度奇偶校验编码(Low Density Parity Check, LDPC)越来越多的被采用。

相对于BCH,LDPC具备以下特性:

1. 对于固定的码长和码率,需要单独设计编译码使用的矩阵(通常指校验矩阵);

2. 有多种解码算法,但是最好的纠错算法计算复杂度太高,无法硬件化,需要权衡算法特点和译码精度,简化算法;

3. 可以接收软信息(即一个有效数据可以用多个 bit表示),这是LDPC取代BCH的主要原因;

4. 译码成功或失败没有绝对的界线,即可能在只错几个bit的情况下无法成功纠错,但可以成功完成200 bit错误的数据译码;

5. 相同码率情况下,码长越长,纠错能力越强;

详细解释一下以上5个特性:

1. 低密度奇偶校验码的低密度是指其校验矩阵的稀疏性(在一个只有“0”元素和“1”元素的矩阵中,“1”元素的比例很低)。LDPC编码和译码都可以利用校验矩阵,矩阵的低密度意味着编译码算法的低复杂度、低运算量。对于固定码长和码率的LDPC码,校验矩阵有很多种,但是设计一个运算量小,复杂度低且纠错能力强的校验矩阵成为LDPC编码应用的一个难点。

LDPC校验矩阵H

2. 麻省理工学院Robert Gallager于1963年在博士论文中提出LDPC码,但因其复杂的译码算法不易实现,并没有被广泛采用。1981年,Tanner提出了用图模型来描述码字的概念,从而将LDPC码的校验矩阵对应到被称为Tanner图的双向图上,采用Tanner 图构造的LDPC码,通过并行译码可以显著地降低译码复杂度。

校验矩阵H对应的Tanner

此后,越来越多的LDPC译码算法出现,其中最流行的是比特翻转算法(Bit Flipping Algorithm)和最小和算法(Min-Sum Algorithm)。同时也出现了很多基于以上2种纠错算法的变种算法,用较小的代价提高了译码精度。

下图描述了一个编码后数据位“1101”,在信道上传输后变为“1001”后接收端的比特翻转译码的过程。

经过一次迭代后,错误bit被纠正。

3.软信息是用多bit表示一个bit的值,即等价于可以用多位精度表示一个信息的置信度。

用硬信息表示一个信息,只有“0”或“1”。而软信息更精确的表达了一个信息的置信度,软信息可以有“0.1”、“0.4”、“0.65”、“0.99”等表达方式。有了软信息,在相同码率下译码器可以纠正更多的错误。

但是存储不同于通信领域,存储器读出的数据只能是0或者1。因此,软信息的获取只能通过改变存储器读方式,多次读取才能获得。多次读取同一个信息必然造成读性能的下降,因此,在SSD控制器上,尽可能减少使用软信息做译码的概率。

4. LDPC是一种概率译码算法,在不同的错误率的情况下均有一个译码成功概率,并且这个概率具备一个明显的特点。当待译码数据错率低时,LDPC译码失败概率很低,可以低至1E-15,但是很难做到0失败,主要原因是对于每个矩阵都存在一个陷阱集,当陷阱集中包含的位置的点发生数据错误,LDPC便无法成功译码。随着错误率逐渐增加,译码失败概率会快速增加到接近100%失败。

5.对于BCH和LDPC,在相同码率下,码长越长,纠错能力越强。对于市场上流行的3D TLC Flash的页大小(页大小决定纠错算法码率),我们比较了2KB/4KB BCH和2KB/4KB LDPC硬判决译码的纠错能力。当码长增加时,相同的译码算法以及相同的码率下,纠错能力提升了近50%。长码长ECC算法的应用,更好的提高了纠错算法的能力,推迟了SSD主控启用LDPC软判决译码的使用,减少软判决译码带来的负面影响(性能和功耗方面)。

总结:

数据正确性是SSD最基本的要求,纠错编码保证了数据万无一失。随着更多新的Flash结构出现,纠错编码算法也在逐步演进。LDPC算法最大限度的保证了数据的正确性。并且,随着越来越多SSD主控采用4KB LDPC,更好的延长了SSD的寿命。

忆芯科技最新的STAR1000P高性能SSD主控采用了4KB LDPC编译码器,保证SSD在生命末期仍然可以达到3.6GB/s的读性能,为用户提供了更好的使用体验。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 固态硬盘
    +关注

    关注

    11

    文章

    1356

    浏览量

    56496
  • ECC
    ECC
    +关注

    关注

    0

    文章

    90

    浏览量

    20375

原文标题:【干货】固态硬盘纠错算法的前世今生

文章出处:【微信号:SSDFans,微信公众号:SSDFans】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    固态硬盘 VS 机械硬盘

    固态硬盘机械硬盘
    电子学习
    发布于 :2023年02月08日 11:58:04

    固态硬盘的优势是什么

    揭开固态硬盘的神秘面纱,一张图看懂机械硬盘固态硬盘的区别!
    发表于 04-24 11:35

    U盘和固态硬盘的区别科普

    固态硬盘和U盘的区别,第一,主控算法不一样,固态硬盘的速度数十倍的高于U盘。第二,寿命极大的延长。第三,可以同时读和写。U盘容易丢失数据的原
    发表于 07-17 04:20

    固态硬盘的选购方法

    再讲到固态硬盘领域,随着这几年固态硬盘技术的不断进步,各大厂商都纷纷入局抢占市场,一时间国内外各类厂商都想分一杯羹。市场繁荣对于行业而言的确是好事,然而却难倒了许多选配
    发表于 08-02 07:40

    ICMAX盘点固态硬盘SDD和机械硬盘HDD的前世今生

    。(机械硬盘内部结构图,图片来源百度)固态硬盘固态硬盘其内部构造十分简单,固态
    发表于 08-03 13:38

    固态硬盘怎么挑选

    那么,作为普通用户我们该如何挑选合适的DIY硬件避免“烈士墙”呢?今天,笔者就先从当下最为火热也是笔者相对熟悉的固态硬盘领域说起,为各位网友提供一些挑选固态硬盘的方法和诀窍,这些方法和
    发表于 08-07 07:05

    东莞回收固态硬盘

    东莞回收固态硬盘高价收购固态硬盘,长期回收固态硬盘。深圳帝欧专业回收电子物料。帝欧赵生***QQ
    发表于 12-12 15:55

    回收SSD硬盘收购固态硬盘

    回收SSD硬盘收购固态硬盘 ●●帝欧电子赵生 135-3012-2202(同步微信) ★★QQ 8798●21252深圳帝欧电子收购SSD硬盘,高价收购
    发表于 12-30 17:29

    什么是固态硬盘固态硬盘有什么优势?

    什么是固态硬盘固态硬盘有什么优势?
    发表于 06-18 06:53

    高价收购固态硬盘,长期回收固态硬盘

    高价收购固态硬盘,长期回收固态硬盘。深圳帝欧专业回收电子物料。帝欧赵生***QQ1816233102/879821252/1714434248邮箱dealic@163.com专业收购S
    发表于 07-08 19:18

    机械硬盘固态硬盘的原理

    机械硬盘固态硬盘的原理,硬盘结构及工作原理目录:硬盘结构概念:盘面、柱面、磁道、扇区、簇盘面磁道扇区柱面簇
    发表于 07-12 07:42

    教你如何看固态硬盘的颗粒

    ,颗粒占据了整个固态硬盘内部70%左右的空间,其同样做为成本技术,根据厂商的用料不同,成为了固态硬盘内部核心材料。颗粒的分类说到成本,颗粒的发展
    发表于 07-22 08:51

    苏州回收SSD固态硬盘

    苏州回收SSD固态硬盘苏州收购SSD固态硬盘,高价回收SSD固态硬盘。帝欧电子赵生*** QQ:
    发表于 08-05 19:25

    高价回收SSD固态硬盘 收购固态硬盘价格高

    深圳帝欧回收固态硬盘,长期高价收购SSD一条龙服务(热线:135-3012-2202,QQ:8798-21252) 高价回收SSD固态硬盘,全新二手均可,2.5寸,M-SATA,M.2
    发表于 11-03 14:57

    固态硬盘是什么意思_固态硬盘有什么用

    本文首先介绍了固态硬盘的概念,其次介绍了固态硬盘的分类,最后介绍了固态硬盘的作用。
    发表于 03-23 10:54 2.5w次阅读