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

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

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

3天內不再提示

探討下clock的基本定義(下)

冬至子 ? 來源:碼農的假期 ? 作者:Clark Zhao ? 2023-07-06 15:34 ? 次閱讀

Clock Latency簡介

要探討今天的主題,首先需要跟大家一起學習下clock latency這個基本概念。Clock latency通俗意義上是指clock定義點到clock sink point(時序器件的clock Pin)之間的這段延遲時間。其分為兩類,其中一類為,source latency,另外一類是network latency。

**source latency ** :也稱作insertion delay,通常是指clock source端到clock定義點之間的這段時間延遲;通常有兩種情況,其一:clock 直接來自于芯片外部,如crystal clock,此時,source latency指的是芯片外部crystal出口到芯片PAD(假如clock定義在此處)之間的時間延遲;其二:clock 來自于芯片內部的PLL,此時,source latency指的是芯片內部PLL輸出點到芯片內部某個第一個clock定義點之間的這段時間。

network latency :其指的是clock定義點到clock sink point之間的這段時間。

這兩種latency是每一個clock的固有屬性,當CTS完成之后,每一個clock如果是在propagation狀態下,其source latency和network latency都是確定的。當然,在前期(PR之前或者CTS之前),通常情況下clock都處于ideal狀態,為了能夠模擬真實的情況,我們可以通過指令set_clock_latency去指定每個clock的source latency或者network latency,具體此指令的用法,我們這里不詳細解釋了,有興趣,有需要的可以自己去查閱相關資料

圖片 圖1 clock latency 示例

create_clock和create_generated_clock的不同點簡介

通常定義clock的方式有兩種,create_clock和create_generated_clock。再上次有具體介紹過,這兩個指令的使用。那么他們之間有哪些使用上的區別以及各自都有什么特點呢?大體總結如下:

  • create_generated_clock能夠繼承其master clock phase,換句話說:generate clock的邊沿(rise or fall)是通過繼承master clock得到的。
  • create_generated_clock能夠繼承其master clock的source latency。
  • 通常情況下,create_clock的source latency為0.(在不特殊指定的情況下)
  • 每當設置一個create_clock,通常CTS時會構建一個新的clock domain。

Generate clock定義出錯引入的clock edge識別出錯

在上次,我們通過多個例子,分類說明了,如果generate clock定義不合理,會誤導工具做出錯誤的timing分析的各種情形。但是具體工具timing分析會是什么樣的呢?

圖片

圖2 錯誤的定義generate clock示例

如圖2所示,如果直接在u_ckdiv2/Q點上,使用-divide_by 2 –master_clock clk的方式定義generate clock,那么工具認為的Q點的波形會是圖2中右圖所示的情況。這其實是與實際design的情況不符合的(假如DFF復位狀態為0)。這時工具會認為的timing path check情況會如圖3所示。從u_ff1/CK到u_ff2/D,整個timing path周期只有半個clk cycle。

圖片

圖3 錯誤的generate clock定義

如果我們能夠正確的在Q-pin上定義generate clock,那么工具認為的Q-pin的波形會是圖4中所示的情形。這時同樣的timing path,從u_ff1/CK到u_ff2/D,工具做出的timing 分析會是圖4中的情形。

圖片

圖4 正確的generate clock定義

當然,通過上面這個例子,雖然clock定義不合理,但是錯誤的clock的定義,單從edge的傳播來看,其實是加緊了對design的約束,可能會浪費一些PPA,但是不會讓design最終因為timing出錯。

Generate clock定義出錯引入的latency計算出錯

其實,除了上面分析提到的會影響工具正確的判斷定義的generate clock的edge之外,還會可能影響到工具錯誤的計算clock的latency。

如圖5中的情形,如果采用圖5中(左,中,右)所示的定義方式,由于在mux的Z-pin上已經定義了generate clock gclk1,而在定義generate clock clk_div時,如果其master clock還指向了gclk1前面的一個clock-clk1,那么此時clock其實定義是不合理的。因為從clk_div往前追,看到的第一個clock是gclk1,而clk1被其打斷了,其clock屬性不能再正確的往后傳播。

圖片

圖5 錯誤的clock定義

也即上面提到的generate clock可以繼承其master clock的source latency這個特性就不能正確的保持了,從而導致工具認為此處定義的generate clock的source latency將從0開始計算。如果此處的generate clock替換為create clock會是怎樣的呢?大家可以思考一下。而如果想正確的繼承master clock的source latency,那么此處,可以按照圖5中右所示的方式定義clock。

Clock Group定義簡介

