闪存技术全解析:从NAND到管理型闪存的深度探索
1. NAND闪存概述
NAND闪存相较于NOR闪存,价格更为低廉且容量更高。初代NAND芯片采用单级单元(SLC)架构,每个存储单元存储1位数据;后续发展出多级单元(MLC)芯片,每个单元存储2位数据;如今又有三级单元(TLC)芯片,每个单元可存3位数据。不过,随着每个单元存储位数的增加,存储可靠性有所下降,这就需要更复杂的控制器软硬件来弥补。若对可靠性要求较高,建议使用SLC NAND闪存芯片。
NAND闪存以擦除块形式组织,块大小在16 KiB到512 KiB之间,擦除操作会将块内所有位设为1。但在块变得不可靠之前,其可承受的擦除周期数较少,例如TLC芯片通常仅1K次,而SLC可达100K次。NAND闪存只能按页读写,页大小一般为2 KiB或4 KiB,且不能按字节访问,因此代码和数据需先复制到RAM才能访问。
数据传输时易出现位翻转问题,可通过纠错码(ECC)检测和纠正。SLC芯片一般使用简单的汉明码,能有效在软件中实现,可纠正页读取中的单比特错误;MLC和TLC芯片则需更复杂的Bose - Chaudhuri - Hocquenghem(BCH)码,每页最多可纠正8比特错误,且需要硬件支持。
ECC需存储在额外的带外(OOB)区域,即备用区域。SLC设计通常每32字节主存储对应1字节OOB,如2 KiB页设备每页OOB为64字节,4 KiB页则为128字节。MLC和TLC芯片的OOB区域更大,以适应更复杂的ECC。
生产过程中,制造商测试所有块,若有块失败,会在该块每页的OOB区域设置标志。新芯片有多达2%的块被标记为坏块并不罕见,且在达到擦除周期限制前,也可能有类似比例的块在擦除
超级会员免费看
订阅专栏 解锁全文
1932

被折叠的 条评论
为什么被折叠?



