PCSA时钟控制集成之时钟门控级别

这一部分描述了:

• 时钟门控的级别。

• 实现最大效果的时钟门位置。

• 实现有效和高效时钟门控的集成方法。

时钟树是由时钟缓冲器构建的,这些缓冲器在时钟源(时钟输入或PLL)与时钟终端(寄存器或RAM)之间的物理距离上传播时钟。在树的分支上添加额外的缓冲器,以平衡每个同步终端处的时钟到达时间。这有助于通过在同步元素之间允许逻辑传播的最大时间来实现时序闭合。

时钟树缓冲器中的时钟切换会消耗动态功耗,无论在终端是否执行任何有用的工作。因此,为了构建一个功耗高效的系统,除了对终端进行门控外,还需要尽可能对整个时钟树进行门控。

在空闲情况下,如果没有高级时钟门控,时钟树功耗将主导动态功耗消耗。

1.1 时钟门控级别

这一部分描述了系统中可能存在多个级别的时钟门控。本规范使用以下分类:

• 低级别:由综合工具自动插入的时钟门。

• 中级别:在组件内部实例化的时钟门控,通常是同步控制的。

• 高级别:整个时钟域的实例化门控。

这些时钟门控级别是互补的,应该在结构内部存在其他级别的情况下进行实现。每个级别都具有不同程度的功耗节省和时间粒度的优势。图7.1提供了这些时钟门控级别的示意图。

低级别时钟门控

低级别时钟门是由综合工具插入的,它们直接放置在一组触发器的前面,并替代了启用功能,从而节省了面积和功耗。

低级别门的粒度非常细致。在理想情况下,具有低级别时钟门的终端在触发器不更新时被门控。然而,它们只对触发器进行门控,而不对时钟树进行门控,并且由于下面解释的原因,不能在整个设计中放置。

这些时钟门的启用是从RTL中表示的触发器的功能启用中推导出的。在功能启用由最少数量的触发器共享的地方插入时钟门。这个最小数量由综合约束设置,通常基于重构的功耗-面积平衡点。

图7.2和图7.3说明了一个使用多路反馈的标准触发器使能,以及如何通过合成工具对其进行重构以为触发器添加时钟门。

然而,由于以下原因,综合工具有时不会插入低级别时钟门:

• 没有启用。

• 启用未被综合工具识别。

  • 这可能是因为启用逻辑上过于复杂,或者不以综合工具容易识别的方式结构化。

• 在所需的时间窗口内,启用项可能过于逻辑复杂。

• 由启用控制的触发器数量少于综合约束设置的最小阈值。

因此,低级别时钟门控虽然非常重要,但由于对子集触发器和大多数时钟树缺乏时钟门控覆盖,无法产生完全功耗高效的系统。

中级别时钟门控

这些时钟门是由设计人员在RTL中实例化的,用于在操作期间空闲的逻辑块的门控。

启用由周围逻辑控制,并且通常在单个时钟周期内同步启用和禁用,以对功能操作透明。由于这些启用需要满足同步定时要求,时钟门仍然被放置在时钟树的较低位置。此放置避免了逻辑和时钟门之间的偏差,从而缩小了启用时间窗口。

尽管对设计的较大部分进行门控,但这些中级别时钟门并未对整体时钟树进行大规模的门控。门控的确切数量取决于设计的定时要求和启用的逻辑复杂性。为了构建一个完全功耗高效的系统,需要额外的门控。

高级别时钟门控

这些时钟门是按时钟域插入的,并理想地放置在时钟树的根部。当时钟域空闲时,这种布局导致动态功率接近于零。

时钟根和终端之间的时钟延迟通常大于同步信号传播的定时窗口。因此,启用控制信号必须被视为与时钟终端异步的。

由于以下原因,这给动态时钟门控带来了问题:

• 设备处于空闲状态,时钟被门控。

• 请求设备活动和时钟变得可用之间存在延迟。

因此,需要一种方法来提供与时钟供应和移除相关的保证,以确保组件的正确操作。这在7.1.2高级别时钟门控方法中进行了描述。

尽管这种技术提供了最大的节省,但它可以应用的粒度要低得多,因此重要的是与其他门控级别结合使用。

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

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

相关文章

ULN2003(COM的作用)

单路内部电路原理图 三极管多级放大电路,最大可达到500ma; 典型应用: ULN2003属于灌电流驱动方式;输入与输出电平反向,下拉4K电阻,为解决单片机上电IO瞬间不稳定; COM端 1.可悬空&#xff1a…

git标签操作

一.标签管理 1.理解标签 标签 tag ,可以简单的理解为是对某次 commit 的⼀个标识,相当于起了⼀个别名,当我们需要回退到某个重要版本时,直接使⽤标签就能很快定位到 2.创建标签 ⾸先,切换到需要打标签的分⽀上,然后&#xf…

经典目标检测网络Yolo——原理部分

目标检测问题 分为两个子问题: 找到图片中哪些位置、哪些区域含有目标对象识别这些区域中的目标对象是什么基于CNN的目标检测算法能够很好的解决第二个问题,在一张图片仅含一个对象,且该对象占据了整张图片绝大部分面积时,基于CNN的对象识别算法具有很高的准确率。 一种定…

操作系统(1)——学习导论(Ⅱ)

