☰
eMMC / SDMMC / Micro-SD / SD NAND 技术原理
2026/10/7 7:08:28 网站建设 项目流程

目录

  1. eMMC、SDMMC、Micro-SD Card 有何区别
  2. Micro SD Card 内部是否有控制器
  3. 贴片 SD NAND 与 eMMC 的本质区别、成本与可靠性
  4. SD NAND 为何更便宜:同容量成本对比
  5. SD NAND 与 eMMC 控制器主要差异列表
  6. RPMB 详解
  7. eMMC Sudden Power Loss(SPL)实现原理
  8. 选型决策速查表

1. eMMC、SDMMC、Micro-SD Card 有何区别

1.1 核心区分

SDMMC 是主机控制器接口(IP/总线);eMMC、Micro-SD 是存储设备。

  • SDMMC:SoC 上的控制器,同时兼容 MMC/eMMC、SD/microSD 卡协议
  • eMMC:焊在主板的 BGA 嵌入式存储芯片(8bit 并行 MMC 总线)
  • Micro-SD(TF 卡):可插拔外置存储卡(SD 协议,1/4bit)

1.2 详细对比表

项目SDMMCeMMCMicro-SD(TF 卡)
本质SoC 内部主机控制器 IP(硬件外设)BGA 封装存储芯片(NAND+主控)可插拔存储卡
物理形态无独立器件,集成在 SoCBGA(BGA153 为主),SMT 焊死在 PCB独立卡片,卡座插接,可随意拔插
总线协议同时支持 MMC、SD、SPIMMC 5.x 协议,8bit 并行总线SD 协议,4bit/1bit,兼容 SPI
数据位宽由配置决定固定 8bit1bit 或 4bit(UHS-I)
最高速率取决于控制器版本HS400:400 MB/sUHS-I:104 MB/s;UHS-II:312 MB/s
引脚/信号CLK、CMD、D[0:7]、RST 等CLK、CMD、D[0:7]、RST(8 位数据)CLK、CMD、D[0:3](4 位,无 RST)
典型用途嵌入式平台读写 eMMC / MicroSD平板、机顶盒、工控板主存储(放系统)相机、开发板扩容、日志存储,外部扩展
可更换——不可更换(拆焊)用户直接插拔更换
可靠性控制器本身工业级可选,焊死抗震动;但有 NAND 擦写寿命插拔易接触不良,震动场景稳定性弱于 eMMC
特殊功能host 侧,无存储功能RPMB 安全分区、boot 分区、硬件掉电保护支持 SD 版权保护,一般无 RPMB

1.3 容易混淆的关键点

  1. SDMMC 不是存储:很多 MCU/SoC 手册里叫SDMMC外设,就是 MMC/SD 二合一控制器,软件可以配置成两种模式:

    • 接 eMMC → MMC 模式,8bit
    • 接 MicroSD 卡座 → SD 模式,4bit
  2. 总线不直接互通:控制器可以切换协议,但 eMMC 芯片不能直接插到 MicroSD 卡座,物理引脚、协议时序不同。

  3. 性能差异根源:eMMC 用 8bit 并行,理论带宽更高;MicroSD 受卡座、4bit 总线限制,UHS-I 上限只有 104 MB/s,且插拔接触阻抗会影响稳定性。

  4. 硬件设计差异:

    • eMMC 布线:8 根数据线+CMD+CLK+RST,高速需要严格等长、阻抗控制
    • MicroSD:4 根数据线,走线短,一般要求宽松,但卡座 ESD、机械可靠性是重点

2. Micro SD Card 内部是否有控制器

2.1 结论

Micro-SD 内部自带控制器(卡内主控)。

和 eMMC 逻辑几乎一样:eMMC / MicroSD 都属于带内置主控的 NAND 存储;而 SDMMC 是 SoC 端的 Host 主机控制器。

2.2 MicroSD 卡内主控的工作

卡内部 =SD 主控芯片 + 一片/多片堆叠 NAND Flash + 少量阻容

主控负责:

  1. 与 SoC 的 SDMMC Host 交互,解析 SD 协议 CMD
  2. NAND 底层管理:磨损均衡 WL、坏块管理、ECC 纠错
  3. 掉电保护、SD 协议安全功能(CPRM)
  4. 内部地址翻译(LBA ↔ NAND 物理页)

