第三章:电源网格设计原则——网格间距、线宽、金属层选择对拥塞的影响

各位工程师朋友,咱们接着聊。上一章我们讲了PDN的基本架构,这一章我打算深入聊聊电源网格的具体设计参数。说白了,就是三个核心问题:线该画多宽?格子该做多大?用哪层金属来做?

这三个参数,直接决定了你的电源网格能不能顺利布通,会不会跟信号线抢地盘。我在好几个项目里都吃过这方面的亏,今天把这些经验掰开了揉碎了讲给你听。

3.1 网格间距:太密则堵,太疏则垮

网格间距,指的是电源轨(VDD/VSS)之间的中心距离。这个值怎么定?我个人的习惯是,先看标准单元库的供电需求。

举个例子,一个7nm工艺的项目,标准单元库的供电轨道间距通常是0.48um或0.56um。如果你把网格间距设成1.2um,那每个标准单元行里就只能放一条电源轨。嗯,这其实是最常见的情况。

关键原则:网格间距必须与标准单元的行高(row height)成整数倍关系。否则,电源轨对不齐,后续绕线会非常痛苦。

但问题来了——间距越小,电源网络越密,IR drop当然好看了。可代价是什么?绕线资源被大量占用。你想想看,本来信号线可以从M1、M2层走,结果电源轨把M1层占得满满当当,信号线只能往高层挤,拥塞自然就来了。

我在一个28nm的项目里就遇到过这种情况。当时为了追求极致的IR drop,把网格间距从2.4um缩到了1.6um。结果呢?IR drop确实降了5mV,但绕线拥塞度从78%飙到了95%,最后不得不花两周时间手动调整。得不偿失啊。

我的建议:网格间距不要小于标准单元行高的2倍。对于大多数数字芯片,2.4um到4.8um是一个比较安全的范围。具体选多少,要看你的功耗密度和绕线资源。

3.2 线宽:宽了抗压,窄了省地

线宽这个参数,说白了就是电源轨的粗细。宽线当然电阻小、电流能力强,但它占用的绕线通道也多。

我记得有一次做AI加速器芯片,功耗高达150W。团队里有人提议把VDD的电源轨做到2um宽。我说等等,先算算绕线资源够不够。结果一算,M1层总共就2000条绕线通道,2um宽的电源轨占掉400条,剩下1600条给信号线。而信号线的总需求是1800条——这明显不够用。

最后我们折中了一下:VDD轨用1.2um,VSS轨用0.8um。为什么VSS可以细一点?因为VSS网络通常有更多的并联路径,电流密度相对均匀。这个经验,是我从三个项目里总结出来的。

工艺节点 推荐VDD线宽 推荐VSS线宽 适用场景
28nm 1.0 - 1.5um 0.8 - 1.2um 低功耗IoT芯片
16nm/12nm 0.8 - 1.2um 0.6 - 1.0um 移动SoC
7nm/5nm 0.6 - 1.0um 0.5 - 0.8um 高性能计算芯片

注意:线宽不是越宽越好。过宽的电源轨会导致金属密度超标,引发CMP(化学机械抛光)工艺问题。我曾经见过一个案例,因为M1层电源轨太宽,导致晶圆表面不平整,后续光刻对不准,良率直接掉了3%。

3.3 金属层选择:高层走远路,低层走短路

金属层的选择,其实是一个权衡问题。高层金属(如M9、M10)电阻小、电流能力强,但绕线资源宝贵,通常留给时钟和关键信号。低层金属(M1-M3)电阻大,但资源丰富,适合做局部供电。

我个人习惯的分层策略是这样的:

  • M1层:只做标准单元内部的电源轨,不做长距离供电。因为M1的方块电阻大,走远了压降太大。
  • M2-M4层:做局部电源网格,覆盖面积不超过500um x 500um。这些层跟信号线共用,所以要控制电源轨的密度。
  • M5及以上:做全局电源主干,从顶层PAD或Bump把电流分配到各个区域。这些层电阻小,适合长距离传输。

这里有个坑,我必须要提醒你:不要把所有电源轨都放在同一层金属上。 为什么?因为电流会集中在电阻最小的路径上。如果你把VDD和VSS都放在M5层,那M5层的电流密度会非常大,EM(电迁移)风险急剧上升。

正确的做法是:把VDD和VSS分布在不同的金属层上,形成交错网格。比如VDD走M5和M7,VSS走M6和M8。这样电流路径更分散,EM风险也降低了。

3.4 知识体系总览

说了这么多,我画了一张图,帮你把这三个参数的关系理清楚。你看,网格间距、线宽、金属层选择,这三个参数不是孤立的,它们互相影响,共同决定了PDN的性能和拥塞程度。

电源网格设计三要素 网格间距 线宽 金属层选择 影响绕线资源 决定电流能力 影响层分配 决定电阻大小 决定电源网络密度 最终影响:IR Drop + 绕线拥塞 三个参数互相制约,需要根据功耗、面积、性能综合权衡 经验法则:先定间距,再选线宽,最后分配金属层

3.5 实战中的权衡策略

好了,理论讲完了,咱们说说实战中怎么权衡。我一般按这个步骤来:

  1. 先看功耗分布:把芯片的功耗热点标出来。高功耗区域,网格间距要密一些,线宽要宽一些。低功耗区域,可以适当放松。
  2. 再看绕线资源:如果某个区域信号线特别多(比如总线聚集区),电源网格就要让路。我通常会在这个区域把网格间距拉大,或者把电源轨移到更高层。
  3. 最后做迭代优化:没有一次就能定好的参数。我习惯先跑一版粗网格,看IR drop和拥塞度,然后逐步调整。一般迭代3-5轮就能找到平衡点。

一个小技巧:在芯片的角落区域,可以适当加宽电源轨。因为角落的电流路径最长,IR drop最严重。我曾在某个项目中,把角落的电源轨从1.0um加宽到1.5um,IR drop改善了12%,而绕线资源只多占了3%。这笔账很划算。

嗯,关于电源网格设计的三个核心参数,今天就聊到这里。记住一句话:没有最好的参数,只有最适合你芯片的参数。 多跑几次仿真,多看看数据,你自然就能找到感觉。

可可精品资料库