当前位置: 首页 > 默认 > 正文

TLC闪存简析

【TLC闪存简析】

 

TLC的全称为“Triple Level Cell”,也就是三层单元,而目前在消费领域广泛使用的SLC、MLC则分别是Single Level Cell(单层单元)、Multi Level Cell(多层单元)。三者在物理上很相似,都有类似的晶体管组成,唯一的区别就是每个单元存储的数据比特(位)不一样,其中SLC只有一个,MLC是两个,TLC则是三个。

 

举例来说,同样是172亿个晶体管的原始NAND阵列,SLC闪存只能得到16Gb容量,MLC就能翻番到32Gb,TLC则可达64Gb。

 

这样一来,同样容量的TLC闪存要比MLC闪存小一些,每块晶圆的切割数量就更多了,成本也自然就下来了。

根据OCZ提供的数据,每GB SLC的价格为3美元,MLC能降到0.9美元,TLC就只需0.6美元。

所以就芯片成本来说,TLC目前的成本比MLC还低33%,仅为SLC的20%

【TLC闪存为什么不耐用?】

NAND厂商三星并未公布TLC闪存的确切读取、编程和擦写时间指标,只说比MLC闪存低大约50%,所以这三项都是猜测的,但是编程/擦写次数确定是1000,MLC的三分之一,SLC的百分之一。为什么会这么低?(这也是用户最为关注的焦点)

下图是一个MOSFET(金属氧化物半导体场效应晶体管)。 在对一个闪存单元编程的时候,电压加到控制栅极(control gate)上,形成一个电场,让电子穿过硅氧化物栅栏,达到浮动栅极(floating gate)。穿越过程完成后,控制栅极上的电压会立刻降回零,硅氧化物就扮演了一个绝缘层的角色。单元的擦除过程类似,只不过电压加在硅基底(P- well)上。

SLC、 MLC、TLC三种闪存的MOSFET是完全一样的,区别在于如何对单元进行编程。SLC要么编程,要么不编程,状态只能是0、1。MLC每个单元存储俩 比特,状态就有四种00、01、10、11,电压状态对应也有四种。TLC每个单元三个比特,状态就有八种了(000、001、010、100、011、 101、110、111)。

说这些和耐用性有什么关系呢?问题在于,闪存单元每次编程或擦除的电子穿越过程都会导致硅氧化物的损耗。这东西本来就只有区区10纳米的厚度,每进行一次电子穿越就会变薄一些。也正因为如此,随着半导体工艺的进步,硅氧化物越来越薄,耐用性自然就更差了。

硅氧化物损耗得差不多之后,原子键就会断裂,部分电子可能会在穿越过程中被困在氧化物中,导致负电荷积累,使得闪存单元再次编程的时候抵消控制栅极的部分电压。擦写时间也会因此延长,因为在达到何时的电压之前需要更长时间、更高的加压。

记住,主控制器是无法改变编程和擦写电压的(部分可以后文再说)。如果原本设计的电压值工作异常,主控就会尝试不同的电压,这自然需要时间,也会给硅氧化物带来更多压力。

简 单地说,SLC的电压状态最少,可以容忍电压的更大变化,MLC的四种状态也基本可以接受,TLC的八种就太多了,电压可变余地很小。在不清楚确切的所需 电压之时,就不得不将同样的电压分成八份(SLC、MLC分别只要两份和四份)。在使用过程中,编程和擦写一个TLC闪存单元所需要的时间也越来越长,最 终达到严重影响性能、无法接受的地步,闪存区块也就废了。

另外,随着闪存的磨损,所需要的ECC错误校验也越来越多,因为错误的发生几率更高了。这对于TLC又是一个麻烦,因为需要纠正的数据比特多达三个。虽然如今的ECC引擎都很强大了,但到使用后期,与其费劲纠正错误,还不如直接废了整个区块。

 

【TLC寿命真的不够用么?】

完 美的磨损均衡和写入放大系数应该是1x, 250GB固态硬盘的终生写入量就是256TB,编程/擦写次数1000,只可惜完美是不存在的。得出确切的使用寿命是很难的,毕竟每个用户的情况都不一 样,不过一般人平均每天写入量不会超过10GB,那么一年就是3.65TB,只相当于256TB写入总量的1.4%。

当然了,NAND闪存写入量实际要大于主控写入量(这就是系数不同),但即便写入放大系数为10x,每年也就36.5TB,编程/擦写次数大约143,算下来依然能用七年,即便是120GB型号也能用三年半。虽然这之后不如同类型MLC闪存硬盘的三分之一,但考虑到电子产品的更新换代频率,一般来说也完全足够用了,只不过寿命后期的性能会差一些。

三星也很明智地没有提供60GBNAND型号,毕竟其理论使用寿命不会超过两年,三星存储产品质保时间可是三年呢。

但这还没完,低耐久度的闪存还有个救命的DSP(数字信号处理)

DSP在这里的基本概念很简单:读取电压变化,适应它。前文提过,NAND磨损时电压会发生变化,如果主控无法适应这种变化,NAND的压力就会增大,每次尝试编程或擦写的时候都会加剧磨损,所以这种猜猜试试的过程很伤闪存。

然而,如果主控能够读取到编程/擦写电压的变化,就很容易知道所需要的确切值,从而减轻NAND的压力和磨损,可以坚持使用更长时间。尽管DSP不是救世主,但至少能在很大程度上延缓寿命。

DSP到底有多大实际作用也很难说,但是STEC宣称它们的CellCare技术能将MLC的编程/擦写次数从一般的3000提高到最多60000,也就是增加20倍,有些非官方数据甚至声称可做到100000次。刨去其中水分不谈,DSP的作用也应该是很明显的。

 

发表评论


快捷键:Ctrl+Enter