1. 本质区别
特性 |
NOR Flash/NAND Flash |
SDMMC/eMMC |
定义 |
基础存储器(原始闪存芯片) |
基于闪存芯片的存储模块,带有控制器 |
组成结构 |
只有原始存储芯片 |
存储芯片 + 控制器 |
控制方式 |
需主机直接控制,读写逻辑由主机完成 |
内置控制器,主机通过接口与模块通信 |
复杂度 |
主机需管理坏块、文件系统等复杂操作 |
控制器自动完成坏块管理和数据校验 |
标准协议 |
通常无统一接口(原始访问) |
有标准化接口(如 SD、eMMC 协议) |
2. 技术对比
NOR Flash/NAND Flash
- 特点:
- NOR Flash:
- 支持随机读取,适合存储代码(如固件)。
- 容量小、成本高,但可靠性高。
- NAND Flash:
- 擅长顺序存储,适合大容量数据存储。
- 容量大、成本低,但需额外管理坏块和错误。
- 使用方式:
- 原始芯片,需主机端设计文件系统、坏块管理和 ECC(纠错码)等功能。
- 通常用在嵌入式设备中,需开发者具备硬件级控制能力。
- 典型应用:
- NOR Flash:启动代码、固件存储(如 Bootloader、BIOS)。
- NAND Flash:存储用户数据、大型文件(如手机存储、USB 驱动器的核心存储介质)。
SDMMC/eMMC
- 特点:
- SDMMC:
- 外部存储卡,通过 SD/MMC 控制器访问。
- 支持可插拔,便于扩展。
- eMMC:
- 内置存储模块,直接焊接在主板上。
- 自动管理坏块、ECC 和磨损均衡。
- 使用方式:
- 标准化协议(如 JEDEC 标准)简化主机端开发。
- 支持高性能传输(如 HS400 模式)。
- 典型应用:
- SDMMC:开发板扩展存储、消费类电子外部存储。
- eMMC:智能手机、平板电脑的主存储,嵌入式系统。
3. 主要区别对比
特性 |
NOR/NAND Flash |
SDMMC/eMMC |
集成度 |
单纯的存储芯片,无控制器 |
存储芯片 + 控制器 |
灵活性 |
主机端可灵活控制,但需复杂管理 |
自动化管理,主机仅需按协议操作 |
易用性 |
难以直接使用,需要底层开发支持 |
标准接口,开发难度低 |
存储容量 |
NOR Flash 小容量,NAND Flash 大容量 |
SDMMC 和 eMMC 容量范围大,通常为 GB 级 |
可靠性 |
NOR 高可靠性,NAND 需复杂管理 |
eMMC 可靠性较高,SDMMC 依赖卡质量 |
典型应用 |
嵌入式设备中存储代码和数据 |
消费电子和嵌入式系统主存储或扩展存储 |
4. 实际应用中的搭配使用
在许多系统中,这些存储技术是互补的,典型的组合包括:
- NOR Flash + NAND Flash:
- NOR Flash 用于存储引导程序(Bootloader)、启动代码。
- NAND Flash 用于存储操作系统和用户数据。
- SDMMC + eMMC:
- SDMMC 用于外部扩展存储(如存储用户数据)。
- eMMC 用于系统主存储(如存储操作系统、应用程序)。
总结
- NOR/NAND Flash 更偏向底层开发,适用于需要高度灵活性和控制的嵌入式项目。
- SDMMC/eMMC 提供即插即用的便利性,适合主流消费类和嵌入式产品。