云计算百科
云计算领域专业知识百科平台

瑞芯微平台存储子系统详解:LPDDR、eMMC、SD NAND怎么选?一次讲清楚

用瑞芯微方案做产品的工程师,大概都面临过这样的问题:方案定了RK3568或RK3588,接下来存储怎么选?运行内存用LPDDR4X还是LPDDR5?多大容量?存储介质用eMMC还是SD NAND?SPI NAND行不行?TF卡能不能用?

各种存储类型、各种接口、各种容量,让人眼花缭乱。选错了,轻则成本高、性能差,重则产品不稳定、寿命短、批量出问题。很多产品的故障,最后查下来都是存储的问题——内存不兼容导致死机、eMMC寿命到了导致系统起不来、TF卡损坏导致数据丢失。

 

这篇文章从实际选型的角度,把瑞芯微平台的存储子系统讲清楚:运行内存(LPDDR)怎么选、存储介质(eMMC/SD NAND/SPI NAND/TF卡)怎么选、不同产品类型的选型建议、存储寿命和可靠性设计、以及瑞芯微平台存储相关的常见坑。

 

一、先搞清楚:瑞芯微平台的存储子系统有哪些部分?

 

在讲选型之前,先搞清楚瑞芯微平台的存储子系统包括哪些部分,各自的作用是什么。

 

瑞芯微的SoC(比如RK3588、RK3568、RK3566)的存储子系统,主要包括两大部分:

 

1.1 运行内存(RAM)

 

运行内存就是我们常说的DDR、LPDDR,是系统运行时用来存放程序和数据的地方。断电后数据丢失。

 

瑞芯微主流平台支持的运行内存类型:

– RK3588:支持LPDDR4X、LPDDR5、LPDDR5X,最大容量可以到32GB(实际产品常用4GB、8GB、16GB)

– RK3568:支持LPDDR4X、LPDDR5,最大容量可以到8GB(实际产品常用2GB、4GB、8GB)

– RK3566:支持LPDDR4X、LPDDR5,最大容量可以到8GB(实际产品常用1GB、2GB、4GB)

 

运行内存的选型,直接影响系统的运行速度、多任务能力、以及能跑什么样的应用。内存太小,系统卡顿、频繁OOM;内存太大,成本高、浪费。

 

1.2 存储介质(ROM/Flash)

 

存储介质是用来存放操作系统、应用程序、用户数据的地方,断电后数据不丢失。

 

瑞芯微主流平台支持的存储介质类型:

 

– eMMC:最常用的存储介质,通过MMC接口连接,速度快、可靠性高、容量大(常用8GB至128GB)

 

– SD NAND:通过SDIO接口连接的NAND Flash,封装和TF卡一样,但焊在板子上,比eMMC便宜,容量较小(常用128MB至4GB)

 

– SPI NAND:通过SPI接口连接的NAND Flash,速度较慢,容量较小(常用128MB至2GB),成本低

 

– SPI NOR:通过SPI接口连接的NOR Flash,速度慢、容量小(常用16MB至256MB),但可靠性极高,适合存bootloader和小系统

 

– SD卡/TF卡:通过SDIO接口连接,可插拔,方便升级,但可靠性差、不适合工业产品长期使用

 

– SATA/NVMe SSD:RK3588支持PCIe,可以接NVMe SSD,速度极快,容量大,适合高端产品

 

– UFS:部分高端平台支持UFS,速度比eMMC更快,但成本高

 

存储介质的选型,直接影响系统的启动速度、数据存储的可靠性、产品的寿命、以及成本。

 

1.3 小结

 

瑞芯微平台的存储子系统,就是"运行内存+存储介质"的组合。运行内存决定系统跑得多快、能跑多少任务;存储介质决定系统装在哪里、数据存在哪里、可靠性和寿命如何。

 

下面分别讲运行内存和存储介质的选型。

 

二、运行内存(LPDDR)选型

 