外部 SDMMC Host 只管发 SD 协议命令,不需要 Host 去操作原始 NAND,这点和 eMMC 完全相同。

2.3 eMMC vs MicroSD 主控差异

项目eMMC 内置主控MicroSD 内置主控
封装BGA,焊死在 PCB塑封卡片,可插拔
对外协议MMC 协议,8bit 并行SD 协议,最多 4bit(UHS-I)
硬件信号带 RST 复位引脚无 RST 引脚
安全分区RPMB 分区是标配一般不支持 RPMB
固件能力更强大,工业级掉电保护更强简化版,成本更低

2.4 最容易踩坑的一句话区分

  • SDMMC(SoC 外设):Host 主机,发命令
  • eMMC:板载存储,自带 MMC 协议卡内主控
  • MicroSD:可插拔存储,自带 SD 协议卡内主控

误区澄清:不是"MicroSD 没有控制器",MicroSD 的控制器在卡片内部;SDMMC 是主机侧控制器,两者不是同一东西。

2.5 延伸:SD NAND(贴片 TF)

市面上还有SD NAND,本质就是把 MicroSD 卡做成 BGA 贴片,内部同样保留 SD 主控,只是去掉塑料卡壳,直接焊 PCB,对外依然走 SD 协议,复用 SDMMC 控制器。


3. 贴片 SD NAND 与 eMMC 的本质区别、成本与可靠性

3.1 一句话本质区别

SD NAND = 把 MicroSD 卡去掉塑料壳,做成 LGA 贴片,对外仍然是 SD 协议(最多 4bit);eMMC 是 JEDEC MMC 协议,8bit 并行总线。

两者都内置 NAND+主控,但是协议、总线位宽、硬件信号集、固件能力完全不同,不能直接互换。

3.2 本质差异详表

项目SD NAND(贴片 SD NAND)eMMC
协议SD 2.0/3.0(SDIO)JEDEC eMMC(MMC5.x)
总线最多 4bit 数据线,无硬件 RST 引脚;半双工8bit 并行数据线 + CMD/CLK + 硬件 RST;独立复位信号
封装LGA-8(8pin),焊接简单,返修容易BGA153 为主,BGA 球,焊接难度高
容量区间128MB~32GB,小容量为主2GB~1TB,大容量为主
性能顺序读写:十几 MB/s 级别,随机 IO 低;控制器缓存小、GC 能力弱eMMC5.1 HS400 最高 400 MB/s;大缓存、命令队列、多 Die 并行,随机性能强
安全分区无 RPMB,无 Boot 分区标配 Boot0/Boot1 系统启动分区 + RPMB 安全加密分区
NAND 颗粒(市面主流)工业款多用 SLC/pSLC,P/E:5~10 万次消费级 TLC 为主,P/E:500~3000 次;工业 eMMC 可选 SLC/MLC
PCB 布线2 层板可做,走线要求宽松高速模式需要 4~6 层板,等长、阻抗控制严格

底层架构共同点:都内置 FTL、坏块管理、ECC、磨损均衡、掉电保护。只是 eMMC 主控规格更强、功能更全。

3.3 成本对比

小容量 SD NAND 便宜很多。

  1. 同容量物料成本:SD NAND 更便宜,小容量差距巨大

    • 4GB/8GB 区间,SD NAND 通常比 eMMC 便宜 30%~50%
    • eMMC 在小容量段不经济,原厂产能优先做大容量 eMMC,小容量 eMMC 溢价很高
  2. 硬件配套成本

    • SD NAND:LGA8,PCB 2 层即可,布线简单,SMT 良率高
    • eMMC:BGA153,4 层起,高速走线等长、阻抗,PCB 和 SMT 成本显著增加
  3. 软件成本

    • SD NAND:直接复用 MicroSD 驱动(SDIO),很多 MCU 自带 SD 驱动,几乎零开发
    • eMMC:需要 SoC SDMMC 控制器支持 MMC 模式,Boot 分区、RPMB、HS200/HS400 调试工作量更大

反过来:64GB 及以上,eMMC 单 GB 成本反而更优,SD NAND 不适合大容量系统存储。

3.4 可靠性对比

可靠性分两个维度:NAND 擦写寿命vs协议/硬件安全特性。

