色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

低功耗之門控時鐘設計

冬至子 ? 來源:全棧芯片工程師 ? 作者:Chiptist ? 2023-06-29 17:23 ? 次閱讀

clock gating和power gating是降低芯片功耗的常用手段,相比power gating設計,clock gating的設計和實現更為簡單,多在微架構、RTL coding階段即可充分考慮,在綜合時(compile_ultra -gate_clock)即可自動mapping到clock gating結構上去。本文先講解clock gating,ICG的基本結構如下圖所示:

圖片

門控時鐘電路有效的降低了動態功耗,因為其減少了時鐘樹的翻轉行為、減少了寄存器clock pin的翻轉行為、減少了大量MUX邏輯消耗的功耗,一般可以節省20%-60%的功耗,同時也節省了MUX面積。

門控時鐘單元分成兩種,一種是帶鎖存器(latch based)的門控時鐘單元,一種是不帶有鎖存器(latch free)的門控時鐘單元。latch based的門控時鐘單元能避免毛刺,因此更推薦使用。

門控時鐘又分為離散的和集成的(ICG)兩種:

  1. 離散的CG單元
    1)帶latch的CG(默認)
    set_clock_gating_style -sequential_cell latch
    2)不帶latch的CG
    set_clock_gating_style -sequential_cell none
  2. 集成的CG單元(ICG)
    set_clock_gating_style -negtive_edge_logic "integrated"

通常,在執行命令compile_ultra -gate_clock前需要設置好clock gating的相關配置選項,具體選項如下:

圖片

set_clock_gating_style的options解析如下:

  • -sequential_cell none | latch

1)-sequential_cell latch(默認)指帶latch的CG(latch based style), 并可指定使用具體某個latch cell,比如:-sequential_cell latch:lib_cell。

2)-sequential_cell none指不帶latch的CG(latch free style),比如:

與門做CG,時鐘使能為1時鐘穿透AND,但posedge trigger存在毛刺;

或門做CG,時鐘使能為0時鐘穿透OR,但negesge trigger存在毛刺;

  • -minimum_bitwidth minsize_value

為了節省gating cell的數量,需達到一定寄存器數量的register bank才使用gating cell。

  • -setup setup_value 指定建立時間

  • -hold hold_value 指定保持時間

  • -positive_edge_logic {cell_list | integrated [active_low_enable]

    [invert_gclk]}

    1. {cell_list}用于指定“上升沿”觸發使用的CG單元。需要注意的是-sequential_cell指定的是否有latch應該和cell_list的對應電路是否含有latch保持一致,如:

      set_clock_gating_style -sequential_cell latch -positive_edge_logic { latch and }

      set_clock_gating_style -sequential_cell none -positive_edge_logic { or }

    2. {integrated}用于表明使用上升沿觸發的ICG單元。

      如下圖所示,該ICG單元就是一個pre-conctrolled positive-edge triggered clock gating latch。

    圖片

  • -negative_edge_logic {cell_list | integrated [active_low_enable]

    [invert_gclk]}

  1. {cell_list}用于指定"下降沿”觸發使用的CG單元。需要注意的是-sequential_cell指定的是否有latch應該和cell_list的對應電路是否含有latch保持一致,如:

    set_clock_gating_style -sequential_cell **latch ** -negtive_edge_logic { latch or }

    set_clock_gating_style -sequential_cell ** none ** -negtive_edge_logic { and }

    如下圖,-sequential_cell none指定latch-free模式,但是cell_list卻指定了latch、and/or, 這種情況下,DC工具仍然會綜合出latch-based clock-gating的電路。
    圖片

  2. {integrated}用于表明使用下降沿觸發的ICG單元。

如下圖所示,該ICG單元就是一個pre-conctrolled negative-edge triggered clock gating latch。

圖片

  • -control_point none | before | after
    對于DFT測試電路,為了滿足電路可控,需要引入TE信號來控制latch的使能端。before就是在Latch之前插入或門,將TE信號和時鐘使能信號或起來然后連接到Latch的D端。同理,after就是在Latch之后插入或門,將TE信號和Latch的Q端或起來然后連接到IGG的AND門。
  • -num_stages num_stages_count
    工具默認只使用一級門控時鐘,而使用多級門控時鐘可進一步節省面積、降低功耗。如下圖,a信號被三個CG單元共享,那么將a信號做成第一級CG,b、c、d做成第二級CG。這樣,增加了一個CG但減少了3個與門,同時節省了組合邏輯和第二級的CG的功耗。
    set_clock_gating_style -num_stages 2
    圖片
    那么如何編寫門控時鐘的RTL代碼風格呢?
    第一種風格:

