4. R-Car电源与复位域验证

R-Car SoC 的电源与复位体系是系统级验证中最容易“看起来正常、实际暗藏时序缺陷”的部分。与单一电源轨的 MCU 不同,R-Car 内部被划分为多个独立供电域(Power Domain),每个域可以单独上电、断电、调压或保持,配合 DVFS(动态电压频率调节)和多种低功耗状态,形成一张复杂的电源—时钟—复位耦合网络。验证的核心目标不是“能不能启动”,而是“在任意电源状态迁移、任意复位源触发、任意掉电顺序下,系统是否始终进入确定的合法状态”。

电源域划分与依赖关系

R-Car 典型电源域包括:Always-On 域(AON,常供,含 RTC、唤醒逻辑、部分 SRAM)、CPU 大核域(如 Cortex-A76/A55 集群)、实时核域(Cortex-R52)、GPU/显示域、视频编解码域、外设与 IO 域、DDR 域等。各域由外部 PMIC 提供不同电压轨(如 0.8V、1.1V、1.8V、3.3V),并通过内部电源开关(Power Switch)和隔离单元(Isolation Cell)控制。关键约束是域间依赖顺序:DDR 域必须先于 CPU 域稳定,IO 域必须先于外设域,AON 域必须始终有效。验证时要建立“域依赖图”,明确哪些域可独立关断、哪些必须成组操作。

DVFS 与低功耗状态

DVFS 通过调节电压和频率的组合(OPP,Operating Performance Point)实现功耗与性能平衡。例如某 R-Car 平台定义 OPP0(1.0V/1.5GHz)、OPP1(0.9V/1.2GHz)、OPP2(0.8V/0.8GHz)。验证重点在于:调频前必须先升压、降频后才能降压,否则会出现时序违例;DVFS 切换期间 CPU 可能短暂停摆,需确认外设 DMA 和中断不会丢失。低功耗状态则包括 CPU Idle(WFI)、Cluster Retention、Suspend-to-RAM、Deep Standby 等,状态越深,关断的域越多,唤醒路径越长。验证需覆盖每个状态的进入条件、退出源和恢复后寄存器/内存一致性。

复位源识别与上电时序

R-Car 复位源包括:上电复位(POR)、外部复位引脚(RESET#)、看门狗复位、软件复位、电源域局部复位、调试复位等。不同复位源影响的域范围不同,POR 复位全芯片,局部复位只影响特定域。验证时要能通过复位状态寄存器(如 RSTSR)区分复位来源,并确认复位释放顺序符合时序要求。上电时序通常要求:AON 先建立 → DDR 电压稳定 → PLL 锁定 → CPU 域释放复位 → 外设域释放。若顺序错误,可能出现 CPU 取指失败或 DDR 初始化异常。

R-Car 电源域依赖与上电/复位时序关系 AON 域(常供) RTC · 唤醒逻辑 · 备份SRAM · PMIC 通信 始终有效,不可关断 DDR 域 DDR PHY · 控制器 · 1.1V/1.8V 轨 必须先于 CPU 域稳定 CPU 大核域 A76/A55 · L3 Cache · DVFS OPP0-2 实时核 / GPU / 视频域 R52 · GPU · VSP/VPU · 独立电源开关 外设与 IO 域 CAN · Ethernet · USB · PCIe · 3.3V/1.8V IO 依赖 IO 电压先建立 复位源识别(RSTSR) POR · RESET# · WDT · SW · 局部域复位 POR → 全芯片复位 WDT → CPU 域 + 外设域 局部复位 → 仅目标域,AON 保持 复位循环故障定位路径 ① 读 RSTSR 确认复位源 ② 检查 PMIC 电压轨是否跌落 ③ 示波器抓 RESET# 与 PLL 锁定 ④ 确认 DDR 初始化是否超时

掉电异常与复位循环故障定位

掉电异常通常表现为:电压轨跌落导致域间隔离失效、DDR 内容丢失、PMIC 时序错乱。复位循环则表现为系统反复重启,无法进入 OS。定位时按以下顺序排查:

  1. 读复位状态寄存器:确认是 POR、WDT 还是软件复位。若为 WDT,检查是否有任务卡死或中断未清除。
  2. 测量 PMIC 电压轨:用示波器抓取各轨上电斜率,确认是否在规定时间内达到稳定值。若某轨反复跌落,检查负载电流是否超限。
  3. 检查 PLL 锁定:CPU 域释放复位前 PLL 必须锁定,否则取指异常。可读 PLL 状态寄存器或测量锁定引脚。
  4. 验证 DDR 初始化:DDR 训练失败会导致 CPU 无法访问内存,进而触发看门狗。检查 DDR 复位释放与时钟稳定之间的间隔。
  5. 确认复位释放顺序:AON → DDR → CPU → 外设。若顺序颠倒,可能出现外设先于 CPU 就绪,导致总线挂死。
验证建议:在电源域切换和复位释放的关键节点插入 GPIO 翻转或 trace 标记,配合示波器多通道抓取,可直观看到“电压—时钟—复位—总线”四者的时间关系。对于 DVFS 切换,建议在 OPP 变更前后各采集一次 CPU 频率和电压,确认升压先于升频、降频先于降压。
常见陷阱:局部复位后未重新初始化该域的时钟和 IO 复用,导致外设看似复位实则配置丢失;DVFS 降压时未确认所有高频域已降频,造成时序违例;掉电时未先隔离 IO,导致漏电流倒灌。这些都需要在验证用例中显式覆盖。

综上,R-Car 电源与复位域验证的关键在于建立“域—电压—时钟—复位”四维关联模型,并在每个状态迁移点检查依赖顺序和恢复完整性。只有把上电、掉电、DVFS、低功耗和各类复位源组合起来覆盖,才能有效定位复位循环和掉电异常这类系统级故障。