3.4.1 擦写寿命(看颗粒类型,不是器件名字)
  • 工业 SD NAND(SLC/pSLC):P/E 5 万~10 万次,高频日志、循环写入场景优势巨大
  • 普通消费 eMMC(TLC):仅 500~3000 次,频繁写容易磨损报废

注意:不是所有 SD NAND 都是 SLC,也有 TLC SD NAND;eMMC 也有工业 SLC 型号,只是很贵。

3.4.2 协议/硬件安全、掉电保护、数据稳定性(eMMC 更强)
  1. eMMC 有硬件复位 RST 引脚,异常掉电恢复机制更完善,规范内有 Sudden Power Loss 掉电保护标准;SD NAND 没有硬件复位,依赖 SD 协议软件复位。
  2. eMMC 支持 RPMB 安全分区、独立 Boot 分区,适合安全启动、密钥存储;SD NAND 没有 RPMB,不适合安全加密场景。
  3. eMMC 主控缓存更大、后台 GC、全局磨损均衡、Auto Refresh(读扰动保护)固件能力更强,长时间静态数据保存更稳。
  4. 物理连接:两者都是贴片焊接,都没有卡座接触不良问题,抗震一样远好于可插拔 MicroSD 卡。
3.4.3 一句话可靠性总结
  • 高频循环写、小容量、普通日志存储 → SLC SD NAND 更可靠(寿命长)
  • 跑操作系统、安全启动、密钥、大容量、长期静态数据保存 → eMMC 更可靠

3.5 选型速记

  • SD NAND:小容量(128MB~8GB)、MCU 平台、不想改 PCB、频繁写日志、成本敏感;无安全密钥需求,不跑大系统
  • eMMC:Linux/Android 系统盘、大容量、需要安全启动/RPMB、高带宽读写

3.6 容易踩坑误区

  1. ❌ SD NAND 是简化 eMMC:不是,协议栈完全两套,只是共用 SoC 的 SDMMC 硬件 IP。
  2. ❌ SD NAND 一定比 eMMC 可靠:要看颗粒,TLC SD NAND 寿命不如 SLC 工业 eMMC。
  3. ❌ 驱动完全一模一样:Linux 下都走 mmc 子系统,但是 SD 模式 vs MMC 模式,设备树配置不一样,RPMB/Boot 分区 SD NAND 不存在。

4. SD NAND 为何更便宜:同容量成本对比

4.1 SD NAND 更便宜的四个核心原因

原因一:主控 IP 更简单

SD NAND 主控就是 MicroSD 卡主控,只实现 SD 协议(4bit,无 RPMB、Boot 分区硬件机制、无硬件 RST 链路),固件算法精简,不需要 eMMC 全套安全、掉电保护、Auto Refresh、命令队列等复杂功能,主控芯片面积更小、流片成本更低。

eMMC 主控要支持 MMC 8bit、HS200/HS400、RPMB、Boot 分区、硬件复位链路、更完善的 Sudden Power Loss 机制,主控复杂度高很多。

原因二:封装成本差距巨大
  • SD NAND:LGA-8,仅 8 个焊盘,基板简单,塑封、测试良率高,SMT 简单,热风枪就能返修。
  • eMMC:BGA153,153 颗焊球,超薄基板、植球工艺,测试成本高;BGA 返修台、良率损耗、植球都会增加成本。
原因三:NAND 晶圆+产能结构(最关键)

国际大厂(三星/铠侠/美光)的 3D NAND 都是优先做大容量 Die(32GB+);4GB/8GB 这类小容量 eMMC,要么用老旧 2D NAND(停产、库存稀缺,溢价高),要么把大 Die 降容使用,浪费晶圆面积,单位 GB 成本飙升。

SD NAND 国内厂商专门瞄准 128MB~8GB 小容量 IoT 市场,用 2D SLC/pSLC 晶圆做,专门服务小容量需求,没有产能浪费。

原因四:整机配套隐性成本
  • SD NAND:2 层 PCB 即可,走线宽松,不用严格等长、阻抗控制
  • eMMC 跑 HS200/HS400,PCB 一般 4 层起,需要阻抗控制、数据线等长,PCB、硬件调试成本增加

一句话:SD NAND 本质是去掉塑料外壳的 TF 卡,复用成熟低价 SD 卡主控方案;eMMC 是面向手机/平板大容量系统盘的高性能 BGA 存储,硬件/协议/安全功能全套拉满,小容量规格天生不经济。

4.2 同容量成本对比