运行内存是存储子系统中最重要的部分,也是最容易出问题的部分。内存不兼容、内存质量差、内存选型不对,都会导致产品不稳定。

 

2.1 LPDDR4X还是LPDDR5?

 

这是最常见的问题。LPDDR5比LPDDR4X新,速度更快,是不是应该都用LPDDR5?

 

答案是:不一定,看产品需求。

 

LPDDR4X和LPDDR5的主要区别:

 

1. 速度:LPDDR4X的速率通常是3200至4266Mbps,LPDDR5的速率通常是5500至6400Mbps。LPDDR5的带宽大约是LPDDR4X的1.5至2倍。

 

2. 功耗:LPDDR5的功耗比LPDDR4X更低(同样带宽下),因为LPDDR5用了更先进的功耗管理技术。但如果LPDDR5跑在更高的速率下,实际功耗可能和LPDDR4X差不多。

 

3. 成本:LPDDR5的成本比LPDDR4X高,特别是小容量的(比如2GB、4GB),差价更明显。

 

4. 封装:LPDDR4X通常是200-ball FBGA封装,LPDDR5通常是315-ball TFBGA封装。封装不同,PCB设计也不同,不能直接替换。

 

5. 兼容性:LPDDR4X出来时间长,供应链成熟,品牌多,兼容性好。LPDDR5相对新一些,品牌和型号选择相对少。

 

6. 温区:LPDDR4X的工业级型号选择多,很多品牌都有工业级(-25至85℃或-40至85℃)。LPDDR5的工业级型号相对少一些,选择面窄。

 

选型建议:

 

– 如果产品对内存带宽要求不高(比如工业网关、HMI、数据采集、简单的嵌入式应用),LPDDR4X完全够用,而且成本更低、供应链更成熟、工业级选择更多。

 

– 如果产品对内存带宽要求高(比如高端平板、智能座舱、多路视频处理、AI推理、复杂3D UI),用LPDDR5可以获得更好的性能。

 

– 工业级产品优先考虑LPDDR4X,因为工业级型号选择多、供应链稳定、经过验证的时间长。

 

– 不要为了"新"而用LPDDR5,要看实际需求。很多产品用LPDDR4X就够了,用LPDDR5只是增加成本,没有实际收益。

 

2.2 容量怎么选?

 

内存容量的选型,原则是"够用就好,留一定裕量"。太小不够用,太大浪费成本。

 

不同产品类型的典型内存容量:

 

– 简单嵌入式应用(数据采集、简单控制、物联网网关):1GB至2GB

 

– 工业HMI、人机界面、简单视频处理:2GB至4GB

 

– 中端平板、智能终端、多路视频(4路以内):4GB至8GB

 

– 高端平板、智能座舱、多路视频(8路以上)、AI推理、复杂3D UI:8GB至16GB

 

– 服务器级应用、高端AI:16GB以上

 

容量选型的注意事项:

 

1. 不要只看当前需求,要考虑未来升级:产品可能后续会增加功能、升级系统,内存要留一定裕量(建议留20%至30%)。

 

2. 系统本身占用内存:Linux系统+桌面环境,开机就占用约500MB至1GB内存。不要以为2GB内存就有2GB可用,实际可用的可能只有1GB左右。

 

3. 显存占用:如果有显示功能,显存是从系统内存里预留的(CMA),通常预留128MB至512MB。这部分内存在系统里看不到,但确实被占用了。选型时要把显存算进去。

 

4. 应用内存占用:评估主要应用的内存占用,特别是GUI应用(Qt、Android等)和视频处理应用,内存占用较大。

 

5. 内存涨价风险:内存价格波动大,选型时要考虑价格趋势。如果产品生命周期长,要考虑内存的长期供货和价格稳定性。

 

2.3 工业级还是消费级?

 

这是工业产品必须考虑的问题。消费级内存便宜,但只在常温下测试;工业级内存贵,但在全温区测试,参数有保证。

 

