MLC和SLC最大的区别在于 :
MLC允许在一个内存元素中存储多个比特位的信息(通常是2个比特位)
SLC仅允许在一个内存元素中存储1个比特位的信息
所以在同样数量的晶体管里面, MLC可以比SLC存储更多的数据.
另外要介绍一下平均擦寫演算法 :
顧名思義,大家都知道每個快閃記憶體的每個塊是有擦寫(Erase)限制的,尤其是在MLC的快閃記憶體上面,每個塊的擦寫次數從5xnm工藝的5,000次,到34nm的3,000次,以及現在25nm的1,500次到2000次之間,雖然現在Intel/Mircon已經推出原廠掛保證的25nm eMLC,達到34nm3,000次的擦寫限制數。但每一次的工藝進步提升的就是單位容量比率,在同樣尺寸的TSOP 48腳封裝大小下,nm指的就是每個閘極壁之間的距離,當這工藝越進步,單位容量是可能翻倍提升,例如34nm的每顆4GB容量,到了25nm,變成是8GB容量起跳,不過這越見越擠的空間,就代表中間儲存的電子進出的空間有限,閘極壁變薄,間接減低了耐久壽命,為了怕同樣的電子不停的擦寫,導致某些塊容易提早升天,因此我們需要藉由控制器的平均演算法把資料平等的寫入到每個不同的區塊內,儘量讓每個區塊的壽命都是均等的。
MLC和SLC的优缺点 :
MLC优点
成本低, 同样数量的晶体管可以做到更大的容量.
MLC缺点
由于1个内存元素存储多个比特信息, 所以错误几率高, 需要纠错算法. 同时影响写入速度.
在生命周期内可擦写的次数更少, 寿命短.
更耗电.
SLC优点
写入速度快.
寿命更长.
更省电.
SLC缺点
成本高.
【参考】
1. http://en.wikipedia.org/wiki/MLC_flash
2. http://en.wikipedia.org/wiki/Floating_Gate_MOSFET
3. http://en.wikipedia.org/wiki/Flash_memory
4. http://en.wikipedia.org/wiki/SandForce
5. http://en.wikipedia.org/wiki/Indilinx
6. http://en.wikipedia.org/wiki/JMicron
7. http://en.wikipedia.org/wiki/Marvell_Technology_Group
8. http://en.wikipedia.org/wiki/Phison
10. http://www.linux-mtd.infradead.org/doc/nand.html
11. http://www.linux-mtd.infradead.org/nand-data/nanddata.html
12. http://www.linux-mtd.infradead.org/tech/mtdnand/index.html
13. http://en.wikipedia.org/wiki/Bit_error_ratio