同样容量(比如 4GB / 8GB),SD NAND 物料单价显著更便宜,一般低 30%~50%,容量越小差价越大。

容量成本趋势说明
4GB差价最大小容量 eMMC 属于非主流规格,缺货溢价严重,SD NAND 优势极强
8GBSD NAND 依然便宜——
32GB差距缩小——
≥64GB形势反转eMMC 单 GB 成本更低,SD NAND 不再划算

重要前提:颗粒等级对齐。如果拿工业 SLC SD NAND 对比普通消费 TLC eMMC:SD NAND 物料更贵,但擦写寿命强很多。市场默认对比:同等级(消费 vs 消费、工业 vs 工业),小容量 SD NAND 便宜。

4.3 同容量场景下的可靠性再对比

  1. 擦写寿命:看 NAND 颗粒类型,不是器件名字

    • SLC SD NAND:P/E 5~10 万次,循环写日志、高频写入更稳
    • 普通 TLC eMMC:P/E 仅几百~3000 次,频繁写容易磨损
  2. 协议/掉电/安全能力:eMMC 更强
    eMMC 有硬件 RST、RPMB、独立 Boot 分区,掉电恢复机制、后台 GC、数据保存(Auto Refresh)固件能力更强;SD NAND 没有硬件复位、无 RPMB,掉电保护算法更简化。

  3. 物理焊接可靠性
    两者都是贴片焊接,都没有卡座接触问题,抗震能力都远好于可插拔 TF 卡;只是 BGA153 焊接不良风险高于 LGA8。

4.4 选型一句话总结

  • 128MB ~ 8GB,不需要 RPMB 安全分区,高频写日志、成本敏感 → SD NAND
  • ≥32GB,需要安全启动/RPMB,跑 Linux/Android 系统盘,高顺序带宽 → eMMC
  • 不要被名字迷惑:eMMC 贵不是因为容量,是小容量 eMMC 属于"非主流规格+复杂主控+BGA 封装"三重溢价。

5. SD NAND 与 eMMC 控制器主要差异列表

前提:SD NAND = 贴片 TF,内部是 SD 协议控制器;eMMC 是 MMC 协议控制器,均为存储端内置主控,不是 SoC 的 SDMMC Host。

对比项SD NAND 控制器eMMC 控制器
对外协议SD 3.0(SD 模式),不支持 MMC 原生协议JEDEC eMMC(MMC5.x),原生 MMC 协议
数据位宽最大 4bit 并行,半双工最大 8bit 并行,半双工
硬件复位信号无硬件 RST 引脚;只能靠 SD 软件复位带硬件 RST 复位引脚,硬件复位能力强
专用分区仅 User Area 用户区;无 Boot0/Boot1,无 RPMBUser Area + Boot0/Boot1 + RPMB 安全分区
RPMB 安全能力不支持 RPMB,无 HMAC 写计数器防重放原生支持 RPMB,HMAC+Write Counter 鉴权防重放
启动支持不能做独立硬件 Boot 分区,无法直接从 SD NAND 启动(Host 需要先加载 SD 驱动)Boot 分区支持,SoC 可直接从 eMMC Boot 分区启动
高速模式SD UHS-I,上限 104 MB/s;无 HS200/HS400HS200 / HS400,最高 400 MB/s
命令队列无原生命令队列,单命令串行执行支持命令队列(CMDQ),多命令并行处理,随机 IO 更强
Sudden Power Loss(SPL)简化版掉电保护,固件策略简单,无标准强制规范JEDEC 标准强制的掉电保护规范,断电事务可回滚
Auto Refresh一般不支持或简化实现支持 Auto Refresh,抵抗长时间静置的数据读扰动
内部缓存缓存容量偏小,后台 GC 能力弱更大片上缓存,GC、磨损均衡算法更完善
FTL/磨损均衡面向小容量 IoT,算法简化完整企业级 FTL,全局磨损均衡,支持大 Die 管理
OTP 一次性可编程区少量 OTP,一般不用于安全密钥配对OTP 区,用于 RPMB 安全密钥烧录绑定
写计数机制普通 LBA 写,无 RPMB 递增计数器RPMB 独立递增 Write Counter(不可清零)
主控复杂度&面积逻辑少,面积小,流片成本低逻辑庞大,安全模块+高速 PHY,面积更大
错误管理基础 ECC,有限坏块管理更强 ECC、后台坏块扫描、Data Retention 管理
固件升级SD 标准命令升级,功能简单eMMC 标准 FW 更新,支持更多调试/维护指令

