低功耗设计实现中secondary power pin的连接方法汇总

文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点。点击进去后出现任何损失与社区无关。

在 Soc 设计中,必然要用到低功耗设计策略。低功耗设计涉及 clock gating,power gating,多电压域设计技术。在之前推送的低功耗设计篇提到低功耗设计中常用的一些 cell,比如Isolation cell,level-shifter, AON buffer等。针对他们的摆放要求也简单做过介绍,我相信大家也都特别清楚了。

这些低功耗设计实现经验,你真的懂了吗?

浅谈数字 IC 低功耗设计的若干种低功耗设计方案

今天吾爱 IC 社区小编主要做一个关于 secondary power pin 的连接方法及其注意事项的分享。

  • Isolation Cell

Isolation cell 一般都只占一条 row 的高度,它的 power pin 和标准单元是一样的。无需做特别处理。

  • AON Buffer

当一个特殊信号,比如控制 power switch cell 开关的 req,ack,钳位 clamp 信号,从 Power domain1 穿越另外一个 Power domain2 时,由于此类信号需要反馈到 AON 的 Domain,而 Power domain2 也是 local 的 power,此时就需要用 AON buffer 来 create 一段 buffer tree,实现从 PD1—>PD2—>AON 的跨越 。

AON buffer 一般有 global power pin VDDC, global ground pin VSSC,local 的 power pin 为 VDD,local ground pin 为 VSS,如下图所示。

对于这类 secondary power pin 的连接方法,其实有很多种方法(主要有三种方法,下面做介绍),目的是一致的,需要将这类 pin 连接到对应的 power net 上。

  • Level Shifter

Level Shifter 一般有 High-Low,Low-High 以及同时支持 HL 和 L-H 这三种类型。考虑到应用的灵活性,设计中一般用的是最后一种类型的 Level shifter。另外还有普通 Level shifter 和 Enable Level Shifter 之分,这个希望大家在添加 level shifter 时不要搞错了。

Level Shifter 一般是占用两条 row 的高度。通过查看 lib 文件可以得知其含有多少个 power pin,那些 pin 是 std cell main rail,那些 pin 是 secondary power pin,如下图所示。

对于一个数字 IC 芯片中含有几千个这样的 Level shifter,我们应该如何去连接这类 secondary power pin 呢?主要有三种连接方法,下面分别详细介绍这几种方法。

  • Secondary Power Rail

这种方法是将 Level shifter 中 secondary power pin 所在的位置,延伸至整个 core 区域,从而作为一条 secondary power rail。这种方法可以实现一劳永逸,通过普通的 preroute 就可以实现。只要将 powerplan 规划好即可,无需管 Level shifter 的位置。这种方法是最 robust 的方式,供电最充足,而且最简便。

  • Preroute 到 Power Mesh 上

当第一种方法不能采用时(何时不能用?留给大家思考),我们可以考虑将 secondary power pin preroute 到我们设计的 power strap 上。通过这种方法也可以实现 secondary power pin 的连接。

但是采用这种方法,有个缺点。当你挪动 Level shifter 时,对应的 secondary power pin 就断开了,需要重新做 preroute。另外用这种方法很容易出现动态 IR drop 有较大压降的问题。

很多数字后端工程师往往没有这方面的概念,只知道将所有的 secondary power pin 连接好就 OK 了,殊不知仅仅这么做,可能已经埋了一个大炸弹。吾爱 IC 社区的小编一直强调要做一个有价值的数字后端工程师,要力争将同样的工作做得比别人好,比别人精细。

  • Signal route 布线

最后一种方法就是让工具在 route 阶段用 signal route 的方式将这些 secondary power pin 连接到 power mesh 上。这种方法是最简单,同时也是最粗暴的一种方法。反正我是绝对不会用的。一方面不方便项目 review,另外一方面 secondary power pin 连线很不规律,不美观。

不论采用何种方法,在连接 secondary power pin 时,应该严格遵守以下几个原则,这些要点都是小编经过多个项目实战总结出来的。

  • High Fanout 处理