消费级和工业级内存的主要区别:

 

1. 温区:消费级通常是0至70℃,工业级通常是-25至85℃或-40至85℃。

 

2. 测试:消费级只在常温下测试,工业级在全温区测试,高温和低温下的参数都有保证。

 

3. 参数:工业级内存在高温下的时序参数更宽松(留了更多裕量),高温下更稳定。消费级内存在高温下可能出现时序不满足、Training失败、数据错误。

 

4. 供货周期:工业级内存的供货周期更长(通常5至10年),消费级内存可能1至2年就停产了。

 

5. 成本:工业级内存比消费级贵,通常贵20%至50%。

 

选型建议:

 

– 工业产品、户外产品、车载产品、高温环境下使用的产品,必须用工业级内存。不要为了省成本用消费级,否则高温下出问题,返修成本远高于省下的钱。

 

– 室内常温环境下使用的消费级产品,可以用消费级内存。

 

– 即使是室内使用,如果产品要求高可靠性、长生命周期,也建议用工业级内存。

 

– 注意:有些商家把消费级内存remark成工业级卖,要注意辨别,从正规渠道采购。

 

2.4 怎么选经过平台验证的内存?

 

内存选型最重要的一点,是要选经过SoC平台验证的内存。很多人以为"参数符合就能用",实际上不是这样的——不同品牌、不同型号的内存,虽然参数看起来一样,但在实际使用中可能存在兼容性问题,导致Training失败、系统不稳定、高温下死机等问题。

 

瑞芯微官方会发布DDR支持列表(Rockchip DDR Reference Vendor List),列出经过瑞芯微验证、可以在瑞芯微平台上稳定使用的内存品牌和型号。这个列表会定期更新,增加新的内存型号。

 

选用支持列表里的内存,有几个好处:

 

1. 兼容性有保障:经过瑞芯微官方验证,在瑞芯微平台上可以稳定使用,不会出现兼容性问题。

 

2. DDR控制器固件支持:瑞芯微的DDR控制器固件已经包含了这些内存的参数和配置,不需要自己调试时序。

 

3. 问题有技术支持:如果遇到问题,可以找瑞芯微的FAE支持,因为是列表里的内存,他们有经验。

 

4. 减少开发风险:不用自己花时间调试内存兼容性,缩短开发周期,降低开发风险。

 

比如,汉四(ROCFOUR)的工业级LPDDR4X已经进入瑞芯微官方DDR支持列表,覆盖RK3588、RK3568等主流平台,温区支持工业级-25至85℃,容量覆盖2GB、4GB、8GB。选用列表里的内存,可以直接用瑞芯微提供的DDR配置,不需要自己调试,大大降低开发风险。

 

选型建议:

 

1. 优先选用瑞芯微官方DDR支持列表里的内存。这是最重要的一条,不要自己随便选一个内存就用。

 

2. 如果确实需要用列表外的内存,要提前和瑞芯微的FAE确认是否支持,是否需要更新DDR控制器固件,并且要做充分的兼容性测试(特别是高低温测试和长时间稳定性测试)。

 

3. 不要只看参数,要看实际兼容性。很多内存参数看起来一样,但实际使用中可能有问题。

 

4. 工业级产品要选列表里的工业级型号,不要选消费级型号。

 

2.5 内存选型常见坑

 

1. 只看容量,不看型号:同样是4GB LPDDR4X,不同品牌、不同型号的兼容性和质量可能差很多。要选具体的型号,而不是只说"4GB LPDDR4X"。

 

2. 用假片或拆机片:有些供应商卖假片(remark的)或拆机片(从旧板上拆下来的),价格便宜,但质量没有保证,可能导致产品不稳定。要从正规渠道采购。

 

3. 不做高低温测试:内存选型后,一定要做高低温测试,验证在整个工作温度范围内都能稳定工作。特别是工业级产品,高温测试是必须的。

 

