MLC转成SLC模式没有想象的那么好

序言

MLC可以通过set fetures命令将MLC或者TLC转换为SLC模式,不知道那位有才人起名曰:pSLC,应该是Pseudo SLC的缩写,浓浓的歧视味道扑面而来。

尽管很多厂商已经开始使用此模式供货,但目前为止尚未见到任何关于MLC转为SLC之后的有详实测试数据的关于擦写次数以及可靠性评估文章。

瑞耐斯希望用真正的测试数据来验证MLC转为SLC之后,是否与理论上推测的接近。 

MLC可以转SLC的理论依据 

MLC与SLC的区别就在于一个cell中存几个bit的数据,MLC存两个bit,SLC存1个bit。对于MLC而言LSB对应的就是SLC模式页,也就是我们常说的Lower page,如果仅仅使用Lower page而不使用upper page,如下图所示,每次只将Lower page的“1”变成“0”,岂不是最快且需要改变电压最小的方法?而后面“01”和“00”两组电压值都不复存在。当然,不使用upper page就等于另外一半的容量没有使用,所以,容量只有MLC的一半。


当发送set features命令之后(首先需要设定feature address,此处不便公开),Host将会发送SLC的模式下擦除命令擦除Block,然后发送program命令,将page按SLC模式进行program,这样,block才能转变成SLC模式。

转换为SLC模式以后,TRIM会永久设定每个cell中默认的bit数量(1个),页寄存器参数也将会只允许每个cell中一个bit。 

从理论上讲,MLC转换为SLC就是只使用Lower page,而不使用Upper page。 

MLC转SLC模式后真实耐磨度

先看结论,MLC转为SLC之后,P/E cycle次数达到了37827次,而原始误码率到10^(-0.909)时才出现擦写失败,这个是很有意义的:


MLC模式下,P/E次数达到5822次时出现擦写失败,此时,原始误码率还在10^(-3.537):

 

测试配置:

MLC和SLC都使用同样的ECC强度,二者使用同样的pattern:2345689AB为种子产生的伪随机数:


MLC转为SLC模式之后,只有一半的page在工作(每个Block有256个page,只有128个page可以使用):



小结:

1、MLC转SLC有效果,但无法达到真正的SLC耐磨度;

2、可靠性方面,SLC模式比MLC更可靠;

3、把MLC转SLC的时机非常重要,当MLC接近寿命终结时再转换SLC模式基本没有效果;

4、从成本角度考虑,花费2倍价格,提升大约6倍左右的寿命是否划算……不好说。

测试局限:

只使用单一Block进行测试,样本数量太少,不足以说明问题,SLC模式下,单一Block花费了13小时8分钟才被磨损到寿命终结。

只使用某一厂商闪存进行测试,并不代表所有厂商MLC转SLC模式后的水平。

对于那些希望用到SLC的可靠性但又负担不起SLC成本的用户而言,MLC转换为SLC虽然牺牲了一半容量,但价格的确便宜了好多倍,目前SLC每GB的成本普遍都在4美金或者以上,而MLC每GB连0.4美金都不到(非工业类),即使牺牲一半容量,成本也不到每GB 1美金,巨大的成本差异对用户来说无疑极具吸引力,一个256GB pSLC与SLC仅Nand Flash成本差异可以就可以达到500美元以上。

猜你喜欢

转载自blog.csdn.net/weixin_38233274/article/details/81041569
今日推荐