所有错误描述
[CPU-718] PSRAM 先写后读一致性问题
描述
当 CPU 通过 CACHE 或 DMA 对 PSRAM 进行随机读写时,如果满足以下任一条件,可能会出现 CPU 访问 PSRAM 的数据一致性问题:
PSRAM 加密或解密已启用,或
通过 DMA 访问 PSRAM 时,AHB_DMA_OUT_DATA_BURST_MODE_SEL_CHn 配置为 0 或 1
原因
MSPI 硬件负责管理 CPU 对 PSRAM 的读写请求,并且内部存在缓存。因此,MSPI 接收到的 CPU 读写请求并不一定会立即作为 SPI 事务提交到 PSRAM。
如果 CPU 在很短时间内先对某一 PSRAM 物理地址执行写操作,又立即对相同地址执行读操作,先发出的写操作可能因 MSPI 内部缓存或加解密延迟而尚未完成;结果 MSPI 可能先执行后发出的读操作,导致读取到过期或不一致的数据。
示例
当 CACHE 从启用加解密的 PSRAM 区间读取且发生 cache miss 时,回写的数据可能不一致。
在 DMA 写入 PSRAM 完成后,随即进行的 DMA 读或 CACHE 读同一 PSRAM 区域可能返回不一致的数据。
变通方法
针对因加解密导致的 cache miss 引起的数据一致性问题:在存在随机读写访问的场景下,不建议启用 PSRAM 加密功能。
针对 CPU 通过 DMA 访问时出现的数据一致性问题:在 DMA 写入完成后,或在 CPU 读取相同物理地址之前,增加延时,以确保 MSPI 已实际完成对 PSRAM 的写入操作。
解决方案
已在芯片版本 v1.2 中修复。
[SRAM-436] 数字外设电源域掉电导致内部 SRAM 内容可能被改写
描述
在部分 ESP32-C5 v1.0 芯片中,当启用数字外设电源域掉电功能时,可能出现内部 SRAM 的部分内容被改写的情况,从而导致 CPU_LOCKUP 复位或系统挂死。
变通方法
在 ESP-IDF v5.5 及以上版本中,ESP32-C5 v1.0 已禁用数字外设电源域掉电功能。
解决方案
已在芯片版本 v1.2 中从硬件层面修复。
[HUK-576] HUK 不可用
描述
在 ESP32-C5 芯片中,上电瞬间的电流冲击可能导致 HUK 首次恢复存在一定概率失败。
在受影响的芯片版本中,ROM 在上电后直接使用 HUK 恢复得到的数据来派生后续基于密钥管理器的 flash 加解密密钥(ESP-IDF v5.5.2 新增功能)。在 HUK 恢复失败的情况下,可能导致密钥派生失败。
变通方法
无。
解决方案
已在芯片版本 v1.2 中修复。
通过更新 ROM,在 HUK 恢复失败时支持重新对 HUK 上电并再次执行恢复流程。
[FLASH-938] CPU 频率为 240 MHz 时 flash 手动加密失败
描述
在 ESP32-C5 芯片中,由于内部功耗波动,在 CPU 频率为 240 MHz 时执行 flash 手动加密可能会失败。
变通方法
在执行 flash 手动加密时,将 CPU 频率降低至 160 MHz 或更低。
解决方案
暂无 修复计划。