• 门控时钟-概述 ----- 转载


    转载自:http://www.chipsbank.com/news_detail/newsId=122.html

    1. 时钟信号的功耗占系统功耗的很大一部分(40%左右)占动态功耗的50%以上

    1. DC门控时钟命令:
    intert_clock_gating
    set_clock_gating_style

    1. 门控时钟插入:
     

    1. 使用效果实例:

    a. 对于一个180nm工艺的芯片:有clock gating和没有clock gating的结果相比(芯片实测):

    a. 功耗节省34%到43%(具体更应用模式有关)

    a. 面积节省20%(一个clock gating能代替多个mux)

    1. 使用原则:

    a. 至少位宽是3或以上的寄存器才用门控时钟

    a. 单bit的寄存器使用门控时钟是没有效果的,面积和功耗都不会节省。

    a. Clock buffer尽可能多的放到clock gating cell的后面。

    1. RTL具体措施:

    a. 无用输出采用使能保持输出的方式编码:
    NxtReadData = (ReadEn) ? RamData : 8'b0;  
    如果没有读使能时,我们不关心输出什么数据的话,则改成:
    NxtReadData = (ReadEn) ? RamData : ReadData;
    这样就可以让ReadEn无效时把这8个寄存器的时钟关掉。

     

    1. 3bit的计数器插clock gating前后电路对比
    插门控之前:

    插门控之后:

     

    1. 不同bit数门控时钟插入对比

    SMIC.18工艺

     

    面积

     

    动态功耗(W)

     

     

    um2

    门数

     

    4bit暂存器

    带ICG

    221.72

    25.25

    1.185e-05

     

    不带ICG

    263.42

    30

    1.427e-05

    3bit暂存器

    带ICG

    175.62

    20

    9.160e-06

     

    不带ICG

    197.57

    22.5

    9.920e-06

    2bit暂存器

    带ICG

    131.71

    15

    6.315e-06

     

    不带ICG

    131.71

    15

    6.613e-06

    1bit暂存器

    带ICG

    85.61

    9.75

    3.633e-06

     

    不带ICG

    65.86

    7.5

    3.307e-06

     

    1. 门控时钟的结构:

     a. 结构-1

    这种系统时钟门控的机制算然简单,但是容易使门控后的时钟不完整,甚至产生毛刺。

     

    a. 结构-2

    这种门控方法避免了门控时钟的不完整性,也可以避免避免毛刺的产生,但门控后的时钟可能会产生亚稳态。

     

    1. 结构-3

    这种结构解决了结构-2的亚稳态问题。

     

    1. 结构-4

    这种带测试模式的结构可以在测试时让时钟一直开着。

     

    1. 结构-5

    在ASIC进行后端测试的时候,有时候可能会将不同时钟域的逻辑和寄存器连起来进行扫描链插入,此时可能某个模块的时钟来源可能不是通过它原来的时钟路径,而是整个芯片统一的测试时钟,就此时需要对时钟进行选择。

     

     

  • 相关阅读:
    使用高精度计算斐波那契数列 c++
    纪中9日T4 2298. 异或
    洛谷 P1416 攻击火星
    线段树小结
    纪中5日T3 1566. 幸运锁(lucky.pas/c/cpp)
    Title
    Title
    Title
    Title
    Title
  • 原文地址:https://www.cnblogs.com/hxing/p/6720835.html
Copyright © 2020-2023  润新知