非易失性存储器是一种即使未通电也能保持其内容的存储器。非易失性存储器可以有不同的形式:
-
ROM – 只读存储器,数据写入一次,允许多次读取访问。
-
PROM – 可编程只读存储器,数据写入一次(不是在制造过程中,而是以后的任何时候),允许多次读取访问。
-
EPROM – 可擦除的可编程只读存储器,可以通过紫外线照射擦除内容后重新编程。
-
EEPROM – 电可擦除可编程只读存储器,可通过电压脉冲擦除。它可以被重写有限的次数。它仅在有限的时间内存储数据。
-
Flash EEPROM – 比EEPROM更先进,速度更快。允许以块的形式擦除和存储数据,但不允许以字节为单位。
Flash目前非常流行,主要有两种最流行的类型:NOR Flash和NAND Flash。
用途
- NOR 内存用于存储代码和执行。允许快速随机访问内存阵列中的任何位置。
- NAND存储器用于数据存储。需要相对较长的随机访问。编程和擦除比NAND存储器更容易。
- NAND内存的成本比NOR内存便宜。
内存架构
-
NOR 和 NAND 闪存将信息存储在由浮栅晶体管制成的存储单元中。
-
在 NOR 闪存中,每个存储单元的一端连接到源线,另一端直接连接到类似于 NOR 门的位线。
-
在NAND闪存中,多个存储单元串联连接,类似于NAND门。
-
NOR闪存提供足够的地址线来映射所有存储器范围。它提供快速随机访问和较短的读取时间。缺点包括较大的单元尺寸,导致更高的bit成本以及较慢的写入和擦除速度,一旦NOR存储单元足够大,就会使其变得昂贵。
-
NAND存储单元体积更小,成本更低,具有更高的编程与擦除速度。但是,它的读取速度较低,不允许随机访问。代码执行是不同的,NAND内存比NOR内存更复杂,NAND闪存的代码执行是通过将内容隐藏到RAM来实现的,这与直接从NOR闪存执行代码不同。
-
NOR整个生命周期表现好 ,不会发生比特翻转。
-
NAND另一个主要缺点是存在坏块,NAND闪存在器件的整个生命周期内会发生比特翻转,因此需要在提供纠错码(ECC)功能。
内存容量
- NAND存储器的密度远高于NOR闪存的密度,这主要是因为其每比特成本较低。
- 由于其较高的密度,NAND闪存主要用于数据存储应用。
擦除、读取和写入
-
在 NOR 和 NAND闪存中,存储器被组织成擦除块。此体系结构有助于在保持性能的同时保持较低的成本。例如,较小的块大小可实现更快的擦除周期。无论块有多小,需要的块数量越大,闪存的芯片尺寸就越大。
-
由于其每比特成本较低,与 NOR 闪存相比,NAND 闪存可以更经济高效地支持更小的擦除块。
-
NAND 闪存中的擦除操作很简单,而在 NOR 闪存中,每个字节都需要用“0”写入才能擦除。这使得 NOR 闪存的擦除操作比 NAND 闪存慢得多。
-
在NAND闪存中,使用多路复用地址和数据总线访问内存。典型的 NAND 闪存使用 8 位或 16 位多路复用地址/数据总线,并带有附加信号,例如芯片使能、写入使能、读取使能、地址锁存使能、命令锁存使能和就绪/忙。NAND闪存需要提供命令(读取、写入或擦除),然后是地址和数据。这些额外的操作使NAND闪存的随机读取速度大大变慢。例如,某NAND 闪存需要 30μS,而某NOR 闪存需要 120ns,NAND 的速度慢了 250 倍。
-
为了克服或减少读取速度较慢的限制,内存通常以 NAND 闪存中的page形式读取,每页都是擦除block的较小细分。仅在每个读取周期开始时,才使用地址和命令周期按顺序读取一页的内容。
-
NAND 闪存的顺序访问持续时间通常低于 NOR 闪存设备中的随机访问持续时间。在NOR闪存的随机存取架构下,每个读取周期都需要切换地址线,从而累积顺序读取的随机存取。随着要读取的数据块大小的增加,NOR 闪存中的累积延迟变得大于 NAND 闪存。因此,NAND闪存的顺序读取速度更快。但是,由于 NAND 闪存的初始读取访问持续时间要长得多,因此只有在传输大型数据块时,性能差异才会显现出来。
-
NAND 和 NOR 闪存,在重新编程之前,都应擦除闪存设备。在这两种闪存技术中,只有当块为空时,才能将数据写入块。NOR Flash 的擦除操作已经很慢,这使得写入操作更加缓慢。在NAND闪存中,与读取类似,数据通常以page为单位写入或编程。
功耗
- 在初始上电期间,NOR 闪存通常比 NAND 闪存需要更多的电流。但是,NOR 闪存的待机电流远低于 NAND闪存。两种闪存的瞬时有功功率相当。因此,有功功率由内存处于活动状态的持续时间决定。NOR 闪存在随机读取方面具有优势,而 NAND闪存在擦除、写入和顺序读取操作方面的功耗相对较低。
可靠性
- 闪存存在一种称为比特翻转bit-flipping的现象,其中某些位可能会被反转。
- 这种现象在NAND闪存中比在NOR闪存中更常见。出于良率考虑,NAND闪存在出厂时随机散布着随机的坏块。随着擦除和编程周期在NAND闪存的整个生命周期中继续进行,更多的存储单元会损坏。
- 因此,坏块处理是NAND闪存的强制性功能。另一方面,NOR 闪存附带零坏块,在内存的生命周期内坏块累积非常低。
- 因此,在存储数据的可靠性方面,NOR 闪存比 NAND 闪存更具优势。
数据保留
- 可靠性的另一个方面是数据保留,NOR Flash具有优势。
- 但是编程和擦除周期的数量也是同时需要考虑的重要特征。