付費限定

[Verilog] 10分鐘由淺入深看懂 clock gating (2) - gating constraint

更新於 發佈於 閱讀時間約 4 分鐘

介紹完了基本的概念後,

這邊來看個例子,

以and gate的CG來說 ,clk_enable 訊號由前一級的reg輸出(1) ,

經由Q輸出en後落在clk負緣的時候toggle (2),

下一個cycle的clk即會被鎖在0 (3)

raw-image


對於or based的來說

clk_enable由前一級Din輸入後 (1),

Q out於正緣輸出en給or gate (2),

output clk則會在下一次負緣到來時不會有任何動作(3),


raw-image


上述的描述看起來都很直接沒什麼好質疑的,

不過不知道大家有沒有想過,

對於and based的enable要在負緣才能抵達and gated的input,

對於or based的enable則要在正緣抵達,不能是負緣,

or gate和and gate有著不同的enable setting的區間

但往往我們的enable是直接從reg output造出來的,

我們要怎麼控制他? 感覺就有夠難


實際上這邊可以裡用我們之前學到的一些技術來做到,

setup time 及 hold time,

setup time 指的是在 check point前最慢須穩定的時間,

hold time 指的是check point後訊號最少須維持多久的時間.


那麼我們先來看and gate based的

raw-image

在clk_enable trigger後,必須在負緣的地方才能開始動,

所以我們只要把這顆reg的hold time直接強制拉到半T,

意旨clk trigger後訊號最少須維持半T的時間才能開始動,

tool就會為了meet STA不要發生hold time violation幫忙你用適合的方式卡住


那對於or gated based的來說

raw-image

我們想做到的是enable被trigger後需要在正緣的階段就做完,

因此只要把setup check的位置從原本的下一個正緣往前拉半T,

就可以強制tool在半T的cycle把en訊號維持stable


不過design中的clk gating cell其實到處都是,

有些可能是自己塞得有些則是靠tool幫忙塞的,

我們基本上不太可能自己寫sdc把上述的constraint都設完,

要是漏了可能就直接白長一場,要怎麼辦?


