0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从eMMC到NAND,嵌入式系统存储的软件优化策略

来源:jf_58831126 作者:jf_58831126 2025-03-13 15:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

嵌入式系统开发领域,存储器作为信息交互的核心载体,其技术特性直接影响着系统性能与稳定性。然而,有些人在面对Linux、安卓等复杂操作系统环境时,理解其存储机制尚存局限,为突破这些技术瓶颈,飞凌嵌入式希望通过对存储相关知识的分享,助力大家构建完整的存储知识体系框架。

首先,嵌入式场景中常用来存储数据的介质分为两类:

Managed NAND,以eMMC(embedded Multi-Media Card)TF卡、SD卡为主内部带有存储管理控制器

Raw NAND,以NAND为主的未带有存储管理功能,只包含简单IO逻辑控制。

wKgZPGfSg4OAcuDvAAkSSzUAa1E833.png

上图描述了NAND存储和eMMC存储的关系,NAND Controller代指核心板的CPU,NAND指实际参与存储的区域,由此看出实际上eMMC和NAND的区别在于存储管理控制是在eMMC内部还是核心板的 CPU。存储管理主要包括功能:坏块管理、ECC校验、磨损均衡、数据保持和地址管理及映射等。

01

存储的相关概念

存储类型分为SLC、MLC、TLC、QLC。嵌入式常用类型低存储容量一般为SLC和MLC,高存储容量一般是TLC。

SLC(Single-Level Cell) 速度快,寿命长,价格贵,理论擦写次数在10万次左右。

MLC(Multi-Level Cell) 速度较快,寿命较长、价格较贵,理论擦写次数在3000-5000次。

TLC(Trinary-Level Cell) 速度较慢,寿命较短、价格最便宜,理论擦写次数在1000-3000次。

QLC(Quad-Level Cell) 容量可以做的更大,成本上更低,劣势就是P/E寿命更短。

pSLC(pseudo SLC) 以 MLC的FLASH为基础,但在每个Cell中只存1 bit而不是2 bit数据。由于在同一个Cell中跟SLC一样只存储一个bit,但又不是真的 SLC,所以称之pSLC。依上述原理,若将MLC用做pSLC,存储空间将减半,寿命通常可以提升到3万次左右。

P/E(Program/Erase Count) :擦写寿命。耐用性两个指标之一。

TBW(Total Bytes Written) :总写入量。是厂商用以界定质保期的数值,即超过了这个数值的写入量之后,厂商就不再给予质保服务。耐用性两个指标之一。

FW(Firmware) :由于eMMC内部控制器属于软件编程控制器,会需要固件,eMMC在存储厂家出厂前已经烧录对应固件。

WA(Write amplification) :写放大。表示实际写入的物理数据量是写入数据量的多少倍,即:闪存写入的数据量÷主控写入的数据量 = 写放大。

GC(Garbage Collection) :垃圾回收。NAND介质的存储写入是按照页(Page)写入,是按照块(Block)擦除。

02

eMMC和NAND的差异

(1)eMMC与NAND对比

wKgZO2fSg7eAaFqMAAXJ8Pk3iM4805.png

(2) eMMC的相关特点

eMMC使用单独的硬件控制器对存储进行管理,相比于Linux下NAND驱动管理可靠性更高。

内部固件集成多种功能:使用寿命等健康信息记录、根据不同的场景动态调整内部存储策略。

接口标准,各厂家各容量兼容性好。

eMMC的存储寿命普遍不如NAND寿命长。相比于NAND大部分使用SLC或者MLC,eMMC大部分是MLC或者TLC,eMMC相对于NAND单位寿命会低;但是由于eMMC的存储容量一般较大,一定程度上抵消单位寿命低的劣势。

(3)NAND的相关特点

系统的驱动主要是由SoC厂家及系统上游逻辑决定,针对不同的NAND存储介质无法发挥出最大优势,或者存在驱动逻辑兼容性问题。

NAND容易出现位翻转、坏块等情况,相比eMMC内部管理,CPU管理需要占用较大系统开销用来维护存储内容。

接口标准采用ONFI接口协议,但是不同厂家的NAND的页、OOB区及块大小等配置存在差异,如果物料停产需要换型会存在镜像不兼容风险。

NAND的布局控制是由CPU管理,对应的分区管理和逻辑定制会有很大的灵活性,根据实际应用场景制定不同的管理策略。

NAND单位存储寿命较长。

综上,产品存储选型建议使用带有管理功能的eMMC。

03

存储使用建议

eMMC:建议预留25%空间,避免频繁触发GC。

由于存储的最小写入单元是Page,最小的擦除单元是Block。以16K page举例,如果单次写入小于 一个Page的数据,会造成写放大。如果单次写入数据远远小于Page的大小,写放大会很严重。最终会导致寿命大大缩短。建议对小数据先通过DDR内存进行缓冲,缓冲一定数据再组合写入。

使用中如果出现异常断电,定期需要对文件系统使用工具扫描修复,避免由于异常断电数据未及时 保存导致文件系统异常。如果是频繁异常掉电场景,可以增加硬件加掉电保护措施,用来保证系统稳定性。

产品设计初期,需要结合实际应用场景存储数据的频率,为保证产品寿命要求,评估选择合适的存储类型和容量。

04

飞凌嵌入式赋能

(1)针对eMMC,根据对寿命及健康信息读取分析,让应用掌握更全面的存储信息,并作出合理的调整。

应用可以实时监控当前的存储寿命,用来在设备存储寿命降低到自定义阈值时发送报警信号做 特定处理。

应用可以实时查看系统的健康信息,评估存储的写放大系数,用来评估应用软件升级对存储带 来的影响,进而估算剩余寿命。

(2)针对NAND,根据增加手段统计实际NAND的擦写、搬移、标记等信息,给出应用IO操作改善建议。

(3)针对所有类型存储,根据对终端设备不同使用场景特点采集分析,评估出更适合场景的应用编写参考。

终端实际应用场景主要集中在:日志循环存储、应用关键数据参数存储及缓冲数据。

日志循环存储特点:循环擦写,写入频繁,读取不频繁。和文件系统同时存在,会出现写频繁 和只读混放数据,会影响整体的稳定性。举例:大部分eMMC的损耗平衡特性是全盘范围,软件上的文件系统分区未实现想要的数据隔离效果,这个其实可以在初期评估阶段解决。

关键数据特点:小数据量状态信息,比较重要,信息量不大。

缓冲数据特点:顺序写入,整体擦除。

实际软件开发过程中,根据如上数据特点,为保证产品稳定性在如下3个阶段给出优化方案:

产品开发前做对应存储方案选型,能够提前评估出风险。通过实际应用场景产品的目标寿命, 评估出存储类型、文件系统类型、应用数据读写建议及烧录方式等。

产品开发完成前做实际存储的优化。产品的样机测试阶段需要对系统实际读写频次、大小做接 口数据统计分析,对存储做数据稳定性分析(例:NAND存储变位及坏块分析)。通过分析给 出读写数据单元大小优化建议、连续/随机读写优化建议。

产品部署前做最终的预估寿命评估。结合最终优化效果给出实际应用中的一个寿命预估。

除上述优化策略外,不同eMMC、NAND厂家在满足接口协议标准前提下提供了不同的优化特性,部分优化特性需要结合操作系统修改才能发挥出更好的效果。

05

总 结

存储稳定性直接关乎到最终产品的稳定性,本文围绕eMMC和NAND的特性做了对比介绍,目的是帮助研发工程师在实际开发产品过程中更简单、更高效。

​审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5209

    文章

    20645

    浏览量

    336906
  • NAND
    +关注

    关注

    16

    文章

    1766

    浏览量

    141300
  • emmc
    +关注

    关注

    7

    文章

    274

    浏览量

    56272
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    2026嵌入式存储选型:eMMC断供、SPI NAND难调,SD NAND成最大变量

    当8GB eMMC交期拉长至52周,当SPI NAND的坏块管理让工程师调试怀疑人生,2026年的嵌入式存储市场正上演一场“冰与火之歌”。
    的头像 发表于 04-14 14:46 229次阅读
    2026<b class='flag-5'>嵌入式</b><b class='flag-5'>存储</b>选型:<b class='flag-5'>eMMC</b>断供、SPI <b class='flag-5'>NAND</b>难调,SD <b class='flag-5'>NAND</b>成最大变量

    应对eMMC供货短缺,SD NAND嵌入式存储替代新方案

    当前,AI大模型需求爆发正引发全球存储芯片结构性短缺。原厂将大部分产能转向HBM、企业级SSD等高毛利产品,导致4GB-32GB eMMC全面减产,交期拉长至26-52周,价格涨幅超100%,断供
    的头像 发表于 04-08 15:57 1198次阅读
    应对<b class='flag-5'>eMMC</b>供货短缺,SD <b class='flag-5'>NAND</b>成<b class='flag-5'>嵌入式</b><b class='flag-5'>存储</b>替代新方案

    紫光闪芯重磅发布EC100系列嵌入式eMMC产品

    2026年3月,紫光闪芯重磅发布专为AI推理与边缘存储场景打造的嵌入式eMMC EC100系列产品,凭借核心团队深耕存储领域的技术积淀与国内完备的产业链协同优势,定位于中高端
    的头像 发表于 04-07 11:49 1146次阅读

    NOR Flash NAND Flash 和SD NAND底层结构应用差异

    嵌入式系统开发中,“存储选型”是经常会遇到的问题,特别是许多曾长期使用 NOR   Flash 的工程师,在切换到 NAND Flash 时常常感到疑惑:   为什么
    发表于 03-05 18:23

    eMMCSPI+SSD:双存储方案下Vendor Storage适配指南

    嵌入式 Linux 开发中,存储方案的切换是常见需求,比如从传统 eMMC 改为 SPI NOR Flash+SSD(SATA/NVMe)双存储架构。这种调整能兼顾启动速度与
    的头像 发表于 02-04 17:38 3626次阅读
    <b class='flag-5'>从</b><b class='flag-5'>eMMC</b><b class='flag-5'>到</b>SPI+SSD:双<b class='flag-5'>存储</b>方案下Vendor Storage适配指南

    什么是嵌入式应用开发?

    设计、实现和部署,还包括硬件选择、软件设计、测试、集成和维护等流程‌。 定义和背景 嵌入式应用开发是指将软件部署嵌入式
    发表于 01-12 16:13

    电力电子EMC整改:源头系统的全链路优化策略方案

    南柯电子|电力电子EMC整改:源头系统的全链路优化策略方案
    的头像 发表于 01-06 09:59 406次阅读

    从小白大牛:Linux嵌入式系统开发的完整指南

    );③社区论坛(CSDN 嵌入式板块、Stack Overflow、知乎嵌入式话题);④进阶书籍《Linux 内核设计与实现》《嵌入式 Linux 系统开发教程》。​
    发表于 12-16 10:42

    NOR FlashNAND Flash和SD NAND底层结构应用差异

    嵌入式系统开发中,“存储选型”是经常会遇到的问题,特别是许多曾长期使用 NOR   Flash 的工程师,在切换到 NAND Flash 时常常感到疑惑:   为什么
    发表于 12-08 17:54

    嵌入式开发工具版本的选择策略

    今天,我们就来结合嵌入式常见的几个软件(如Keil / IAR、VS Code 、Source Insight、VMware、Git等),简单讲一讲嵌入式开发工具软件版本选择策略。 开
    发表于 11-25 06:11

    芯盛智能嵌入式eMMC E210系列斩获2025年度嵌入式存储产品金奖

    11月18日, 一年一度中国数据与存储峰会在北京顺利召开,备受关注的2025存储风云榜同期揭晓。作为领先的存储控制器与解决方案提供商,芯盛智能受邀参会,凭借自主研发的嵌入式
    的头像 发表于 11-18 17:17 1951次阅读
    芯盛智能<b class='flag-5'>嵌入式</b><b class='flag-5'>eMMC</b> E210系列斩获2025年度<b class='flag-5'>嵌入式</b><b class='flag-5'>存储</b>产品金奖

    SD NAND vs SPI NAND嵌入式存储的精装房和毛坯房之争

    嵌入式系统开发中,存储芯片的选型往往是一个“看起来简单、做起来复杂”的环节。表面上看,不就是选个能存数据的芯片嘛?但真到了实际项目中,你会发现,不同的接口、封装、控制逻辑,会直接影响
    的头像 发表于 10-24 08:37 761次阅读

    嵌入式入门进阶,怎么学?

    嵌入式入门进阶,怎么学? 嵌入式学习的核心是 “软硬结合的技术壁垒”,科学分层才能高效突破。以下是入门
    发表于 09-02 09:44

    工业网关的emmc是什么

    工业网关中的eMMC(Embedded Multi Media Card)是一种 嵌入式存储解决方案 ,结合了闪存芯片(NAND Flash)和存储
    的头像 发表于 08-15 10:21 1009次阅读

    聚徽智控——嵌入式边缘计算:平板工控电脑的技术进化论

    演进、场景变革与生态重构三个维度,解析平板工控电脑的技术进化路径。 一、技术演进:嵌入式边缘计算的范式突破 1. 嵌入式时代:功能单一化与硬件固化 早期的平板工控电脑以
    的头像 发表于 06-13 13:48 1007次阅读