低功耗设计方法学——篇Ⅱ

news2024/11/25 0:34:56



引言

低功耗设计关乎ASIC芯片的性能稳定。对ASIC 特别是一些Soc芯片的设计有着重要的影响,随着集成规模的大幅度增加,芯片自身的功耗问题暴露也越来越明显。低功耗设计的需求和必要性也越来越值得关注。本文就《Low Power Methodology Manual For System-on-Chip Design》 书籍的学习,记录一下低功耗设计的理论知识。

参考

【1】Michael Keating • David Flynn •Robert Aitken Alan G • ibbons • Kaijian Shi. Low Power Methodology Manual For System-on-Chip Design

前文链接:

低功耗设计方法学——篇Ⅰ


有许多功率降低方法已经使用了一段时间,并且是成熟的技术。本章介绍了其中一些低功耗设计方法:
• 时钟门控
• 门级功率优化
• 多VDD
• 多VT 

时钟门控

芯片中动态功率的很大一部分在时钟的分配网络中。高达50%甚至更多的动态功率可以花费在时钟缓冲器中。这一结果具有直观意义,因为这些缓冲器在系统中具有最高的切换速率,有很多,并且它们通常具有高驱动强度,以最大限度地减少时钟延迟。此外,即使输入和输出保持不变,接收时钟的触发器也会消耗一些动态功率。
减少这种功率的最常见方法是在不需要时钟时关闭时钟。这种方法被称为时钟门控
现代设计工具支持自动时钟门控:它们可以在不改变逻辑功能的情况下识别可以插入时钟门控的电路。下图显示了这是如何工作的。

在原始RTL中,寄存器是否更新取决于变量(EN)。通过基于相同的变量对时钟进行门控可以实现相同的结果。
如果所涉及的寄存器是单个位,则会出现少量节省。如果它们是32位寄存器,那么一个时钟门控单元可以将时钟门控到所有32个寄存器(以及它们的时钟树中的任何缓冲器)。这样可以节省大量的电力。
在RTL设计的早期,工程师会在RTL中明确地对时钟门控电路进行编码。这种方法很容易出错——很容易创建一个时钟门控电路,该电路在门控过程中出现故障,从而产生功能错误。如今,大多数库都包括合成工具识别的特定时钟门控单元。显式时钟门控单元和自动插入的结合使时钟门控成为一种简单可靠的降低功率的方法。实现这种类型的时钟门控不需要对RTL进行任何更改。
结果
在最近的一篇论文[1]中,Pokhrel报告了一个独特的机会,他的团队最近不得不比较一个(几乎)相同的芯片,该芯片在有时钟门控和没有时钟门控的情况下实现。
作为一个功率降低项目,在与时钟门控相同的技术中重新实现了现有的没有时钟门控的180nm芯片。只实现了逻辑上的微小更改(删除了一些小块,并用其他块替换,以实现功能上的小幅净增加)。
Pokhrel报告称,根据操作模式,面积减少了20%,功率节省了34%至43%。(这种节省是在芯片的时钟门控部分实现的;处理器是一个硬宏,而不是时钟门控。当处理器处于IDLE模式时,即处理器关闭时,在整个芯片上进行功率测量。)功率测量来自实际的硅。
节省的面积是由于单个时钟门控单元取代了多个多路复用器。
Pokhrel做了几个有趣的观察:
•  经过一些分析和实验,该团队决定只在位宽至少为3bit位宽的寄存器上使用时钟门控。他们发现,一位寄存器上的时钟门控在功率或面积上都不高效
•  节省的大部分功率是由于时钟门控单元位于时钟路径的早期。大约60%的时钟缓冲器出现在时钟门控单元之后,因此在门控期间它们的活动减少到零。

门级功率优化

除了时钟门控之外,工具还可以执行许多逻辑优化,以最大限度地减少动态功率。下图显示了其中的两个优化。
在图的顶部,与门输出具有特别高的活动性。因为后面跟着一个NOR门,所以可以将这两个门重新映射到一个AND-OR门加上一个反相器,这样高活动性网络就变成了单元内部。现在,高活动节点(与门的输出)正在驱动更小的电容,从而降低动态功率。
在图的底部,最初映射了AND门,从而将高活动性网络连接到高功率输入引脚,将低活动性网络映射到低功率引脚。对于多个输入门,不同引脚的输入电容以及功率可能存在显著差异。通过重新映射输入,使高活动网络连接到低功率输入,优化工具可以降低动态功率。
栅极级功率优化的其他示例包括单元大小和缓冲器插入。在电池尺寸确定中,该工具可以在整个关键路径上选择性地增加和减少电池驱动强度,以实现定时,然后将动态功率降至最低。
在插入缓冲器时,工具可以插入缓冲器,而不是增加闸门本身的驱动强度。如果在正确的情况下进行,这可能会导致功率降低。
与时钟门控一样,门级功率优化由实现工具执行,并且对RTL设计者是透明的。

