门控时钟电路(Intergrated clock gating)

门控时钟

某些模块不需要工作的时候,为了降低功耗,需要关闭该模块的时钟,节省触发器的翻转功耗。采用门控时钟电路来控制时钟的关断。

本文大量引用了知乎门控时钟的图片和一些文字描述

简单的与门

最初的思路是采用一个使能信号en和一个与门来控制时钟的开关。
请添加图片描述

采用与门来控制

缺点

但是这样做会有很多缺点

如图所示
在这里插入图片描述

波形图1
  1. en信号不受控制,随时可能能发生信号跳变,未经过时钟同步,和clk信号直接相与极容易产生毛刺

  2. 时钟clk为高电平时,en信号的毛刺会传播到时钟信号GCLK中

    解决思路,通过一个寄存器或触发器来同步en信号,且clk为高电平时,寄存器或触发器的输出不变化

二.采用锁存器同步en信号

在这里插入图片描述

锁存器和与门作为IGC电路

  如图所示,锁存器的为低电平有效传输,当时钟clk为低点电平时,D端口上en信号的变化会传输到Q端口,即使此时有毛刺传输进来,clk低电平控制了与门的传输,毛刺无法通过与门到达GCLK信号,当时钟clk为高电平时,Q端口的值会锁存住,一直保持clk上升沿前一时刻输入D端口的值。波形如下图所示

在这里插入图片描述

毛刺

因为clk时钟达到触发器的en端口和与门的时间可能会不一样,有可能会产生毛刺

在这里插入图片描述

图5.锁存器clk延时带来的毛刺

图5右上角图所示,clk先到达a点,后到达b点,并且clk skew大于锁存器的D->Q延时时间,会产生毛刺。避免产生毛刺,因该使得clk skew < D->Q delay

图5右下角图所示,clk先到达b点,后到达a点,且clk skew大于Setup — D->Qdelay,也会产生毛刺,避免毛刺,应该满足|clk_skew| < Setup — D->Qdelay。

三.寄存器同步en信号

同理也可以通过寄存器来同步en信号
img

与锁存器的对比

共同点

  • 在clk为高电平时,输出端口的值为时钟上升沿前一刻的值并保持这个值。

不同:

  • clk为低电平时,en信号的变化和毛刺,不会被寄存器采样到en端口
  • clk为低电平时,en信号的变化和毛刺,会被锁存器采样到en端口 (但此时clk为低电平,en信号变化和毛刺无法通过与门)

波形图如下图所示

在这里插入图片描述

毛刺信号

实际电路中,由于寄存器存在的D->Q延时,当en信号的下降沿传输时,寄存器也会产生毛刺

在这里插入图片描述

如何避免毛刺信号呢?

在这里插入图片描述

  • b点的clk skew(到达与门的时钟信号延迟) 高于D->Q的时钟延时

四 选用 寄存器 or 锁存器?

通常时采用锁存器,因为锁存器占用的面积更少,随然锁存器对clk的延时和锁存器的延时有一定的要求,当在综合室,IGC电路作为一个常用的模块,其内部的延时是固定的,能满足延时的要求.

  • 16
    点赞
  • 85
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值