上面提到create clock定義時,會伴隨新的clock domain的創建,此時所提到的clock domain即指clock group。當然,clock group并不僅存在于create clock定義時,在generate clock定義時,也可以指定clock group。其主要目的是,人為的告訴工具,我們所定義的所有的clock之間的關系,從而減少工具自動化分析的情形,降低runtime,得到更好的PPA的結果。但是具體clock group怎么劃分,是需要按照design架構決定的。我們在此處,先不會深究為什么要區分不同的clock group以及clock group劃分的依據(后面其它系列文章中再做分析),而是跟大家詳細的解釋下定義clock group的方法以及注意點。

如圖6所示,定義clock group我們SDC中右一條指令其為set_clock_group,詳細的解釋在圖6中都已經給出,但是個人覺得還是有必要針對-logically_exclusive/-physically_exclusive/-asynchronous這三個option具體的分情況說明一下。

圖片

圖6 clock group定義

-logically_exclusive/-physically_exclusive/-asynchronous簡介

Logically_exclusive : 其含義是指兩組clock邏輯上不會同時存在。如圖7中第2框圖所示,雖然,clk1a/clk1b/clk2/clk3/clk4同時存在于整個design中,但是由于clock mux的select信號是相同的,所以從圖中可以看出,S=1,此時前后兩個mux分別選通clk2和clk4;如果S=0,則此時兩個MUX分別選通clk1a/clk1b和clk3,也就是clk1a/clk1b/clk3和clk2/clk4是邏輯上不會同時存在的。所以他們之間就是logically_exclusive。

Physically_exclusive : 其含義是指兩組clock之間物理上不會同時存在。如圖7中第1框圖所示。第一個clock mux中的clk1a和clk1b,這兩個clock是來自于相同的path,同一時間,這兩個clock物理上只有一個存在,所以他們便是physically_exlusive。

Asynchronous : 其含義是指兩組clock之間功能上異步的。如圖7中第3框圖所示,clk1和clk2,在功能設計時便是采用的異步方式設計的,即clk2跟clk1之間完全不需要關心相位或者frequency之間的關系,功能上也是正確的,這時候這兩個clock便是aysnchronous。當然aysnchronous的前提條件是design功能上要保證正確性。

圖片

圖7 clock group定義示例

圖7中,如果換成第4框圖中的定義方式,跟第3框圖中的定義方式會有什么異同點?這個大家可以自己思考一下…

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

    關注

    1

    文章

    98

    瀏覽量

    30680
  • PIN管
    +關注

    關注

    0

    文章

    36

    瀏覽量

    6324
  • PLL電路
    +關注

    關注

    0

    文章

    92

    瀏覽量

    6403
  • CTS
    CTS
    +關注

    關注

    0

    文章

    35

    瀏覽量

    14103
