Clock Gating cell 与 Integrated Clock Gating cell(ICG)
一、ICG消除毛刺原理
Clock gating cell 可以由与门或者或门构成,但是使用这两者会产生Glitch,因此目前都采用ICG(Integrated clock gating cell),其结构如下
ICG由一个latch(低电平有效)和一个与门(gating cell,也可以是或门)组成。ICG 可以过滤掉en信号中的毛刺信号,其原理如下:
对于毛刺信号Glitch,大概可以分为两种情况:
1.en信号中的毛刺出现在clk低电平期间,如下图所示
由上图可以发现,en信号在clk低电平期间产生了毛刺,并且该latch是低电平有效,所以会采集到该毛刺信号,如信号enl中所示,但是由于该ICG的gating cell采用的是与门,此时clk为低电平,即使enl有毛刺信号,也不能通过与门,因此该毛刺信号被过滤。
**2.en信号出现在clk高电平期间,如下图所示
由于ICG中的latch是低电平有效,所以在clk高电平期间,latch采集不到en中的毛刺信号,因此该毛刺信号被过滤掉了。
综合以上,可以发现,无论en中的毛刺信号出现在clk低电平或者是高电平期间,ICG可以有效过滤掉en信号中的毛刺,得到好的clk波形!具体的ICG电路及其波形图如下所示
这里也需要注意最重要的一点:
Clock gate不能对clock的信号波形做任何改变,只能对clock做开关处理!
二、Clock-Gating Timing
Gating cell 可以采用与门或者或门,下面分别就两种情况的Timing进行分析!
1.AND Gating cell
采用与门作为gating cell的结构如下图所示
为了保证得到的clock信号是稳定的,必须对gating cell 的input端做setup 和hold check!
首先是对uncontrolling value 和controlling value的解释。
图中CLK 的 uncontrolling value为1,对于一个gating cell,我们的目标是让ENL信号来控制clock的开关, 当CLK为1时,此时该gating cell的输出端 ENCLK 则由ENL控制。ENL为0时ENCLK为0,ENL为1时ENCLK为1;而CLK为0时,由于gating cell是与门,无论ENL信号取高取低,其输出都是0,实际上是由CLK信号控制,与我们最初的让ENL信号控制不一致,所以称为controlling value.
而setup check指的是ENL信号要在clock信号变为uncontrolling value前一段时间就保持稳定值不变,hold check指的则是让ENL信号在CLK信号变回controlling value后仍要保持一段时间稳定值不变!
或门的情况类似,就是CLK的uncontrolling value和controlling value与与门相反,如下图所示,不再做过多解释!
Clock Gating cell 与 Integrated Clock Gating cell(ICG)相关推荐
- 【Matlab】删除cell中所有的空白cell
删除cell中所有的空白cell. A是3*5的cell数组,包含空白cell A(cellfun(@isempty,A))=[]
- 【Matlab】删除cell中所有的空白cell.
删除cell中所有的空白cell. A是3*5的cell数组,包含空白cell A(cellfun(@isempty,A))=[]
- linux clock头文件,Linux common clock framework(1)_概述
Linux common clock framework(1)_概述 作者:wowo 发布于:2014-10-20 23:06 分类:电源管理子系统 1. 前言 common clock framew ...
- POI拆分单元格,并设置拆分后第一个cell的值为空cell的值
// 从第A7开始,拆分单元格CellReference ref = new CellReference("A7");//遍历sheet中的所有的合并区域for (int i = ...
- 系统时钟(System Clock)和硬件(Real Time Clock)
Linux将时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟两种. 系统时间是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电 ...
- Integrated Clock Gating (ICG)
什么是ICG? 在时序级的设计中,我们经常遇到这样的情况:电路存在一个使能信号E,当使能信号无效时,输出保持.我们通常的做法是使用一个Mux来对输入进行选择(下图左侧).在综合阶段,可以通过选项将该类 ...
- 这个能快速发表Cell,Nature,Molecular cell的分析技术你要错过吗?
动物单细胞的研究有将近10年了,每年都是CNS的常客.在国内形成了北汤南郭的局面,一个是单细胞转录组的世界第一人,一个促成了单细胞从追求深度到追求数量的转变.具体见Hemberg-lab单细胞转录组数 ...
- matlab cell取一列,MATLAB cell struct
CELL cell的每个单元都可以存储任何数据,比如传递函数等.当然,存储矩阵更是没有问题的了.但是用cell数据类型之前,要先初始化.a=cell(n,m) 那么就把a初始化为一个n行m列的空cel ...
- vant在cell中加表格_Vant Cell 单元格
引入import Vue from 'vue'; import { Cell, CellGroup } from 'vant'; Vue.use(Cell); Vue.use(CellGroup); ...
最新文章
- C++中的hash_map和map的区别
- java统计文本中英文单词个数split_零基础入门NLP - 新闻文本分类Task2(天池入门赛)...
- 皁新哪学计算机好,北京科技大学计算机基础模拟AB .doc
- @requestparam @param @pathvariable @requestbody的区别
- python对excel读写操作
- 【带书签】零基础学SQL.pdf(孙浏毅 等著) 下载
- SQL Server忘记密码后成功重置密码的方法
- easypoi excel:Cannot add merged region X to sheet because it overlaps with an existing merged region
- elemen-ui表格默认样式的修改
- CentOS 6.5下安装Confluence 5.4
- Tensorboard无法显示图片
- python怎么绘制饼图_Matplotlib绘制饼图
- python中秋月饼
- 基于JAVA高校社区生鲜配送系统计算机毕业设计源码+数据库+lw文档+系统+部署
- LWN:使用Rust实现OpenPGP,这就是Sequoia项目!
- Spark Submit提交及参数调优
- 笔记本损耗60 计算机提示,无需第三方软件,查看笔记本电脑电池损耗程度的方法...
- SVN使用教程(Linux)
- 小学美术计算机教案模板,小学美术教案模板5篇
- java毕业设计消防安全应急培训管理平台源码+lw文档+mybatis+系统+mysql数据库+调试
热门文章
- Linux(Ubuntu22.04)安装LAMP
- Image Printing Program Based on Halftoning
- 三菱Q系列PLC报错LINK PARA ERROR 链路连接参数异常
- 【Kivy】图形绘制(七)
- iOS仿UC浏览器顶部频道滚动效果
- GMIC秒拍移动视频峰会|行业大咖齐聚,畅谈短视频平台力量
- Ip2region 离线IP地址定位库和IP定位数据管理框架
- MySQL根据生日计算年龄
- c语言手机通讯系统报告书,定稿毕业论文_C语言_手机通讯录管理系统设计最终定稿(范文1)...
- ZOJ 3323Somali Pirates