(5) Innovus LAB7-1 Powerplan

Powerplaning

这部分内容涉及给设计中的macro,ip打power。

在开始之前,我们需要load进我们的设计,步骤如下:

(1)设计导入(这部分前面介绍过了)

(2)加载floorplan相关信息进来

这两步完成后就完成了设计和floorplan信息的导入

先加电源环

GUI界面操作:

Power-Power Planning ‒ Add Ring

点击OK后如下图所示效果。

怎么给一个单独的macro模块打power ring呢

给PLL加power ring,需要鼠标左键先选中左下角的PLL模块

基本设置好之后,我们再来设置加power ring的高级选项,定制powerplan的形状。

点击OK后效果图如下图所示。

Power Stripe 和 Power Rail 的区别

在数字后端电源规划中,Power StripePower Rail 都属于电源网络的一部分,但它们的位置、金属层和作用不同。

核心记忆:

1
2
Power Stripe:较粗、较高层的电源条,用来把电源送进芯片内部
Power Rail:标准单元行里的细电源轨,用来直接给 standard cell 供电

1. Power Rail 是什么?

Power Rail 可以理解为:

标准单元行上的电源轨。

标准单元通常按 row 摆放,每一行 standard cell 都会有对应的 VDD / VSS rail。

示意图:

1
2
3
VDD Rail  =========================
[INV][NAND][DFF][MUX]
VSS Rail =========================

每个 standard cell 的 VDD / VSS pin 会直接连接到这些 rail 上。

因此,Power Rail 的作用是:

直接给 standard cell 供电。

Power Rail 通常使用较低层金属,例如 M1,因为它需要和 standard cell 内部的电源 pin 对齐。


2. Power Stripe 是什么?

Power Stripe 可以理解为:

Core 区域内部较粗的电源条。

它通常贯穿 core 区域,用来把电源从 power ring 或 power pad 分发到芯片内部。

示意图:

1
2
3
| VDD |       | VSS |       | VDD |       | VSS |
| | | | | | | |
| | | | | | | |

Power Stripe 通常使用较高层金属,例如 M4 / M5 / M6

原因是:

高层金属通常更宽、阻抗更低,更适合长距离传输电源。


3. Power Stripe 和 Power Rail 的连接关系

电源网络一般可以理解为:

1
2
3
4
5
6
7
8
9
Power Pad

Power Ring

Power Stripe

Power Rail

Standard Cell VDD / VSS Pin

也就是说:

Power Stripe 负责把电源送到芯片内部;
Power Rail 负责把电源直接送到每一行 standard cell。


4. 两者区别总结

对比项 Power Stripe Power Rail
中文含义 电源条 / 电源主干线 电源轨
位置 Core 区域内部 Standard cell row 上
金属层 通常使用较高层金属,如 M4 / M5 / M6 通常使用较低层金属,如 M1
宽度 较宽 较细
作用范围 给芯片内部较大区域分发电源 直接给 standard cell 供电
连接对象 连接 power ring、power pad、power rail 连接 standard cell 的 VDD / VSS pin
作用 降低 IR Drop,把电源送进 core 给每一行标准单元供电
类比 城市主干电源线 每家门口的供电线

5. 为什么需要 Power Stripe?

如果只有 Power Rail,没有 Power Stripe,电源从芯片边缘传到芯片中心的路径会很长,容易导致:

问题 说明
IR Drop 变大 电源压降严重
供电不稳定 中心区域 cell 可能拿不到足够电压
Timing 变差 电压降低会导致 cell delay 变大
功耗分析不过 后续 IR Drop / EM 检查可能失败

所以需要通过 Power Stripe 将 VDD / VSS 分发到 core 内部,缩短供电路径。


6. 一句话总结

1
2
Power Stripe 是电源主干线,负责把电源分发到芯片内部;
Power Rail 是标准单元行上的电源轨,负责直接给 standard cell 供电。

简单记忆:

1
2
Stripe 是主干;
Rail 是到每一行 cell 的供电轨。

添加Power Stripe

GUI界面操作如下:

Power-Power Planning ‒ Add Stripe

在弹出的对话框中按照下图所示的填写对应的信息。

图中红框内容
复制
Relative from core or selected area
Start: 100
Stop: 100
意思是:
以 core 区域或者你选中的区域为参考,stripe 从距离边界 100 的位置开始,到距离另一侧边界 100 的位置停止。

示意图可以理解为:

1
2
3
4
5
6
Core 区域
+------------------------------------------------+
|<--100-->| Power Stripe 区域 |<--100-->|
| | | | | | | | | |
| | | | | | | | | |
+------------------------------------------------+

点击OK后效果如下图所示。

这里要弄清楚一个VSS和一个VDD是一组,每组之间的间距是100,一组之间的VSS和VDD的间距是1

摆放cell到指定位置

首先,介绍命令使用方法。

我们随意挑选一颗cell,然后执行placeInstance 即可。

其次,我们再来介绍下GUI界面实现方式。

通过Design Browser,选择一颗cell,右键q,然后指定好坐标即可,具体操作如下图所示。

值得注意的是这颗cell只能在physical view下才能看到,floorplan view是看不到的。

添加power rail并与power stripe打孔 ( follow pin)

在创建powr rail前,我们需要做好derive pg,你得告诉工具power rail对应的power net,比如power是叫VDD还是VDD_LOCAL,ground是叫VSS还是AVSS。

Innovus中做derive pg的命令是globalNetConnect,具体命令如下。

因为我们加的power stripe是高层metal,比如我们这个lab是M6,follow pin一般是M1。那么整个供电网络应该是M6一直打孔到M1。所以我们希望在创建power rail时同时打上各层的通孔VIA。

GUI界面操作方法如下:

Route ‒ Special Route

点击OK后效果如下图所示。

至此,powerplan就打好了。正常打完power后,我们需要做前期ir drop分析 ,主要目的是分析当前的powerplan是否足够强壮。

本lab是用了innovus自带的Early Rail Analysis,但实际项目中不会用这个来做,所以这部分内容建议大家直接跳过。

业界ir drop 分析工具大部分都是用redhawk来做的。利用redhawk来做ir drop的内容属于进阶内容,今年后面有一个专门的课程来讲解和实战的。

ESC 关闭 | 导航 | Enter 打开
输入关键词开始搜索