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与与门相反,如下图所示,不再做过多解释!
在这里插入图片描述
在这里插入图片描述

引用\[1\]中提到,clock gating有两种形式:AND gate和OR gate。当插入的逻辑是AND gate时,这个值设置为low;当插入的逻辑是OR gate时,这个值设置为high。引用\[2\]中提到,如果Reference电路中的clock gate是RTL设计者插入的,在综合的时候用power compiler插入的,这个值应该被设置为none。如果Implement电路中的Clock Gate是在后端实现的过程中插入的,为了修改电路的某些行为,那么它的EN端电路的连接关系在Reference电路中是不存在的。在这种情况下,根据插入的clock gate的类型是AND Gate还是OR Gate,将变量设计成相应的值(Low/High)。引用\[3\]中提到,ICG(Integrate Clock Gating Cell)可以减少时钟功耗,通过停止时钟(gating)来减少功耗。ICG可以使用AND gate和OR gate,其中前者在0时是enable,后者在1时是enable。为了避免glitch(短时脉冲)的产生,可以在AND gate或OR gate前加上一级latch,保证enable信号只在时钟低电平或高电平时才传到gate上去。根据这些信息,关于clock gate LAT的具体含义需要更多的上下文信息才能确定。 #### 引用[.reference_title] - *1* *2* [Formality笔记](https://blog.csdn.net/SH_UANG/article/details/57083275)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [CDC设计实例](https://blog.csdn.net/weixin_41846089/article/details/121620479)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值