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

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

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

3天內不再提示

一文詳解門控時鐘

CHANBAEK ? 來源:數字IC與好好生活的兩居室 ? 作者:除夕之夜啊 ? 2023-03-29 11:37 ? 次閱讀

門控時鐘

寄存器組的輸出端沒有驅動或沒有變化時,可以關掉寄存器組的時鐘來減少動態功耗,此謂門控時鐘 (Clock Gating, CG) 技術。

最簡單的一個帶 EN 端的 D 觸發器的 Verilog 邏輯描述如下:

always @(posedge CLK)
    if (EN)
        Q <= D ;

當不采用門控時鐘結構時,DC 綜合時會在觸發器的輸入端增加為帶反饋端的多路選擇器電路,如下圖 (1) 所示。

當采用門控時鐘結構時,DC 綜合時僅會在觸發器的時鐘端增加一個時鐘門控單元 (CG cell),而沒有多路選擇器結構,如下圖 (2) 所示。

圖片

當多個寄存器組共用一個控制端時,結構上的優化尤為明顯,如下圖所示:

圖片

綜上所述,門控時鐘的優點有:

(1) 寄存器時鐘端翻轉率降低,動態功耗降低。

(2) 時鐘樹網絡開關率降低,動態功耗降低。

(3) CG 扇出越大,結構上節省的選擇器越多,硬件資源消耗越少。

(4) 相比于 PG (Power Gating),CG 結構相對簡單,在綜合時可自動插入。

產生門控時鐘

產生門控時鐘的條件為:

寄存器組共用同一個時鐘;

寄存器組的控制端都是同步的;

寄存器組都是由同一個變量中推斷而來的。

自動插入 CG

DC 綜合時,使用以下命令與參數,設計中符合要求的寄存器便會被綜合成帶 CG 結構的觸發器。

compile_ultra -gate_clk

DC 綜合時插入的 CG 又分為離散的 CG cell 與集成的 CG cell (ICG)。離散的 CG cell 使用 Latch 與基本邏輯門單元組合而成,集成的 CG cell 是工藝廠家提供的一個帶有時鐘門控功能的特殊單元。

DC 中插入離散的 CG 命令為:

# 使用帶 latch 結構的離散的 CG
set_clock_gating_style -sequential_cell latch
# 離散的 CG 中指定具體的 latch cell "lib_cell"
set_clock_gating_style -sequential_cell latch:lib_cell

DC 中插入沒有 Latch 結構的離散 CG 時,命令如下:

# 使用或門邏輯,生成上升沿工作的寄存器的時鐘門控
set_clock_gating_style -sequential_cell none -pos {or}

因為使用與門生成 CG 時在時鐘上升沿容易出現毛刺,使用或門生成 CG 時在時鐘下降沿容易出現毛刺,所以參數 -pos 一般配合 {or} 使用,-neg 一般配合 {and} 使用。

# 使用與門邏輯,生成下升沿工作的寄存器的時鐘門控
set_clock_gating_style -sequential_cell none -neg {and}

假如 -sequential_cell 與 -pos/-neg 選項同時使用,那么兩個選項指定的 CG 電路結構應該保持一致,例如:

set_clock_gating_style -sequential_cell latch -neg {latch and}
set_clock_gating_style -sequential_cell none -neg {and}

DC 中插入 ICG 時,命令如下:

# 使用集成的 CG cell
set_clock_gating_style -negative_edge_logic {integrated}
# 指定使用具體的集成 CG cell "lib_cell"
set_clock_gating_style -negative_edge_logic {integrated:lib_cell}

手動插入 CG

如果設置了自動產生時鐘門控(-gate_clk),DC 綜合時會對 RTL 設計中符合要求的寄存器進行時鐘門控。但如果在 RTL 設計中,人為的編寫時鐘門控邏輯,DC 對此不會插入 CG ,如以下 Verilog 描述。

assign gated_clk = clk & en ;
always @(posedge gated_clk or negedge rstn) begin
    if (!rstn)
        data_out <= 8'b0 ;
    else 
        data_out <= data_out + 1'b1;
end

人為編寫的時鐘門控邏輯中,時鐘很容易出現毛刺,增加了設計的不穩定性。

為了消除人為編寫時鐘門控邏輯帶來的隱患,DC 中需要使用以下命令對手動編寫的 CG 進行識別與替換。

replace_clock_gates

此命令實現的優化結果示意圖如下:

圖片

禁止使用 CG

由于面積、時序等原因,需要禁止使用 lib 中的某一種 CG cell 時,可以使用以下命令:

#禁止使用指定的 CG cell:"lib_cell"
set_dont_use -power {lib_cell}

其中,-power 選項不可或缺,否則 ICG cell 的 dont_use 屬性會被忽略。

門控時鐘報告

可以使用以下命令,查看時鐘門控單元的插入情況,以便確認是否需要對電路進行修改。

report_clock_gating

但是如果 RTL 設計中,存在人為例化的 CG cell,命令 report_clock_gating 是不能識別的,需要設置以下命令:

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

    關注

    31

    文章

    5363

    瀏覽量

    120939
  • Verilog
    +關注

    關注

    28

    文章

    1351

    瀏覽量

    110260
  • 功耗
    +關注

    關注

    1

    文章

    828

    瀏覽量

    32016
  • 觸發器
    +關注

    關注

    14

    文章

    2003

    瀏覽量

    61286
  • 門控時鐘
    +關注

    關注

    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>的不同之處

    fpga門控時鐘問題

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

    什么是門控時鐘

    什么是門控時鐘
    發表于 11-05 07:26

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

    繁忙。它只需要用于分支指令。而浮點邏輯只需要用于浮點指令,等等。在下面的跟蹤波形中,大多數信號值是灰色的,表明它們沒有被使用。顯示時鐘門控的 CPU 波形如前所述,將時鐘信號驅動到觸發器會消耗總功率的很大
    發表于 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設計中某些部分不需要時關閉時鐘的技術。這里的“部分”可以是單個寄存器、模塊、子系統甚至整個SoC。 為什么需要
    的頭像 發表于 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>降低功耗的原理

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

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

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

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

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

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

    門控時鐘檢查(clock gating check)的理解和設計應用

    通過門控方式不同,門控時鐘通常可以分為下面基類,
    的頭像 發表于 06-19 16:49 ?4331次閱讀
    <b class='flag-5'>門控</b><b class='flag-5'>時鐘</b>檢查(clock gating check)的理解和設計應用

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

    開始之前,我們首先來看下什么是時鐘門控(clock gating)技術,顧名思義就是利用邏輯門技術控制時鐘的通斷。
    的頭像 發表于 06-29 15:38 ?2982次閱讀
    什么是<b class='flag-5'>時鐘</b><b class='flag-5'>門控</b>技術?為什么需要控制<b class='flag-5'>時鐘</b>的通斷呢?

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

    時鐘門控(Clock Gating)** 是種在數字IC設計中某些部分不需要時關閉時鐘的技術。這里的“部分”可以是單個寄存器、模塊、子系統甚至整個SoC。
    的頭像 發表于 06-29 15:58 ?2247次閱讀
    為什么需要<b class='flag-5'>時鐘</b><b class='flag-5'>門控</b>?<b class='flag-5'>時鐘</b><b class='flag-5'>門控</b>終極指南
    主站蜘蛛池模板: 欧美AAAAAA级午夜福利视频 | 99久久无码一区人妻A片蜜 | 特污兔午夜影视院 | 91精品婷婷国产综合久久8 | 亚洲精品久久AV无码蜜桃 | 国产一区二区无码蜜芽精品 | 午夜插插插 | 精品国产原创在线观看视频 | 国产精品婷婷五月久久久久 | 国产精品成人免费 | 饥渴的新婚女教师 | 亚洲中文字幕无码一久久区 | 精品少妇爆AV无码专区 | 男女交性视频无遮挡全过程 | 久久亚洲国产中文字幕 | 亚洲精品久久久久一区二区三 | 秘密教学26我们在做一次吧免费 | 精品国产品国语在线不卡丶 | 国产午夜在线观看视频 | 国产高清视频在线播放www色 | 羞羞一区二区三区四区片 | 538视频这里只有精品 | 国产精品成人久久久久A伋 国产精品成人观看视频免费 | 久久精品国产亚洲AV影院 | 2019午夜福利757视频第12集 | 日韩人妻无码精品-专区 | 男人j进女人j一进一出 | 成年人视频在线免费看 | 无码天堂亚洲国产AV久久 | 51成人精品午夜福利AV免费七 | 四房播播开心色播 | 日本免费一区二区三区四区五六区 | 强奸日本美女小游戏 | 国产在线精品一区二区在线看 | 美女张开腿让男生桶动态图 | 国产高清-国产av | 高跟丝袜岳第一次 | 欧洲兽交另类AVXXX | 在线观看永久免费网站 | 亚洲视频黄 | 国产精品VIDEOS麻豆TUBE |