嵌入式系统硬件基础:处理器架构、存储器与外设接口

做嵌入式系统部署与升级,说白了你得先摸清楚硬件底牌。我见过太多同事,软件写得飞起,结果选错处理器型号,或者存储器容量没算够,最后部署阶段翻车。这一章咱们就把硬件基础夯结实。

处理器架构:ARM 与 RISC-V 的抉择

处理器是嵌入式系统的大脑。目前主流就两派:ARM 和 RISC-V。我个人习惯把 ARM 比作「成熟稳重的老大哥」,RISC-V 则是「灵活激进的挑战者」。

ARM 架构

ARM 统治了嵌入式市场十几年。从低功耗的 Cortex-M 系列到高性能的 Cortex-A 系列,几乎覆盖了所有场景。

  • Cortex-M 系列:主打低功耗、实时响应。我最早做智能传感器项目用的就是 M3,跑 FreeRTOS 非常稳。
  • Cortex-A 系列:面向应用处理器,跑 Linux 或 Android。比如树莓派的 BCM2835 就是 ARM Cortex-A 系列。
  • Cortex-R 系列:实时性要求极高的场景,比如汽车刹车系统、工业控制器。
我的经验:选 ARM 基本不会踩大坑。生态太完善了,编译器、调试器、RTOS 支持一应俱全。如果你团队开发周期紧,ARM 是安全牌。

RISC-V 架构

RISC-V 是开源指令集架构。你想想看,不用交授权费,还能自己定制指令。这几年在 IoT 和 AI 边缘计算领域火得不行。

  • 开源免费:没有 ARM 那样的授权费用,对小公司特别友好。
  • 可扩展性:你可以自己加指令,做专用加速器。我在一个 AI 推理项目中,就见过团队在 RISC-V 上自定义了矩阵运算指令。
  • 生态还在成长:嗯,这里要注意。工具链、中间件、调试工具不如 ARM 成熟。我曾经在 RISC-V 上移植一个 MQTT 库,折腾了两天。
对比维度 ARM RISC-V
授权模式 商业授权,费用高 开源免费,BSD 许可
生态成熟度 非常成熟 快速成长中
定制灵活性 低,指令集固定 高,可自定义指令
典型功耗 极低到中 低到中
适合场景 消费电子、汽车、工业 IoT、AI 加速、科研
避坑指南:我曾经在一个量产项目中选了某款 RISC-V 芯片,结果发现它的浮点单元有硬件 bug,导致算法精度偏差。后来只能靠软件模拟,性能直接掉了 30%。所以选 RISC-V 之前,一定要仔细看芯片的勘误表。

存储器体系:容量、速度与成本的平衡

嵌入式系统的存储器,说白了就是「快、大、便宜」不可能三角。你得根据应用场景做取舍。

片内存储器

  • SRAM:速度极快,但容量小、成本高。一般用作 CPU 缓存或紧耦合内存(TCM)。我习惯把实时性要求高的数据放 TCM,比如中断向量表、关键状态变量。
  • Flash:非易失性,存储固件代码。注意 Flash 有擦写寿命,一般 10 万次左右。做 OTA 升级时,千万别频繁擦写同一块区域。

片外存储器

  • DDR SDRAM:大容量、高带宽,跑 Linux 系统必备。DDR3、DDR4、LPDDR 系列。我做过一个视频处理项目,DDR 带宽不够直接导致帧率掉一半。
  • NAND Flash:大容量存储,类似 SSD。但需要坏块管理和 ECC 纠错。做文件系统时,我建议用 UBIFS 而不是 YAFFS2,后者在掉电场景下容易丢数据。
  • eMMC:封装了 NAND Flash 和控制器的存储芯片。接口简单,适合做系统盘。但要注意 eMMC 的寿命等级,工业级建议选 pSLC 模式。

部署升级的关键点:做 OTA 升级时,必须预留至少两份固件空间——一份运行区,一份备份区。我见过有人只留一份空间,升级到一半断电,设备直接变砖。后来我们改成了 A/B 分区方案,稳如老狗。

