闪存技术全面解析:从NAND到管理型闪存
1. NAND闪存概述
NAND闪存比NOR闪存成本更低且容量更高。早期的NAND芯片采用单级单元(SLC)架构,每个存储单元存储1位数据;后来发展到多级单元(MLC)芯片,每个单元存储2位数据;如今又有三级单元(TLC)芯片,每个单元存储3位数据。不过,随着每个单元存储位数的增加,存储可靠性有所下降,需要更复杂的控制器软硬件来弥补。如果对可靠性要求较高,建议使用SLC NAND闪存芯片。
NAND闪存与NOR闪存一样,被组织成擦除块,大小从16 KiB到512 KiB不等。擦除一个块会将所有位设置为1,但NAND闪存块在变得不可靠之前的擦除周期数较少,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区域设置标志来标记失败的块。
超级会员免费看
订阅专栏 解锁全文
1953

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



