温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

为何在ICG Cell中使用锁存器Latch

发布时间:2022-01-06 16:59:11 来源:亿速云 阅读:456 作者:柒染 栏目:互联网科技

为何在ICG Cell中使用锁存器Latch,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

下面是门控时钟(clock gating)的最简单实现方法(使用与门):

为何在ICG Cell中使用锁存器Latch

从理论上讲,这是可行的:当使能信号Enable为高电平时,时钟将被传递到被门控的触发器FF2。

问题在于时序(timing)。在时钟的上升沿,触发器FF1的D输入传播到Q输出,但是时钟的同一上升沿也到达了与门,这会导致门控时钟出现毛刺现象。

 为何在ICG Cell中使用锁存器Latch

因此,我们使用集成时钟门控(ICG)单元,该单元包含一个低电平敏感的锁存器

为何在ICG Cell中使用锁存器Latch

当时钟为低电平时,允许输入直接传播到与门的输入。此时时钟为低电平,所以与门的输出将为低电平,与使能输入无关。

但是,当时钟为高电平时,锁存器将关闭,并阻止Enable值的任何更改传播到AND门。这就不会产生毛刺。

当时钟再次变为低电平时,锁存器重新打开,新的使能值通过锁存器。

可以使用单独的门(锁存器和与门)构建这种类型的电路,但这需要在综合/后端/STA中进行一些额外的时序检查。

大多数ASIC库都提供一个标准的ICG单元,其中的时序已经在内部进行了描述。类似于触发器和锁存器,ICG单元的使能输入同样具有建立和保持时间要求,很容易进行时序分析。

那么为什么使用Latch-based ICG 而不使用Flip-Flop-based ICG呢?

为何在ICG Cell中使用锁存器Latch

如果使用的是上升沿触发的触发器,就会发生和一开始的clock gating设计一样的问题

如果使用的是下降沿触发的触发器代替低电平敏感的锁存器,在时钟的下降沿捕获使能输入。这样与门的使能输入会保持稳定,直到时钟的下一个下降沿。因此,解决了毛刺问题。

但是,这会带来三个问题:

1、触发器通常由两个锁存器组成。因此,Flip-Flop-basedICG相比Latch-based ICG面积增加了一倍。

2、Flip-Flop-based ICG相比Latch-based ICG增加了功耗

3、最重要的是,Flip-Flop-based ICG在时钟下降沿捕获使能输入,必须在半个时钟周期内完成。而使用锁存器,能够占用整个时钟周期(time borrow),因为Latch在有效电平是一直能够传播数据的,触发器只能在边沿传播数据。

因此,Latch-based ICG相比Flip-Flop-based ICG具有更好的功耗、面积和时序。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI