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

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

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

3天內不再提示

什么是時鐘門控技術?為什么需要控制時鐘的通斷呢?

冬至子 ? 來源:老秦談芯 ? 作者:老秦談芯 ? 2023-06-29 15:38 ? 次閱讀

開始之前,我們首先來看一下什么是時鐘門控(clock gating)技術,顧名思義就是利用邏輯門技術控制時鐘的通斷。

那么為什么需要控制時鐘的通斷呢?主要基于以下幾個原因。首先,隨著工藝的發展和設計規模的增大,時鐘樹上產生的功耗占整個SoC功耗的比例越來越高,有時幾乎能占到50%左右。關于時鐘樹,可能前端的同學不熟悉,簡單說幾句,SoC的時鐘一般是參考時鐘經過PLL和數字分頻器輸出的,后面可能要連接驅動成千上萬的寄存器clock端。

這時候任何一個單一的cell都不可能有這么大的驅動能力,因此要插入大量的buffer,而且為了保證到每個寄存器的延時一樣,clock tree還要做balance。整個的時鐘樹大概長成下圖這樣,第一級buffer叫root,中間的buffer叫branch,最后一級的buffer叫leaf:

圖片

圖1 時鐘樹示意圖

如果我們的芯片在不工作時,PLL依然有clock輸出的話,那整個時鐘樹依然產生很大的功耗。

接下來我們再看一下邊沿觸發器的結構圖。從圖上我們能看出即使D端保持不動,clock端變化也會消耗一些能量。想深入研究的同學可自行推導(可以忽略兩個復位信號)。

圖片

圖2 邊沿D觸發器

那么當D端長時間不變時,是不是可以把CP端的變化隔離掉以降低功耗呢?答案是肯定的。

最簡單的辦法就是把clock信號和一個EN信號做“與”操作,如下圖:

圖片

圖3 簡單的時鐘門控邏輯

這個方法雖然簡單,但是如果我們不能保證EN信號相對clock的到來時間和保持時間,那么就很可能不能產生門控時鐘或者產生毛刺(glitch)。為了解決這個問題,人們提出了基于鎖存器的時鐘門控邏輯。由于鎖存器能捕捉到EN信號并使它保持到產生完整的時鐘脈沖,因此EN信號只需要在時鐘活躍沿附近保持穩定即可。使用這種技術,每次只需要改變門的一個輸入端來打開或關閉時鐘就能保證電路的輸出不含有任何毛刺或者尖峰脈沖了。

圖片

圖4 基于鎖存器的時鐘門控

現在的芯片生產商會提供時鐘門控的標準單元,為了DFT測試的需要,標準門控單元還會帶著test_en這種輸入信號,今天為了不跑題就不介紹相關內容了。

接下來就是架構師和邏輯設計工程師關心的問題了,怎么設計門控邏輯。在SoC設計中,可以實現三種粒度的時鐘門控設計,首先是粗粒度的設計,架構師要決定如何在時鐘產生單元增加門控邏輯,根據SoC工作情況來判決是否關斷某個時鐘輸出。這里提供一個思路,先根據功能劃分出clock domain,然后再根據每個模塊/IP之間的關系制定一張表,用于決定每個時鐘域的開啟和關閉狀態。

有了這張表就相當于有了一個狀態機,根據狀態機的當前狀態決定時鐘是否關閉。至于狀態跳轉的判決,可以是硬判決也可以是軟判決。硬判決的好處是相對速度快;缺點是靈活性較差,而且設計相對復雜,往往需要模塊/IP有接口信號可用。軟判決剛好相反,優點是靈活性高;缺點是延遲比較大,不適于頻繁開關,對于某些設計來說,實現軟判決還要增加處理器,畢竟不是所有SoC都有CPU/MCU/DSP的。

其次是中等粒度的設計,模塊設計師來決定是否關斷內部子模塊的時鐘輸入。這里沒啥好說的,完全取決于模塊的功能和實現方案了。

最后,可以在邏輯綜合階段,由綜合工具自動插入門控單元。前面兩條依賴具體設計,最后一條不完全依賴設計,再多說幾句。如果RTL代碼寫成下圖左邊的樣子,在邏輯綜合時不打開插CG的選項,綜合出的電路如中圖所示;而打開插入CG的選項,就會綜合出下圖右邊的電路。由于CG單元本身也會產生功耗,一般一個CG單元后面要接多個寄存器才能達到節省功耗的效果。一般在綜合時會通過選項選擇3或4個。

圖片

圖5 綜合插入CG的示意圖

對于綜合工具,其插入CG的判定很簡單,就是看有沒有上圖代碼中的enbale邏輯。如果沒有就不插。所以如果邏輯設計師想要寫出滿足低功耗需求的RTL代碼,就要盡量在代碼中使用類似上圖的enable邏輯。可能有喜歡刨根問底的同學要提問了“如果我的某段邏輯就沒有enable怎么辦?”這種情況下,可以試著向前或者向后找一找,有沒有哪些邏輯可以借用過來。比如下圖例子,綠色虛線代表可以增加的邏輯。RTL低功耗設計方法有很多,大家可以百度一下,或者等我以后寫(此處有坑)。

圖片

圖6 前向借用邏輯產生時鐘門控信號