以行動支持創作者!付費即可解鎖
本篇內容共 1572 字、3 則留言,僅發佈於10分鐘看懂IC設計你目前無法檢視以下內容,可能因為尚未登入,或沒有該房間的查看權限。
留言
avatar-img
留言分享你的想法!
曾崇義-avatar-img
2025/03/29
您好,想請問第一級reg是 負緣觸發嗎
出一張嘴-avatar-img
發文者
2025/03/31
曾崇義 clk_enable在正緣觸發,但是對於AND gate來說需強迫signal在負緣後才能開始運作,避免夾出glitch的clk source給後面的register,因此為了要達到這個目的,有幾種方法. 1.靠timing constraint 2.靠latch
avatar-img
數位IC設計第一品牌
68會員
24內容數
數位IC設計第一品牌 從0到1用嘴做IC 觀念大權
2024/12/28
到了最後一個階段, 我們做了這麼多CG cell insertion後, 要怎麼知道到底是不是對Design有幫助的呢? 是否有個rule又或是量化的數據來解釋說CG的效果如何 在下面這篇paper中提到了幾種觀測CG cell efficiency的方法 J. Srinivas, M
Thumbnail
2024/12/28
到了最後一個階段, 我們做了這麼多CG cell insertion後, 要怎麼知道到底是不是對Design有幫助的呢? 是否有個rule又或是量化的數據來解釋說CG的效果如何 在下面這篇paper中提到了幾種觀測CG cell efficiency的方法 J. Srinivas, M
Thumbnail
2024/12/16
前面文章曾經提到說, 除了我們在寫rtl當下直接撰寫加入的cg cell外, 實際上我們有些clk gating cell是靠tool自己幫忙插的, [Verilog] 10分鐘由淺入深看懂 clock gating -2 那麼tool是怎麼判斷說哪邊要插gating cell的呢?
Thumbnail
2024/12/16
前面文章曾經提到說, 除了我們在寫rtl當下直接撰寫加入的cg cell外, 實際上我們有些clk gating cell是靠tool自己幫忙插的, [Verilog] 10分鐘由淺入深看懂 clock gating -2 那麼tool是怎麼判斷說哪邊要插gating cell的呢?
Thumbnail
2024/12/11
前面文章提到過clk gating check實際上就是在check gating cell的enable訊號 檢查enable的timing是否能滿足STA的check, 不過不知道各位有沒有發現到, 這條path看起來很單純呀而且我還用上了latch大法, 可能讓訊號走完1整個cycle
Thumbnail
2024/12/11
前面文章提到過clk gating check實際上就是在check gating cell的enable訊號 檢查enable的timing是否能滿足STA的check, 不過不知道各位有沒有發現到, 這條path看起來很單純呀而且我還用上了latch大法, 可能讓訊號走完1整個cycle
Thumbnail
看更多
你可能也想看
Thumbnail
大家好,我是一名眼科醫師,也是一位孩子的媽 身為眼科醫師的我,我知道視力發展對孩子來說有多關鍵。 每到開學季時,診間便充斥著許多憂心忡忡的家屬。近年來看診中,兒童提早近視、眼睛疲勞的案例明顯增加,除了3C使用過度,最常被忽略的,就是照明品質。 然而作為一位媽媽,孩子能在安全、舒適的環境
Thumbnail
大家好,我是一名眼科醫師,也是一位孩子的媽 身為眼科醫師的我,我知道視力發展對孩子來說有多關鍵。 每到開學季時,診間便充斥著許多憂心忡忡的家屬。近年來看診中,兒童提早近視、眼睛疲勞的案例明顯增加,除了3C使用過度,最常被忽略的,就是照明品質。 然而作為一位媽媽,孩子能在安全、舒適的環境
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
介紹完了基本的概念後, 這邊來看個例子, 以and gated的CG來說 ,clk_enable 訊號由前一級的reg輸出(1) , 經由Q輸出en後落在clk負緣的時候toggle (2), 下一個cycle的clk即會被鎖在0 (3) 對於or based的來說 clk_en
Thumbnail
介紹完了基本的概念後, 這邊來看個例子, 以and gated的CG來說 ,clk_enable 訊號由前一級的reg輸出(1) , 經由Q輸出en後落在clk負緣的時候toggle (2), 下一個cycle的clk即會被鎖在0 (3) 對於or based的來說 clk_en
Thumbnail
先前文章中提提了幾種low power design常用的手法 [Verilog] 10分鐘看懂IC design的low power design - 1 (原創) 其中最廣為使用的招數就是clock gating 藉由停住當下沒在運作的module clk 及clk network 來達到
Thumbnail
先前文章中提提了幾種low power design常用的手法 [Verilog] 10分鐘看懂IC design的low power design - 1 (原創) 其中最廣為使用的招數就是clock gating 藉由停住當下沒在運作的module clk 及clk network 來達到
Thumbnail
clk skew 和 clk jitter差別是甚麼? clk skew 指的是兩顆reg 因為clk 到達的時間不同 導致雖然後是屬於於同一個cycle的行為 卻會有先到後到的問題 通常成因為 wire length cell delay clock distribution
Thumbnail
clk skew 和 clk jitter差別是甚麼? clk skew 指的是兩顆reg 因為clk 到達的時間不同 導致雖然後是屬於於同一個cycle的行為 卻會有先到後到的問題 通常成因為 wire length cell delay clock distribution
Thumbnail
透過計時器與自保持迴路的接線方式,來達成延時斷電動作。
Thumbnail
透過計時器與自保持迴路的接線方式,來達成延時斷電動作。
Thumbnail
本文介紹了抽水馬達和繼電器的工作原理,以及如何與Arduino搭配使用。繼電器的定義、結構、和工作原理,以及抽水馬達的定義、結構、和工作原理都有詳細說明。此外,還介紹了串聯和並聯的關係,並提供了抽水馬達模組的程式碼。
Thumbnail
本文介紹了抽水馬達和繼電器的工作原理,以及如何與Arduino搭配使用。繼電器的定義、結構、和工作原理,以及抽水馬達的定義、結構、和工作原理都有詳細說明。此外,還介紹了串聯和並聯的關係,並提供了抽水馬達模組的程式碼。
Thumbnail
續傳遞函數離散化的核心環節,就是將控制器的s轉移函數(s-TF)轉換為z轉移 函數(z-TF)。 一般情況下,由連續到離散的設計最好多實驗幾種方法(通過模擬,得出滿意的 結果)。 用於PID連續系統映射轉換成PID離散系統的方塊圖如下: ■離散化演算法摘要 ■離散化演算法比較 ■MATLAB 指令說
Thumbnail
續傳遞函數離散化的核心環節,就是將控制器的s轉移函數(s-TF)轉換為z轉移 函數(z-TF)。 一般情況下,由連續到離散的設計最好多實驗幾種方法(通過模擬,得出滿意的 結果)。 用於PID連續系統映射轉換成PID離散系統的方塊圖如下: ■離散化演算法摘要 ■離散化演算法比較 ■MATLAB 指令說
Thumbnail
簡介   I2C (Inter - Intertraed circuit)內部整合電路,顧名思義就是主要控制短距離的內部裝置,而不適用於長距離的傳輸,I2C有不同的速度模式通常都是雙向傳輸,如標準模式100 Kbit/s、低速模式 10 Kbit/s、快速模式400Kbit/s、高速模式3.4Mbi
Thumbnail
簡介   I2C (Inter - Intertraed circuit)內部整合電路,顧名思義就是主要控制短距離的內部裝置,而不適用於長距離的傳輸,I2C有不同的速度模式通常都是雙向傳輸,如標準模式100 Kbit/s、低速模式 10 Kbit/s、快速模式400Kbit/s、高速模式3.4Mbi
Thumbnail
系統響應是指系統針對其輸入而產生相對應的輸出結果 針對系統不同的特性,可以進行以下分析: 1.穩定度分析 2.暫態與穩態分析 3.時域與頻域分析 當系統的響應無法達到目標時,此時才會再加上控制器進行設計,以讓系統能達 到控制目標 ===================================
Thumbnail
系統響應是指系統針對其輸入而產生相對應的輸出結果 針對系統不同的特性,可以進行以下分析: 1.穩定度分析 2.暫態與穩態分析 3.時域與頻域分析 當系統的響應無法達到目標時,此時才會再加上控制器進行設計,以讓系統能達 到控制目標 ===================================
Thumbnail
■控制系統分類 ●依開閉路系統區分 (1)開路系統 (2)閉路控制系統 A.線性系統與非線性系統。 B.時變系統與時不變(非時變)系統。 C.線性時不變系統(俗稱LTI系統) D.因果系統與非因果系統。 ●依系統之訊號性質區分 (1)連續性(類比)控制系統:控制系統內部所處理的信號均為時間的
Thumbnail
■控制系統分類 ●依開閉路系統區分 (1)開路系統 (2)閉路控制系統 A.線性系統與非線性系統。 B.時變系統與時不變(非時變)系統。 C.線性時不變系統(俗稱LTI系統) D.因果系統與非因果系統。 ●依系統之訊號性質區分 (1)連續性(類比)控制系統:控制系統內部所處理的信號均為時間的
Thumbnail
繼電器(Relay),又稱電驛,一種電子控制器件,具有控制系統(輸入迴路)和被控制系統(輸出迴路),透過低電流控制高電流的一種「自動開關」。 開關觸點表現型式:動合型、動斷型、轉換型。 繼電器種類:光繼電器、電磁繼電器、固態繼電器、熱敏乾簧繼電器、磁簧繼電器。
Thumbnail
繼電器(Relay),又稱電驛,一種電子控制器件,具有控制系統(輸入迴路)和被控制系統(輸出迴路),透過低電流控制高電流的一種「自動開關」。 開關觸點表現型式:動合型、動斷型、轉換型。 繼電器種類:光繼電器、電磁繼電器、固態繼電器、熱敏乾簧繼電器、磁簧繼電器。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News