多 VDD

由于动态功率与 VDD^2 成比例,因此降低所选块上的VDD有助于显著降低功率。不幸的是,降低电压也会增加设计中栅极的延迟
考虑下图中的示例。这里,高速缓存RAMS在最高电压下运行,因为它们位于关键时序路径上。CPU在高电压下运行,因为它的性能决定了系统性能。但它可以在比缓存略低的电压下运行,并且仍然具有由缓存速度决定的总体CPU子系统性能。芯片的其余部分可以在较低的电压下运行,而不会影响整体系统性能。通常,芯片的其余部分也以比CPU低得多的频率运行。

因此,系统的每个主要组件都在与满足系统时序一致的最低电压下运行。这种方法可以显著节省电力。
在不同VDD电源上混合块会增加设计的复杂性——我们不仅需要添加IO引脚来为不同的电源轨供电,而且还需要更复杂的电网和块之间信号的电平移位器。这些问题将在本书后面进行更详细的描述。

多阈值逻辑

随着几何结构缩小到130nm、90nm及以下,使用具有多个VT的库已成为降低泄漏电压的常见方式。
图2-4显示了90nm工艺的延迟和泄漏之间的关系。图2-5显示了多VT库的泄漏与延迟的一些代表性曲线。如前所述,亚阈值泄漏指数依赖于VT。延迟对VT的依赖性要弱得多。
如今,许多库提供两个或三个版本的单元:低VT、标准VT和高VT。实现工具可以利用这些库同时优化时序和功率。

现在,在合成过程中使用“双VT”流是很常见的。这种方法的目标是通过仅在需要满足定时的情况下部署快速、泄漏的低VT晶体管来最小化它们的总数。这通常包括针对一个主库的初始合成,然后针对一个(或多个)具有不同阈值的附加库的优化步骤。
通常,在优化功率之前,必须满足最低性能要求。在实践中,这通常意味着首先用高性能、高泄漏库进行合成,然后通过将不在关键路径上的任何单元交换为性能较低、泄漏较低的等效单元来放松它们。
如果最小化泄漏比实现最低性能更重要,那么这个过程可以反过来进行:我们可以首先瞄准低泄漏库,然后在速度关键区域交换性能更高、高泄漏的等效物。

总结



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/456864.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

逍遥自在学C语言 | 赋值运算符

前言 在C语言中,赋值运算符用于将一个值赋给变量 这个过程分为两个步骤: 计算赋值运算符右侧的表达式将结果赋给左侧的变量。 C语言提供了多个不同的赋值运算符,包括基本的赋值运算符、复合赋值运算符以及条件赋值运算符等 一、人物简介…

LeetCode121 买卖股票的最佳时机 遍历法和动态规划

题目地址:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock/ 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股…

Python爬虫之MongoDB

目录 一、Mongo概述 二、安装&下载 1.下载: 2.安装 三、基本命令 插⼊数据 查询数据 修改数据 删除数据 索引 四、Python与MongoDB交互 1.安装pymongo 2.使⽤ 一、Mongo概述 MongoDB是什么? MongoDB是⾮关系型数据库(No sql) 为啥需要…

无线传感网络课程作业 1-dijkstra算法计算最短路径并输出经过的节点

无线传感网络课程作业 1 仅供参考-如有需要可订阅专栏 题目有如下网络图: abc三个数以a=3,b=1,c=1为例 运行环境:anaconda3环境管理工具,Python 3.9.12,Windows 10 22H2算法实现原理流程i).

Java——二叉搜索树的后序遍历序列

题目链接 牛客在线oj题——二叉搜索树的后序遍历序列 题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回 true ,否则返回 false 。假设输入的数组的任意两个数字都互不相同。 数据范围: 节点数量 0≤n≤1000 …

PLECS的基本介绍

PLECS的基本介绍 一:PLECS的基本介绍简单说明二:多功能的辅助工具三:主要功能介绍1、独特的热分析功能2、功能强大的示波器3、极快的仿真速度4、强大的波形分析工具5、C 语言控制器6、丰富的元件库 一:PLECS的基本介绍简单说明 1&…

QMS-云质说质量 - 7 IATF 16949哪个条款严重不符合项最多?

云质QMS原创 转载请注明来源 作者:王洪石 引言 AIAG 《质量2020》报告的数据是否让你惊讶? AIAG与德勤合作发布的汽车行业《质量2020》报告指出,"OEMs和供应商都将问题解决和CSR(Customer Specific Requirement顾客特定要求…

