power-plan如何定
Power-Plan或者说PG如何打,这是一个仁者见仁智者见智的问题,没有一个标准的答案,因为有各种各样的影响因素。本文将列举一些可能的影响因素:
1.和design 相关
1) Utilization 低的打的越多越好,高的需要打低一点,考虑DRC 和Congestion。
2)同样的Utilization,同样的PG 结构,模块功能不一样,congestion 也不一样.特殊模块得特殊考虑
3)不同芯片 电脑/手机芯片对功耗的要求也不一样
2.sign off 标准
1)动态IR Drop/静态IR Drop
2)sign-off的时候需要根据某个工作场景的activity 文件,进行功耗跟IR分析,常用的activity文件格式有:VCD (Value Change Dump file) , FSDB, SAIF(Switching Activity Interchange Format)。即使同一个design,不同工作场景的activity文件产生的IR-Drop也大不一样。
3.先入经验
一般PG结构的选择是基于先前的项目经验。但随着工艺不断进步,之前的经验并不一定是最优化的也不一定适用于当前工艺。
40nm工艺以上一般只用M1做rail,但是在先进工艺下,M1的电阻率比较高,由M1造成的IR-drop比较大,而且占主要的因素。所以可能就需要M2也作为rail,所以先入经验要随着工艺的改进做调整
4.工艺和金属层数
不同的工艺,pitch和width大不一样,采用LVT或者HVT等造成的功耗也大不一样,不能直接像工艺尺寸一样简单的shrink。
即使同一种工艺,也可以选择不同数目的金属层。少一层金属就省一层mask,就省一笔钱。比如40nm工艺,如果选用8层金属,流片一次可能需要100W,如果选用7层,流片一次则需要95W。单看可能差别不是很大,但是如果量很大很大,节省的成倍就十分可观了。
选择不同的金属层,PG结构自然不同。
5.
对PG进行微调
PG怎么打,这是每个公司的机密,作者也不能讲很多,一般是先初略的打一版看,然后在signoff工具中看看结果,再基于该结果和congestion的情况再进行调节。下面讲讲对给定的PG结构,在保证同样的IR-drop的情况下,如何通过微调,来省出更多的绕线资源,减小congestion或者基于同样congestion的情况下,可以额外的增强PG结构,降低IR-drop。
微调的原理是什么?
在新工艺下signal-routing都是在track上走线的,不会发生在半track上走线的情况。例如下面画了4个track,2条走线。在老的工艺下,完全没问题,想咋走咋走,只要满足min-spacing就好了。但是在新的工艺下,就得规规矩矩的,每条走线都必须在track上(这里只是说signal-routing必须在track)。
必须在Track上有几个方面的原因吧:
spacing是一个离散的值。在老的工艺下,无限长且平行的两条走线,只要spacing是大于某个值的就没问题,可以是任意的浮点数。但是在新的工艺下,大于某个值不准确,spacing是一个离散的值。例如spacing的表格是0.1,0.2,0.3,如果spacing小于0.3,那么只能选0.1和0.2两个值,如果spacing大于0.3,则可以是任意浮点数。
width也同理,也是一个离散的值。
很多DRC规则都是基于这种离散的值的,不仅仅是这种简单的spacing/width,所以p不仅仅是违反了这一条,后面还有更多的DRC等着你。
新的工艺都采用了double-pattern,走线不在Track上,后面在分不同mask的时候会有问题。
上面说到走线必须都在track上,更准确的说法是为了减少各种可能的DRC,工具走signal-routing的时候都在track上,因为PR工具看不到所有sign-off的DRC-rule,所以不能也不敢乱走。我们自己打PG的时候还是可以随便打,只要没有DRC违规就可以了。
这些因素虽然不会影响IR-drop,但是却可以通过调节这些因素,能够减小congestion或者基于同样congestion的情况下,可以额外的增强PG结构。
下面就举一个例子,例子中的数据都是作者随便取的,不具有代表性。
1)假设原始的PG如下图所示,中间宽的是PG,两边的是信号走线。
我们来分析分析这个图:
PG在Track上,没问题
取的宽度占用了3个track,没问题
但是,由于各种DRC,额外的2个Track其实也不能用,其实PG占用了5个track。浪费
1)
我们就来进行一下优化:既然要占5个Track,干脆PG再宽点不更好吗?
而且PG可以不需要非得在track上,可以在track中间。例如下图所示,不仅加宽了PG,而且居然还能省一个Track!
2)如下图所示,干脆就不要用uniform-track,直接创建non-uniform-track。仍然是用同样的PG宽度,但是却省下了不少的绕线资源。
power-plan如何定的更多相关文章
- 非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry 大牛
非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry 大牛 Glenn Berry 大牛会对这个脚本持续更新 -- SQL Server 2012 Diagnost ...
- SQL Server 诊断查询-(2)
Query #13 SQL Server Error Log(FC) -- Shows you where the SQL Server failover cluster diagnostic log ...
- xps13 关机充电 右边的usb口
bios里设置了 usb powershare但关机的时候还是不能充电 度娘了一下,发现不解决问题,只能放狗了.果然谷歌里搜到答案,是windows的电源策略. I figured it out. A ...
- process lasso 优化原理
<星际争霸2:虚空之遗>很多玩家的CPU性能并不低,但是在星际2中的表现就总会出现掉帧的情况,那么应该如何提升CPU的性能就成了玩家关注的话题,下面小编就为大家带来星际争霸2虚空之遗cpu ...
- How to make sure your machine is always online without sleep
1. Create a "NeverOff" power plan: Control Panle->System and Security->Power Options ...
- [官网]Windows modules
Windows modules https://docs.ansible.com/ansible/latest/modules/list_of_windows_modules.html win_acl ...
- 非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry
非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry Glenn Berry 曾承诺对这个脚本持续更新 -- SQL Server 2012 Diagnostic ...
- Win10 GodMode
Win10 GodMode 文件夹命名示例: GodMode.{ED7BA470-8E54-465E-825C-99712043E01C} {ED7BA470-8E54-465E-825C-99712 ...
- [转帖]老狼:你知道哪些关于 Windows 10 的骚操作?
作者:老狼链接:https://www.zhihu.com/question/265781599/answer/579939418来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- windows10添加电源计划修改的快捷方案
转自:http://news.mydrivers.com/1/431/431346.htm 由于目前的Windows 10预览版在UI方面还未优化到位,所以某些设置选项要想找出来是很难的,这时候如果能 ...
随机推荐
- Appium+Python移动端(Android)自动化测试环境搭建
一.安装JDK 下载好jdk安装包后直接下一步直至安装完成即可,安装完JDK后配置环境变量 :计算机→属性→高级系统设置→高级→环境变量: 系统变量→新建 JAVA_HOME 变量 变量值填写jdk的 ...
- webpack 之loader
webpack的作用: 是 用来处理我们写的js代码.并且会自动处理js之间相关的依赖. 但是,开发中我们不仅仅有基本的js代码处理,还需要加载css,图片,也包括一些高级的 将ES6转成ES5代 ...
- ADO.NET中sqlserver和mysql的变量名
因为ADO.NET标配是访问SQL SERVER数据库,那么如果需要访问MySQL数据库,那么ADO.NET五个对象也必须转换. 访问 SQL SERVER 的ADO.NET对象 1.SqlConne ...
- jsp连接数据库增删改查
一,创建表 二.将jar包复制导入到lib文件夹下 三.创建工具包连接数据库 package com.bill.util; import java.sql.Connection; import jav ...
- echarts 设置默认选中,单选
默认选中 和 不选中 传送门
- js 时间延迟
dojosetTimeout(dojo.hitch(this, function(){ this.onClickCount(); }), 3000); 普通应用在js中,延迟执行函数有两种,setTi ...
- ISCC2018_leftleftrightright-Writeup
leftleftrightright(150) 这个题学到了不少东西,值得认真写一下 下载好文件后发现是upx的壳,upx -d直接脱掉后运行,发现是经典的check输入的题目(作为一个linuxer ...
- 如何着手学习WebRTC开发(转)
文章链接:http://www.sohu.com/a/146536246_458408 WebRTC中文社区-国内镜像:https://webrtc.org.cn/mirror/#windows%E2 ...
- 如何修改C# winform程序图标
以Visual Studio 2012 C# Winform程序为例 一.程序内部显示图标的修改方法 在窗体的属性窗口找到icon属性,设置成已经准备好的ico格式的文件,效果如下 二.程序外部显示图 ...
- 松软科技课堂:jQuery 语法
jQuery 语法 jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作. 基础语法是:$(selector).action() 美元符号定义 jQuery 选择符(select ...