2. Versal电源域与供电架构

Versal ACAP 的功耗并不是一个“芯片总功耗”数字就能描述清楚的。它由多个独立供电域共同决定,每个域有自己的电压、电流、上电顺序和调节方式。理解这些域如何划分、如何供电、何时上电,是后续做功耗估算、电源设计、上电时序调试和低功耗优化的基础。本节从电源域划分入手,逐步展开到供电网络、电压调节模块,最后落到上电时序对功耗和可靠性的实际影响。

一、主要电源域划分

Versal 的电源域可以按“功能块 + 电压等级 + 是否常开”三个维度来理解。典型器件(以 Versal AI Core 系列为例)的主要电源轨包括:

  • VCCINT:核心逻辑供电,通常为 0.70V~0.85V 可调,是动态功耗最大的域,直接决定 PL、AI Engine、DSP 等逻辑的翻转功耗。
  • VCCINT_AMS:AMS(模拟混合信号)模块核心供电,电压与 VCCINT 相近但独立,避免数字噪声耦合进模拟部分。
  • VCCINT_IO:IO 逻辑核心供电,通常 0.85V,为 SelectIO 内部逻辑供电。
  • VCCO:IO Bank 输出驱动供电,按 Bank 分组,常见 1.2V/1.5V/1.8V/3.3V,直接决定 IO 翻转功耗和接口电平。
  • VCCAUX:辅助供电,通常 1.5V,为配置逻辑、时钟、GT 辅助电路等供电。
  • VCCAUX_IO:IO 辅助供电,通常 1.8V,为 IO 的预驱动和接收辅助电路供电。
  • VCCBRAM:Block RAM 供电,通常 0.85V,BRAM 读写功耗主要来自此域。
  • VCCPSINT:PS(处理器系统)核心供电,通常 0.85V,为 APU、RPU、Cache 等供电。
  • VCCPSDDR:PS DDR 接口供电,通常 1.1V/1.2V,与 DDR 颗粒电压匹配。
  • VCCGT:GT(高速收发器)供电,通常 0.9V/1.0V,为 SerDes 模拟前端供电。
  • VCC_PSAUX:PS 辅助供电,通常 1.8V,为 PS 的 PLL、复位、监控等供电。

这些域中,VCCINT、VCCPSINT、VCCBRAM 属于“核心低压大电流”域,是动态功耗的主要来源;VCCO、VCCAUX_IO 属于“IO 域”,功耗与接口标准、翻转率强相关;VCCGT、VCCPSDDR 属于“接口模拟域”,功耗与链路速率、均衡设置相关。设计时首先要明确:哪些域常开、哪些域可关断、哪些域必须按顺序上电。

Versal 主要电源域与供电网络示意 外部电源 12V / 5V / 3.3V 电压调节模块 PMBus / 多相 Buck LDO / 时序控制器 核心低压域 VCCINT 0.70~0.85V VCCPSINT / VCCBRAM IO 域 VCCO 1.2/1.5/1.8/3.3V VCCAUX_IO 1.8V 接口模拟域 VCCGT 0.9/1.0V VCCPSDDR 1.1/1.2V 辅助域 VCCAUX 1.5V / VCC_PSAUX 1.8V 动态功耗占比 VCCINT ≈ 55~70% VCCO ≈ 10~20% 静态功耗来源 VCCAUX / VCC_PSAUX VCCGT 偏置 上电顺序约束 VCCINT → VCCAUX → VCCO → VCCGT 注:电压值为典型范围,具体以对应器件数据手册为准;功耗占比为示例性估算。

二、供电网络与去耦策略

Versal 的供电网络(PDN)从稳压模块输出端一直延伸到芯片内部,中间经过 PCB 铜皮、过孔、封装基板和片上网格。PDN 的核心任务是在负载电流快速变化时,把电压波动控制在允许范围内。对于 VCCINT 这种 0.85V、几十安培的域,PDN 阻抗目标通常在毫欧级别。

实际设计中,PDN 分为三级去耦:大容量储能电容(百微法级,应对毫秒级负载变化)、中频陶瓷电容(10μF~100nF,应对微秒级变化)、高频小电容(10nF~100pF,应对纳秒级开关噪声)。Versal 封装底部通常有大量电源球,PCB 上需要为每个电源球就近放置高频电容,并通过短而宽的走线连接到电源平面。若去耦不足,VCCINT 在 AI Engine 突发运算时会出现明显跌落,轻则时序违例,重则触发欠压复位。