5.1 核心一句话总结

SD NAND 控制器本质就是 TF 卡主控的裸片版本,砍掉安全分区、硬件复位、高速 8bit PHY、命令队列;eMMC 控制器是一套面向系统启动盘的高性能+安全增强型 MMC 主控。

5.2 补充工程关键点

  1. 不是 NAND 颗粒差异,是主控硬件模块、协议能力不同;颗粒可以同为 SLC/pSLC/TLC。
  2. Linux 驱动:SD NAND 走sd驱动,eMMC 走mmc驱动,都复用内核 mmc 子系统,但能力集不一样。
  3. 掉电风险:SD NAND 主控断电保护策略简化,高频随机写场景下,断电丢数据概率高于 eMMC。

6. RPMB 详解

6.1 定义

RPMB = Replay Protected Memory Block,防重放保护存储块。

一句话:eMMC/UFS 内部一块独立、带 HMAC 鉴权的安全分区,专门用来存密钥、证书、指纹模板等敏感数据;普通 SD/SD NAND(SD9.0 之前)没有 RPMB。

6.2 核心原理

RPMB 的安全机制建立在两个核心要素之上:

要素一:共享密钥 Secure Key(256bit)

产线烧录:在安全产线,同一个密钥一次性写入 eMMC 的 OTP + SoC 端 TEE 安全世界,芯片和主机配对绑定;密钥不会暴露给普通 Linux/Android 普通系统。

所有访问 RPMB 的命令,都要用这个密钥做HMAC-SHA256 签名校验。签名不对,拒绝写入。

要素二:Write Counter(写计数器),防重放攻击

eMMC 内部维护一个只增不减的计数器,每成功写一次 RPMB 就 +1,不可清零。

重放攻击(Replay Attack):黑客抓包合法写命令,之后重复发送这条旧报文篡改数据。

因为 Counter 已经变大,旧报文里的 Counter 和芯片当前值不匹配,直接拒绝,旧的签名报文无法复用。

读操作的完整性校验

读操作时:Host 发随机数,eMMC 返回数据+HMAC 签名;Host 校验签名,确认数据没有被中间人篡改。

6.3 关键特性

  • 独立分区,容量很小,典型 4MB/8MB,不是用来存系统、日志;只放少量安全敏感信息
  • 属于 eMMC 标准分区之一,和 Boot0/Boot1、UserArea 并列
  • 写入强鉴权;读取需要校验完整性
  • 密钥绑定 SoC+eMMC 一对;eMMC 拆下来换到另一块主板,RPMB 直接打不开,防止拆件盗取密钥

6.4 典型用途

  • 设备唯一密钥、加密根密钥
  • 安全启动相关证书、OTA 校验密钥
  • 指纹/人脸支付模板、DRM 版权密钥
  • 工控/车载设备安全参数、防篡改固件校验信息

6.5 与 SD NAND / MicroSD 的对比

  • eMMC:标配 RPMB(eMMC4.4 及以上)
  • 传统 MicroSD / SD NAND:无 RPMB(SD9.0 才新增可选 RPMB,市面上几乎见不到)
  • UFS:同样支持 RPMB,机制一致

6.6 工程上的痛点

  1. 产线必须有安全烧录工位,密钥注入是生产环节,普通烧录器做不了
  2. 软件必须依赖 TEE(可信执行环境),普通 Linux 内核无法直接访问 RPMB
  3. 一旦 Secure Key 烧写完成,不可擦除修改;密钥丢失,RPMB 永久失效
  4. 有写入次数上限(Write Counter 最大值),所以 RPMB 不适合高频循环写

6.7 一句话选型判断

产品需要安全启动、密钥防篡改、防拆件盗密钥 → 必须 eMMC(RPMB);普通日志存储,不需要密钥保护 → SD NAND 足够,省成本。


7. eMMC Sudden Power Loss(SPL)实现原理

7.1 核心定义

eMMC SPL 不是片内大电容(SSD 那种 PLP),是以控制器固件+原子写+元数据日志+上电恢复为核心的事务保护机制;配合 JEDEC 标准 PON 断电通知命令、硬件 RST,降低异常断电后的元数据/FTL 损坏概率。

