SD/eMMC嵌入式存储接口与文件系统选择¶
难度:🟡 中级 | 领域:嵌入式存储 | 关键词:SD, eMMC, FatFs, LittleFS, 磨损均衡 | 阅读时间:约 16 分钟
日常类比¶
大仓库:移动板房(Secure Digital, SD 卡)可插拔、易换,但接触与振动风险高;固定仓库(嵌入式多媒体卡 eMMC)焊在板上更稳,坏了难现场替换。物联网(IoT)要 GB 级日志/媒体时,二者都是候选,但接口、可靠性与文件系统策略不同[1][2]。
摘要¶
对比串行外设接口(SPI)/SD 模式与 eMMC、速率等级、磨损均衡与掉电,以及 FAT/LittleFS 等文件系统选型。带宽为理论峰值,微控制器(MCU)主机实际吞吐常明显更低[1][5]。
1. SD 接口要点¶
| 模式 | 线数倾向 | 速度倾向 | 门槛 |
|---|---|---|---|
| SPI | 少 | 低 | 几乎任意 MCU |
| SD 1-bit/4-bit | 中 | 较高 | 需 SD 主机 |
| UHS 等 | 中 | 更高 | 1.8 V 信令等,MCU 少见 |
默认速/高速等模式时钟与总线宽度决定理论上限;许多 MCU 实际停在数十 MB/s 理论附近、有效写入更低[1][6]。
2. eMMC 要点¶
eMMC 焊装、并行 MMC 协议演进多版本;控制器常在片内做磨损均衡与坏块管理,对主机更像“可靠磁盘”,但仍怕掉电与超温写放大[2][7]。
| 维度 | SD 卡 | eMMC |
|---|---|---|
| 可替换 | 易 | 难 |
| 机械可靠性 | 插座风险 | 更好 |
| 磨损管理 | 视卡质量 | 片内较完整 |
| 成本/容量 | 灵活 | 料号锁定 |
3. 文件系统¶
| 系统 | 特点 | 适用 |
|---|---|---|
| FatFs/FAT | 兼容性好、可插拔交换 | 日志导出、U 盘式 |
| LittleFS | 掉电安全设计目标强 | 片上 Flash/可靠日志 |
| 原始块 + 自研 | 可控 | 有团队维护成本 |
SD 上用 FAT 常见;关键元数据频繁写仍会磨卡。工业卡、限写缓存、定期同步与掉电检测要一起设计[3][4][8]。
4. 可靠性问题¶
| 风险 | 缓解 |
|---|---|
| 热插拔/接触不良 | 尽量 eMMC 或锁紧机构 |
| 掉电损坏 FAT | 日志式 FS、UPS/大电容、写顺序 |
| 假冒卡 | 容量测试、品牌渠道 |
| 写放大 | 对齐擦除块、减少小写 |
5. 局限、挑战与可改进方向¶
1. 用消费卡当工业记录仪¶
局限:温漂、掉电与假容量导致现场丢数。 改进:工业规格卡或 eMMC;加文件系统级掉电测试[2][8]。
2. 理论 MB/s 当产品指标¶
局限:文件系统、驱动与 SPI 模式让吞吐塌方。 改进:按真实读写模型基准;需要时上 SD 4-bit 主机[1][6]。
3. 忽略磨损与寿命模型¶
局限:高频遥测把卡写穿。 改进:估算 TBW;环形缓冲;外置 Flash 文件系统分工[7]。
4. 唯一存储无备份策略¶
局限:文件系统损坏即变砖。 改进:双区/A-B、只读系统分区、工厂复位镜像[4][5]。
总结¶
要可换介质与电脑互通偏 SD+FAT;要振动与寿命偏 eMMC + 掉电安全文件系统。接口模式决定上限,文件系统与掉电策略决定下限(会不会丢数)。
参考文献¶
[1] SD Association, SD Specifications(物理层/速度等级).
[2] JEDEC, eMMC 标准(核对版本如 5.x).
[3] ChaN, FatFs 文档.
[4] ARM littlefs 设计与文档.
[5] 本库 embedded-fat-filesystem.
[6] ST, STM32 SDMMC 应用笔记.
[7] 闪存磨损均衡与 TBW 白皮书(闪存厂商).
[8] 掉电安全文件系统测试方法(行业文章).
[9] SPI 模式 SD 卡初始化流程(应用笔记).
[10] Linux MMC/SD 子系统概览(网关侧).
[11] 工业 SD 卡规格对比资料.
[12] IoT 日志存储架构实践(环形缓冲/远程卸数).