一个实用的检查方法是:在电源平面和地平面之间测量交流阻抗,观察 100kHz~100MHz 范围内是否有超过目标阻抗的峰值。若峰值出现在 1~10MHz,通常是中频电容布局电感过大;若出现在 50MHz 以上,则要检查过孔和焊盘寄生参数。

三、电压调节模块与动态调压

Versal 支持多种电压调节方式。对于 VCCINT,常用多相 Buck 控制器配合 PMBus 接口,实现电压设定、电流回读和故障保护。PMBus 可以让系统在启动时按预设值设置电压,并在运行中根据温度或负载调整电压。例如,在低温或轻载时把 VCCINT 从 0.85V 降到 0.80V,可显著降低动态功耗(动态功耗与电压平方成正比),但需确认时序仍能满足。

对于 VCCO 和 VCCAUX_IO,通常使用 LDO 或小功率 Buck,因为电流较小且对噪声敏感。VCCGT 对电源噪声非常敏感,一般要求使用低噪声 LDO 或经过滤波的 Buck,并在数据手册规定的范围内设置电压。VCCPSDDR 则需要与 DDR 颗粒的 VDD 匹配,通常由同一路电源或经过跟踪的电源供电。

动态调压(DVS)在 Versal 上可以通过 PS 的 PMU 或外部 PMBus 控制器实现。典型流程是:先降低频率,再降低电压,避免在高压下降频导致过冲;升压时则先升压再升频。这个顺序如果颠倒,可能在电压不足时运行高频,导致逻辑错误或复位。

四、上电时序对功耗与可靠性的影响

Versal 对上电顺序有明确要求。一般原则是:核心低压域先上,辅助域和 IO 域后上,接口模拟域最后上。典型顺序为 VCCINT → VCCPSINT → VCCBRAM → VCCAUX → VCCAUX_IO → VCCO → VCCGT → VCCPSDDR。如果顺序错误,可能出现以下问题:

  • 闩锁风险:IO 域先于核心域上电时,IO 驱动管可能向未上电的核心逻辑注入电流,触发寄生晶闸管。
  • 大电流冲击:多个域同时上电时,浪涌电流叠加,可能超过稳压模块限流点,导致上电失败或反复重启。
  • 配置失败:VCCAUX 未稳定前加载配置数据,可能导致配置 SRAM 写入错误。
  • 功耗异常:上电过程中若某个域长时间处于中间电压,可能出现直通电流,使静态功耗远高于预期。

实际调试时,可以用示波器同时抓取 VCCINT、VCCAUX 和 VCCO 的上电波形,检查每路电压的上升时间、单调性和到达 90% 的时间差。若发现某路电压在上升过程中出现平台或回落,说明该路负载过重或软启动设置不当。对于多路电源,建议使用带时序控制的 PMIC 或 FPGA 的 EN 信号链,确保每路使能信号按顺序释放。

上电时序不仅影响可靠性,也影响功耗测试的可重复性。如果每次上电顺序有细微差异,静态电流读数可能波动几十毫安,导致功耗评估失真。建议在功耗测试前先确认上电波形一致。

五、从电源域到功耗优化的实际切入点

理解了电源域和供电架构后,功耗优化就有了明确的抓手。第一,优先关注 VCCINT 和 VCCPSINT,因为它们是动态功耗的主要来源,降低频率、减少翻转、使用时钟门控都能直接见效。第二,检查 VCCO 的接口标准,把不必要的 3.3V IO 改为 1.8V 或 1.2V,可降低 IO 动态功耗。第三,确认 VCCGT 的链路速率和均衡设置,若链路余量充足,可适当降低预加重和均衡强度,减少 GT 功耗。第四,利用 PMBus 回读各路电流,建立功耗基线,便于后续对比优化效果。

最后需要强调:电源域划分和上电时序是硬件与逻辑协同的设计约束。逻辑设计者如果随意使用 IO 标准或频繁切换时钟,可能让电源设计者不得不增加去耦和调压余量,最终反映为更高的系统功耗和成本。因此,低功耗优化应从电源架构理解开始,而不是等到布局布线完成后再补救。