如果采用第二种方法时,需要格外注意 power strap 所驱动的 fanout 数量。过小的 fanout 可能会导致某些 secondary power pin 无法连接到 power strap,出现 pg floating 的情况。过大的 fanout 则会出现带不动的情况,特别容易出现静态和动态 IR Drop 的问题(这个是很普遍的现象)。

IR Drop 分析之 Redhawk 分析流程

  • High Resistance 处理

当采用第二种方法时,需要格外注意高电阻路径,这样的供电路径是 IR drop 的 weakness 的地方。虽然可能本身 IR drop 没有问题,但这个是潜在的隐患。此隐患不除,芯片回来可能怎么死的都不知道。

这种高电阻路径就是指某个 Level shifter 的 secondary power pin 需要走一段相对比较长的路径,才能够到达 power strap。出现这种情况有两种原因,一种是 power mesh 比较薄弱,另外一种是实现时某些 app option 没有设置好,导致工具没有就近选择 power strap 来进行 power pin 的连接。

  • NDR 设置

无论采用何种方法,都需要指定一个比较宽的金属层来连接这个 secondary power pin。而且这个金属层次往往要选用高层的金属,这样电阻能够小些,压降会相对小点。

星球上的思考题,大家多多思考,欢迎来星球与小编交流。

对于 low power 设计中何时用 Isolation cell,何时用 level-shifter,如何选型,如何摆放这类 cell,如何处理它们的 secondary power pin 等一系列问题,欢迎踊跃交流,谈谈你们的看法,或者谈谈你们困惑的地方。 可以结合下面的四核 cpu 为例,各个 cpu 根据应用需求可以进行 powerdown,scu 和 L2 这层也需要 poweroff,同时整个 cpu subsystem 做了 DVFS。请大家思考下如何规划 powerplan? 如何添加 isolation cell 和 level shifter?摆放这类 cell 有何特别要求?(搞懂这个问题,低功耗实现问题从此就不会困扰你了!)

小编知识星球简介:

在这里,目前已经规划并正着手做的事情:

  • ICC/ICC2 lab 的编写

  • 基于 ARM CPU 的后端实现流程(已经发布)

  • 利用 ICC 中 CCD(Concurrent Clock Data)实现高性能模块的设计实现(已经发布)

  • 基于 ARM 四核 CPU 数字后端 Hierarchical Flow 实现教程(准备中)

  • 时钟树结构分析(规划中)

  • 低功耗设计实现(规划中)

  • 定期在星球布置作业题(星球已经支持布置作业功能)

在这里,各位可以就公众号推文的内容或者实际项目中遇到的难题提问,小编会在 24 小时内给予解答(也可以发表你对数字后端设计实现中某个知识点的看法,项目中遇到的难点,困惑或者职业发展规划等)。

反正它是一个缩减版的论坛,增强了大家的互动性。更为重要的是,微信有知识星球的小程序入口。星球二维码如下,可以扫描或者长按识别二维码进入。目前已经有五十四星球成员,感谢这五十四童鞋的支持!欢迎各位铁杆粉丝加入!终极目标是打造实现本知识星球全员年薪百万的宏伟目标。 (星球的门槛将会越来越高,有需求的朋友趁早上车)****

相关文章推荐

免费领取数字 IC 后端实现培训教程,再赠送一箱水蜜桃!

项目后期踩到这些坑,原来可以这么简单处理!(数字后端实现救火篇)

想要彻底掌握 placement 各种技巧,这个一定可以如你所愿!

IC 自媒体访谈:吾爱 IC 社区

教你轻松玩转天线效应 (Process Antenna Effect)

深度揭秘异步复位同步释放原理

数字后端面试问答 No.19-21(每日三问)

这些低功耗设计实现经验,你真的懂了吗?

Lockup latch 的用法,看这个就够了!

深度解析 Create_clock 与 Create_generated_clock 的区别

盘点数字后端设计实现用到的各种文件

clock jitter 是否对 hold time 有影响?(文末有福利)

