IR-Drop 入门:电源走线有电阻,芯片内部实际电压比你想的低
更新时间:2026-09-15。本文是「集成电路大类 · 低功耗设计与验证」入门层系统篇第 27 篇。前面我们一直假设「给芯片 0.8V,每个晶体管就拿到 0.8V」。真实芯片里这是假的:电流要经过 PCB、封装、最上层金属、一层层电源网格才到单元,沿途任何电阻都会吃掉一点电压,等到芯片中央最忙的那块逻辑,电压可能已经悄悄掉了 8%~10%。这个现象叫 IR-Drop(电源压降)。它既是电源完整性问题,也是低功耗设计必须面对的约束。系统地图见低功耗导读。
本文要回答的问题
- 标称 0.8V 供电,芯片中间的单元实际拿到多少?
- 「IR」两个字母指什么,地线为什么也会「弹起来」?
- 静态压降和动态压降有什么区别,后者为什么更难抓?
- 为什么供电电压越低,IR-Drop 越致命?
- 物理设计和系统设计各用什么手段把压降按住?
一、直觉:电源网络不是理想导线

欧姆定律在这里就是全部:路径上电阻为 R、瞬时电流为 I,则压降 ΔV = I·R。电流越大、金属越细越长、通孔越少,掉得越多。电源路径掉一次,地回流路径还会对称地掉一次(把本地 VSS 抬高),所以单元真正看到的电压是
Vcell − Vss_local = (Vpad − IR_VDD) − (0 + IR_VSS) = Vpad − ΔVDD − ΔVSS。
地线上的这部分抬升专门叫 ground bounce(地弹),和电源侧压降合起来才是单元的总欠压。输出开关时的地弹还会表现为信号噪声,这与封装与信号/电源完整性是同一批物理现象。
二、算一笔方阻的账
芯片金属线常用**方块电阻(sheet resistance,单位 Ω/□)**估算:一条长宽比为 N 个方块的导线,电阻约 N×方阻,与绝对尺寸无关。
假设某层金属方阻 0.05Ω/□,从电源条到一个宏单元的 VDD 走线等效 200 个方块、VSS 回程再 200 个方块,则路径总电阻 R = 400×0.05 = 20Ω。若该宏单元在某个时钟沿局部抽 30mA:
ΔV = 0.03A × 20Ω = 0.6V?——这个夸张数字说明单靠那条细线根本不行;真实网格靠「极宽的电源条 + 密网格 + 海量通孔并联」把等效电阻压到 0.1Ω 量级。若 R=0.1Ω、全局同时翻转电流 2A,则平均压降 0.2V 仍然不可接受,所以还要靠去耦电容提供本地瞬时电荷,把动态电流「就地解决」,而不是全从焊盘取。
三、静态压降 vs 动态压降
| 维度 | 静态/平均 IR-drop | 动态 IR-drop |
|---|---|---|
| 电流来源 | 一段时间平均功耗对应的直流电流 | 时钟沿、大宏模块同时启动的瞬态尖峰 |
| 分析方法 | 电阻网络上解直流(静态分析) | 带电容、电感的瞬态仿真(向量驱动) |
| 空间特征 | 远离电源点、布局密集处最严重 | 热点随时间和激励移动 |
| 典型元凶 | 电源环太细、通孔阵不足、供电点少 | 时钟树同沿翻转、PG 上电涌流、总线同时切换 |
| 修复手段 | 加宽金属、加轨道/凸点、补通孔、调布局 | decap、时钟偏斜整形、错峰上电、封装电感优化 |
动态情形还有电感的份:电流突变在封装键合线/凸点的电感上感应 V=L·di/dt。时钟沿后短短几十皮秒内大量触发器一起跳,di/dt 极大,于是即使直流电阻很小,也会看到电压「坑」。这也是为什么芯片表面、封装下方到处放去耦电容(decoupling capacitor,decap):它像本地小水池,用 C·ΔV=ΔQ 提供瞬时电荷,把电压坑填浅;代价是 decap 自己漏电、占面积,且只能补高频、补不了长期亏电(长期能量仍得从焊盘经网格送来)。
四、为什么低电压让 IR-Drop 更致命
直觉上「电压低了电流也小,压降该更小」,但真正的约束是相对裕量和延迟对电压的敏感性:
- 以百分比计,签核常要求内部压降不超过供电的 7%~10%。同样掉 50mV,在 3.3V I/O 上是 1.5%(无感),在 0.7V 核压上是 7.1%(已踩线)。
- 库在某个标称电压下特征化,关键路径延迟是按那个电压标定的。欠压使门延迟非线性上升(接近阈值电压时尤其陡),本就紧的时序可能直接违约。
- 为了省电而采用的近阈值设计更极端:电压余量只有一两百毫伏,几十毫伏的动态压降就可能让逻辑跑飞。
所以「低功耗设计省下来的电压裕量,有一部分必须分给电源完整性」。降 VDD 时不能只算动态功耗 P=αCV²f(见功耗从哪来)的收益,还要重新核算最坏压降点上的实际电压与时序。
五、治理手段全景
| 层次 | 手段 | 治静态还是动态 |
|---|---|---|
| 封装/板级 | 增加供电引脚/凸点、电源地成对、板级大容量电容 | 两者,且降低封装电感 |
| 电源网络 | 加宽电源条、加密网格、通孔阵列、缩短供电路径 | 主要静态 |
| 本地储能 | 填 decap(行单元 decap、金属-金属电容) | 主要动态 |
| 物理布局 | 高功耗宏块靠近供电点、功耗均匀化 | 两者 |
| 时钟/功耗整形 | 时钟树插入有用偏斜错开翻转峰值、避免全芯片同沿 | 动态 |
| 电源门控 | 分段 header、软启动限制涌流(见SoC 电源架构) | 动态(上电瞬间) |
| 系统级 | DVFS 过渡限速、限制瞬时电流(见DVFS) | 动态 |
**时钟偏斜错开(clock skew scheduling for peak shaping)**值得多讲一句:传统时序希望时钟「齐」,但功耗完整性希望「别在同一皮秒一起抽电」。有意让不同区域时钟沿错开几十皮秒(在保持时序正确前提下),可把一个尖峰削成几个小峰,代价是略复杂的时钟树和时序收敛。decap 与功耗整形常常配合使用:decap 填高频小坑,整形削低频大峰。
六、签核时怎么查
工具(商用功耗签核工具)流程通常是:
- 从布局布线结果提取电源网络的寄生电阻(动态还要有电容、电感模型);
- 叠加功耗模型与翻转率算出的实例电流(平均 → 静态分析;逐周期波形 → 动态分析);
- 在电阻网络上解出每个节点电压,生成压降热图;
- 把最坏点的实际电压回标做时序分析(voltage-aware timing),并检查 EM 电流密度;
- 超标的区域返回物理设计加宽/加 decap/调凸点,迭代到多角(工艺/电压/温度)下全部收敛。
这属于芯片物理设计签核的一部分,与时序、DRC/LVS 并列。
常见误区与排查直觉
- 误区:芯片功能正常,IR-Drop 就没问题。 实验室常温常压电正常,不代表高温、低电源电压、硅片偏慢角下还有裕量;压降失效常常只在最坏角或大规模并发翻转时出现。
- 误区:多加大电容万能。 decap 补高频、占面积还漏电;板级电容因封装电感隔着,对皮秒级片内尖峰「远水难救近火」。要分层配电容。
- 误区:平均功耗达标即可。 平均值不超,不代表时钟沿瞬时电流不超;动态压降与 di/dt 有关,可能烧出功能错误而平均报表风平浪静。
- 实测直觉:硅片上可埋监测点(片上电压监视器、临界路径监视器)实时观测;板级则用《功耗怎么测》篇的近场探头/电源分析仪间接判断。
七、一个数字例子:压降如何吃掉频率
把前面的机制串成一个可算的例子。设某核标称 0.75V、目标 1GHz,静态签核库给出该电压下关键路径延迟 0.92ns(约 8% 余量),工艺库还表明这个工作点附近电压每降 50mV,延迟约恶化 8%(低压区更敏感,这是经验数量级,真实值以库为准)。
芯片中央热点在最坏角实测/仿真压降为 ΔVDD=35mV、地弹 ΔVSS=15mV,合计单元看到 0.70V,路径延迟变为 0.92ns×(1+8%)≈0.994ns——仍然勉强满足 1ns 周期,但余量几乎归零;若动态压降再叠加 30mV(0.67V),延迟再恶化约 5%~8%,达到 1.04~1.07ns,芯片在这个激励组合下就会偶发时序错误,而且只在高温、慢角芯片上出现,实验室典型样品测不出来。这就是 IR-Drop 失效「时好时坏、挑芯片、挑场景」的由来。
反过来用这个例子也能理解预算分配:系统团队为省电想把核压从 0.75V 降到 0.70V,物理团队必须回答「在 0.70V 标称、再扣掉 50mV 压降后,最坏点还有没有时序余量」。很多 DVFS 最低档(见电压与频率)最后定不下去,不是平均功耗不允许,而是热点单元在压降后的实际电压撑不住频率。
八、与功耗分析、热的耦合
压降分析不是一次过的签核动作,它和功耗、热三者互相咬合:
- 功耗 ↔ 压降:电流来自功耗分布(见功耗模型与翻转率),热点既是功耗热点也是压降热点;压降又使局部电压降低——对漏电来说降低电压反而减少漏电,但对时序是纯坏处。
- 热 ↔ 漏电 ↔ 电流:温度升高使亚阈值漏电指数上升(见漏电与工艺),总电流增大又加重压降与发热;签核时要跑高温慢角与低温快角等多组 MMMC 组合,因为「最坏压降」和「最坏漏电」未必出现在同一角。
- 电源门控恢复瞬间:涌流造成的是临时压降,可能在几纳秒内把邻近活域电压砸下去,导致旁边正在运行的逻辑出错,而不只是被唤醒的域自己慢。这要求涌流分析和功能场景联合仿真。
九、给入门者的记忆锚点
- 任何金属都有电阻,任何电流都买路钱:ΔV=IR,加上地回路才算完。
- 平均电流管静态压降,电流变化率(di/dt)加电感管动态压降;后者只能用 decap 和错峰治。
- 百分比才是要害:50mV 在 3.3V 上无所谓,在 0.7V 上是命。
- 电源完整性是「系统-芯片-封装-板」联合问题,PMIC 再稳也救不了芯片中央的细线。
- 签核看最坏角、最坏激励;功能正常不等于有裕量。
十、静态 IR 与动态 IR 的工程做法差异
两类压降分析在工程流程里连数据准备都不同,入门者常常混用:
- 静态分析只需要平均功耗电流分布(可用平均翻转率或 SAIF),在纯电阻网络上解一次直流方程,全芯片几亿节点也跑得动,适合每个物理设计迭代都跑、做大面积普查,产出的压降热图直接指导电源条密度规划。
- 动态分析需要带时间的波形(向量通常来自门级仿真或 DPA 输出)、电容矩阵甚至封装电感模型,计算量大得多,不可能全片长时间窗跑,实际做法是「静态普查找嫌疑区域 → 只对热点区域、选定若干时钟窗做瞬态精细仿真」。
- 无向量动态分析是折中:工具按统计方式让实例同时翻转构造最坏情况,用于早期摸底,但偏保守,可能报出实际激励永远不会产生的违例。
因此评审会上常见的两句话要分清含义:「静态 IR 过了」只说明平均工作点有裕量;「动态 IR 过了」才说明最坏翻转场景下单元不会欠压出错。两者都是签核门槛,不能互相替代。新人上手时可以把两类报告都打开并排看:热图给空间感、瞬态波形给时间感,看两三个案例就能建立「哪里爱掉电、什么时候掉」的工程直觉。这与功耗分析中「平均功耗」和 DPA「逐周期功耗」的关系完全平行。
这一篇在知识体系里的位置
- 上游:功耗从哪来给出电流与翻转的关系,电压与频率给出电压裕量,SoC 电源架构与 PMIC把电送到芯片引脚。
- 本片:引脚到晶体管之间「最后一毫米」的电阻/电感代价,即 IR-Drop/地弹/动态压降。
- 下游:紧接的电源网络直觉讲怎么用网格和 decap 治它;物理实现细节见芯片物理设计;它导致的时序恶化在时钟树功耗直觉和时序签核中回查;硅后异常的排查方法归《功耗异常排查直觉》。
一句话:IR-Drop 是「理想供电假设」的账单——电流越大、电压越低、工艺越先进,这张账单越贵;好的低功耗设计必须同时是一份好的电源完整性设计。
总结
IR-Drop 是电流流过电源网络电阻产生的压降,加上地回流的 ground bounce 使单元实际电压远低于标称;静态压降靠加宽网格和加通孔治,动态压降源于同沿翻转的 di/dt 和封装电感,只能靠 decap 本地补电荷、时钟偏斜错峰和涌流控制。低电压下要害是百分比裕量而非绝对值,几十毫伏就能吃掉时序,且「最坏压降」与「最坏漏电」不在同一角,必须 MMMC 多角联合签核。