闪存浪潮下不得不知的知识(2)-颗粒篇




近两年随着闪存颗粒密度增加、价格下降,SSD成为一个炙手可热的话题;今天有幸跟大家交流一下闪存颗粒的相关技术。闪存(Flash)是相对于HDD而言的一种非易失性存储器,Flash分为NOR Flash和NAND Flash,NOR Flash可以当作内存使用直接执行程序,相比DDR 、 SDRAM 或者 RDRAM具有掉电数据不丢失等特点,所以在嵌入式设备(ARM/MIPS等体系架构)中,一般采用NOR Flash存储BootLoader和OS程序。但今天我们的重点是NAND Flash。

学习过模拟电路的同学都知道,在模电原理里三极管分两种,一种是双极性三极管,主要基于载流子用来做电流放大,另一种叫做CMOS场效应三极管,通过电场控制的金属氧化物半导体。NAND Flash就是基于场效应P/N沟道和漏极、栅极技术通过浮栅Mosfet对栅极充电实现数非易失据储存的。一个晶体单元称作一个Cell,向Cell中充电就是编程或写入数据,通过电平的高低来判断数据是0还是1。在SLC颗粒类型的Flash中,冲入电荷读取到阈值电平为高电平,一般表示数据0。


NAND Flash SSD和HDD的最大区别,其一是SSD通过Flash控制电路选通原理来读/写对应地址数据,不必采用笨拙的机械磁头定位数据外;其二是SSD在充电写入数据前,必需要擦除原有的数据,每次充电和放电称为一次P/E(编程/擦出),一块SSD的寿命和可以执行P/E操作的次数强相关。每种Flash颗粒的P/E操作次数是不同的, P/E操作次数越多,对应Flash颗粒的SSD寿命越长,可靠性越好,价格也越高。


NAND Flash可根据Cell储存bit数据位的不同分为SLC, MLC,TLC,其中MLC还分为eMLC,MLC和cMLC。由于结构不同,所有导致了不同颗粒间储存能力,性能和可靠性的差异。


SLC(single level Cell)是单层存储单元,一个Cell中只存储1bit数据(0/1),在写入数据后,判定写入数据值电压的区间小,所以可擦写次数和可靠性也是最好的,一般在5W-10W之间,但是存储容量相对较少,成本也最高。


MLC(multi-level Cell)多层式储存单元,存储密度较大,一个Cell中可以存储2bit数据(00/01/10/11),相比SLC,判定写入Cell中电压值区分2bit数据就比较复杂了,由于NAND Flash的物理属性(擦写会对颗粒的绝缘层造成损坏),也使得随着擦写次数增多,很难判断出写入的数据具体代表的bit位。其擦写次数一般3K左右,另外,2bit数据读写使得MLC速度比SLC慢,但容量较大,价格比较便宜。


eMLC(enterprise MLC)和cMLC(consumer MLC)都是采用MLC技术,差别主要是NAND Flash筛选参数,制作工艺和测试方法。通过不同标准来界定颗粒,eMLC是经过严格测试和企业级标准筛选,所以可靠性和寿命最高;MLC次之;把挑选完eMLC/MLC之后颗粒成为 cMLC,可靠性和寿命都要稍差一些,但成本低,一般总在个人消费和企业非关键应用中。


TLC(Triple level Cell)三层式存储单元,一个Cell中存放3bit数据(000-111),数据密度更大,通过判定电压确定写入Cell数据的难度更大,所以SLC的擦写次数(P/E)操作只有几百次-上千次;可靠性和性能很低,具有成本优势,一般用在个人消费产品中(不能满足企业产品要求)。