为什么时钟树上要用 clock inverter(min pulse width check)

LVS 就是这么简单!(数字后端物理验证篇)

揭秘为何 net delay 是负值(数字后端实现时序篇)

PBA(Path Base Analysis)想说爱你不容易(静态时序分析基础篇)

一网打尽时钟树综合 Clock Skew

数字后端设计实现之时钟树综合实践篇

【惊呆了!】你居然还在用 flatten 方式进行 timing signoff

数字后端面试问答 No.16-18

合理的时钟结构能够加速 Timing 收敛(时钟树综合中级篇)

数字后端面试问答 No.13-15(每日三问)

【机密】从此没有难做的 floorplan(数字后端设计实现 floorplan 篇)

数字后端面试问答 No.10-12(每日三问)

数字后端面试问题 No.7-9(每日三问)

听说 Latch 可以高效修 hold 违例(Timing borrowing 及其应用)

15 天零基础入门到精通 python - 最全的视频教程

数字后端面试问答 No.4-6(每日三问)

IR Drop 分析之 Redhawk 分析流程

CRPR 能补偿 crosstalk 吗?

原来电路最高工作频率是这么算出来的(STA 基础篇)

数字后端面试问答 No.1-3(每日三问)

秒杀数字后端实现中 clock gating 使能端 setup violation 问题

教你轻松调 DCT 和 ICC 之间 Timing 与 Congestion 的一致性

数字芯片设计实现中修复 setup 违例的方法汇总

数字 IC 设计中 ECO 的那些事,其实并不是事!

Scan chain reordering 怎么用你知道吗?

如何评价数字后端设计中 floorplan 的好坏?

数字后端实现时 congestion 比较严重,你 hold 得住吗?

数字后端实现 place 过程进阶

Final netlist release 前,你应该做好哪些工作?

基于 Physical Aware 的动态功耗优化实现方案

深入浅出讲透 set_multicycle_path,从此彻底掌握它

【大师必备】最全的数字 IC 设计经典书籍电子版下载

你与数字后端大神的差距在这里,快来瞧瞧!

数字后端实现时 congestion 比较严重,你 hold 得住吗?

时钟树综合(clock tree synthesis)基础篇

【福利】数字 IC 后端各种 Userguide 下载

好了,今天的码字就到这里了,原创不容易,喜欢的可以帮忙转发和赞赏,你的转发和赞赏是我不断更新文章的动力。小编在此先谢过!与此同时,吾爱 IC 社区(52-ic.com)也正式上线了。吾爱 IC 社区(52-ic.com)是一个专业交流和分享数字 IC 设计与实现技术与经验的 IC 社区。如果大家在学习和工作中有碰到技术问题,欢迎在微信公众号给小编留言或者添加以下几种联系方式进行提问交流。

https://mp.weixin.qq.com/s/_IZxP-LedVgy-QvP7CgTMA

