2017年12月5日,以“中流击水,浪遏飞舟”为主题的中国存储峰会在北京召开,会议由DOIT传媒、存储在线和中国计算机学会存储专委会联合主办,全天四十场+论坛演讲,众多业界大咖轮番上台,深入解读中国及全球存储市场现状及发展趋势,吸引了来自政、企、产、学、研、媒体等各方参与者超过2000人,观看在线直播观众超过7000人。
在下午的分论坛四中,武汉光电国家实验室谢长生主任作为首位演讲嘉宾,发表了《3D闪存容量与性能,鱼与熊掌如何兼得》的主题演讲,详细介绍了最新NAND型闪存的市场趋势,并针对3D闪存芯片的错误模式提供了测试分析,最后基于3D闪存芯片的系统设计给出了一些获得3D闪存性能和可靠性的优化策略。
武汉光电国家实验室谢长生主任
如今闪存越来越应用到3D上,闪存容量在快速提高,但它的可靠性却越来越差,我们在使用这种芯片设计系统的时候,希望其在容量提高的同时确保它的可靠性和性能不下降,这是我从我们研究单位的角度来说的问题。我们闪存密度提高,价格下降,在移动存储称为主流介质,在大容量存储方面也称为主流介质,我们用3D闪存设计系统的时候,很多系统设计者反馈说我们用新的芯片以后,手机一段时间性能就变差了,或是容易死机,固态盘的设计者也遇到这些问题,那我们怎么在系统设计的时候,提高容量的同时让可靠性不掉线。
以下为嘉宾演讲实录:
首先我们看看NAND闪存市场的趋势,现在闪存大部分用于SSD和手机,其他的还有一些卡的应用,按照现在的市场到2019年的预测,可能80%的系统都会应用到闪存或者混合系统。到2017年,超过50%系统已经用3D闪存芯片了,3D闪存已经成为主流。现在提高闪存容量主要有三个途径,一个是降低制程工艺,第二多阶存储,第三是多层堆叠,这个是我们最主要提高的途径,以前做到96层就行了,现在新的路线在美国今年提出的新技术路线图目标是要做到512层,以后堆叠的技术可能是芯片提高容量的最主要技术。
我们用越来越大的芯片设计固态盘,设计手机,容量大了,但性能和可靠性有所下降,那么鱼与熊掌能否兼得,既提高可靠性,性能又不下降?理论上是完全可以解决的,当时科学家香农在1948年发表的论文奠定了信息论的基础,实际上就告诉你通讯不管中间出现什么干扰,最终是有技术,是可以给你完整无误的从这一端传输到另一端。相同的信息理论是解决通信问题的,但是我们现在却把它解决存储问题,这是为什么呢。现在我们固态盘用的BCH,其实就是通讯里用的,1960年提出LDPC现在用于固态盘设计,这些都是通讯中移过来的,为什么通讯的理论可以解决存储问题呢,我跟大家交流一下心得。
我是这样理解的,通讯和存储都是信息传递,只不过通讯是信息跨越空间的传递,而存储是信息跨越时间的传递,都是信息传递。我们看一下,这是时间轴,这是空间轴,比如说老子在2500年前写的《道德经》,我现在读到了,这个时间跨度实际上2500年,他可能在河南写的,我在北京读的,还有个空间跨度,时间就是存储,空间就是通讯。比如我们现在发电子邮件,假如我从武汉发到北京,这跨一个空间,这是通讯,你朋友可能过一个小时才看到这个邮件,存到某个地方你才能看到,这就是存储。所以实际上信息传递都是时空二维的,只不过考虑时间就是存储,考虑空间就是通讯,这个理论不光光适合于通讯,也适合于存储,本质上是适合信息传递的,只要是信息传递这个理论就可以适用。所以我们只要把通讯理论这个维度扩展到时间维度上去,就成为存储的理论,所以我们就可以借用通讯理论的根本原因,就是因为通讯理论实际上是一个传递的理论,我们把它应用到时间传递上,它就可以解决我们的存储问题,这样我们就能理解为什么我们那么多的理论都可以从通讯中得到。
但是存储也有它的特点,存储也一样,你存进去的东西我读出来要一模一样,通讯是空间信道,存储是时间信道,存储介质的失效就是噪声,这样我们就可以分析整个的存储问题了。存储其实比通讯要复杂,我们来看现在这块闪存是怎么出错的,也就是噪声是怎么产生的,我们才能分析怎么设计更可靠的系统。
闪存单元的出错模式,对它的分析对我们的系统设计是非常重要的,闪存的噪声主要是由于电荷存储,它把电荷封在一个绝缘体,它如果漏电,漏光了,0就变成1了,就错了,而且对多阶存储更敏感,你漏一点就会下降到另一个台阶上,漏电对它的影响特别大,稍微漏一点就错了,这是电荷泄漏是它出错模式的一个方面。第二个方面就是擦写磨损,要全擦了以后才能编程,得出新的数据,这样次数越多绝缘层就破坏越多,就越容易漏电,漏到一定程度就保存不住了,这个闪存就坏了。第三是读写干扰,读写的时候相邻的对它也有影响。还有性能会下降,我们为了解决这些问题,现在发展了很多闪存技术,比如我们想使它磨损的均衡一些,我这一块和那一块几万个地方均匀的磨损,还有数据布局、垃圾回收、纠错编码、健康管理、故障预测,很多方法我们都要保证它的可靠性,还有现在用到了一些人工智能的技术。为了对3D芯片的出错模式进行比较细致的研究,我们实验室课题组就专门研究3D闪存,对它的芯片进行了实验的研究,看看到底出错是怎么发生的。
现在3D闪存主要有两类,更多的是用电荷捕获的技术,这两种各有各的特点,第一种结构数据保留性较好,单元间干扰比较小,FG比较差,在以后互相干扰很严重,电荷复核就比较好,速度和能耗都有一些差别,现在更多的3D闪存是用的电荷捕获型,我们看看未来对3D闪存芯片有一个全面的认识,厂商给的数据实际上就是一些容量、速度这些方面的指标,但是在设计的时候你要知道的东西比这些更多,才能设计出来更好的系统。
我们进行了长期测试以后,发现3D层和层之间差别比较大,这是因为工艺从上到下有所区别,造成延时就不一样,层与层之间变化非常大,所以你设计的时候你要知道你用哪些层快一点,哪些层慢一点。但是在这个平面我们测差别就不太大。第二数据的耐久性,我们也是测了很多,一个是把它写坏,随机的写,写坏了以后就停止测试,我们看到不同的闪存块寿命是不一样的,它会在4000到6000之间波动,我们一个闪存芯片有些块是寿命长一些,有些是寿命短一些。不同的块随着擦写次数的增多,不同的块之间是有差别的,但是在这个平面上差别就不大。3D是多层的,引入了一个新的层间的干扰希望,上层和相邻的层对它的干扰是最大的,你看竖的层面上对它有20%的干扰,下面对它有30%的干扰,竖的方向干扰是比较大的,水平方面就小得多,所以有位置相关性。还有读的干扰,我们也对芯片进行了详细测试。
还有电流捕获型的,和2D也有一些变化,这些变化就造成它性能上会改变。我们看看3D闪存出来以后它和2D有什么不同,最主要的不同就是层与层之间有不一致性,有些很明显,而且层结的串扰和持久性耐久性问题更为严重,还有页数量和页尺寸变大,垃圾回收之类的就有一些问题。我们做了很多研究,除了大家已知的技术,我们还探索了新的技术,我举几个例子,刚才说3D芯片出现以后和2D相比有一些不一样的地方,它的块和页容量变大,我们怎么优化呢,就用了一个纸分页,还有磨损均衡,以前磨损均衡都是根据已经使它的可擦写次数比较均匀,但是我们发现这个并不是非常好的磨损性的指标,我们现在提出来以编程的错误率作为它的测率,这样能更好的发挥介质的作用。
假如你均匀看待,有的块寿命长,有的块寿命短,我们现在以编程错误率来看就可以发挥不同的寿命块的潜力,使我们整个系统寿命更长。还有垃圾可回收、还有内部RAID构建,还有新的错误感知,这样更好的来纠错,我们发展了一些新的方式来保证可靠性。我们也发表了一些文章,在现有大家熟知的技术上我们发展了一些新的技术,用这些技术就可以使你采用更新的3D闪存芯片,你设计的系统可靠性可以得到更好的保障,它的寿命也会更长,这样你的产品就和别人有区别,性能大家都差不多,但是用了一段时间,你就发现我们可以设计出一个更有竞争力的产品,别人同样用这个芯片,我们新盘的时间都差不多,或者手机都用同样芯片,但是你用了一年之后,你设计上面有新的考虑以后,你的寿命比别人长,性能又比别人好,你就可以具有优势,我们做了这些研究工作,也希望厂商们我们一起合作,可以设计下一代芯片的时候,能够设计出更好更可靠的产品,使我们在市场竞争中抢得先机,现在已经有一些企业和我们合作,我们也欢迎用闪存做产品的公司,我们一起来探讨。