圖片

綜合出來電路有32個MUX2選擇器:

圖片

我們換一種寫法,DC工具就可將load_cond作為Latch的使能,從而一個clock gating cell便取代了32個MUX2,節省了大量面積的同時,還節省了32個寄存器的動態功耗,32MUX2組合邏輯的功耗,也節省了時鐘樹上buffer的功耗。

圖片

那么如何保證ICG中Latch的時序呢?

除in2reg、reg2reg、reg2out、in2out類型路徑外,我們會經常看到reg2cgate的setu/hold檢查,即clock gate上enable信號要比clock信號提前到達一段時間setup和保持一段時間hold。

通常clock gate上的setup較難收斂,如下圖

  1. register CK端作為launch clock發起端,latch的CK端作為capture捕獲端,它們之間天然會存在skew k,即clock tree必然不balance。
  2. Latch的時序檢查只有半個時鐘周期;
  3. register Q到Latch EN的combo邏輯延遲;

解決辦法:

  • 一般將clock gate 單元放在寄存器附近以減小skew。
  • 也可以采用set_clock_gating_check,加大對clock gating時序約束。

圖片

對于clock gating cell,synthesis時就會插入,和CTS沒太大關系,一般只要確保clock timing check打開的就行。

另外,CTS工具會對其做clone、declone操作。

  • ICG cell Clone: 同一個ICG單元控制的寄存器較多或者分布不均勻時,就會導致ICG時鐘連線過長,可通過clone ICG cell進行優化;
  • ICG cell De-Clone: 同一個ICG單元控制的寄存器較少,導致ICG cell數量過多,可通過De-clone ICG cell進行優化;
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    120951
  • 鎖存器
    +關注

    關注

    8

    文章

    908

    瀏覽量

    41598
  • RTL
    RTL
    +關注

    關注

    1

    文章

    385

    瀏覽量

    59912
  • DFT
    DFT
    +關注

    關注

    2

    文章

    231

    瀏覽量

    22788
  • 門控時鐘
    +關注

    關注

    0

    文章

    27

    瀏覽量

    8963