低功耗设计实现中secondary power pin的连接方法汇总相关推荐

  1. [Android]Android布局文件中的android:id=@*属性使用方法汇总以及介绍

    由于项目需要进行Android开发,因此一边开发,一边查阅资料,一边总结了Android布局文件中android:id="@*"属性的使用方法汇总以及介绍.id资源的引用 andr ...

  2. STM32开发笔记27:STM32L0低功耗设计——RTC模块1秒时钟的产生方法

    单片机型号:STM32L053R8T6 在进行低功耗设计时,使用外部中断唤醒CPU是一个非常有用而且有效的方法,但是在某些特定的应用中,我们还希望CPU能够自己醒来去完成一些特定的操作,这就需要用到R ...

  3. eclipse中Android模拟器常见的问题解决方法汇总

    [eclipse中Android模拟器,DDMS看不到设备] 在eclipse中启动模拟器AVD后,刚启动的时候,在控制台会看到相关的设备,在DDMS中也会有设备列表,只不过是offline的,但等到 ...

  4. Java中性能优化的35种方法汇总

    原文地址:http://www.jb51.net/article/102831.htm 前言 对程序员们来说,代码优化是一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于 ...

  5. vba 提取 json某个值_Excel中提取不重复值的方法汇总(5种基础+VBA+1个自定义函数)...

    各位朋友,你们好, 今天和你们分享Excel中提取不重复值的几种方法,着重介绍[5种]基础操作方法,另外附送一个VBA去重代码,拿去就可以直接使用. 一.基础操作方法 1.数据工具直接去重(见下图) ...

  6. 【强烈收藏】统计学中18种以上的数据分析方法汇总!

    来源:数据派THU,编辑:数据Seminar Part1 描述统计 描述统计是通过图表或数学方法,对数据资料进行整理.分析,并对数据的分布状态.数字特征和随机变量之间关系进行估计和描述的方法.描述统计 ...

  7. ABAP中生成GUID、UUID的方法汇总

    GUID(Globally Unique Identifier)全局唯一标识符,其广泛应用于各种程序中,在一些场景下,我们经常使用GUID作为主键.那么,在ABAP中,生成GUID的方式有哪些呢? 1 ...

  8. java中求素数的几种方法汇总及比较

    首先来看两道题目: 1. 请实现一个函数,对于给定的整型参数 N,该函数能够把自然数中,小于 N 的质数,从小到大打印出来.比如,当 N = 10,则打印出:2 3 5 7**重点内容** 2. 请实 ...

  9. SQL中常见的几种连接方法-(内连接,左连接,右连接)

    连接是数据库主要的特点,通常一个表中不会存放不同实体的信息,不同实体的信息存在不同的表当中,但是要同时查出多个表当中的信息时就需要多个表合并到一起进行查询,此时连接表的作用就出来了. 在表建立时常把一 ...

  10. 低功耗设计(low power design)和UPF介绍(含代码示例)

    目录 一.低功耗实现方法 1.多电压域技术(Multi-Voltage) 2.电源门控(MTCOMS Power Gating) 3.多电压+功耗控制+寄存器Retention技术 4.低电压stan ...

最新文章

  1. Java并发基本概念
  2. 程序员面试题精选100题(51)-顺时针打印矩阵[算法]
  3. 【干货】CRM大牛告诉你,Salesforce到底是个什么鬼?
  4. channelinactive触发后不关闭channel_go那些事儿|channel使用及其实现原理
  5. ASP.NET Core中的分布式缓存
  6. vue data数据修改_Vue 超清晰思维导图(7张),详细知识点梳理!
  7. php preg_match_all匹配正则,字符串过长时出错
  8. EularProject 39:给周长推断构成直角三角形个数
  9. 人人都该懂点儿TCP---ACK延缓(转)
  10. 34线性映射01——映射的概念和性质
  11. 2. mac mysql error
  12. 2008 r2 server sql 中文版补丁_sql2008 sp4补丁
  13. 专利服务器拒收 文件异常解压,电子申请专利常见错误总结.pdf
  14. 91手机助手官网iPhone版 v5.6.1 官方版
  15. win7 ShuipFCMS 配置 及问题
  16. Linux7下Mysql5.7搭建MHA(0.58版本)
  17. 计算机应用程序是啥意思,为什么某些Mac应用程序需要“使用辅助功能控制此计算机?...
  18. 图片太普通,教你轻松制作画中画特效
  19. vue单页面背景颜色修改
  20. 搭建完整的开发环境--Linux下的开发

热门文章

  1. 行动是最好的告白,钟意社科院杜兰金融管理硕士项目的你不要错过机会
  2. 店铺DRS评分这样来做|盛天海电商
  3. 不要随便点这个网站,你偷偷下载的小电影,他们全都知道!
  4. 狂神说SpringMVC课堂笔记
  5. 2048小游戏后端的实现
  6. Javaweb项目导出Excel文件无法下载问题
  7. Java——反射(reflection)详解
  8. python中sys.stdout和sys.stderr
  9. 扫雷小游戏 纯C语言/C++开发分享成果和记录
  10. Spring Cloud Alibaba Sentinel(七)受权规则 黑白名单