4. 电源树分析:从电压轨到电流估算
电源树分析,说白了就是搞清楚你的板子上每一路电源是怎么来的、要吃掉多少电流、中间经过哪些转换环节。我刚开始做PDN设计时,总觉得这步就是填填表格,后来吃过亏才明白——电源树没理清楚,后面仿真做得再漂亮也是白搭。
核心思路:电源树分析不是一次性工作,而是随着设计推进不断迭代的过程。从芯片选型到原理图完成,至少要做三轮。
4.1 电压轨识别:先摸清家底
拿到一个设计需求,我习惯先做一件事——把所有需要供电的器件列出来。别小看这一步,我见过有人漏掉某个小芯片的1.8V供电,结果板子回来才发现。
电压轨识别分三步走:
- 收集器件清单——每个IC的电源引脚、电压等级、最大电流
- 归类电压域——相同电压的归到一起,看看能不能共用
- 标注特殊要求——比如某些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 电源树工具使用:让工具帮你干活
手动算电源树太累了,而且容易出错。我推荐几个工具,能帮你自动生成电源树、计算功耗和效率。
先看看电源树的结构长什么样:
常用的电源树工具有这些:
- Excel/Google Sheets——最灵活,适合自己搭模板。我习惯把每级转换效率、压降、电流都列出来,自动计算总功耗和效率
- LTpowerCAD——ADI的免费工具,输入电压电流需求,自动推荐电源方案并计算效率
- TI Power Designer——TI的在线工具,类似LTpowerCAD,还能生成原理图
- Cadence PDN Analyzer——集成在Allegro中,能结合PCB布局做电源树分析
用工具时,我建议按这个流程走:
- 输入所有电压轨和电流需求
- 选择电源转换方案(LDO还是DC-DC)
- 工具自动计算每级效率、功耗、发热
- 检查总输入电流是否超过电源预算
- 迭代优化——比如把某些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的电感离敏感电路太近,导致噪声耦合。电源树不只是数字游戏,还要考虑物理实现。