【忆芯技术分享】1+1不等于2?SSD ECC纠错能力如何换算
3个小孩吃3个苹果用了3分钟,问10个小孩吃10个苹果要用几分钟?
在辅导孩子功课时遇到的一个小学一年级问题,对于这个问题,有些人会脱口而出“10分钟!”。由此想到了一个SSD ECC纠错领域的一个常见问题。
每1KB数据可纠错120 Bit VS. 每2KB数据可纠错240 Bit
两种纠错算法的能力是一样的吗?
为了弄清这个问题,我们用更简单的纠错能力做对比。
每8 Bit数据可纠错2 Bit VS. 每16 Bit数据可纠错4 Bit,二者纠错能力相等吗?
下面的错误场景:
· 对于每8 Bit数据可纠错2 Bit算法,16 Bit的数据会被分为2个ECC码字,各8 Bit,2个码字都各包含2个错误的Bit,在算法的纠错能力范围内,因此纠错成功;
· 对于每16 Bit数据可纠错4 Bit算法,16 Bit数据是1个ECC码字,这个码字包含4个错误的Bit,在算法的纠错能力范围内,因此纠错成功;
可以看出两种算法都能成功的完成纠错。
但是我们再来看看下面的场景:
· 对于每8 Bit数据可纠错2 Bit算法,第一个码字包含1个错误的Bit,在算法的纠错能力范围内,因此纠错成功;而第二个码字包含3个错误的Bit,超出了算法的纠错能力范围,因此纠错失败;
· 对于每16 Bit数据可纠错4 Bit算法,16 Bit数据是1个ECC码字,这个码字包含4个错误的Bit,在算法的纠错能力范围内,因此纠错成功;
可以看出后者纠错能力比前者更强。
同理,可以确认
每1KB数据可纠错120 Bit < 每2KB数据可纠错240 Bit
但是,下面这个等式中的???是多少呢?
每1KB数据可纠错120 Bit = 每2KB数据可纠错 ??? Bit
这个问题,对于不同的错误概率结论并不一样。
通过计算,对比以下三种纠错算法:
1. 每1KB数据可纠错120 Bit
2. 每2KB数据可纠错200 Bit
3. 每4KB数据可纠错345Bit
从下图可以看出,当闪存颗粒的每个Cell的错误率为6.1‰时,三种纠错算法的不能纠错的概率均在1E-13~1E-14之间,纠错能力基本相等。
虽然每个Cell的错误率超过6.1‰时,算法1优于算法2,算法2优于算法3。但是,三种纠错算法不能纠错的概率都高于1E-13,超过了JDEC对于SSD不能纠错概率的要求,因此参考意义不大。
忆芯科技作为国内较早致力于高性能SSD主控芯片研发的公司,始终坚持初心,不断推出能与国际一线品牌竞争的SSD主控芯片与方案,实现高端国产化芯片及产品的不断突破。
近期,忆芯科技流片了新一代高性能企业级PCIe4.0 SSD主控芯片STAR2000,采用忆芯科技最新一代自主研发的数据纠错IP,支持4KB码长的LDPC纠错编码,仅依赖硬判决译码,便可以实现接近部分3D TLC闪存颗粒需要的120b/1KB的需求,可以保证SSD寿命中后期仍然具备很好的读性能和数据一致性。
忆芯科技
核心职位火热招聘中
扫描二维码了解更多信息
END
推荐阅读
6-15
【忆芯技术分享】企业级SSD这个创新思路,如何让IO性能如此稳定
6-8
6-2
忆芯科技
北京忆芯科技有限公司成立于2015年底,作为国内较早从事高性能固态硬盘主控芯片研发的企业,致力于成为赋能大数据应用的芯片全球领导者。经过7年的发展,公司已成长为国内领先的高端PCIe SSD主控芯片和成品盘供应商,为各行业的信息化发展提供高质量芯片级底层保障,业务方向覆盖消费级、工业级和企业级,主控芯片及解决方案。
忆芯科技核心成员具有多年研发经验和多项研发成果,拥有从底层算法到芯片设计,再到解决方案设计等多方面的丰富经验。在坚持自主研发基础上,研发的芯片产品拥有250余项自主知识产权,并创新性地将处理器架构首次引入存储领域;现已成功完成3款高端消费级、企业级SSD主控芯片流片,所研发的高性能低功耗NVMe SSD主控已量产出货。公司总部位于北京,在上海、成都、合肥、厦门、深圳分别设有研发中心和客户技术支持中心。