转载自:http://www.chipsbank.com/news_detail/newsId=123.html
门控的基本要求:
1. 所需要的沿(对于正沿触发的寄存器是正沿,对于负沿触发的寄存器是负沿)不增加,不减少;
1. 不会产生毛刺;
1. 使用后功耗要能够降低;
1. 最好面积还会减小。
1. 上升沿触发的门控时钟的结构研究:应用与上升沿触发的寄存器的门控。
1. 直接与门结构:
1. 高电平使能Latch + 与门结构:
1. 低电平使能Latch + 与门结构:
1. 波形研究:从下面的波形可以看出:
1. 如果En信号的上升沿在时钟的上升沿和下降沿之间的话,则结构1与结构2都会多产生一个时钟沿;见波形中的Error。
1. 如果En的下降沿在时钟的下降沿和上升沿之间,则很容易产生一个毛刺;
1. 结构3是符合我们需要的,上升沿没有丢失或减少。所以DC在正沿触发的寄存器前插入的都是这类CG;
1. 下降沿触发的门控时钟的结构研究:应用与下降沿触发的寄存器的门控。
1. 或门结构:
1. 低电平使能Latch + 与门结构:
1. 高电平使能Latch + 与门结构:
1. 波形研究:从下面的波形可以看出:
1. 如果En信号的上升沿在时钟的下降沿和上升沿之间的话,则结构1与结构2都会多产生一个时钟沿;见波形中的Error。
1. 如果En的上升沿在时钟的上升沿和下降沿之间,则很容易产生一个毛刺;
1. 结构3是符合我们需要的,下降沿没有丢失或减少。所以DC在负沿触发的寄存器前插入的都是这类CG;
1. 特殊情况分析:
1. 如果En信号的上升沿和下降沿都能保证在时钟的低电平区域,则与门结构可以作为门控来使用:
分析:
1. 如果En是ClkSrc时钟域的寄存器负沿触发输出的信号,或者产生En的信号都是ClkSrc时钟域负沿触发产生的信号;
则通过合适的约束,可以做到En的沿都在时钟的低电平区域。
1. 如果从功能上可以确认,En的沿都在时钟的低电平区域,则也可行。
1. 这种结构不管是对上升沿触发的寄存器或者对下降沿触发的寄存器都是有效的。
1. 如果En的上升沿和下降沿都能保证在时钟的高电平区域,则或门结构可以当成门控来使用:
分析:
1. 如果En是ClkSrc时钟域的寄存器正沿触发输出的信号,或者产生En的信号都是ClkSrc时钟域正沿触发产生的信号;
则通过合适的约束,可以做到En的沿都在时钟的高电平区域。
1. 如果从功能上可以确认,En的沿都在时钟的高电平区域,则也可行。
1. 这种结构不管是对上升沿触发的寄存器或者对下降沿触发的寄存器都是有效的。
1. 这种结构综合的时候一般会综合成:一些这种结构;这种结构面积会小一点15%左右;但功耗会稍大一点;所以需要具体情况具体分析;
1. 综合分析:
1. 使用Latch为基础的门控结构:
1. 优点:很明显,就是对En的沿的位置没有特殊要求。
1. 缺点:
1. 功耗收益:对寄存器数目比较少的门控效果就不明显,甚至会使功耗增加。比如3个或以下寄存器的门控效果就比较差。
1. 面积收益:而且由于Latch的面积比较大(相当于5个门左右,而寄存器则相当于7个门左右),所以整个门控结构面积差不多是一个寄存器大小。所以对于面积的收益上来说,Latch结构的门控用在门控多个寄存器(一般是4个或以上)才有收益。
1. 使用与门,或门的门控结构:
1. 优点:
1. 功耗收益:或门或与门的功耗显然比Latch要小得多。所以在驱动一个寄存器的门控都有收益。而且在时钟需要触发的时候不至于增加太多功耗。
1. 面积收益:一个或门或与门(相当于1.2个Gate)的面积比一个MUX的面积(相当于2.2个Gate)要小,所以从面积收益上来说,即使是门控一bit寄存器都还有1个门左右的收益。
1. 1bit门控对比分析:
1. 不使用门控的情况:
1. 时钟端输入电容(以tower库dfcfq1为例):0.002pF
1. 时钟端反转短路功耗:0.00948pJ;
1. 使用非与非门控的情况:
a. 跟时钟有关的输入电容:反相器+与非门:0.003+0.001=0.004pF
a. 时钟端短路功耗:0.00198-0.000918+0.0013=0.0023pJ
1. 使用非或门情况:
1. 四种门控情况功耗对比与面积对比:
En==0,时钟1MHz
En==1,时钟1MHz
从上面的表格我们可以看出
1. 使用或非门的功耗是最小的;但由于综合工具会把这个电路综合成非与非门结构,所以要使用这种结构的话需要使用库中的或门来例化,同时对这个或门dont_touch;
注意:不要对或门前的非门进行例会或dont_touch;
1. 面积是使用非与非门最小的;
1. 使用Latch的门控虽然在En==0时有功耗收益,但在En==1时功耗增加太大;而且面积也比没有门控的大;