4. 不考虑长期供货:内存型号可能停产,选型时要考虑长期供货。工业级产品生命周期长,要选供货周期长的型号。

 

5. PCB设计不规范:内存选对了,但PCB设计不规范(走线不等长、阻抗不对、电源纹波大),也会导致内存不稳定。内存选型和PCB设计要配合好。

 

三、存储介质选型

 

讲完运行内存,再讲存储介质。存储介质是存放系统和数据的地方,选型同样重要。

 

3.1 eMMC:最常用的存储介质

 

eMMC(embedded MultiMediaCard)是嵌入式产品最常用的存储介质,把NAND Flash和控制芯片封装在一起,通过MMC接口和SoC连接。

 

eMMC的特点:

 

1. 速度快:eMMC 5.1的读取速度可以到250MB/s,写入速度可以到125MB/s。eMMC的速度比SD NAND、SPI NAND快很多。

 

2. 可靠性高:eMMC内置了控制芯片,负责磨损均衡(wear leveling)、坏块管理(bad block management)、ECC纠错等,对上层透明,使用简单,可靠性高。

 

3. 容量大:eMMC的容量从4GB到256GB都有,常用的是8GB、16GB、32GB、64GB。

 

4. 封装小:eMMC通常是BGA封装,焊在板子上,体积小,抗震性好。

 

5. 成本适中:eMMC的成本比SD NAND、SPI NAND高,但比UFS、SSD低,性价比高。

 

6. 寿命:eMMC的寿命取决于NAND Flash的类型(SLC、MLC、TLC、QLC)和容量。工业级eMMC通常用SLC或pSLC,寿命长;消费级eMMC通常用TLC或QLC,寿命短。

 

eMMC的适用场景:

 

– 大多数嵌入式产品的首选存储介质

 

– 需要存储操作系统、应用程序、用户数据的产品

 

– 对速度和可靠性有一定要求的产品

 

– 工业产品、消费类产品都适用

 

eMMC选型注意事项:

 

1. 选工业级还是消费级:工业产品选工业级eMMC,宽温、长寿命、长供货周期。消费级产品可以选消费级eMMC。

 

2. 容量规划:根据系统大小、应用大小、数据存储需求来选容量,留一定裕量(建议留30%至50%的空闲空间,有利于磨损均衡和性能)。

 

3. NAND类型:工业级eMMC优先选SLC或pSLC,寿命长;消费级可以选TLC,成本低。注意QLC的eMMC寿命很短,不适合工业产品。

 

4. 品牌:选知名品牌(三星、海力士、美光、金士顿、江波龙、佰维等),不要用杂牌。

 

5. 版本:eMMC 5.1是目前的主流版本,速度足够。eMMC 4.5已经比较老了,不建议用。

 

3.2 SD NAND:低成本的选择

 

SD NAND是一种通过SDIO接口连接的NAND Flash,封装和TF卡一样(但焊在板子上,不可插拔),内置了控制芯片,负责磨损均衡、坏块管理、ECC等。

 

SD NAND的特点:

 

1. 成本低:SD NAND的成本比eMMC低,特别是小容量的(128MB至2GB),差价更明显。

 

2. 封装简单:SD NAND的封装和TF卡一样,是LGA-8或LGA-16封装,PCB设计简单,不需要BGA焊接。

 

3. 速度较慢:SD NAND通过SDIO接口连接,速度比eMMC慢。SDIO 3.0的速度可以到104MB/s,但实际速度通常在20至50MB/s。

 

4. 容量较小:SD NAND的容量通常是128MB至4GB,最大到8GB。不适合需要大容量存储的产品。

 

5. 可靠性较高:SD NAND内置控制芯片,有磨损均衡和坏块管理,可靠性比裸NAND高,但比工业级eMMC略差。

 

6. 寿命:SD NAND通常用SLC或pSLC NAND,寿命较长。

 