目录 小程一言专栏链接: [link](http://t.csdnimg.cn/6grrU) 学习导论(Ⅱ)操作系统-赏前人佳作大型操作系统大型操作系统的一些特点和功能举例 服务器操作系统服务器操作系统特点和功能举例 多处理器操作系统举例 个人计算机操作系统举例 掌上计算机操作…

设计模式:什么是设计模式?①

一、什么是设计模式? 1. 是一类程序设计思想 2. 是在大量实践过程中摸索总结出的标准经验提炼 3. 具有多样性和丰富性,不同情况应用的思想不同 二、设计模式的好处 1. 代码生产力和效率的提升 2. 让代码表现更为规整,简洁。阅读维护管理的成本…

【竞技宝】DOTA2-梦幻联赛S22:AR命悬一线 XG确定晋级淘汰赛

北京时间2024年2月28日,DOTA2梦幻联赛S22的比赛在昨日进入小组赛第三个比赛日,本次梦幻联赛共有AR、XG、IG三支中国区的队伍参赛,那么经过三日激烈的比赛之后,目前三支队伍的积分情况以及晋级形势如何呢? XG XG是小组…

贪心(基础算法)--- 区间选点

905. 区间选点 思路 (贪心)O(nlogn) 根据右端点排序 将区间按右端点排序 遍历区间,如果当前区间左端点不包含在前一个区间中,则选取新区间,所选点个数加1,更新当前区间右端点。如果包含,则跳…

常见的算法

查找算法 基本查找 package MyApi.search;public class a01BasicSearchdemo01 {public static void main(String[] args) { int[] arr{131,127,147,81,103,23,7,79}; int number82;System.out.println(BasicSearch(arr,number));}public static boolean BasicSearch(int[] ar…

Java二叉树(1)

🐵本篇文章将对二叉树的相关概念、性质和遍历等知识进行讲解 一、什么是树 在讲二叉树之前,先了解一下什么是树:树是一种非线性结构,其由许多节点和子节点组成,整体形状如一颗倒挂的树,比如下图&#xff1…

给nginx部署https及自签名ssl证书

一、生成服务器root证书 openssl genrsa -out root.key 2048 openssl req -new -key root.key -out root.csr#Country Name (2 letter code) [XX]:---> CN#Country Name (2 letter code) [XX]:---> CN#State or Province Name (full name) []:---> Shanghai#Locality…

多层感知机 + 代码实现 - 动手学深度学习v2 | 李沐动手学深度学习课程笔记

感知机 感知机≈二分类问题 感知机和其他问题的对比 训练感知机 如果小于等于零,说明预测错啦 ,其实就是同号为正,异号为负 举个分类的例子 增加样本,改变分类线 继续分类 感知机的收敛定理 XOR问题 XOR问题其实就是第1、3象限数…

【踩坑】一条指令解决torch_scatter等安装报错安装不上问题

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 目录 背景说明 (推荐方法)解决方法一:使用conda安装。 解决方法二:指定pip的网站。 解决方法三:直接去下载whl文件。 (终极方法)解决方法四:配置MSVC 特殊情况…

构建 ESLint 内存泄露检测插件入门:提升代码质量与防范运行时风险

前言 本文目的是介绍如何创建开发一个自定义规则 ESLint 插件。利用其能力,检测一些代码中可能存在的内存泄露并及时进行提示,避免潜在的后期影响。 本文实现其中一部分功能–检测事件监听器的使用是否存在内存泄露为例来演示基本的 ESLint 自定义规则插件开发的过程。用以…

nginx笔记整理

目录 一.Nginx基础介绍 二.nginx安装配置 三.Nginx配置文件 3.1nginx主配置文件(/etc/nginx/nginx.conf) 3.2默认的网站配置文件(/etc/nginx/conf.d/default.conf) 四.创建新的虚拟主机 五.Nginx日志 5.1nginx日志格式 5.2查看日志 5.3日志缓存(了解) 5.4日志轮转(/…

COMPOSER安装使用WIN下升级PHP-V

想用TP6使用phpspreadsheet但是说我PHP版本低,原来是PHP7.0 composer要求至少7.4 直接修改环境变量,把PHP目录切换到7.4 composer升级比较简单,在PHP目录下CMD然后官网的命令执行下即可 下面就可以在TP根目录下执行命令安装PHPSPREADSHEET…

Domain-Wall Memory Buffer for Low-Energy NoCs

目录 Domain-Wall Memory Buffer for Low-Energy NoCs主要工作DWM: Domain-wall memory磁畴壁存储器磁性纳米线阵列设计 开销分析实验设计实验结果分析 参考资料 Domain-Wall Memory Buffer for Low-Energy NoCs 主要工作 我们基于SRAM在NoC中使用的头尾指针概念&a…

2024年【道路运输企业主要负责人】考试报名及道路运输企业主要负责人模拟考试

题库来源:安全生产模拟考试一点通公众号小程序 道路运输企业主要负责人考试报名根据新道路运输企业主要负责人考试大纲要求,安全生产模拟考试一点通将道路运输企业主要负责人模拟考试试题进行汇编,组成一套道路运输企业主要负责人全真模拟考…

字符串匹配——烦人的KMP

相信很多同学看到这篇文章的时候,已经被KMP拿捏了吧!KMP算法说难,倒也不是很难,手算都会,说不难吧,短短几行代码愣是看不懂,辗转反侧,翻书查阅,视频讲解,最后…

electron nsis 安装包 window下任务栏无法正常固定与取消固定 Pin to taskbar

问题 win10系统下,程序任务栏在固定后取消固定,展示的程序内容异常。 排查 1.通过论坛查询,应该是与app的api setAppUserModelId 相关 https://github.com/electron/electron/issues/3303 2.electron-builder脚本 electron-builder…

三、低代码平台-单据配置(单表增删改查)

一、业务效果图 主界面 二、配置过程简介 配置流程:业务表设计 -》业务对象建立-》业务单据配置-》菜单配置。 a、业务表设计 b、业务对象建立 c、业务单据配置 功能路径:低代码开发平台/业务开发配置/单据配置维护 d、菜单配置