0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

為什么Latency沒有滿足target insertion delay的要求

jf_tpHP8OJR ? 來源:集成電路設(shè)計及EDA教程 ? 2022-12-30 14:36 ? 次閱讀

背景介紹

背景:為什么Latency沒有滿足target insertion delay的要求

這些都是對Clock latency/insertion delay有要求的情況。同時上面的推文里面也有分享一些Tree長度沒有滿足要求的情況,這里再分享另一個經(jīng)常會遇到的原因 - Useful Skew。

在實際做項目過程中,有發(fā)現(xiàn)一些Run,工具做出來的Tree的latency和設(shè)置的target insertion delay以及target skew之間匹配的非常好,但是有些Run卻不行,Latency變長了,超過了要求,Debug發(fā)現(xiàn)工具在上面做了Useful Skew動到了它們的Tree(比如你可能在上面發(fā)現(xiàn)一些USKC、ESOC等cell)。

這是因為,如果在Flow里面打開了Useful skew,那么工具在ccopt和optDesign以及signoffOptDesign的時候是可以通過調(diào)整所有Sink的Tree來做Useful Skew來修Timing的,因此你可能發(fā)現(xiàn)它們的Latency和預(yù)期設(shè)置的target insertion delay以及target skew之間有差異。

03

解決思路

知道了上面的原因,那么問題的解決思路自然是關(guān)閉Useful Skew了,可是直接全部關(guān)掉Useful Skew的話顯然會惡化Timing,這是非常不明智的。解決方案有幾種:

1、針對不同階段、工具的不同引擎來控制Useful Skew的使用與否;這種方法不能從根本上解決問題,但是可以根據(jù)工具是在什么時候動Tree做了Useful Skew來有針對性的關(guān)閉Useful Skew的使用。

2、針對某些Sink來關(guān)閉Useful Skew。這個就非常實用了,對于一些對Latency有要求或者不想讓工具通過Useful Skew來修Timing(后邊會講解)的Path,我們可以針對它們來關(guān)閉Useful Skew,這種方法也不會影響其他Sink上Useful Skew的使用,因此對Timing沒有什么大的影響。

可是這種方法也有一個缺陷,就是目前的Innovus,signoffOptDesign并不支持指定Sink來關(guān)閉Useful Skew。ccopt和optDesign是支持的(后邊會講解具體方法)。期待以后signoffOptDesign也可以支持。

04

想針對Flop關(guān)閉Useful skew的幾種情況

一般情況下,我們對于Tree的latency可能沒有特別的要求,因此工具調(diào)整Sink的Tree去修Timing也是允許的。可是某些情況下,我們對于某些Sink的latency是有要求的,不允許工具隨便通過Useful Skew來改變Tree的latency。

還有一些情況是,某些Sink的Timing在Partition/Block level看是不準(zhǔn)的(比如IO flop,我們一般都會有過約束的情況),如果此時還讓工具通過Useful Skew來修Timing的話,那么是很不合時的。比如Block B的in2reg的Path,上一級是Block A的reg2out path,其實它們之間的Timing不是很難meet,因為中間的組合邏輯比較短。

可是我們一般會在IO上加過約束努力讓工具去把組合邏輯做短,這使得Block B里面的in2reg可能也比較差。那么此時工具很可能會把FF_2的Tree通過Useful Skew做長,這就會帶來一個很嚴重的問題,它會影響B(tài)lock B內(nèi)部的Timing,這是不期望的。比如下面的情況,Block B的FF_2之后的Path timing很難Meet,因為組合邏輯很長。

cc6c0ecc-77c6-11ed-8abf-dac502259ad0.png





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • DEBUG命令
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    5193

原文標(biāo)題:Clock insertion delay增大了很多 超過了要求怎么辦?如何指定reg關(guān)閉useful skew