SD NAND的适用场景:

 

– 成本敏感的产品

 

– 不需要大容量存储的产品(系统小、数据少)

 

– 简单的嵌入式应用(数据采集、简单控制、物联网网关)

 

– 对速度要求不高的产品

 

SD NAND和eMMC的选择:

 

– 如果系统小(比如Linux系统+简单应用,占用500MB以内),对速度要求不高,成本敏感,选SD NAND。

 

– 如果系统大(比如Android、复杂Linux应用),需要大容量存储,对速度有要求,选eMMC。

 

– 工业产品优先选eMMC,可靠性和寿命更有保障。如果成本压力大,且系统简单,可以考虑工业级SD NAND。

 

3.3 SPI NAND/SPI NOR:超低成本的选择

 

SPI NAND和SPI NOR是通过SPI接口连接的Flash,速度最慢,容量最小,但成本最低。

 

SPI NOR的特点:

 

1. 速度慢:SPI NOR的速度通常是几十MB/s(SPI 4线模式下),比eMMC和SD NAND都慢。

 

2. 容量小:SPI NOR的容量通常是16MB至256MB,最大到512MB。

 

3. 可靠性极高:NOR Flash的可靠性极高,擦写次数多(SLC NOR可以到10万次),数据保持时间长(20年以上),适合存bootloader和关键数据。

 

4. 成本低:小容量的SPI NOR成本很低。

 

5. XIP(就地执行):SPI NOR支持XIP,程序可以直接在Flash上执行,不需要拷贝到内存,适合非常小的系统。

 

SPI NAND的特点:

 

1. 速度比SPI NOR快:SPI NAND的速度通常是50至100MB/s(SPI 4线或8线模式下)。

 

2. 容量比SPI NOR大:SPI NAND的容量通常是128MB至2GB,最大到4GB。

 

3. 需要外部ECC和坏块管理:SPI NAND没有内置控制芯片,需要SoC或外部芯片做ECC纠错和坏块管理,使用比eMMC和SD NAND复杂。

 

4. 成本低:比eMMC和SD NAND便宜。

 

5. 寿命:SPI NAND通常用SLC或pSLC,寿命较长。

 

SPI NAND/SPI NOR的适用场景:

 

– 超低成本的产品

 

– 非常小的系统(比如RTOS系统、bootloader)

 

– 只需要存固件和少量数据的产品

 

– 对速度要求不高的产品

 

– SPI NOR适合存bootloader和关键配置数据,SPI NAND适合存小系统和少量数据

 

3.4 SD卡/TF卡:不推荐工业产品使用

 

SD卡/TF卡是可插拔的存储介质,通过SDIO接口连接,方便升级和更换。但对于工业产品,不推荐使用SD卡/TF卡作为主要存储介质。

 

SD卡/TF卡的问题:

1. 可靠性差:SD卡/TF卡的质量参差不齐,很多廉价卡用的是降级片或拆机片,寿命短,容易损坏。

 

2. 接触不良:SD卡/TF卡是可插拔的,长期使用后触点可能氧化、松动,导致接触不良,系统找不到存储设备。

 

3. 抗震性差:SD卡/TF卡在振动环境下可能松动或损坏。

 

4. 容易被拔出:如果产品外壳没有防护,SD卡/TF卡可能被用户误拔出,导致系统崩溃或数据丢失。

 

5. 速度慢:即使是高速SD卡,实际速度也不如eMMC。

 

6. 寿命短:消费级SD卡通常用TLC或QLC,寿命短,不适合频繁写入的场景。

 

SD卡/TF卡的适用场景:

 

– 仅用于数据导出、固件升级等临时用途

 

– 消费级产品(比如树莓派、开发板)可以用,但工业产品不推荐

 

– 如果必须用,要用工业级SD卡,并且做好防松、防误拔设计,同时做好数据备份

 

3.5 NVMe SSD:高端产品的选择

 

