3. DRIVE域控电源管理与故障诊断
NVIDIA DRIVE域控的电源系统不是单一5V或12V输入,而是由多路电源域构成的层级化供电网络。理解这套网络的结构,是进行欠压、过压、掉电故障检测与恢复的前提。域控内部通常包含SoC核心域(如VDD_CPU、VDD_GPU、VDD_SOC)、I/O域(1.8V/3.3V)、DDR域(VDDQ/VPP)、摄像头与雷达传感器域(12V/8V/5V)、以及安全岛域(常电域)。每一路电源域由独立的PMIC通道或外部DCDC/LDO供电,并由电压监控电路(VMON)和复位管理单元(RMU)持续监测。
PMIC(电源管理集成电路)是域控电源的核心执行器。以典型DRIVE平台使用的多相PMIC为例,它通过I2C/SPI与SoC的电源管理控制器通信,接收上下电指令、上报故障状态、支持电压微调(DVFS)。PMIC内部集成了过压保护(OVP)、欠压锁定(UVLO)、过流保护(OCP)和过温保护(OTP)。当某路输出超出阈值窗口时,PMIC会拉低对应的PGOOD信号,并向SoC发出中断。理解PMIC的寄存器映射和故障状态位,是诊断电源故障的第一步。
上下电时序是电源管理中容易被忽视但故障率较高的环节。DRIVE域控要求各电源域按严格顺序上电:通常先建立常电域和安全岛供电,再依次开启DDR域、I/O域、SoC核心域,最后使能传感器域。每一路电源的PGOOD信号必须在前一路稳定后才能释放,形成级联使能链。如果某一路PGOOD未按时拉高,PMIC会中止后续上电流程并记录故障码。下电时序则相反,先关闭传感器域和核心域,最后切断常电域,确保数据完整写入和DDR安全刷新。
欠压与过压故障的检测依赖窗口比较器和ADC采样。以VDD_CPU为例,典型工作电压为0.8V,允许窗口为±5%,即0.76V~0.84V。当采样值低于0.76V持续超过10μs,UVLO触发;高于0.84V持续超过5μs,OVP触发。检测到越限后,PMIC会拉低PGOOD并锁存故障状态位,同时向SoC发出中断。SoC的电源管理控制器读取PMIC故障寄存器,判断是哪一路域、哪种故障类型,然后执行隔离:关闭该路输出,防止故障扩散到其他域。
掉电故障与欠压不同,它通常指输入电源(KL30)整体跌落或中断。掉电检测需要更快的响应速度,因为域控需要在输入电压跌破工作阈值之前完成关键数据保存和安全状态切换。典型做法是在输入侧设置一个掉电预警阈值(如9V),当输入电压低于9V时,PMIC立即向SoC发出高优先级中断,SoC在数百微秒内将关键数据写入非易失存储,并将传感器和执行器置于安全状态。如果输入电压继续跌落到7V以下,PMIC将执行有序下电,避免DDR数据损坏。
恢复策略需要根据故障类型和严重程度分级。对于瞬时欠压或过压,PMIC可以在故障消失后自动重试上电,重试次数通常限制在3次以内,避免反复冲击。对于持续过压,必须隔离该路输出并禁止自动重试,等待诊断确认后再手动恢复。对于掉电故障,恢复后需要重新执行完整的上电时序,并检查DDR初始化和传感器枚举是否正常。安全岛域在整个过程中保持供电,记录故障码和上下文信息,供后续诊断读取。
下面给出一份电源故障诊断记录表的示例,用于现场排查时快速记录关键信息。表中参数为教学示例,实际阈值需以具体DRIVE平台的设计文档为准。
| 检查项 | 示例阈值/状态 | 测量点 | 判断依据 |
|---|---|---|---|
| VDD_CPU电压 | 0.80V ±5% | PMIC输出电容端 | 超出0.76~0.84V窗口即异常 |
| VDDQ电压 | 1.10V ±3% | DDR电源引脚 | 低于1.067V触发UVLO |
| PGOOD时序 | 逐路延迟1~5ms | PMIC PGOOD引脚 | 前一路未稳定则后一路不应释放 |
| KL30输入 | 9V预警 / 7V下电 | 输入保护电路前端 | 低于9V触发掉电中断 |
| PMIC故障寄存器 | 0x00为正常 | I2C读取 | 非零值对应具体故障位 |
需要强调的是,电源故障的隔离与恢复不能只依赖软件策略。硬件层面的OVP、UVLO和OCP保护是最后一道防线,软件策略负责在硬件保护触发前后进行状态记录、有序关断和分级恢复。两者配合才能实现既快速又安全的故障处理。在DRIVE域控中,安全岛域的独立供电和独立监控是功能安全要求的关键设计,确保主SoC失效时仍能记录故障并维持最低限度的安全状态。