文章出處:【微信號:集成電路設(shè)計及EDA教程,微信公眾號:集成電路設(shè)計及EDA教程】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    在計算指令周期時(Delay_Slot),其是否包括了功能單元的延時時間(Function Uint Latency)?

    例如,對于FMPYDP指令,在手冊上給出的是: Instruction Type 4-cycle Delay Slots 3 Functional Unit Latency 1 這樣理解:功能單元
    發(fā)表于 06-21 15:25

    Latency TestUAC設(shè)備的相關(guān)資料分享

    https://manual.audacityteam.org/man/latency_test.html - Latency TestUAC設(shè)備2021/09/12輸出!!
    發(fā)表于 12-21 06:10

    ccopt主要有幾個步驟?每個步驟都做了什么事

    ccopt階段介紹cluster :ccopt里面特有的一個概念,聚攏。這里主要是兩個步驟,修復(fù)drv和insertion delayinsertion delay也就是
    發(fā)表于 08-19 16:27

    How Delay Lines Work

    new-generation all-silicon delay lines. Both EconOscillators and delay lines use a compensated voltage-controlled del
    發(fā)表于 04-20 15:11 ?2270次閱讀
    How <b class='flag-5'>Delay</b> Lines Work

    ARM_Target

    ARM_Target
    發(fā)表于 10-25 14:04 ?2次下載
    ARM_<b class='flag-5'>Target</b>

    芯片延遲Delay測試的學(xué)習(xí)課件PDF文件免費下載

    芯片延遲Delay測試的學(xué)習(xí)課件PDF文件免費下載包括了:? 為什么需要Delay測試 ? Delay產(chǎn)生原因和缺陷機制 ? Delay故障建模 ?
    發(fā)表于 12-01 08:00 ?4次下載
    芯片延遲<b class='flag-5'>Delay</b>測試的學(xué)習(xí)課件PDF文件免費下載

    stm32 delay文件總結(jié)

    stm32 delay文件總結(jié)delay.h#ifndef __DELAY_H#define __DELAY_H #include "sys.h" void
    發(fā)表于 12-24 19:36 ?6次下載
    stm32 <b class='flag-5'>delay</b>文件總結(jié)

    密封連接器滿足復(fù)雜的設(shè)計要求

    密封連接器滿足復(fù)雜的設(shè)計要求
    的頭像 發(fā)表于 01-04 11:17 ?529次閱讀
    密封連接器<b class='flag-5'>滿足</b>復(fù)雜的設(shè)計<b class='flag-5'>要求</b>

    Low Latency High Bandwidth Memory 數(shù)據(jù)表(Digest Edition)

    Low Latency High Bandwidth Memory 數(shù)據(jù)表 (Digest Edition)
    發(fā)表于 03-15 20:26 ?0次下載
    Low <b class='flag-5'>Latency</b> High Bandwidth Memory 數(shù)據(jù)表(Digest Edition)

    innovus的incredible delay是什么?

    Incr Delay是由于SI信號完整性(比如cross talk、電磁等)造成的增量延時,也稱為噪聲延遲(incr delay)。
    的頭像 發(fā)表于 04-03 10:54 ?2495次閱讀

    Low Latency High Bandwidth Memory 數(shù)據(jù)表(Digest Edition)

    Low Latency High Bandwidth Memory 數(shù)據(jù)表 (Digest Edition)
    發(fā)表于 07-06 19:37 ?0次下載
    Low <b class='flag-5'>Latency</b> High Bandwidth Memory 數(shù)據(jù)表(Digest Edition)

    set_output_delay的本質(zhì)是什么?淺談set_ouput_delay時序

    set_output_delay是對模塊output信號在模塊外部延遲的約束,本質(zhì)上EDA工具會根據(jù)約束調(diào)整內(nèi)部器件(UFF0)的類型,擺放位置以及組合邏輯(C1)以滿足約束要求,即EDA工具保證模塊DUA的UFF0的Tclk2
    的頭像 發(fā)表于 08-12 09:48 ?1498次閱讀
    set_output_<b class='flag-5'>delay</b>的本質(zhì)是什么?淺談set_ouput_<b class='flag-5'>delay</b>時序

    詳解POCV/SOCV時序報告

    時鐘傳播延遲Latency,通常也被稱為插入延遲(insertion delay)。它可以分為兩個部分,時鐘源插入延遲(source latency)和時鐘網(wǎng)絡(luò)延遲(Network
    的頭像 發(fā)表于 02-27 11:20 ?897次閱讀
    詳解POCV/SOCV時序報告

    TARGET3001!用法篇-如何使用TARGET豐富的元器件庫

    很多朋友都比較關(guān)心元器件庫的問題,那今天我就主要講一下TARGET3001!的豐富元器件庫,以及我們該如何使用TARGET的自帶元器件庫和對接的3個網(wǎng)絡(luò)庫。
    的頭像 發(fā)表于 03-13 15:45 ?448次閱讀
    <b class='flag-5'>TARGET</b>3001!用法篇-如何使用<b class='flag-5'>TARGET</b>豐富的元器件庫

    滿足GMSL靜電防護要求的方案

    滿足GMSL靜電防護要求的方案
    的頭像 發(fā)表于 07-09 08:02 ?222次閱讀
    <b class='flag-5'>滿足</b>GMSL靜電防護<b class='flag-5'>要求</b>的方案