RK3588支持PCIe 3.0,可以接NVMe SSD,速度极快(读取速度可以到1GB/s以上),容量大(可以到1TB以上)。

 

NVMe SSD的适用场景:

 

– 高端产品,对存储速度要求极高

 

– 需要大容量存储的产品(比如视频录制、数据存储)

 

– AI推理、高端平板、智能座舱等高端应用

 

NVMe SSD的注意事项:

 

1. 成本高:NVMe SSD比eMMC贵很多。

 

2. 功耗高:NVMe SSD的功耗比eMMC高,需要考虑电源设计和散热。

 

3. 体积大:NVMe SSD(M.2接口)的体积比eMMC大,需要考虑PCB空间。

 

4. 寿命:消费级NVMe SSD用TLC或QLC,寿命有限。工业级应用要选工业级SSD,或者做好磨损均衡和数据备份。

 

3.6 存储介质对比

 

下表总结了各种存储介质的特点和适用场景:

 

四、不同产品类型的选型建议

讲完了各种存储类型,下面给出不同产品类型的具体选型建议。

 

4.1 工业网关/数据采集设备

 

特点:系统小(Linux+简单应用),数据量小,对速度要求不高,成本敏感,要求高可靠性和长寿命。

 

选型建议:

 

– 运行内存:LPDDR4X,1GB至2GB,工业级

 

– 存储介质:SD NAND(1GB至2GB)或小容量eMMC(8GB),工业级

 

– 如果系统特别小(RTOS),可以用SPI NAND或SPI NOR

 

4.2 工业HMI/人机界面

 

特点:有显示功能,系统中等(Linux+Qt),需要存UI资源和少量数据,对可靠性要求高。

 

选型建议:

 

– 运行内存:LPDDR4X,2GB至4GB,工业级

 

– 存储介质:eMMC,8GB至16GB,工业级

 

– 显存预留:128MB至256MB

 

4.3 智能终端/平板

 

特点:系统大(Android或复杂Linux),需要存应用和用户数据,对速度和性能有要求。

 

选型建议:

 

– 运行内存:LPDDR4X或LPDDR5,4GB至8GB

 

– 存储介质:eMMC,32GB至64GB

 

– 如果是高端产品,可以用LPDDR5+UFS或NVMe SSD

 

4.4 多路视频处理/NVR

 

特点:需要处理多路视频,对内存带宽和存储速度要求高,需要大容量存储录像。

 

选型建议:

 

– 运行内存:LPDDR5,4GB至8GB(多路视频需要大内存做缓冲区)

 

– 存储介质:eMMC(系统)+ NVMe SSD或SATA HDD(录像存储)

 

– 显存预留:256MB至512MB

 

4.5 AI推理/边缘计算

 

特点:需要运行AI模型,对内存带宽和容量要求高,需要存模型和数据。

 

选型建议:

 

– 运行内存:LPDDR5,8GB至16GB(AI模型需要大内存)

 

– 存储介质:eMMC(系统+模型)或NVMe SSD(大容量数据)

 

– 显存预留:512MB以上

 

4.6 简单控制/物联网设备

 

特点:系统极小(RTOS或超小Linux),数据量极小,成本极敏感,要求高可靠性。

 

选型建议:

 

– 运行内存:LPDDR4X,512MB至1GB(如果SoC支持更小的话)

 

– 存储介质:SPI NOR(bootloader+固件)或SPI NAND(小系统)

 

– 如果用RTOS,甚至可以不用LPDDR,用SoC内置的SRAM(如果够的话)

 

五、存储寿命和可靠性设计

 

存储介质的寿命和可靠性,是工业产品必须考虑的问题。存储介质坏了,产品就无法使用,数据也可能丢失。

 

5.1 存储寿命的概念

 

存储介质的寿命,通常用TBW(Total Bytes Written,总写入字节数)或擦写次数(P/E Cycle)来表示。

 