外设接口:连接世界的桥梁

嵌入式系统不是孤岛,它得跟传感器、执行器、其他设备通信。外设接口选对了,部署事半功倍。

常用有线接口

  • UART:最基础的串口,调试必备。波特率一般 115200 或 921600。我习惯在 UART 上挂一个日志输出,方便现场排查问题。
  • I2C:两线制,适合连接传感器、EEPROM。速度不快(标准模式 100kHz,快速模式 400kHz),但接线简单。注意 I2C 总线电容限制,线太长容易通信失败。
  • SPI:四线制,全双工,速度快。适合连接显示屏、ADC、SD 卡。我做过一个项目,SPI 时钟跑到 50MHz,结果信号完整性出了问题,后来加了终端电阻才解决。
  • CAN:汽车和工业领域的王者。差分信号,抗干扰强,支持多主通信。做车载 OTA 升级时,CAN 总线是主要的升级通道之一。
  • Ethernet:高速网络通信。从 10/100M 到千兆。做远程升级时,以太网是最可靠的方案,带宽大、协议成熟。

无线接口

  • Wi-Fi:覆盖广、速度快。适合家庭、办公场景。但功耗高,电池供电的设备慎用。
  • Bluetooth / BLE:低功耗、短距离。BLE 是 IoT 传感器的标配。我做过一个温湿度采集器,用 BLE 广播数据,一颗纽扣电池撑了两年。
  • LoRa / NB-IoT:远距离、低功耗、低速率。适合智慧城市、农业监测。LoRa 的扩频技术让通信距离可达数公里。
  • Zigbee / Thread:Mesh 网络,适合智能家居。每个节点都能中继,覆盖范围可以扩展很大。
接口 速率 距离 功耗 典型场景
UART ~1 Mbps ~1m 低 调试、GPS 模块
I2C ~400 kHz ~1m 低 传感器、EEPROM
SPI ~50 MHz ~0.5m 中 显示屏、ADC
CAN ~1 Mbps ~40m 中 汽车、工业控制
Ethernet 10/100/1000 Mbps ~100m 高 远程升级、数据采集
BLE ~2 Mbps ~10m 极低 可穿戴、传感器
LoRa ~50 kbps ~5km 极低 智慧农业、抄表
我的建议:做部署方案时,先列清楚所有外设的带宽和实时性要求。比如一个摄像头项目,视频流需要 50 Mbps 带宽,你用 SPI 肯定不行,得上 Ethernet 或 USB。别等到联调才发现接口瓶颈。

知识体系总览

下面这张图把本章的核心知识点串起来了。你可以把它当作硬件选型的快速参考。

嵌入式系统硬件基础 - 知识体系 处理器架构 ARM RISC-V 存储器体系 片内 (SRAM/Flash) 片外 (DDR/NAND/eMMC) 外设接口 有线 (UART/I2C/SPI/CAN) 无线 (Wi-Fi/BLE/LoRa) 部署升级策略的核心输入 处理器架构决定指令集和生态 → 存储器容量决定固件分区方案 → 外设接口决定升级通道和速率 选型决策 1 ARM vs RISC-V 选型决策 2 存储器容量与分区 选型决策 3 升级通道与接口 总结:硬件基础决定部署策略的上限 处理器选型 → 存储器规划 → 接口选择,三者环环相扣,缺一不可

这张图把处理器、存储器、外设接口三个维度串在了一起。你想想看,做部署升级方案时,是不是得先回答这三个问题:用什么处理器?存哪里?怎么传?

核心观点:硬件基础不是选型表上勾几个参数那么简单。它直接决定了你的 OTA 升级方案怎么做、固件分区怎么划、升级失败怎么回滚。我见过太多项目,硬件选型时图省事,结果部署阶段天天打补丁。所以,这一章的内容,值得你反复琢磨。