做MCU开发的工程师应该遇到过这种情况:项目做到一半,发现存储不够用了。固件越写越大、离线模型越加越多、日志越来越频繁,原来的Nor Flash或者EEPROM根本塞不下。换大容量Nor Flash吧,价格涨一大截;上eMMC吧,封装复杂、驱动也麻烦。
SD NAND刚好卡在这个“不大不小”的位置上,成了不少MCU项目的解决方案。
一、为什么MCU需要SD NAND?
MCU项目里存储需求大概分几种情况:
固件存储:操作系统、驱动、AI推理框架,这些代码是存的。代码量小的几MB,大的可能几十MB。Nor Flash在16MB以上的价格就上去了。
数据采集:工业传感器、穿戴设备、检测仪器,都在持续产生数据。这些数据要存下来,不能丢。
日志和OTA:设备跑着跑着要记日志,固件升级要下载新包。这部分写入频繁,对擦写寿命有要求。
离线模型:越来越多的MCU开始跑轻量级AI,语音唤醒、关键词识别、手势识别,模型文件要存在本地。普通的SPI Flash容量可能不够。
SD NAND的出现,正好解决了这些需求。它本质上是把NAND闪存和SD控制器封装在一起,对外走标准SD协议,主控芯片直接认。
二、SD NAND比Nor Flash和eMMC好在哪?
跟Nor Flash比:Nor Flash稳定、可靠,能直接在芯片上执行代码(XIP)。但Nor Flash做到16MB以上价格就高了,64MB更贵。SD NAND用SLC颗粒的型号擦写寿命10万次,价格比同容量Nor Flash低,适合代码量较大的MCU项目。
跟eMMC比:eMMC读写速度快,可靠性也高。但BGA-153封装有150多个焊球,焊接复杂,对小批量项目不太友好。小容量(4GB-8GB)eMMC最近缺货还严重,交期动不动拉到半年以上。SD NAND是LGA-8封装,6×8mm,只有8个引脚,手工焊接都能搞定。
跟TF卡比:TF卡便宜、容量大,但用在MCU项目上总有隐患——卡座靠弹片接触,设备振动了容易松;市面上的TF卡闪存晶圆什么等级都有,批量采购容易踩坑。SD NAND直接焊在板子上,没有卡座松动的问题,品质也可控。
三、开发到底有多简单?
SD NAND的驱动开发,跟操作普通TF卡一模一样。
接口方面:SD NAND走标准SD协议,支持SDIO和SPI两种模式。STM32、GD32、NXP这些主流MCU的SDIO驱动直接能用,不用重写底层代码。
硬件连接:SPI模式下只需4根线(CS、SCK、MISO、MOSI),电源3.3V供电,外围电路只需要几个上拉电阻。
软件移植:初始化流程是标准的SD协议命令序列——CMD0复位、CMD8电压检测、ACMD41初始化、CMD2读CID、CMD3分配地址。这些命令在MCU厂商的SD卡例程里本来就有,直接复用就行。
米客方德提供STM32的参考例程,开箱即用。有工程师实测,从拿到芯片到跑通读写,一天就够了。
四、实际应用表现如何?
STM32H750搭配米客方德MKDV4GIL-AST(4Gbit SLC)的方案,在某智能穿戴设备里实测结果是这样的:待机电流131μA,运行读取电流33mA,写入电流41mA,顺序读22MB/s,写10MB/s。整体功耗比同类方案低30%以上,设备续航能到14天。
有开发者把MKDV4GIL-AST用在智能储物柜项目里,反馈是:“经跑分测试,速度级别达到Class10,符合标准SD2.0协议,10万次SLC擦写寿命,通过一万次随机掉电测试,耐高低温表现出色。”
五、选型参考
| 应用场景 | 推荐容量 | 颗粒类型 | 推荐型号 |
|---|---|---|---|
| 代码量较小的MCU | 128MB-256MB | SLC | MKDV1GIL-AST / MKDV2GIL-AST |
| AIoT、传感器数据采集 | 512MB-1GB | SLC | MKDV4GIL-AST / MKDV8GIL-AST |
| 工业HMI、数据记录 | 4GB | pSLC | MKDV32GIL-STPB |
| 边缘AI、离线模型存储 | 8GB | pSLC | MKDV64GIL-STPB / MKDN064GIL-ZC |
六、小结
MCU的大容量存储需求越来越多,Nor Flash贵、eMMC封装复杂、TF卡不靠谱,SD NAND正好填了这个空。
米客方德在SD NAND领域起步早,2015年就推出了基于SLC架构的产品,目前容量从128MB到64GB全覆盖,SLC擦写寿命10万次,-40℃~85℃宽温。
对MCU开发者来说,SD NAND的最大价值就三点:即贴即用、开发简单、供货稳定。下次画MCU主板的时候,可以看看是不是该把那颗Nor Flash或者TF卡座换成SD NAND了。
179