IR Drop与拥塞的关联:静态IR Drop vs 动态IR Drop,拥塞如何加剧IR Drop
各位做后端的朋友,咱们今天聊一个很实际的话题——IR Drop和拥塞到底怎么扯上关系的?
我刚开始做PDN分析那会儿,总觉得IR Drop就是电源网络设计得不够强壮,跟绕线拥塞八竿子打不着。直到有一次,一个28nm的项目在tapeout前一周,静态IR Drop明明过了,动态IR Drop却爆了红灯。我盯着热点图看了半天,发现所有电压降得厉害的地方,全是绕线跟蜘蛛网一样密布的区域。嗯,从那以后,我再也不敢把拥塞和IR Drop分开看了。
先说说静态IR Drop
静态IR Drop,说白了就是直流电流流过电源网络时产生的电压降。它只跟电阻和平均电流有关,跟开关频率没关系。
公式很简单:V = I × R
静态IR Drop主要看两件事:
- 电源网络的电阻——金属线越细、越长,电阻越大
- 平均电流消耗——模块功耗越大,电流越大
在拥塞区域,金属绕线密度极高,留给电源网络的空间就少了。你想想看,本来应该走宽线的VDD/VSS,被逼着走窄线,电阻自然就上去了。我在一个7nm的项目里遇到过,某个区域的M1层绕线密度超过85%,结果那片区域的静态IR Drop比周边高了将近30%。
关键点:静态IR Drop是平均效应,它告诉你的是「长期供电能力」够不够。拥塞区域因为电源线被挤窄、通孔数量减少,静态IR Drop会系统性偏高。
再来看动态IR Drop
动态IR Drop就更有意思了。它是由瞬态电流变化引起的,跟电路的开关活动直接相关。
动态IR Drop的公式:V = L × di/dt + I × R
这里多了一个电感项,也就是电流变化率引起的压降。为什么拥塞会加剧动态IR Drop?原因有三:
- 同时翻转的cell太多——拥塞区域通常cell密度极高,时钟沿来的时候,成千上万个cell同时翻转,瞬间电流峰值巨大
- 去耦电容被挤占——拥塞区域放不下足够的decap cell,没法就近提供瞬态电流
- 电源网络阻抗增大——绕线拥塞导致电源网格的环路电感增大,di/dt效应更明显
我记得有个项目,一个高拥塞区域的动态IR Drop达到了芯片平均值的2.5倍。后来我们分析发现,那片区域不仅cell密度高,而且因为绕线拥塞,我们不得不把原本计划放的decap cell移走了大半。结果就是,每次时钟沿到来,那片区域就像突然被抽干了水一样,电压瞬间掉下去。
我的经验:动态IR Drop的峰值往往出现在拥塞区域的边界。为什么?因为边界处既有高密度的标准单元,又有长距离的电源走线,电阻和电感都大。我建议在做IR Drop分析时,重点关注拥塞区域的边界地带。
拥塞如何加剧IR Drop?一张图说清楚
下面这张图展示了拥塞与IR Drop之间的恶性循环关系。我画这张图的时候,参考了好几个项目的实际数据。
这张图想表达的核心意思是:拥塞不是孤立的问题,它会通过两条路径同时攻击你的电源网络。左边那条路是静态的,右边那条路是动态的。更可怕的是,IR Drop一旦恶化,时序就会出问题,你不得不插入更多buffer来修复时序,结果拥塞更严重了——这就是个死循环。
静态IR Drop vs 动态IR Drop:拥塞场景下的对比
我整理了一个对比表,方便大家在实际项目中快速判断问题类型:
| 对比项 | 静态IR Drop | 动态IR Drop |
|---|---|---|
| 根本原因 | 电源网络电阻过大 | 瞬态电流变化率过大 |
| 拥塞影响 | 电源线被挤窄,通孔减少,电阻增大 | cell密度高导致同时翻转,decap不足 |
| 时间特性 | 持续存在,与时钟频率无关 | 发生在时钟沿附近,与频率正相关 |
| 热点特征 | 大面积均匀分布 | 局部尖峰,集中在高活动区域 |
| 拥塞区域表现 | 比非拥塞区域高20-40% | 比非拥塞区域高50-100% |
| 修复手段 | 加宽电源线、增加通孔 | 增加decap、降低局部cell密度 |
注意:千万别以为静态IR Drop过了,动态IR Drop就一定没问题。我见过太多项目,静态IR Drop只有2%,动态IR Drop却飙到了15%。尤其是在拥塞区域,动态IR Drop的恶化程度往往是静态的2-3倍。
拥塞加剧IR Drop的三种典型场景
根据我这些年踩过的坑,总结出三种最常见的场景:
场景一:高密度标准单元区域
这种地方cell挤得跟沙丁鱼罐头似的。每个cell都要从电源网络上取电,但电源网格的密度跟不上cell的密度。结果就是,每个cell分到的电源通路都很细,电阻大,IR Drop自然就高了。
场景二:时钟树聚集区
时钟buffer通常需要大电流驱动,而且它们同时翻转。如果时钟树区域恰好也是绕线拥塞区,那动态IR Drop会非常难看。我曾经在一个项目里,时钟树的动态IR Drop达到了18%,而芯片平均只有5%。
场景三:宏单元周边
SRAM、DSP这些大模块的周边,往往是绕线最密集的地方。宏单元本身功耗大,再加上周边绕线拥塞导致电源网络供应不足,IR Drop问题特别突出。
我的建议:在做floorplan阶段,就要把拥塞区域标记出来。然后在PDN设计时,对这些区域做额外的电源加固——比如增加一层电源网格、加宽VDD/VSS trunk、预留decap placement区域。别等到绕线完成了才发现IR Drop有问题,那时候改起来成本就高了。
好了,关于静态IR Drop和动态IR Drop在拥塞场景下的表现,我就讲这么多。记住一句话:拥塞是IR Drop的放大器。你设计的电源网络可能本来够用,但一旦遇到拥塞,所有问题都会被放大。所以,做PDN疏导的时候,一定要把拥塞因素考虑进去。