• 正文
  • 相关推荐
申请入驻 产业图谱

STM32C5 内核‑存储‑时钟电源‑外设‑安全硬件底层深度拆解

08/31 13:49
274
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

1. Cortex‑M33 裁剪内核、MPU、I‑Cache、CORDIC 硬件引擎(原厂图表依据)

  1. MPU(PMSAv8‑M) 支持最多 8 个内存 region;region 必须 32 字节对齐,region 不允许重叠,无子区域;区分特权 / 非特权访问;支持数据区禁止执行,缓解 ROP 攻击;辅助定位内存越界 HardFault;参考应用笔记 AN4838。
  2. I‑Cache(8KB 指令缓存) 原厂实测:开启 I‑Cache 后 Flash 执行 CoreMark/MHz=4.11;可以提升外部 XSPI 存储器执行效率;DMA 修改内存场景必须手动执行 Cache Invalidate 失效操作,否则出现数据不一致。
  3. CORDIC 24 位硬件旋转引擎 支持圆形 / 双曲线,旋转 / 矢量模式;硬件计算 sin/cos/atan2/sqrt/ln/cosh;自带 DMA 接口,支持批量运算,无需 CPU 干预,适合电机控制、传感器信号处理。

资料获取:资料下载 | STM32C5 × STM32Cube开发实战培训资料汇总

2. Flash 子系统:双 Bank、EDATA 数据 Flash、ECC、OTP 机制

依据原厂 Flash 框图:

  1. 最大 1MB 双 Bank,页大小 8KB;支持 Read‑While‑Write 边读边写用于 OTA 升级;ECC SEC/DED 纠错;普通 Flash 擦写寿命 10K 周期。
  2. EDATA 64KB 专用数据 Flash,选项位 EDATA_EN 控制两种模式
    • EDATA_EN=0:128bit 访问,地址 0x0840xxxx,可执行代码,每页 2KB;
    • EDATA_EN=1:32bit 访问,地址 0x0900xxxx,不可执行代码,每页 1.5KB;

原厂明确风险:EDATA 擦除之后,16bit 直接读取会造成 ECC 校验不匹配,触发 NMI 中断。必须使用 HAL2 EEPROM Emulation 库管理模式切换。 通过页轮换机制,EDATA 可以实现很高等效擦写次数:256 字节存储可等效 1.3M 次写。

  1. OTP 一次性可编程 4.5KB,用于 UID、校准参数、密钥存储。

3. SRAM 存储特性:SRAM1 / SRAM2 差异、ECC、擦除与篡改检测

特性 SRAM1 SRAM2
容量 最大 128KB 最大 128KB
硬件 ECC ×
Stop 模式数据保持 支持 支持
RDP 降级自动擦除
Tamper 篡改检测擦除 ×
软件擦除、写保护

高可靠工业设计,关键业务变量优先放置 SRAM2,利用硬件 ECC 纠错。

4.DMA 子系统 LPDMA / GPDMA,线性链表与循环链表工作原理

原厂 LPDMA 框图说明两套 DMA 定位:

  1. GPDMA:通用 DMA,2 路 AHB 主端口;适合普通内存拷贝、简单外设传输,仅直接模式。
  2. LPDMA 低功耗 DMA:支持线性链表、循环链表模式,硬件自动处理链表节点;四级仲裁优先级;
    • 线性链表:节点列表,末尾 NULL,传输完成自动停止;
    • 循环链表:最后节点回指前面节点,硬件循环往复传输,软件仅需要启停,不需要反复填充寄存器
    • HAL2 通过stm32c5xx_hal_q组件操作 LPDMA 链表队列;适合串口连续数据流、XSPI 高速传输。

5.PSI 锁相环与完整时钟树解析

STM32C5 采用全新 PSI 锁相环替代传统 PLL,时钟树原厂框图:

  1. PSI 输入参考源:HSE、HSI、LSE;输出支持 100/144/160MHz;
  2. 系统时钟源可选:HSE、PSIS、HSIS、HSIDIV3;
  3. PSIK、HSIK 两路内核分频器;独立两路 48MHz 输出供给 USB‑FS、TRNG;
  4. APB1/APB2/APB3 外设总线独立分频;LSE/LSI 供给 RTC/IWDG;
  5. HSI 出厂校准‑20~105℃精度 ±1%,可以不接外部 HSE 晶振运行。

6. 电源域、三级低功耗模式 Stop0/Stop1/Standby、唤醒时序

原厂电源框图与功耗参数:

  1. 电源架构:内部 LDOVDD=2.7‑3.6V;VCAP 引脚外接 2.2μF 低 ESR 陶瓷电容;无 SMPS、无 VBAT、无 VREFBUF。
  2. 三种低功耗模式:
    • Stop0:Vcore=1.2V;多数外设时钟可用;唤醒时间约 8us;
    • Stop1:Vcore=0.95V;部分外设下电;唤醒时间约 41us;
    • Standby:内核电源完全关闭;典型电流约 3uA;唤醒时间约 445us;

关键约束:没有 VBAT 备份域,主电源掉电 RTC 就停止计时;如需断电 RTC,必须外部给 LSE 晶振独立供电。

7. 外设深度解析:XSPI、增强定时器、模拟外设、通信外设

  1. XSPI 外部存储器控制器(原厂 XSPI 框图) 兼容 QuadSPI / OctoSPI / HyperBus;支持 SDR/DDR;双片选可接两片外部器件;存储器映射模式 CPU 可以直接寻址外部 Flash/RAM;带 LPDMA 接口,用于 GUI 显示屏、大容量外部存储。
  2. 增强高级 TIM 定时器 新增第 7 路比较输出;ETR 外部触发预分频最大 262144;TRGO2 分频输出降低 ADC 触发频率;扩展异步 PWM,适配单电阻采样 BLDC 电机控制;输入滤波能力大幅增强。
  3. 模拟外设 ADC 最高 2.25MSPS 12bit;DAC 1MSPS;COMP 比较器传播延迟 50ns;OPAMP 可编程增益 PGA(2/4/8/16 倍);无 VREFBUF,参考源只能外部引脚引入。
  4. 通信外设 USART/LPUART/I2C/I3C/SPI;FDCAN;USB‑FS;高配 C59x/C5A3 支持 MII/RMII 以太网外部 PHY。

8. RDP 三级读保护、硬件加密体系;C5 与 H5 引脚兼容差异

依据原厂 RDP 状态流转框图:

  1. RDP 三级读保护
    • RDP0:无保护,SWD/JTAG 全开;可以写入 OEMKEY、BSKEY 密钥;
    • RDP L2 with boundary scan:Flash 保护,SWD/JTAG 禁用,但保留边界扫描;复位状态下使用 OEMKEY 可以降级回 RDP0,降级触发全芯片擦除;
    • RDP L2:完全锁死,边界扫描关闭,BSKEY 失效,无法降级恢复。

重要工程风险:如果未来需要调试回读,RDP0 阶段必须预先写入 OEMKEY,一旦直接进入 RDP L2 芯片将永久不可降级。

  1. 硬件加密分级
    • C53x/C542/C55x/C562:基础 AES、HASH、TRNG;
    • C59x/C5A3 高配:SAES 抗侧信道 AES、SHA‑2 HASH、TRNG、PKA+CCB 非对称加密、HUK 硬件唯一密钥。
  2. 引脚兼容说明
    • C5 与同封装 H5 引脚向前兼容 PCB;H5 的 VBAT、VREFBUF 引脚在 C5 复用为普通 GPIO;部分外设实例编号改变,软件需要适配;
    • C5 与 STM32F1 不支持 pin‑to‑pin 直接替换。

相关推荐