第一章:存储芯片选型总览
各位工程师朋友,咱们直接进入正题。嵌入式系统里,存储芯片选型这事儿,说大不大,说小不小。选错了,轻则性能拉胯,重则项目返工。我这些年经手的项目少说也有几十个,踩过的坑真不少。今天这一章,咱们先把全景图理清楚。
1.1 嵌入式存储芯片分类
先分个类。嵌入式存储芯片,按功能分两大类:
- 易失性存储器:断电数据就丢。典型代表是DRAM和SRAM。
- 非易失性存储器:断电数据还在。主力是NAND Flash和NOR Flash。
再往下细分,咱们常用的有这些:
| 类型 | 典型应用 | 特点 |
|---|---|---|
| NOR Flash | 代码存储、启动引导 | 读取快,可随机寻址,容量小(通常<512Mb) |
| NAND Flash | 大容量数据存储 | 写入快,容量大(Gb~Tb级别),有坏块管理 |
| DRAM | 运行内存(主存) | 容量大,速度中等,需定期刷新 |
| SRAM | 缓存、实时控制 | 速度极快,容量小,功耗高 |
| eMMC | 嵌入式多媒体卡 | NAND Flash + 控制器,即插即用 |
| UFS | 高端手机、汽车电子 | 比eMMC快3~5倍,全双工 |
嗯,这里要注意。NOR Flash和NAND Flash虽然都叫Flash,但脾气完全不同。NOR适合存代码,NAND适合存数据。我见过有人用大容量NOR去存视频文件,结果成本翻了三倍,性能还上不去。说白了,选型第一步就是搞清楚:你的数据是代码还是文件?
1.2 选型核心指标概览
选存储芯片,我习惯先看五个核心指标。你想想看,这五个指标定下来,芯片型号基本就锁定了。
- 容量:够用就行,别贪大。留20%余量就够了。
- 速度:读/写/擦除速度。NOR读快写慢,NAND写快读也快。
- 功耗:待机电流、工作电流。电池供电项目尤其敏感。
- 接口:SPI、Parallel、SDIO、UFS 2.0/3.0。接口决定了你的PCB走线复杂度。
- 寿命:擦写次数(P/E Cycle)。NAND一般是1K~100K次,NOR是10万~100万次。
核心原则:容量和速度决定能不能用,功耗和寿命决定好不好用,接口决定好不好做。
我在项目中遇到过一件事。有个同事选了一款高速NAND,接口是Toggle Mode,结果主控不支持,硬生生多花了两个月调驱动。所以啊,接口兼容性一定要提前确认。
1.3 选型流程与决策树
选型流程,说白了就是三步走:
- 第一步:需求分析。问清楚:存什么?多大?多快?多久?
- 第二步:类型初筛。根据需求,从NOR、NAND、DRAM、eMMC里挑出候选。
- 第三步:参数对比。对比候选芯片的详细规格,结合成本、供货、封装做最终决定。
我习惯画一个简单的决策树。你想想看:
需求:存代码还是数据?
├── 存代码(小容量,随机读取)
│ └── NOR Flash(SPI或Parallel)
│ ├── 容量 < 64Mb → 选低功耗NOR
│ └── 容量 > 64Mb → 考虑NAND + XIP
├── 存数据(大容量,顺序读写)
│ ├── 需要控制器 → eMMC / UFS
│ │ ├── 速度要求一般 → eMMC 5.1
│ │ └── 速度要求高 → UFS 2.1/3.0
│ └── 不需要控制器 → 裸NAND
│ ├── SLC(寿命长,成本高)
│ └── TLC/QLC(容量大,寿命短)
└── 运行内存
├── 容量大 → DRAM(DDR3/DDR4/LPDDR)
└── 容量小,速度要求极高 → SRAM
个人经验:我建议新手先从eMMC入手。它集成了控制器,坏块管理、ECC纠错都帮你做好了。裸NAND虽然便宜,但坏块处理、磨损均衡这些坑,够你喝一壶的。
1.4 避坑指南
我曾经在一个物联网项目里,选了某品牌的TLC NAND,号称容量大、价格低。结果产品在高温环境下连续写入三天,坏块率飙升到5%。后来换成SLC NAND,虽然贵了一倍,但再也没出过问题。
所以,避坑第一条:别只看容量和价格,寿命和环境适应性才是关键。
还有几个常见坑:
- 接口电压不匹配:1.8V和3.3V混用,轻则通信失败,重则烧芯片。
- 封装选错:BGA封装焊接良率低,QFP封装占面积大。根据产线能力选。
- 供货周期:某些冷门型号交期16周以上,项目等不起。
嗯,这一章先讲到这里。存储芯片选型,说白了就是平衡的艺术。容量、速度、功耗、寿命、成本,五根手指头,缺哪个都不行。下一章咱们深入聊聊NOR Flash的选型细节。
公众号:蓝海资料掘金营,微信deep3321