收藏 人收藏

    評論

    相關推薦

    揭開xenomai雙核系統clock機制的面紗

    clock可以說是操作系統正常運行的發動機,整個操作系統的活動都受到它的激勵。系統利用時鐘中斷維持系統時間、促使任務調度,以保證所有進程共享CPU資源;可以說,“時鐘中斷”是整個操作系統的脈搏。
    的頭像 發表于 11-24 09:10 ?2188次閱讀

    探討,CRC校驗的優勢

    本帖最后由 ntmusic 于 2014-6-11 11:31 編輯 探討,使用計算的2字節的CRC校驗碼和使用固定的2字節數據作為校驗在保證數據傳輸正確方面有什么不同?
    發表于 06-11 11:21

    Stm32_Clock_Init函數如何定義

    Stm32_Clock_Init,這個函數我看的一些資料上似乎都是突兀的就提出來了,沒有給出是如何定義的,而且我看了看,每本資料添加的函數庫都不一樣,我的是和資料上的就對不上,所以似乎有的函數我用不了,我想知道剛剛說的那個函數到底是如何給出的。。。。
    發表于 03-16 00:37

    介紹一STM32L151的clock tree

    首先來看一STM32L151的clock tree, 可以看到TIM2-7是在APB1上的, APB1的最大時鐘配置是32MHz, 接下來我的及進行一我的項目中的始終配置說明,后續也會附
    發表于 07-16 10:03

    基于Stm32_Clock_Init()函數的流水燈設計

    原子的第一個例程流水燈中用了 Stm32_Clock_Init()函數,現在來解析一:引用時Stm32_Clock_Init(9);定義(此處省略了跑OS時的代碼)看程序前,請確保理
    發表于 08-09 08:29

    請教一各位標準單元庫中clock buffer的設計很復雜嗎

    最近看了幾篇關于時鐘buffer的英文文章,看到很多做的clock buffer都很復雜,結構里面有charge pump、控制級等、還有PWCL等控制環。在這兒請教一各位,標準單元庫中clock
    發表于 06-14 11:44

    S51載線的制作單片機實用技術探討

    S51載線的制作——單片機實用技術探討,有需要的都可以看看。
    發表于 07-20 15:48 ?22次下載

    浪潮與中橋探討:新數據時代,存儲的挑戰與創新

    浪潮與中橋國際調研咨詢有限公司(以下簡稱中橋)聯合推出了《新一代存儲,助推產業智能升級》白皮書,探討新數據時代,存儲的挑戰與創新。
    的頭像 發表于 08-15 15:19 ?3217次閱讀

    企業云的軟件定義存儲

    軟件定義是2012年VMware提出軟件定義數據中心的概念,其中SDS作為軟件定義數據中心一個非常核心的技術之一,軟件定義計算、軟件定義網絡
    發表于 05-30 10:50 ?1075次閱讀

    阿里巴巴探討新基建數字經濟分布式存儲新機遇

    本次大會匯集眾多領導、嘉賓,在此共同探討新基建數字經濟以及分布式存儲技術的發展新機遇。
    的頭像 發表于 08-17 14:21 ?2977次閱讀

    軟件定義汽車趨勢的供應鏈變革

    面臨附加值提供、定價策略、流程創新等調整。 軟件定義汽車成為階段車企與供應商轉型的核心主題:企業需要從設計開發到組織運作的全面轉型,來應對集成復雜度的提升和技術創新。 以下為報告節選: 原文標題:【行業資訊】軟件定義汽車趨勢
    的頭像 發表于 11-03 15:12 ?2085次閱讀

    Arduino IDE環境NodeMCU引腳定義

    Arduino IDE環境NodeMCU引腳定義在開發過程中,我們必須了解各GPIO在上層是怎么定義的,才能心中有數,合理調用個IO口#define PIN_WIRE_SDA (4)#define
    發表于 10-26 12:21 ?13次下載
    Arduino IDE環境<b class='flag-5'>下</b>NodeMCU引腳<b class='flag-5'>定義</b>

    探討軟件定義未來醫療的新藍圖

    東軟解決方案論壇2021“軟件定義未來醫療”分論壇正式上線。東軟集團副總裁兼醫療解決方案事業本部總經理姚勇、東軟漢楓董事長兼CEO盧朝霞與醫療領域的行業專家、客戶一起,共同探討“十四五”時期,建設數字中國戰略背景,軟件
    的頭像 發表于 01-21 15:41 ?4162次閱讀

    DC/DC評估篇 損耗探討-定義和發熱

    探討損耗之前,我們先來看一損耗相關的定義以及發熱和結溫。損耗與效率:為了更好地理解,我們來看一效率的定義、以及效率與損耗之間的關系。效
    的頭像 發表于 03-01 11:49 ?2199次閱讀
    DC/DC評估篇 損耗<b class='flag-5'>探討</b>-<b class='flag-5'>定義</b>和發熱

    探討clock的基本定義(上)

    Clock分為兩大類,一類是root clock,其定義指令是create_clock;另外一類是generated clock,其
    的頭像 發表于 07-06 15:31 ?2339次閱讀
    <b class='flag-5'>探討</b><b class='flag-5'>下</b><b class='flag-5'>clock</b>的基本<b class='flag-5'>定義</b>(上)
    主站蜘蛛池模板: 欧美人妇无码精品久久| 久久免费国产| 久久99精品国产99久久6男男| 九九热综合| 免费国产成人手机在线观看| 久久青草免费线观最新| 欧美亚洲日本日韩在线| 无码精品AV久久久奶水| 一级做a爰片久久毛片苍井优| 3d在线看小舞被躁视频| 国产高清国内精品福利色噜噜| 国产乱对白精彩在线播放 | 少女free大陆| 亚洲欧美综合中文| 成人a视频片在线观看免费| YELLOW高清视频免费观看| 5g天天影院天天看天天爽| 亚洲精品乱码久久久久久中文字幕| 亚洲 欧美 中文 日韩 视频| 无码人妻精品国产婷婷| 我与旗袍老师疯狂床震| 91精品国产高清久久久久久| TIMI1TV天美传媒在线观看| 草民电影网午夜伦理电影网| 国产精品女上位在线观看| 男女啪啪久久精品亚洲A| 亚州笫一色惰网站| GAY空少被体育生开菊| 九九热这里有精品| 熟女人妻水多爽中文字幕| 18和谐综合色区| 黄色毛片a| 午夜亚洲动漫精品AV网站| 99久久久无码国产精品不卡按摩 | 欧美亚洲韩日午夜| 2020最新国产自产精品| 精品国产在线观看福利| 亚洲视频中文字幕在线观看| 黑人操白逼| 伊人香蕉在线播放视频免费| 久久re热线视频精品99|