4. 电源树分析:从电压轨到电流估算

电源树分析,说白了就是搞清楚你的板子上每一路电源是怎么来的、要吃掉多少电流、中间经过哪些转换环节。我刚开始做PDN设计时,总觉得这步就是填填表格,后来吃过亏才明白——电源树没理清楚,后面仿真做得再漂亮也是白搭。

核心思路:电源树分析不是一次性工作,而是随着设计推进不断迭代的过程。从芯片选型到原理图完成,至少要做三轮。

4.1 电压轨识别:先摸清家底

拿到一个设计需求,我习惯先做一件事——把所有需要供电的器件列出来。别小看这一步,我见过有人漏掉某个小芯片的1.8V供电,结果板子回来才发现。

电压轨识别分三步走:

  1. 收集器件清单——每个IC的电源引脚、电压等级、最大电流
  2. 归类电压域——相同电压的归到一起,看看能不能共用
  3. 标注特殊要求——比如某些DDR需要VTT、VREF,或者模拟器件对纹波敏感

举个例子,一个典型的嵌入式系统可能包含这些电压轨:

电压轨 典型值 主要负载 特殊要求
VCC_CORE 0.8V - 1.2V CPU/GPU核心 低纹波、大电流、快速瞬态响应
VCC_IO 1.8V / 3.3V GPIO、外设接口 纹波要求一般
VDDQ_DDR 1.1V / 1.35V DDR内存 严格电压容差(±3%)
VTT_DDR 0.55V - 0.675V DDR终端 跟随VDDQ/2,大电流
VCC_PLL 1.8V / 2.5V 时钟PLL 超低噪声,独立LDO
VCC_USB 5V USB VBUS 过流保护、ESD

我的习惯:用Excel或Google Sheets建一个电压轨清单,每列包含:电压值、容差、最大电流、典型电流、负载类型、电源来源、PCB层分配。这个表格会伴随整个设计周期。

4.2 电流需求估算:别拍脑袋

电流估算是最容易出问题的地方。我记得有一次,一个FPGA项目,芯片手册上写核心电流典型值3A,我就按3A设计了电源。结果板子跑起来,FPGA加载完bitstream后直接掉电重启——实际峰值电流到了5.8A。

估算电流,我推荐三种方法结合使用:

  • 芯片手册法——看数据手册的"Power Consumption"章节,注意区分典型值和最大值
  • 功耗估算工具——很多大厂(Xilinx、Intel、TI)提供在线功耗计算器,比手册更准
  • 实测参考法——如果有类似设计的实测数据,那是最靠谱的

具体怎么算?拿一个DDR4内存条举例:

DDR4 x16 颗粒,3200Mbps,1.2V VDDQ
单颗电流估算:
  - 激活态:约 350mA
  - 读写操作:约 500mA
  - 待机:约 80mA

4颗颗粒 + 1颗ECC:
  总峰值电流 = 5颗 × 500mA = 2.5A
  考虑降额(80%):2.5A × 0.8 = 2.0A
  再加20%余量:2.0A × 1.2 = 2.4A

我曾经踩过的坑:只算了芯片核心电流,忘了算IO电流。一个BGA封装的芯片,IO bank可能有几十个引脚同时翻转,每个引脚几mA到十几mA,加起来轻松超过1A。所以估算时一定要把IO电流单独列出来。

4.3 电源转换效率:每一瓦都算数

电源转换效率,说白了就是输入功率有多少变成了输出功率。剩下的都变成热量散掉了。效率低不仅费电,还带来散热问题。

常见的电源转换方案效率对比:

转换类型 典型效率 适用场景 优缺点
LDO线性稳压 30% - 60% 小电流(<500mA)、噪声敏感 低噪声、简单,但效率低、发热大
DC-DC降压(Buck) 85% - 95% 大电流、电压差大 高效率,但纹波大、布局要求高
DC-DC升压(Boost) 80% - 90% 电池供电、需要高电压 能升压,但输出纹波大
PMIC集成方案 80% - 92% 多路电源、空间受限 集成度高,但灵活性差