收藏 人收藏

    評論

    相關推薦

    XOR自門控時鐘門控的不同之處

    時鐘XOR自門控(Self Gating)基本思路和時鐘門控類似,都是當寄存器中的數據保持不變時,通過關閉某些寄存器的時鐘信號來降低設計的動
    的頭像 發表于 01-02 11:34 ?1817次閱讀
    XOR自<b class='flag-5'>門控</b>與<b class='flag-5'>時鐘</b><b class='flag-5'>門控</b>的不同之處

    基于門控時鐘低功耗時序電路設計

    的競爭,因此將電路分成多個電源域并根據要求關閉它們,并且在設計每個時序電路的同時節省功耗,這兩點至關重要。時序電路(如計數器和寄存器)在現代設計中無處不在。本文以約翰遜計數器為例介紹了如何采用有效門控時鐘
    發表于 09-30 16:00

    什么是時鐘門控?如何去實線時鐘門控的設計呢

    什么是時鐘門控?有幾個因素會影響電路的功耗。邏輯門具有靜態或泄漏功率,只要對其施加電壓,該功率大致恒定,并且它們具有由切換電線產生的動態或開關功率。Flip-flop觸發器非常耗電,大約占總功率
    發表于 12-19 17:09

    基于門控時鐘的CMOS電路低功耗設計

    闡述了如何運用門控時鐘來進行CMOS電路的低功耗設計。分析了門控時鐘的實現方式,如何借助EDA工具在設計中使用
    發表于 11-19 11:49 ?22次下載

    基于門控時鐘低功耗電路設計方案

    在眾多低功耗技術中,門控時鐘對翻轉功耗和內部功耗的抑制作用最強。本文主要講述門控
    發表于 02-21 09:31 ?3562次閱讀
    基于<b class='flag-5'>門控</b><b class='flag-5'>時鐘</b>的<b class='flag-5'>低功耗</b>電路設計方案

    應用于片上系統中低功耗IP核設計的自適應門控時鐘技術

    摘要:門控時鐘技術一直以來是降低芯片動態功耗的有效方法,文章結合片上系統(SOC)的結構特性和設計特點,分析已有的各種門控時鐘技術的優缺點,
    發表于 02-23 13:53 ?36次下載

    低功耗時鐘門控算術邏輯單元在不同FPGA中的時鐘能量分析

    低功耗時鐘門控算術邏輯單元在不同FPGA中的時鐘能量分析
    發表于 11-19 14:50 ?0次下載

    通常有兩種不同的時鐘門控實現技術

    constrained,mobile端不能夠充更多的電就只能盡可能地降低功耗了(無法開源只能節流呀),也因為時鐘門控是降低芯片動態功耗最簡單,最常用的方法之一。
    的頭像 發表于 06-13 16:48 ?2676次閱讀

    什么是門控時鐘 門控時鐘低功耗的原理

    門控時鐘的設計初衷是實現FPGA的低功耗設計,本文從什么是門控時鐘門控
    的頭像 發表于 09-23 16:44 ?1.4w次閱讀
    什么是<b class='flag-5'>門控</b><b class='flag-5'>時鐘</b> <b class='flag-5'>門控</b><b class='flag-5'>時鐘</b>降<b class='flag-5'>低功耗</b>的原理

    門控時鐘實現低功耗的原理

    只有當FPGA工程需要大量降低功耗時才有必要引入門控時鐘,若必須引入門控時鐘,則推薦使用基于寄存器的門控
    的頭像 發表于 07-03 15:32 ?2354次閱讀

    什么是門控時鐘?如何生成門控時鐘

    由于門控時鐘邏輯具有一定的開銷,因此數據寬度過小不適合做clockgating。一般情況下,數據寬度大于8比特時建議采用門控時鐘
    發表于 12-05 12:28 ?3242次閱讀

    FPGA原型驗證系統的時鐘門控

    門控時鐘是一種在系統不需要動作時,關閉特定塊的時鐘的方法,目前很多低功耗SoC設計都將其用作節省動態功率的有效技術。
    的頭像 發表于 04-20 09:15 ?1310次閱讀

    PyTorch教程10.2之門控循環單元(GRU)

    電子發燒友網站提供《PyTorch教程10.2之門控循環單元(GRU).pdf》資料免費下載
    發表于 06-05 18:15 ?0次下載
    PyTorch教程10.2<b class='flag-5'>之門控</b>循環單元(GRU)

    門控時鐘低功耗在Placement階段有什么技巧?

    門控時鐘技術可以用來降低電路的動態功耗,且在一定程度上能減小電路的面積。
    的頭像 發表于 06-29 16:45 ?1442次閱讀
    <b class='flag-5'>門控</b><b class='flag-5'>時鐘</b><b class='flag-5'>低功耗</b>在Placement階段有什么技巧?

    FSMs低功耗設計

    低功耗設計是當下的需要!這篇文章:低功耗設計方法論的必要性讓我們深入了解了現代設計的意圖和對功耗感知的需求。在低功耗方法標簽下的時鐘
    的頭像 發表于 10-17 10:41 ?710次閱讀
    FSMs<b class='flag-5'>低功耗</b>設計
    主站蜘蛛池模板: 野花日本免费完整版高清版动漫 | 污污内射在线观看一区二区少妇 | 久久www免费人成_看片高清 | 精品网站一区二区三区网站 | 亚洲视频在线免费 | 在线免费看a | 老师湿乎乎两半嫩 | 日韩精品AV一区二区三区 | 九九国产精品成人AV麻豆 | 嗯啊…跟校草在教室里做h 嗯 用力啊 嗯 c我 啊哈老师 | 免费一级片网站 | 精品无人区麻豆乱码无限制 | 亚洲精品久久久WWW游戏好玩 | 色青青草原桃花久久综合 | 日韩亚洲人成在线 | 欧美高清 videos sexo | wwww69| 欧美黄色一级 | 中文字幕乱码亚洲无线三区 | 高清国产在线播放成人 | 国产真实女人一级毛片 | 把手戳进美女尿口里动态图 | 小SAO货水真多把你CAO烂 | 国产一区二区无码蜜芽精品 | 国产精品成人不卡在线观看 | 一品道门在线视频 | yellow在线观看免费高清的日本 | 青柠在线观看免费全集 | 亚洲精品国产国语 | 亚洲精品国产乱码AV在线观看 | 久久久无码精品无码国产人妻丝瓜 | 柠檬福利精品视频导航 | 亚洲精品中文字幕一二三四区 | 日韩中文字幕亚洲无线码 | 俄罗斯aaaaa一级毛片 | ppypp午夜限制不卡影院私人 | 天天操人人射 | 九九精品视频在线播放 | 福利一区福利二区 | 亚洲偷自拍精品视频在线观看 | 国产日韩亚洲专区无码 |