2、电源网络基础:电源地网络概念、电源环(Power Ring)、电源条带(Power Strap)

各位好,咱们今天聊聊芯片布局阶段最基础、也最要命的一个环节——电源网络设计。

说实话,我见过不少新手,一上来就急着摆标准单元、跑时序,结果电源网络没规划好,后面IR Drop一塌糊涂,整个芯片直接废掉。嗯,这可不是吓唬你。

2.1 电源地网络概念

先说说什么是电源地网络。说白了,就是给芯片里所有电路供电的“血管系统”。

电源网络由两部分组成:

  • 电源网络(VDD):提供正电压,给电路“喂能量”
  • 地网络(VSS):提供参考零电位,让电流有回路

你想想看,芯片里几千万甚至上亿个晶体管,每个都要用电。如果电源网络设计不好,离电源pad远的那些单元,电压可能已经掉到没法正常工作的程度了。这就是我们常说的IR Drop问题。

核心原则:电源网络的目标,就是用最小的金属资源,把稳定的电压送到每一个标准单元。

我个人习惯把电源网络分成三个层级来考虑:

  1. 芯片级:从pad到core区域的供电主干
  2. 模块级:各个功能模块内部的供电网络
  3. 单元级:标准单元本身的电源引脚连接

这三个层级,缺一不可。我在一个28nm的项目里就吃过亏——芯片级电源做得很好,但模块内部忘了加足够的条带,结果那个模块的时序怎么都修不好。后来一查,IR Drop超过了10%。

2.2 电源环(Power Ring)

电源环,就是围绕芯片core区域或者某个宏模块(比如SRAM、PLL)四周,用顶层金属围成的一个闭合环路。

为什么要做电源环?原因很简单:

  • 它能把pad进来的电流均匀地分配到整个core区域
  • 它本身就是一个低阻抗的供电干线
  • 它还能起到屏蔽作用,减少外部噪声干扰

我记得刚入行那会儿,带我的老工程师跟我说:“电源环的宽度,宁宽勿窄。” 当时不太理解,后来自己做了几个项目才明白——金属宽度直接决定了电阻,电阻大了IR Drop就大,这账很好算。

经验值参考:对于一般的数字芯片,电源环的宽度通常在10μm到50μm之间。具体要看电流大小和金属层电阻。我一般会先估算core总电流,然后按每mA需要多少μm金属宽度来算,留20%的余量。

电源环的设计要点:

  1. 闭合性:一定要闭合,形成环路。开环的电源环效果会差很多
  2. 对称性:VDD和VSS环尽量对称放置,间距保持一致
  3. 多层叠加:如果电流很大,可以用多层金属叠在一起做环,通过via连接
  4. 转角处理:环的转角处电流密度最大,这里要特别注意加宽或者加45度斜角

注意:电源环不是越宽越好。太宽的环会占用大量布线资源,而且金属宽度超过一定值后,工艺上的电迁移(EM)问题会更突出。我曾经在一个40nm项目里,把电源环加到了80μm宽,结果DRC报了一大堆金属密度违规,后来不得不拆成两条40μm的环并联。

2.3 电源条带(Power Strap)

电源条带,就是从电源环往core内部延伸的“供电支线”。它们像一条条带子,横跨整个芯片区域。

电源条带的作用:

  • 把电源环的电流进一步分配到芯片内部各个位置
  • 降低core区域的IR Drop
  • 为标准单元的电源引脚提供直接的连接点

条带的设计,说白了就是回答三个问题:

  1. 用哪层金属?——通常用高层金属(M5及以上),因为电阻小、厚度大
  2. 间距多大?——间距决定了供电的均匀性
  3. 宽度多少?——宽度决定了通流能力

我一般会这样设计条带:

参数 推荐值 说明
金属层 M5/M6/M7 高层金属电阻小,适合长距离供电
条带宽度 2μm ~ 10μm 太窄电流不够,太宽浪费资源
条带间距 50μm ~ 200μm 根据标准单元密度和电流需求调整
方向 水平和垂直交替 形成网格结构,供电更均匀

这里有个小技巧:条带的方向要和标准单元的电源轨道方向垂直。比如标准单元的VDD/VSS是横向的,那你的条带就走纵向,这样每个单元都能就近取电。

网格供电:把水平和垂直的条带组合起来,就形成了一个供电网格。这是目前最主流的供电方式。网格越密,IR Drop越小,但布线资源占用也越多。怎么平衡?我的经验是:先跑一个快速IR Drop分析,找到热点区域,然后在热点区域加密网格,其他地方保持稀疏。

我曾经在一个7nm的项目里,刚开始按经验设了100μm间距的条带网格,结果IR Drop分析显示有3%的压降。后来把热点区域的间距缩小到50μm,IR Drop降到了1.5%以内。你看,有时候就是差这么一点。

最后说一个容易忽略的点:条带和电源环的连接处,一定要打足够的via。我见过有人条带画得很漂亮,但和环之间只打了几个via,结果via成了瓶颈,电流全堵在那儿了。

via阵列:在条带和环的交界处,建议用via阵列,而不是单排via。阵列的行数和列数根据电流大小来定。我一般会按每mA电流至少需要1个via来估算,然后翻倍留余量。

嗯,电源网络的基础就这些。说白了就是:环要闭合、条带要均匀、via要够多。这三条做到了,你的芯片供电就成功了一大半。