What...MiniGPT-4居然开源了,提前感受 GPT-4 的图像对话能力

说在前面的话: 一个月前,OpenAI向外界展示了GPT-4如何通过手绘草图直接生成网站,令当时的观众瞠目结舌。 在GPT-4发布会之后,相信大家对ChatGPT的对话能力已有所了解。圈内的朋友们应该已经亲身体验过无论是文本生成、编写代码&…

涨点技巧:基于Yolov5/Yolov7的困难样本挖掘---LRM loss,提升难样本检测精度

1.hard example mining(困难样本挖掘)✨✨✨ 困难例挖掘方法通常可以提高目标检测器的性能,因为它受到不平衡训练集的影响。为了通过RoI正确地挖掘困难例,引入了在线困难例挖掘(OHEM)方法[15]。该方法建议只考虑对反向传播最有利的RoI。给出最高损失值的RoI被认为是最难的…

【汽车品牌案例 Objective-C语言】

一、刚才,我给大家说了一下这个单元格的重用,接下来,我给大家再做一个案例, 1.再做一个什么案例呢,还是显示那个汽车品牌, 咱们上午是不是做过一个那个汽车品牌的展示了,做过那个展示,那是简单的一个展示,咱们再做一个,使用另外一个不同的一个plist文件,car_total.…

必应,百度,神马头条,搜狗专用站长seo推送工具大全

软件介绍: 百度开始打击滥用api问题,针对这个问题已经开发了拟人推送系列功能,放心使用。 五合一高效推送软件,目前支持百度,神马,必应,搜狗,头条,谷歌六大搜索引擎同步…

setup,ref,reactive

初识setup 1.理解:Vue3.0中一个新的配置项,值为一个函数。 2.setup是所有Composition API(组合API)“表演的舞台”。 3.组件中所用到的:数据、方法等等,均要配置在setup中。 4.setup函数的两种返回值: 1.若返回一个对象,则对象中的属性、…

IDEA(七) 使用UML类图

目录 1.相关快捷键1.1 查看快捷键1.2 其他快捷键1.3 分析类图1.4 定制展示类中的内容1.5 适配窗口和1:1展示1.6 定制布局1.7 其他设置 1.相关快捷键 1.1 查看快捷键 Ctrl Alt U :以弹窗的形式查看UML类图。Ctrl Shift Alt U :以标签的形式查看UML…

C learning_9 (函数篇)

目录 函数 函数的概念 函数的作用 函数的分类 函数的参数 函数的调用 函数 函数的概念 概念:C语言中的函数是一种封装了一定功能的代码块,可以在程序的任意位置调用。 返回值类型 函数名(参数列表) { 函数体 return 返回值; } 1.返回值类型指定了…

Vue的路由实现:hash模式 和 history模式原理及区别

目录标题 1、hash模式2、history模式 Vue-Router有两种模式: ** hash 模式和 history**模式。默认的路由模式是hash模式。 1、hash模式 简介:hash模式是开发中默认的模式,它的URL带着一个#,例如:http://www.abc.com/#/vue,它的…

从广交会,看懂海尔智家逆势增长的秘密

中国企业的全球化战略应从何处、以何种方式推进?作为行业全球化最彻底的企业,海尔智家是个很好的参考。 4月15日,在第133届中国进出口贸易交易会(以下简称“广交会”)上,海尔智家展示了其扎根本土&#xf…

Learning Dynamic Facial Radiance Fields for Few-Shot Talking Head Synthesis 笔记

Learning Dynamic Facial Radiance Fields for Few-Shot Talking Head Synthesis 笔记 摘要 Talking head synthesis is an emerging technology with wide applications in film dubbing, virtual avatars and online education. Recent NeRF-based methods generate more n…

举个栗子~Tableau 技巧(253):让筛选器只显示全部以及需要的类别

用户反馈了一个需求:我的业务数据有很多类别,但其实经常查看的只有几个,Tableau 筛选器能不能设置一下,只显示全部和经常查看的那几个类别? 这个是可以实现的!如下示例,数据类别有:…

好用的思维导图软件有哪些

ProcessOn ,一款让“工具回归工具、让你回归你的"软件! 当“在线”成为当今时代的主流时、 如果让你选择一款好用的思维导图软件、 你希望Ta 是什么样的? ProcessOn! 它可以是你的待办清单、笔记工具、社区分享工具、PPT演…

vector(入门知识点)

目录 vector的介绍 ​编辑 例&#xff1a;遍历 拷贝&#xff1a; 初始化&#xff1a; 反向迭代器&#xff1a; 扩容&#xff1a; insert与erase vector的介绍 例&#xff1a;遍历 拷贝&#xff1a; 初始化&#xff1a; &#xff08;10个1&#xff09; vector<int>注意…