2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

Power 介紹——power optimization之clock gating(2)

 mzsm 2022-06-22 發(fā)布于湖北

本公眾號【讀芯樹:duxinshu_PD】主要介紹數(shù)字集成電路物理設(shè)計相關(guān)知識,才疏學(xué)淺,如有錯誤,歡迎指正交流學(xué)習(xí)。

這是集成電路物理設(shè)計的第四個系列【Power】的第十一篇文章,本篇文章主要介紹Power Optimization Clock Gating相關(guān)內(nèi)容:

01

什么是Clock Gating?

  • clock network消耗的功耗占總功耗的很大比例,而時鐘信號的無效翻轉(zhuǎn)會造成多余功耗的損失,因此可以在時鐘不需要翻轉(zhuǎn)時使用Clock Gating電路'關(guān)閉'時鐘信號翻轉(zhuǎn),節(jié)省功耗。

  • Clock Gating思路:將寄存器輸入信號D和保持信號Q的選擇控制信號EN變換為用來控制時鐘信號,在EN有效,控制時鐘信號不翻轉(zhuǎn),降低電路翻轉(zhuǎn)概率。

圖片

  • ICG(integrated clock gating):將clock gating cell做成一個大的集成cell,內(nèi)部一般包括去抖動latch,gating cell(AND/OR),和使能控制單元。

圖片

02


Clock Gating的優(yōu)點和Metric定義

  • 節(jié)省功耗:clock network上toggle減小可以顯著降低 dynamic power,同時register的clk pin的toggle可以降低register的internal power。

  • 節(jié)省面積:使用ICG cell可以節(jié)省Mux cell (注意:共用的ICG越多,節(jié)省面積越多,否則,可能不會節(jié)省面積)。

  • 容易實現(xiàn):不需要修改RTL代碼,可以通過EDA工具自動插入clock gating。

  • Clock Gating Efficienccy: 有多少時鐘周期在通過Clock Gating之后被suppressed。Clock Gating Efficiency = 1 - (TRout/TRin)

圖片

  • Register Q-to-CLK ratio:  寄存器Q端的toggle與寄存器clk pin的toggle比值。Toggle Q-to-CLK ratio = TRQ/TRclk

圖片

  • Clustering Efficiency: 在EN信號相同情況下,時鐘頻率越高,節(jié)省功耗有效性越高。

圖片

  • Split Cluster:當(dāng)同一ICG單元控制多個register時,可能有的register翻轉(zhuǎn)率高,有的register翻轉(zhuǎn)率低,這會造成EN信號有效性降低??梢酝ㄟ^split cluster和clone ICG單元,提高ICG單元利用率。

圖片

03


Clock Gating的種類

  • Discrete Clock Gate: 需要考慮latch與AND的skew最小值,將latch clock pin設(shè)置為non stop pin屬性,需要設(shè)置setup/hold time, 這會增加flow的復(fù)雜性。

圖片

  • Integrated Clock Gate: 不需要考慮latch與AND的skew值,CTS和timing analysis 工具自動處理,setup/hold time信息在library中。

圖片

  • AND Type:如果EN信號來自上升沿觸發(fā)器,則hold是half_cycle check;如果EN信號來自下升沿觸發(fā)器,則hold是0_cycle check。

圖片

圖片

  • OR Type:如果EN信號來自下升沿觸發(fā)器,則hold是half_cycle check;如果EN信號來自上升沿觸發(fā)器,則hold是0_cycle check。

圖片

圖片

  • ODC Based Type: (Observability dont care) 當(dāng)A=0時,無論B如何變化,AND門輸出都是0,此時B點為observability dont care點,可以將B的源頭寄存器gate掉,消除后續(xù)無效邏輯翻轉(zhuǎn),節(jié)省功耗。

圖片

  • Logical Clock Gating: 通過邏輯綜合自動實現(xiàn),一般是在register clock pin上。

圖片

  • Global Clock Gating: 通過控制某一或者某幾個模塊的clock enable信號實現(xiàn)。

圖片

04


XOR Self Gating

  • XOR Self Gating是一種新的clock gating方法,當(dāng)寄存器的輸入信號D與前一時刻的輸出信號Q相同時,可以將clock信號gating住,減少無效翻轉(zhuǎn)。

  • XOR Self Gating優(yōu)點: 可以gating任何register,不需要預(yù)存在的一些logic cell限制。同時還可以對已有clock gating結(jié)構(gòu)進(jìn)行優(yōu)化,得到更好的gating效率。

圖片

圖片

05


Combinational & Sequential Clock Gating

  • Combinational Clock Gating: 減小clock network上toggle,降低power。

      merge_clock_gates: 具有相同EN信號的CG可以合并,減小面積和CG功耗。

圖片

圖片

remove_clock_gates: 當(dāng)CG對power沒有優(yōu)化時,或者有多個CG但EN信號可以合并時,可以刪除多余的clock gates。

圖片

  • Sequential Clock Gating:通過觀測前后的時序邏輯變化,不考慮clock-to-clock邊界限制進(jìn)行clock gating優(yōu)化。這種方法不僅可以優(yōu)化時序邏輯功耗,還可以優(yōu)化組合邏輯功耗。

  • De-Assert a data path if its forward stage is gated.

圖片

  • De-Assert forward stage, if the current stage is gate.

圖片

06


為何Clock Gating容易出現(xiàn)setup violation?

  • 在CTS階段,clock tree的skew會盡量要求小一點,即下圖中到FF1的clock latency (T1)與到FF2的clock latency (T3+T4)盡量接近。

  • 在分析ICG的setup timing時,需要滿足T1+Tck2q+T2 < T3+Tcycle,而T1>T3,所以ICG的setup不容易滿足。

  • 由分析可以,由于T1>T3造成setup不容易滿足,T1-T3=~T4,所以減小T4有利于滿足setup,即將ICG Cell盡量擺放在靠近DFF sink的位置。

  • 同時分析公式可知,減小T2的延時也有利于setup的滿足。

圖片

07


參考文獻(xiàn)

1,F(xiàn)usion Compiler/ IC Compiler 2 user guide
2,Innovus user guide

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多