– SLC NAND:擦写次数约10万次,寿命最长

 

– MLC NAND:擦写次数约3000至1万次

 

– TLC NAND:擦写次数约500至3000次

 

– QLC NAND:擦写次数约100至500次,寿命最短

 

eMMC和SD NAND的寿命,取决于内置的NAND类型和容量。容量越大,寿命越长(因为磨损均衡的空间大)。工业级eMMC通常用SLC或pSLC,寿命长;消费级eMMC通常用TLC或QLC,寿命短。

 

5.2 怎么估算存储寿命?

 

存储寿命的估算公式:

寿命(年)= 容量(GB)× 擦写次数 × 写入放大系数 /(每天写入量(GB)× 365)

 

举例:一个8GB的工业级eMMC(pSLC,擦写次数3万次),每天写入1GB数据,写入放大系数2:

寿命 = 8 × 30000 × 2 /(1 × 365)= 480000 / 365 ≈ 1315年

 

这个计算看起来寿命很长,但实际上:

 

1. 写入放大系数可能比2大(特别是小文件频繁写入的场景,写入放大可以到5至10)。

 

2. 磨损均衡不是完美的,有些块可能比其他块先坏。

 

3. 实际写入量可能比估算的大(系统日志、临时文件、缓存等)。

 

4. 温度会影响寿命,高温下寿命会缩短。

 

所以,实际寿命要比理论计算短很多。工业产品设计时,要留足够的裕量,建议按理论寿命的1/10至1/5来估算实际寿命。

 

5.3 提高存储寿命和可靠性的方法

 

1. 减少写入量:

 

   – 把不需要持久化的临时文件放到tmpfs(内存文件系统),不写入存储介质。

 

   – 减少日志写入,或者把日志写到内存,定期批量写入。

 

   – 用noatime挂载,不更新文件访问时间。

 

   – 合并小写入,用批量写入代替频繁小写入。

 

2. 留足够的空闲空间:存储介质的空闲空间越多,磨损均衡的效果越好,寿命越长。建议至少留30%的空闲空间,工业产品建议留50%。

 

3. 用工业级存储介质:工业级eMMC/SD NAND用SLC或pSLC,寿命长,宽温,可靠性高。不要用消费级存储介质做工业产品。

 

4. 掉电保护:突然断电可能导致存储介质损坏(特别是写入过程中断电)。硬件上加大电容或超级电容,保证断电时能完成正在进行的写入;软件上用日志文件系统(ext4、f2fs),减少文件系统损坏的概率。

 

5. 数据备份:关键数据要做备份,比如同时存到两个存储介质,或者定期备份到外部存储。即使一个存储介质坏了,数据还在。

 

6. 健康监控:定期读取存储介质的健康状态(SMART信息、eMMC的EXT_CSD寄存器),监控擦写次数、坏块数量、预留块数量等,提前预警故障。

 

7. 文件系统选择:用适合闪存的文件系统,比如f2fs(对闪存友好,写入放大低)、ext4(成熟稳定)。不要用FAT32(没有日志,容易损坏,不支持大文件)。

 

六、瑞芯微平台存储相关的常见坑

 

最后,讲几个瑞芯微平台存储相关的常见坑,避免踩坑。

 

6.1 内存不兼容导致Training失败

 

这是最常见的坑。用了不在瑞芯微支持列表里的内存,或者用了假片/拆机片,导致DDR Training失败,系统起不来。

 

避免方法:

 

1. 用瑞芯微官方DDR支持列表里的内存。

 

2. 从正规渠道采购,不要用假片/拆机片。

 

3. 做高低温测试,验证内存在全温区都能稳定工作。

 

6.2 eMMC寿命到了导致系统起不来

 

产品用了几年后,eMMC寿命到了,坏块太多,系统无法读取,导致产品无法启动。

 

避免方法:

 

1. 用工业级eMMC(SLC或pSLC),寿命长。

 