效率估算有个简单公式:

输入功率 = 输出功率 / 效率
输入电流 = 输入功率 / 输入电压

举例:
  输出:3.3V × 2A = 6.6W
  效率:90%
  输入功率:6.6W / 0.9 = 7.33W
  输入电流(5V):7.33W / 5V = 1.47A
  损耗功率:7.33W - 6.6W = 0.73W → 这就是发热量

我个人的经验:DC-DC的效率曲线不是平的。轻载时效率低(可能只有60%-70%),在额定负载的30%-80%区间效率最高。所以选型时别只看满载效率,要看你的实际工作点落在哪里。

4.4 电源树工具使用:让工具帮你干活

手动算电源树太累了,而且容易出错。我推荐几个工具,能帮你自动生成电源树、计算功耗和效率。

先看看电源树的结构长什么样:

电源树结构示例 12V 输入 (3A) DC-DC Buck (90%) DC-DC Buck (88%) 5V @ 2A (10W) 3.3V @ 3A (9.9W) LDO 1.8V @ 0.5A LDO 1.2V @ 0.3A 说明: 输入12V → 第一级DC-DC降压到5V和3.3V → 第二级LDO降压到1.8V和1.2V 总效率 = (10W + 9.9W + 0.9W + 0.36W) / (12V × 3A) = 21.16W / 36W ≈ 58.8%

常用的电源树工具有这些:

  • Excel/Google Sheets——最灵活,适合自己搭模板。我习惯把每级转换效率、压降、电流都列出来,自动计算总功耗和效率
  • LTpowerCAD——ADI的免费工具,输入电压电流需求,自动推荐电源方案并计算效率
  • TI Power Designer——TI的在线工具,类似LTpowerCAD,还能生成原理图
  • Cadence PDN Analyzer——集成在Allegro中,能结合PCB布局做电源树分析

用工具时,我建议按这个流程走:

  1. 输入所有电压轨和电流需求
  2. 选择电源转换方案(LDO还是DC-DC)
  3. 工具自动计算每级效率、功耗、发热
  4. 检查总输入电流是否超过电源预算
  5. 迭代优化——比如把某些LDO换成DC-DC来提高效率

注意:工具算出来的效率是理想值,实际PCB布局、走线电阻、电感DCR、电容ESR都会影响效率。我一般会在工具结果上再打9折,留点余量。

4.5 实战:一个完整的电源树分析案例

拿一个我最近做的项目举例——一个边缘计算网关,包含ARM处理器、DDR4、以太网PHY、WiFi模块和几个传感器。

第一步,列出所有电压轨:

负载 电压 最大电流 电源方案
ARM核心 1.0V 3.5A DC-DC Buck (92%)
DDR4 VDDQ 1.2V 1.8A DC-DC Buck (90%)
DDR4 VTT 0.6V 0.9A LDO (从1.2V转)
以太网PHY 3.3V 0.5A DC-DC Buck (88%)
WiFi模块 3.3V 0.8A DC-DC Buck (88%)
传感器 1.8V 0.2A LDO (从3.3V转)

第二步,计算总功耗:

ARM核心:1.0V × 3.5A = 3.5W
DDR4 VDDQ:1.2V × 1.8A = 2.16W
DDR4 VTT:0.6V × 0.9A = 0.54W
以太网PHY:3.3V × 0.5A = 1.65W
WiFi模块:3.3V × 0.8A = 2.64W
传感器:1.8V × 0.2A = 0.36W

总负载功耗:3.5 + 2.16 + 0.54 + 1.65 + 2.64 + 0.36 = 10.85W

第三步,反推输入功率:

考虑各级转换效率后,总输入功率约 13.2W
输入电压 12V,输入电流 = 13.2W / 12V = 1.1A
加上20%余量,电源适配器选 12V/2A 规格

我的经验:电源树分析做完后,一定要和原理图、PCB布局对一遍。我遇到过工具算出来没问题,但实际布局时某个DC-DC的电感离敏感电路太近,导致噪声耦合。电源树不只是数字游戏,还要考虑物理实现。