NAND 与 eMMC 选型对照

本文对应 成长路径 高优先级:用一张表支撑 硬件选型软件栈 决策,并预留 板级实测 记录位置。


快速对照表

维度Raw NAND + UBI/UBIFSeMMC + ext4
接口并行/ONFI/SPI NANDeMMC(SD 协议族)
Linux 栈MTD → UBI → UBIFS块设备 → ext4
坏块需 UBI/FTL 处理控制器内部管理
启动常配合 SPL + dtb分区 + FAT 常见
随机写需注意擦除块、日志一般较好
容量曲线成本低(某些容量段)中高容量省心
软件复杂度较高(分区、ubinize)较低
OTA卷级、注意掉电分区镜像、A/B 成熟
典型场景成本敏感、工业、老方案消费、网关、新设计

何时优先 eMMC

  • 团队希望 块设备 + ext4 标准流程,缩短 bring-up。
  • 需要 较大容量 日志、容器、模型文件。
  • 使用 Android / 高集成 BSP,eMMC 为默认。

何时优先 Raw NAND

  • BOM 成本 约束明确,容量不大(如 < 4 GiB)。
  • 硬件已定型为 NAND,沿用 UBI 方案。
  • 需要 片内启动(SPI NOR + NAND 根文件系统)等组合。

软件工作量粗估

工作项NAND 路径eMMC 路径
分区与烧录ubinize、坏块策略GPT、dd、FAT boot
根文件系统UBIFS 镜像制作ext4 镜像 / tar
现场排障ubimtd 工具链fscksmart(若支持)
内核配置MTD、UBI、UBIFSMMC、ext4

板级实测记录(模板)

复制下表到项目 wiki,填写实测数据:

项目本板 NAND本板 eMMC备注
型号 / 容量
顺序读 MB/sdd / fio
顺序写 MB/s
掉电写测试次数 / 结果
启动到 shell 时间
坏块 / 重试事件dmesg

与站内文档的对应


延伸阅读