最后,要說明一個關于clock gating的誤區。時鐘門控固然可以節省功耗,但并不是越多越好。當CG cell達到一定數量時,再增加CG cell對功耗節省的效果就不明顯了。而且如前面所說,CG cell本身也是要產生功耗的,數量太多的話肯定要消耗不少,而且還會占用大量的面積,過猶不及。(再一次體現出做SoC的balance藝術,還是那句話,沒有完美的SoC,只有完美的tradeoff)

圖片

圖7 CG數量與節省功耗的關系

結束前總結一下,clock gating技術對整體SoC設計的影響。

表1 低功耗技術總結

1.jpg

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5343

    瀏覽量

    120426
  • 分頻器
    +關注

    關注

    43

    文章

    447

    瀏覽量

    49943
  • SoC設計
    +關注

    關注

    1

    文章

    148

    瀏覽量

    18774
  • 時鐘門控
    +關注

    關注

    0

    文章

    7

    瀏覽量

    6836
  • PLL電路
    +關注

    關注

    0

    文章

    92

    瀏覽量

    6413
收藏 人收藏

    評論

    相關推薦

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

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

    fpga門控時鐘問題

    我在一個圖像項目里用來很多的門控時鐘來產生需要的時序波形,這樣程序很不穩定,圖像晃動很大,我猜想是不是因為門控時鐘太多,程序不穩定,但是又沒
    發表于 10-28 22:39

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

    的 20%。時鐘消耗的可能更多,可能約為 40%!全局時鐘無處不在,而且每個周期都會切換兩次。正如我們將看到的,時鐘門控避免了在不需要
    發表于 12-19 17:09

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

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

    門控時鐘時鐘偏移研究

    所謂門控時鐘就是指連接到觸發器時鐘端的時鐘來自于組合邏輯;凡是組合邏輯在布局布線之后肯定會產生毛刺,而如果采用這種有毛刺的信號來作為時鐘使用
    發表于 09-07 16:11 ?35次下載
    <b class='flag-5'>門控</b><b class='flag-5'>時鐘</b>與<b class='flag-5'>時鐘</b>偏移研究

    門控時鐘

    門控時鐘的資料,關于FPGA方面的資料。有需要的可以看看
    發表于 05-10 16:31 ?11次下載

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

    時鐘門控(Clock Gating)是一種在數字IC設計中某些部分不需要時關閉時鐘技術。這里的“部分”可以是單個寄存器、模塊、子系統甚至整
    的頭像 發表于 06-13 16:48 ?2655次閱讀

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

    clock) 是通過在時鐘路徑上增加邏輯門對時鐘進行控制,使電路的部分邏輯在不需要工作時停止時鐘樹的翻轉,而并不影響原本的邏輯狀態。在AS
    的頭像 發表于 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>降低功耗的原理

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

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

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

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

    時鐘門控的作用

    的可能更多,可能約為 40%!全局時鐘無處不在,而且每個周期都會切換兩次。正如我們將看到的,時鐘門控避免了在不需要時鐘脈沖時切換
    的頭像 發表于 12-12 11:06 ?823次閱讀

    一文詳解門控時鐘

    當寄存器組的輸出端沒有驅動或沒有變化時,可以關掉寄存器組的時鐘來減少動態功耗,此謂門控時鐘 (Clock Gating, CG) 技術
    的頭像 發表于 03-29 11:37 ?9573次閱讀
    一文詳解<b class='flag-5'>門控</b><b class='flag-5'>時鐘</b>

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

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

    FPGA原型平臺門控時鐘自動轉換

    現代FPGA綜合工具會自動執行門控時鐘轉換,而無需更改RTL代碼中的設計,然而,我們可能需要適當地手動指導綜合工具執行門控時鐘變換。
    的頭像 發表于 05-23 17:38 ?1886次閱讀
    FPGA原型平臺<b class='flag-5'>門控</b><b class='flag-5'>時鐘</b>自動轉換

    為什么需要時鐘門控時鐘門控終極指南

    時鐘門控(Clock Gating)** 是一種在數字IC設計中某些部分不需要時關閉時鐘技術。這里的“部分”可以是單個寄存器、模塊、子系統
    的頭像 發表于 06-29 15:58 ?2160次閱讀
    為什么<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>終極指南
    主站蜘蛛池模板: 性肥胖BWBWBW| 久久www免费人成_看片高清| 特级做A爰片毛片免费看108| 狠狠干女人| 成 人 网 站免费观看| 亚洲视频精品在线观看| 日本漫画无彩翼漫画| 快播电影频道| 国色天香视频在线社区| 大香伊人中文字幕精品| 主播蜜汁丝袜精品自拍| 亚洲精品无码专区在线播放| 兽交白浆喷水高潮| 欧美性情video sexo视频| 久久天堂成人影院| 娇妻中日久久持久久| 国产伦精品一区二区三区免费 | 97精品视频| 亚洲天码中字| 性欧美video| 色婷婷国产麻豆AV| 秋霞在线看片无码免费| 蜜臀AV中文字幕熟女人妻| 久久久久久九九| 精品久久电影网| 国产精品亚洲在钱视频| 国产成人8x视频一区二区| 成人国产精品日本在线| CHINSEFUCKGAY无套| 99re久久精品在线播放| 91se在线看片国产免费观看| 在线观看免费av网| 伊人香蕉在线播放视频免费| 亚洲天堂视频网站| 亚洲天堂一区二区三区| 亚洲日本欧美国产在线视| 亚洲精品久久久无码 | www.av色| 超碰在线视频公开| 超碰免费视频caopoom9| 扒开她的黑森林让我添动态图|