乐趣区

关于闪存:NOR-Flash和NAND-FLASH的区别

Flash Memory 是一种非易失性的存储器。在嵌入式零碎中通常用于寄存零碎、利用和数据等。在 PC 零碎中,则次要用在固态硬盘以及主板 BIOS 中。绝大部分的 U 盘、SDCard 等挪动存储设备也都是应用 Flash Memory 作为存储介质。

依据硬件上存储原理的不同,Flash Memory 次要能够分为 NOR Flash 和 NAND FLASH 两类。次要的差别如下所示:
NAND FLASH 读取速度与 NOR Flash 相近,依据接口的不同有所差别;
NAND FLASH 的写入速度比 NOR Flash 快很多;
NAND FLASH 的擦除速度比 NOR Flash 快很多;
NAND FLASH 最大擦次数比 NOR Flash 多;
NOR Flash 反对片上执行,能够在下面间接运行代码;
NOR Flash 软件驱动比 NAND FLASH 简略;
NOR Flash 能够随机按字节读取数据,NAND FLASH 须要按块进行读取。
大容量下 NAND FLASH 比 NOR Flash 老本要低很多,体积也更小;
(注:NOR Flash 和 NAND FLASH 的擦除都是按块块进行的,执行一个擦除或者写入操作时,NOR Flash 大概须要 5s,而 NAND FLASH 通常不超过 4ms。)

1、NOR Flash
NOR Flash 依据与 CPU 端接口的不同,能够分为 Parallel NOR Flash 和 SPI NOR FLASH 两类。

Parallel NOR Flash 能够接入到 Host 的 SRAM/DRAMController 上,所存储的内容能够间接映射到 CPU 地址空间,不须要拷贝到 RAM 中即可被 CPU 拜访,因此反对片上执行。SPI NOR FLASH 的老本比 Parallel NOR Flash 低,次要通过 SPI 接口与 Host 连贯。

鉴于 NOR Flash 擦写速度慢,老本低等个性,NOR Flash 次要利用于小容量、内容更新少的场景,例如 PC 主板 BIOS、路由器零碎存储等。

2、NAND FLASH

NAND FLASH 须要通过专门的 NFI(NAND FLASH Interface)与 Host 端进行通信,如下图所示:

NAND FLASH 依据每个存储单元内存储比特个数的不同,能够分为 SLC(Single-LevelCell)、MLC(Multi-LevelCell)和 TLC(Triple-LevelCell)三类。其中,在一个存储单元中,SLC 能够存储 1 个比特,MLC 能够存储 2 个比特,TLC 则能够存储 3 个比特。

NAND FLASH 的一个存储单元外部,是通过不同的电压等级,来示意其所存储的信息的。在 SLC 中,存储单元的电压被分为两个等级,别离示意 0 和 1 两个状态,即 1 个比特。在 MLC 中,存储单元的电压则被分为 4 个等级,别离示意 00011011 四个状态,即 2 个比特位。同理,在 TLC 中,存储单元的电压被分为 8 个等级,存储 3 个比特信息。

NAND FLASH 的单个存储单元存储的比特位越多,读写性能会越差,寿命也越短,然而老本会更低。Table1 中,给出了特定工艺和技术水平下的老本和寿命数据。

相比于 NOR Flash,NAND FLASH 写入性能好,大容量下成本低。目前,绝大部分手机和平板等挪动设施中所应用的 eMMC 外部的 Flash Memory 都属于 NAND FLASH。PC 中的固态硬盘中也是应用 NAND FLASH。

退出移动版