重点区分:SPL ≠ 掉电电容备份;普通消费 eMMC 内部没有储能电容;工业 eMMC 可选外部后备电容配合 PON。

7.2 底层核心思想:事务化写入 + FTL 元数据日志

NAND 页编程需要 us~ms 级时间,如果写到一半断电,该页会变成半编程、ECC 不可纠正的坏页,同时 FTL 映射表(LBA→物理块)一旦半截写入,整个文件系统直接挂。

eMMC 主控的 SPL 思路:

  1. 先写日志元数据(journal)到独立系统块(System Block,SLC 模式保存,可靠性更高),标记本次写操作:待更新的 LBA、旧物理页、新物理页
  2. 再执行 NAND 页编程
  3. 编程成功后,再提交(commit)FTL 映射表

这是原子事务:要么完整成功,要么回退到断电前的有效状态,不会出现映射表半截更新。

7.3 三个关键硬件/固件模块

模块一:System Block(系统块,SLC 模式存储 FTL/日志)

eMMC 会预留一部分 NAND 块,强制跑 SLC 模式,专门放 FTL 映射表、掉电日志、坏块信息。SLC 的编程稳定性、抗断电能力远强于 TLC。

断电瞬间如果正在更新映射表,日志会记录事务断点。上电重启后主控固件自动扫描 System Block 日志:

  • 事务标记=已完成:正常
  • 事务标记=未提交:回滚到事务开始前旧映射,丢弃本次不完整写入
模块二:Reliable Write(可靠写,eMMC5.1 标准)

专门针对单 LBA 的原子更新:旧地址数据保持有效,直到新页完全编程成功。

断电发生在编程中途:旧数据完好,不会出现一半新一半旧的撕裂数据。适合写关键配置、参数。

模块三:上电自动恢复流程(Power Loss Recovery)

上电后 eMMC 固件自动执行,不需要 Host 干预:

  1. 读取 System Block 内的 SPL 事务日志
  2. 检测是否存在未完成事务
  3. 若存在半截事务:回滚 FTL 映射,废弃半截编程的物理页,标记该块
  4. ECC 扫描,识别 UECC(不可纠正 ECC)页面
  5. 将该无效页丢弃,把该块内其余有效数据迁移到新健康块
  6. 恢复完成,再进入正常 Idle 状态,响应 Host 命令

7.4 JEDEC 标准的 PON(Power Off Notification,断电通知)

属于 SPL 配套主动防护(不是被动断电恢复):

Host 侧电源检测到电压跌落,提前发送 PON 命令(短 PON / 长 PON)通知 eMMC,eMMC 收到后:

  • 停止接收新写入
  • 将 SRAM 缓存里的 FTL 元数据、关键日志刷入 NAND System Block
  • 完成当前正在执行的 NAND 编程
  • 进入安全断电状态

系统设计要点:Host 需要后备电容,维持足够供电时间让 eMMC 跑完 PON 流程;SD NAND 没有 PON 标准命令。

7.5 Hardware RST_n 硬件复位的辅助作用(eMMC 独有)

  • 异常断电后上电,Host 可以拉低 RST_n 复位 eMMC
  • 复位信号强制 eMMC 控制器复位,终止卡住的 NAND 编程状态,安全进入上电恢复流程
  • SD NAND 没有硬件 RST 引脚,只能依靠 SD 软件复位,遇到写操作卡死场景恢复能力弱

7.6 SPL 能力边界(非常重要,很多人误解)

  1. 不能保证缓存里还没写入 NAND 的普通业务数据不丢

    普通 Cache Write 模式下,Host 写入到 eMMC 片上 SRAM 缓存,主控会异步后台刷 NAND;如果断电太快,缓存内未刷入 NAND 的数据直接丢失。SPL 保护的是 FTL 映射、元数据不崩溃,不是用户业务数据。

    想保护业务数据:Host 发 Flush 命令,或者使用 PON,或者 Reliable Write。

  2. SPL 只能保证 eMMC 设备本身不卡死、FTL 不损毁,上电还能正常识别,不代表上层文件系统(ext4/fat)一定完好;文件系统本身也要日志(ext4-journal)配合。

  3. 片内无大容量储能电容;SSD 的 PLP 电容是另外一套方案,不要混淆。

7.7 和 SD NAND 掉电机制对比

