从英韧企业级主控看数据中心SSD的未来技术|云岫同行者
全球正在进入数字经济时代,中国的“十四五”规划也重点提到发展数字经济,作为第五种生产要素的数据已经逐渐转变为引领经济发展的核心,各种大、中、小型数据中心业已成为数字经济的基础设施。在这项庞大的新基建工程中,数据存储技术将不可避免地成为基石技术。
随着存储需求的快速增长,QLC等大容量、高密度的新型闪存芯片逐渐投入应用。然而QLC等新型闪存芯片的错误率更高,在企业级SSD对数据安全性和可靠性要求更高的情况下,SSD主控芯片的ECC(纠错码Error Correcting Code)技术越来越成为企业级SSD的核心技术和性能保障。
近日,云岫资本合伙人兼首席技术官赵占祥访谈了全球领先的企业级SSD主控芯片公司英韧科技副总裁陈杰,共同探讨企业级SSD对ECC的新要求,核心观点整理如下:
企业级SSD市场正高速增长
伴随5G、大数据、 AI及云计算技术的发展,大量的新商业应用将催生出对边缘计算和数据中心的海量需求。据IDC预测,全球数据总量预计2020年达到44ZB,5年年均复合增长率高达41.0%,其中超过50%的数据存储在数据中心;2025年,全球数据量将达到175ZB,5年年均复合增长率31.8%,而数据中心存储量占比将超过70%。企业级SSD作为数据中心越来越重要的存储介质,2020年出货量将达到3560万个,平均容量达到2.7TB,出货总容量较2019年增长近30%。
下图是近年来中国闪存市场发布的企业级SSD平均容量和出货量增长趋势。2020年,疫情带来的在线办公和网课需求加速了数据中心SSD的需求增长,因此,其实际增长高于预期。
QLC SSD在数据中心的应用趋势
在控制成本的前提下,提升数据中心的容量、实时性等性能,是目前数据中心的主要需求。受需求驱动,数据中心使用QLC是大势所趋。
首先,使用QLC SSD将为服务器和数据中心带来更低的读延迟,使其更适用于实时性要求更高的数据读取密集型应用,如AI计算、机器学习、金融数据实时分析和各种在线大数据信息挖掘等。
其次,QLC在海量数据中具有巨大的成本优势,因此相较于SLC\MLC\TLC,陈杰认为QLC最有可能在数据中心有更大的应用场景。QLC本身容量大、成本低,使用了QLC SSD之后,存储密度更高,服务器集成度更高,这会极大节省数据中心面积,进而节省运营成本。
与此同时,世界各大主流NAND FLASH厂商,如美光、Intel、铠侠和长江存储积极致力于QLC的研发,并相继发布了各自的QLC产品。
随着技术的不断进步,人们普遍担心的QLC擦写寿命少正逐渐被改善和提高,比如从早期的500次擦写提高到近年来的2000次擦写。未来的NAND会有更多层,以及即将推出的PLC(i.e., 5-bit per cell), 都会使得成本被进一步降低,同时也将加速QLC的应用进程。
当然QLC也有缺点,它的写延迟是12ms,非常长,目前的擦写次数通常只能达到2000,另一个应用中的较大问题是Data Retention,这些都需要通过主控技术进行补偿。
作为全球技术领先的SSD主控设计公司,英韧科技从2016年成立之初,就和美光、铠侠在QLC方面开展合作。
基于特有的专利编解码技术,英韧科技于2018年成功研发并全面启用4K LDPC(低密度奇偶校验Low-Density Parity-Check)纠错技术,并广泛应用于自主研发的消费级和企业级主控芯片中(如Shasta+ 和 Rainier),极大地降低了系统UBER(不可纠错误码率Uncorrectable Bit Error Rate),引领了纠错编解码技术在行业的技术创新发展。
目前英韧的PCIe SSD各类主控芯片Shasta+及Rainier系列均支持4K LDPC,纠错能力可以完全覆盖QLC NAND。
4K LDPC牛在哪儿?
随着NAND Flash的制程越来越先进、单个Cell里的bit数量不断增加,数据错误率也随之增长,因此市场对SSD主控的纠错能力要求越来越高,纠错技术已成为SSD主控厂商的核心技术能力。
目前的SSD主控芯片大都采用LDPC编码来做ECC纠错,但是受限于芯片面积等因素,主流量产的主控芯片主要采用2K LDPC编码。
2018年,英韧科技推出了4K LDPC并在2019年实现量产出货。在同样的码率下(纠错码使用bit数量一样),实测4K LDPC纠错比2K方案降低UBER至少两个数量级以上,大大提高纠错性能。除此以外,英韧主控采用自主研发的LDPC专利算法,在解码算法迭代的时候,实时动态更新并优化解码规则,因此纠错能力比同类竞争对手方案提高30%。
在芯片中实现4K LDPC的难度很大,如果不做优化,相当于至少2个2K LDPC,因此对面积、功耗都有极大的挑战和要求。英韧科技从芯片架构设计开始,就考虑到了这些问题,针对不同的功耗、复杂度和吞吐率等需求,研发了多种不同性能的LDPC解码专利算法,同时利用机器学习和人工智能技术,对各种解码算法进行结构和参数优化,使得这些算法硬件复杂度和在满足各自的需求方面都达到最优。最终实现功耗和面积达到现有条件下的极致优化,远远小于2K LDPC的2倍。
无论当下还是未来,SSD主控芯片厂商必须要有纠错算法的自研能力,才能在主控设计中游刃有余。
英韧科技的LDPC纠错码核心完全自主可控,其纠错技术优势主要体现在两方面,其一是研发设计LDPC纠错码。
设计并构造性能优异的LDPC校验矩阵是至关重要的一步,因为LDPC校验矩阵的设计构造往往决定了LDPC纠错码的纠错性能和编解码算法的实现复杂度,如果校验矩阵设计考虑不周到或设计不好,仅仅靠解码算法很难将错误平层(Error Floor)降低到不影响系统性能的水平,而且会增加LDPC编解码算法的实现复杂度,带来芯片功耗的增加和成本的上升以及系统性能的下降。
另一方面是解码算法,随着读写次数增加,闪存颗粒错误率会逐渐上升。英韧科技的解码算法可以自适应调整解码算法的流程,在最低功耗、最低延时的情况下做到解码成功。
基于以上两方面的技术优势,英韧主控的纠错于设计之初就从底层原理出发,对矩阵构造和编解码算法都有许多精妙的优化,实现了很多突破。最终纠错能力极强,发生纠错失败从而触发重读的概率很小,同时纠错算法消耗的数据读取延迟短、功耗低。比如从主机发读命令到读取数据,主控的时延只需要10微秒!
目前市场上有多家闪存厂商,每家也有很多型号的闪存芯片,每年也推出最新的产品,这就对ECC纠错提出了一个更高难度的任务:能否支持各种各样闪存芯片和未来可能出现的新闪存芯片?如果对闪存芯片支持不好,就将给客户在选择采购闪存芯片时造成了很多限制。
英韧主控的ECC引擎做成了指令集的形式,可以通过软件程序动态配置,更通用化,能够灵活适配各种闪存颗粒。同样的NAND在不同生命周期的时候,还可以使用不同的LDPC纠错码。比如可以根据寿命改变码长,早期放少一些,后期放多一些。这样使得SSD系统在牺牲少许容量的情况下延长使用寿命,为更高效使用SSD系统提供了一个可能,让接近使用寿命的SSD系统继续发挥余热,为使用SSD系统的客户提供了一种新的降低成本避免资源浪费的解决方案。
英韧科技持续不断地对LDPC纠错码进行研究,对现有的SSD控制器中的LDPC编解码模块,设计了用于未来升级的接口协议。当一个新的性能更好的LDPC码产生出来,可以通过该升级接口协议对现有的SSD控制器的LDPC编解码模块进行升级,使得用户能够及时享受到英韧的最新研究成果,延长客户产品的使用周期和寿命。
每一个ECC引擎都相当于一个小CPU,几个ECC引擎就相当于多核并行处理器系统。ECC引擎的扩展性非常重要,因为SSD主控的性能不断提升,要求每个ECC核心的性能很强,同时支持多核扩展。英韧ECC单核纠错速度可以到32Gbps。即使是PCIe Gen 5的主控,也只需要增加ECC核心,而不用太大改动,芯片研发速度因此可以大大加快。
然而,ECC引擎多了之后,功耗也会随之升高。英韧科技PCIe Gen4主控Rainier主要通过以下几种方式,实现了目前市场上PCIe主控芯片的最强性能和最低功耗:
采用先进的12nm工艺;相较于市场上采用28nm工艺的PCIe Gen4的SSD主控,这更能良好控制温度,提高用户体验; 在不工作时降低或者关闭时钟频率; LDPC会有大量片内存储器访问,导致功耗高;而英韧主控的内部数据搬移非常少,大幅降低功耗; LLR Table的选择做了很多优化,不刻意追求高精度。