为了进一步提高SSD磁盘的寿命,一方面存储(SSD/HDD)厂商还会在颗粒之上通过ECC(随用户数据生成一起写入磁盘)纠错技术纠正静默错误。在数据写入时采用ECC编码写入检验位,当数据由于位翻转导致静默错误,读取数据时可以利用ECC检验位校正数据,并把正确数据返回主机。常用的ECC校正机制有8bit/512bit, 32bit/2KB,分别可以实现512bit中8bit数据检验和2KB中32bit数据错误的检验,如果错误的bit位数超过8/32bit(称为Uncorrectable bit error),ECC是无法检验恢复的,必须采用RIAD机制来恢复。


另一方面,SSD厂商采用Over-provisioning技术提高闪存寿命。SSD的写入单位是Page, 擦除单位是Block,对某一块Block擦写达到一定次数就会导致Block失效(写入的数据无法判定识别),所以SSD也提供了额外的容量(称为 Over- provisioning),以便替换坏块提高整个SSD寿命,当失效Block的容量超过额外容量(MLC一般为SSD总容量的28%,不同介质和厂商有所不同),使得整个SSD容量小于其宣称容量时,该SSD就失效了。


虽然NAND Flash目前处于绝对的王者地位,但是传统的NAND Flash是一种线性串列的Mosfet存储结构限制,其容量很难做大。一个可行的方式就是增加存储密度,目前NAND Flash的存储密度已经可以做到微米,甚至到纳米级别;但是随着密度增高存储单元Cell的浮栅周围电容耦合,存储数据能力极速降低。

所以,3D Flash技术的出现给闪存的发展指明了方向,3D-Flash技术主要有下面三个方向。


忆阻Memristor存储技术

忆阻器本质上是一种有记忆功能的非线性电阻,通过控制电流的变化可改变其阻值,如果把高阻值定义为“1”,低阻值定义为“0”,通过这种电阻变化实现存储数据的功能。

美光/英特尔联合推出3D XPoint忆阻器存储技术,SanDisk/惠普达成合作协议,此次合作以惠普忆阻器技术和SanDisk的非易失性存储器技术创造一个新的企业级存储解决方案。忆阻器存储在访问速度上Flash存储快1000倍。

3D XPoint是一种立体化的存储技术,它看起来与同为3D设计的NAND技术相似,但本质却不同,3D XPoint并不单纯是NAND,而是一种新的非易失性存储技术。3D XPoint技术还允许存储单元被堆叠到多个层中,这样就可以有效提升存储介质的容量。


3D-水平NAND Flash堆叠技术

基本思路实现对现有的NAND浮栅结构进行堆叠,获得与普通 NAND 浮栅相同的横向可扩展性和存储密度,另外采用氮化硅串接技术来代替浮栅的电荷捕获闪存方法。


串联存储器的存取可通过在低级非存储器中形成一个反型沟道来避免Cell的浮栅电容耦合。这种反型沟道及其相关耗尽区为存储介质中所捕获的电荷提供了高水平电荷保护,免受应用于这些底部存取器的传输电压的干扰。此外,这种双栅结构是公认的良好横向可微缩性方法,它通过使顶部和底部设备之间实现密切的静电相互作用来消除短通道效应。


3D-垂直NAND Flash堆叠技术

三星电子推出独家专利3D V-NAND闪存技术,提升了产品的容量、速度和可靠性。3D V-NAND不是使用新工艺来缩小Cell单元和提供存储密度,而是选择了堆叠更多层数。

传统NAND Flash使用的是浮栅极Mosfet技术,充电/放电容易损坏栅极;三星采用控制栅极和绝缘层将Mosfet环形包裹起来提升了储存电荷的的物理区域,从而提高性能 和可靠性。

3D V-NAND技术把Cell3D化,使得在垂直方向无限堆叠扩展,三星放弃了传统的浮栅极Mosfet,降低了写入时的电荷消耗,闪存寿命得到大幅提升,为未来SSD的发展开辟非常广阔的空间。


温馨提示:

请搜索“ICT_Architect”“扫一扫”下面二维码关注公众号,获取更多精彩内容。

你可能感兴趣的:(技术,存储,闪存)