对固态SSD硬盘闪存芯片SLC、MLC、TLC方式的理解
wxleasyland@sina.com
2016.2
一、对比
网上一般都这样说:
SLC即1bit/存储单元,价格贵,速度快,寿命长,约10万次擦写寿命。
MLC即2bit/存储单元,所以容量是SLC的2倍,价格中等,速度一般,寿命一般,约3000~1万次擦写寿命。
TLC即3bit/存储单元,所以容量是SLC的3倍,价格便宜,速度慢,寿命短,约500次擦写寿命。
二、为什么MLC、SLC的速度慢?
SLC只需要区别1和0。直接出结果,速度快。
MLC通过使用4个的电压等级(电荷量),来区分2个bit,即00、01、10、11。写入、读取时需要确认电压(电荷量),我不知道芯片是如何确认电荷量的,但估计应是要耗点时间,所以速度就慢了。
SLC需要8个电压等级。要控制电荷量越细,速度就要越慢些。
三、为什么MLC、SLC的擦写寿命不是按相应容量倍数减少,而是少了非常多?
SLC是10万次,TLC才500次,为什么不是10万次/3=3万次?
1. 闪存擦写时,TLC是3bit/存储单元,一次要擦3bit,那对于“相同容量”的SSD硬盘来说,TLC的擦写损耗就是SLC的3倍了。
实际闪存擦写时,一次性要对整个页进行擦写。比如一次要擦写4K个存储单元,则对SLC来说,是4K bit,而对TLC来说,就是12K bit了,把其它不需要擦的8K bit也给擦了。这样也增加了损耗。
2. 但擦写次数还是对不上,个人想了以后觉得,存储单元每写入一次,漏电就会增加一点。漏电太多就不能用了。
比如MLC分成1V、2V、3V、4V这四个电压等级。写入4V的电压,结果由于漏电,存储单元只能感应出3V来,那这个单元就不能用了。
而对于SLC来说,4V、3V、2V、1V都是有电压的,都可以用。
而TLC的电压等级分得更多,分成了8个等级,只要稍微漏一点点电,存储单元就不能用了。
所以MLC的寿命远远少于SLC,TLC的寿命远远少于MLC。这是主要原因!
四、也可以推断出,SSD硬盘在失电后,数据保存时间上,SLC长于MLC,MLC长于TLC。
TLC存储单元只要稍微电荷丢失掉一点,存储内容就变掉了,数据就不能用了。用TLC保存数据风险很大。
五、厂家为什么不开发出MLC/SLC两用模式?
在前期芯片比较好时,采用MLC方式;当芯片老化时,改成使用SLC方式。照理是可以实现的技术,比如有的SSD是MLC的,内部可以用SLC模式去跑。
但是,如果要改模式,则原数据全部不能用了,容量减半也不一定够用了。而且厂家巴不得你换新的。所以不现实。
六、关于MLC的芯片采用SLC模式去跑的问题?
当存储的数据比较少时,采用SLC模式去跑。东芝SSD好像传说是这样的。
比如MLC芯片,共有4个单元,每个单元2bit,可装8bit。
数据只装了4bit,占2个单元,那可以把芯片跑成SLC的,每个单元装1bit数据,把4个单元全占用了。这样读写速度就快多了!测试出来的速度指标相当好看。
但是,在相同数据写入总量下,相当于擦写损耗增加了1倍。
而且,擦写损耗是算在MLC模式的,而不是SLC模式的。因为芯片单元最终是工作于MLC模式的(即“跑SLC模式”时不是按照SLC模式的10万次寿命去减寿命)。
所以,牺牲了寿命,来得到更快的速度。好像不划算,因为MLC的速度已经够我们用了,这时还是寿命比较重要。
七、缓存RAM
缓存RAM能减少硬盘闪存的写入次数,有缓存的SSD肯定比没有的要好。这个用脚趾头想就会知道,不要听厂家乱鼓吹。东芝SSD好像就没有缓存。
八、结论
所以,在MLC技术比较成熟的情况下,采用MLC是性价比最高的。
芯片原理决定了即使是杂牌的MLC,也比品牌的TLC要耐用。
另外,不要买没有缓存、会跑SLC的SSD。
用户1551789 2016-2-2 16:25
用户1568885 2010-12-28 15:49
用户1651241 2009-11-8 19:07
tengjingshu_112148725 2009-9-3 08:44