2. 减少写入量,留足够的空闲空间。

 

3. 监控eMMC健康状态,提前预警。

 

4. 关键数据做备份。

 

6.3 突然断电导致eMMC损坏

 

产品在写入过程中突然断电,导致eMMC的映射表损坏或物理块损坏,系统无法识别eMMC。

 

避免方法:

 

1. 硬件上加掉电保护(大电容或超级电容)。

 

2. 用日志文件系统(ext4、f2fs)。

 

3. 关键写入操作后调用fsync,确保数据写入存储介质。

 

4. 不要在写入过程中断电(比如升级固件时要提示用户不要断电)。

 

6.4 显存预留太大导致系统内存不够

 

CMA显存预留太大,导致系统可用内存太少,应用频繁OOM。

 

避免方法:

 

1. 根据实际需求调整CMA显存预留大小,不要预留太多。

 

2. 比如实际只需要128MB显存,就不要预留256MB或512MB。

 

3. 用dmesg查看CMA的使用情况,确认实际用了多少。

 

6.5 SD卡/TF卡损坏导致数据丢失

 

用SD卡/TF卡作为主要存储介质,长期使用后卡损坏,数据丢失,系统无法启动。

 

避免方法:

 

1. 工业产品不要用SD卡/TF卡作为主要存储介质,用eMMC或SD NAND。

 

2. 如果必须用,用工业级SD卡,做好防松、防误拔设计,定期备份数据。

 

6.6 存储介质选型只看成本,不看可靠性

 

为了省成本,用了消费级存储介质或杂牌存储介质,结果产品批量出问题,返修成本远高于省下的钱。

 

避免方法:

 

1. 工业产品必须用工业级存储介质,不要用消费级。

 

2. 选知名品牌,不要用杂牌。

 

3. 做充分的可靠性测试(高低温、长时间运行、掉电测试、振动测试等)。

 

4. 算总账:存储介质省几块钱,批量出问题返修可能花几十万,得不偿失。

 

七、总结

 

瑞芯微平台的存储子系统选型,核心是"运行内存+存储介质"的组合,要根据产品需求、成本、可靠性要求来综合选择。

 

核心要点总结:

 

1. 运行内存优先选经过平台验证的:用瑞芯微官方DDR支持列表里的内存,不要自己随便选。工业级产品用工业级LPDDR4X,性价比高、供应链成熟、经过验证的时间长。LPDDR5只在对带宽要求高的场景下用。

 

2. 容量够用就好,留裕量:根据产品需求选容量,留20%至30%的裕量,不要太小(不够用)也不要太大(浪费成本)。

 

3. 存储介质首选eMMC:大多数嵌入式产品用eMMC就够了,速度快、可靠性高、容量大。成本敏感、系统小的产品可以用SD NAND。超小系统可以用SPI NAND/SPI NOR。

 

4. 工业产品不要用SD卡/TF卡:SD卡/TF卡可靠性差,不适合工业产品作为主要存储介质。

 

5. 存储寿命和可靠性要重视:用工业级存储介质、减少写入量、留足够空闲空间、掉电保护、数据备份、健康监控,这些都是保障存储寿命和可靠性的关键。

 

6. 不要只看成本,要看总账:存储介质省几块钱,批量出问题返修可能花几十万。工业产品要用工业级存储,可靠性第一。

 

7. 做充分的测试:高低温测试、长时间运行测试、掉电测试、振动测试,这些测试都要做,验证存储子系统在各种条件下都能稳定工作。

 

最后一句话:存储子系统是产品的基石,选对了,产品稳定可靠;选错了,问题不断。花时间做好存储选型,比事后救火划算得多。

 

有瑞芯微平台存储选型相关的问题,欢迎评论区交流。

赞(0)
未经允许不得转载:网硕互联帮助中心 » 瑞芯微平台存储子系统详解:LPDDR、eMMC、SD NAND怎么选?一次讲清楚
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!