SD NAND 主控只有简化的掉电处理:没有 System Block 日志事务、无 Reliable Write、无 PON 命令,断电中途写操作容易直接破坏映射表;上电缺少标准化的自动事务回滚流程,更容易出现卡盘、LBA 映射损坏。

7.8 精简原理流程

Host 写命令 ↓ eMMC 主控:写事务日志(System Block) ↓ 执行 NAND Page 编程 ↓ 成功后更新 FTL 映射 ↓ ┌─ 正常:日志标记提交完成 └─ ⚡ 突然断电:事务停在中间 ↓ 上电 → eMMC 固件扫描日志 ↓ 检测未完成事务 → 回滚 FTL,废弃半截页 ↓ 恢复到有效状态

8. 选型决策速查表

8.1 按容量选型

容量范围推荐方案理由
128MB ~ 8GBSD NAND小容量 eMMC 溢价严重,SD NAND 成本低 30%~50%
8GB ~ 32GB视需求而定成本差距缩小,看安全/性能需求
≥64GBeMMCeMMC 单 GB 成本更优,SD NAND 不适合大容量

8.2 按功能需求选型

需求SD NANDeMMC
安全启动 / RPMB 密钥存储❌ 不支持✅ 标配
硬件复位 RST❌ 无✅ 有
独立 Boot 分区❌ 无✅ Boot0/Boot1
高速读写(>104 MB/s)❌ UHS-I 上限✅ HS400 达 400 MB/s
命令队列 CMDQ❌ 无✅ 支持
标准化掉电保护 SPL⚠️ 简化版✅ JEDEC 标准
Auto Refresh 读扰动保护⚠️ 一般不支持✅ 支持
PON 断电通知❌ 无✅ 支持

8.3 按使用场景选型

场景推荐方案关键理由
MCU 平台、小容量日志存储SD NAND(SLC)驱动简单、成本低、擦写寿命长
高频循环写入(日志/数据采集)SD NAND(SLC/pSLC)P/E 5~10 万次,远高于 TLC eMMC
Linux/Android 系统盘eMMCBoot 分区、高带宽、完整 FTL
安全启动 / 加密设备eMMCRPMB 安全分区是刚需
工业/车载高可靠场景eMMC(工业级 SLC)SPL+RST+Auto Refresh 全套保护
成本极度敏感的 IoT 产品SD NAND物料+PCB+SMT 全链路成本低
大容量媒体存储eMMC≥64GB 时单 GB 成本更优

8.4 最终决策树

是否需要安全启动/RPMB/密钥存储? ├── 是 → eMMC(唯一选择) └── 否 → 容量是否 ≥64GB? ├── 是 → eMMC(单GB成本更优) └── 否 → 是否高频循环写入? ├── 是 → SD NAND(SLC/pSLC,寿命优势) └── 否 → 是否成本极度敏感? ├── 是 → SD NAND └── 否 → 视性能/可靠性需求而定

附录:术语对照表

术语全称说明
eMMCembedded MultiMediaCard嵌入式多媒体卡,BGA 封装的 MMC 存储
SDMMCSD / MMC Host ControllerSoC 上的 SD/MMC 二合一主机控制器
MicroSD / TFMicro Secure Digital / TransFlash可插拔微型 SD 存储卡
SD NAND——贴片式 SD 协议 NAND 存储,去掉外壳的 TF 卡
RPMBReplay Protected Memory Block防重放保护存储块,eMMC 安全分区
SPLSudden Power Loss突然掉电保护机制
PONPower Off Notification断电通知命令,JEDEC 标准
FTLFlash Translation Layer闪存转换层,LBA 到物理地址映射
WLWear Leveling磨损均衡
ECCError Correction Code纠错码
GCGarbage Collection垃圾回收
CMDQCommand Queue命令队列
TEETrusted Execution Environment可信执行环境
OTPOne-Time Programmable一次性可编程存储区
UECCUncorrectable ECC不可纠正 ECC 错误
HMACHash-based Message Authentication Code基于哈希的消息认证码
P/EProgram/Erase编程/擦除次数,NAND 寿命指标
SLCSingle-Level Cell单阶存储单元,1bit/cell
MLCMulti-Level Cell多阶存储单元,2bit/cell
TLCTriple-Level Cell三阶存储单元,3bit/cell
pSLCpseudo SLC伪 SLC 模式,用 TLC 颗粒模拟 SLC

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询