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

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

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

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

sanyue7758 ? 來源:IC的世界 ? 2023-08-12 09:48 ? 次閱讀

1、set_output_delay的本質(zhì)

set_output_delay是對模塊output信號在模塊外部延遲的約束,本質(zhì)上EDA工具會根據(jù)約束調(diào)整內(nèi)部器件(UFF0)的類型,擺放位置以及組合邏輯(C1)以滿足約束要求,即EDA工具保證模塊DUA的UFF0的Tclk2q+Tc1延時能夠滿足約束要求。

約束指導(dǎo)原則:盡量照顧設(shè)計外部邏輯延時

max 正值盡量大

set_output_delay -max delay_vaule : delay_vaule 數(shù)值越大,對自身的約束越嚴(yán)格,對外部的要求越寬松,本質(zhì)上是對setup time的約束。

set_output_delay -min delay_vaule : delay_vaule 可以是負(fù)值,delay_vaule 數(shù)值越小,需要自身的延時(Tclk2q+Tc1)越大,本質(zhì)上是對hold time的約束。delay_vaule 為0 表示要求信號的自身的延時(Tclk2q+Tc1)至少要大于capture(UFF1)的hold time。

2、set_output_delay示意圖

圖7-23顯示了DUA(the design under analysis )的輸出路徑。觸發(fā)器UFF0在DUA內(nèi)部,并向DUA外部的觸發(fā)器UFF1提供數(shù)據(jù)。數(shù)據(jù)由UFF0的Q端輸出,經(jīng)過組合邏輯C1,通過輸出端口OUTB輸出經(jīng)過組合邏輯C2到達(dá)UFF1。觸發(fā)器UFF0和觸發(fā)器UFF1的采樣時鐘均為CLKQ。不考慮CLKQ時鐘偏移,該時鐘周期是兩個觸發(fā)器UFF0和UFF1之間采樣時間差。針對DUA輸出管腳OUTB設(shè)置的set_output_delay指的就是相對于時鐘CLKQ的Tc2延時加上UFF1的setup time延時。

set Tc2 3.9 
set Tsetup 1.1 
set_output_delay -clock CLKQ -max [expr Tc2 + Tsetup] [get_ports OUTB]

99d4a722-3859-11ee-9e74-dac502259ad0.png

3、set_output_delay簡單案例

如圖所示,組合邏輯Tc2的延時范圍為0ns~7ns。外部觸發(fā)器的Tsetup 為0.4ns,Thold為0.2ns,因此外部路徑的最大延時為7.4ns (= max Tc2 plus Tsetup = 7 + 0.4),外部路徑的最小延時為-0.2ns (= min Tc2 minus Thold = 0 - 0.2)。(PS:12nm~5nm工藝,hold time和setup time僅僅只有幾十~十幾ps。)

create_clock -period 20 -waveform {0 15} [get_ports CLKQ] 
set_output_delay -clock CLKQ -min -0.2 [get_ports OUTC] 
set_output_delay -clock CLKQ -max 7.4 [get_ports OUTC]

99f78328-3859-11ee-9e74-dac502259ad0.png





審核編輯:劉清

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

    關(guān)注

    4

    文章

    264

    瀏覽量

    31536
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    1990

    瀏覽量

    60869
  • 延時器
    +關(guān)注

    關(guān)注

    1

    文章

    36

    瀏覽量

    14960
  • Dua
    Dua
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    7119
  • CLK
    CLK
    +關(guān)注

    關(guān)注

    0

    文章

    125

    瀏覽量

    17039

原文標(biāo)題:淺談時序:set_ouput_delay

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    什么是output_delay?

    顧名思義,output_delay就是指輸出端口的數(shù)據(jù)相對于參數(shù)時鐘邊沿的延時。
    的頭像 發(fā)表于 09-26 10:07 ?3414次閱讀

    FPGA設(shè)計約束技巧之XDC約束之I/O篇 (上)

    從UCF到XDC的轉(zhuǎn)換過程中,最具挑戰(zhàn)的可以說便是本文將要討論的I/O約束了。 I/O 約束的語法 XDC 中可以用于 I/O 約束的命令包括 set_input_delay / set_output_delayset_max_de
    發(fā)表于 11-17 18:54 ?1.3w次閱讀
    FPGA設(shè)計約束技巧之XDC約束之I/O篇 (上)

    set_max_delay被覆蓋的解決辦法

    XDC描述的時序約束是有優(yōu)先級的,尤其是涉及到時序例外的約束,如set_clock_groups、set_false_path、set_max_de
    的頭像 發(fā)表于 09-07 10:53 ?9606次閱讀
    <b class='flag-5'>set_max_delay</b>被覆蓋的解決辦法

    Xilinx Vivado I/O延遲約束介紹

    的延遲值: 1,set_input_delay 2,set_output_delay 2 輸入延遲(Input Delayset_input_delay命令指定輸入端口上相對于設(shè)計
    的頭像 發(fā)表于 11-29 10:01 ?4948次閱讀

    時序約束中如何精確找到匹配的template?

    時序約束中的? set_input_delay/set_output_delay?約束一直是一個難點,無論是概念、約束值的計算,還是最終的路徑分析,每一次都要費一番腦子。Vivado為方便用戶創(chuàng)建
    的頭像 發(fā)表于 04-10 09:38 ?1898次閱讀
    <b class='flag-5'>時序</b>約束中如何精確找到匹配的template?

    STM32上進(jìn)行Delay延時的方法

    1、使用SYStick專門的延時。void delay_us(uint32_t us){ static uint32_t delay_flag = 0; delay_flag = 1; /*
    發(fā)表于 12-24 19:39 ?2次下載
    STM32上進(jìn)行<b class='flag-5'>Delay</b>延時的方法

    Vivado中如何做set_input_delay約束

    在STA中,要分析上游器件和FPGA之間的時序關(guān)系就得指定input delay。
    的頭像 發(fā)表于 02-19 19:32 ?3031次閱讀
    Vivado中如何做<b class='flag-5'>set_input_delay</b>約束

    Vivado中如何做set_input_delay約束

    在STA中,要分析上游器件和FPGA之間的時序關(guān)系就得指定input delay。
    的頭像 發(fā)表于 02-16 16:21 ?3238次閱讀
    Vivado中如何做<b class='flag-5'>set_input_delay</b>約束

    詳解FPGA的時序input delay約束

    本文章探討一下FPGA的時序input delay約束,本文章內(nèi)容,來源于配置的明德?lián)P時序約束專題課視頻。
    發(fā)表于 05-11 10:07 ?4008次閱讀
    詳解FPGA的<b class='flag-5'>時序</b>input <b class='flag-5'>delay</b>約束

    FPGA的虛擬時鐘用于什么地方?

    如果I/O路徑參考時鐘源于內(nèi)部的衍生時鐘,那set_input_delayset_output_delay約束中-clock參數(shù)后的時鐘不能是衍生時鐘,比如下圖的例子中,輸入10MHz時鐘經(jīng)過了MMCM后去采輸入的數(shù)據(jù)。
    的頭像 發(fā)表于 06-23 10:15 ?1470次閱讀

    FPGA的時序input delay約束

    本文章探討一下FPGA的時序input delay約束,本文章內(nèi)容,來源于明德?lián)P時序約束專題課視頻。
    的頭像 發(fā)表于 07-25 15:37 ?2825次閱讀
    FPGA的<b class='flag-5'>時序</b>input <b class='flag-5'>delay</b>約束

    創(chuàng)建輸入輸出接口時序約束的竅門

    時序約束中的 set_input_delay/set_output_delay 約束一直是一個難點,無論是概念、約束值的計算,還是最終的路徑分析,每一次都要費一番腦子。Vivado為方便用戶創(chuàng)建
    的頭像 發(fā)表于 08-02 09:54 ?2317次閱讀
    創(chuàng)建輸入輸出接口<b class='flag-5'>時序</b>約束的竅門

    介紹基本的sdc時序特例

    今天我們要介紹的基本sdc是 **時序特例** ,也就是我們常說的Path exception。針對一些路徑需要的一些特殊設(shè)定,常用的有set_false_path, set_multicycle_path,
    的頭像 發(fā)表于 07-03 15:34 ?701次閱讀
    介紹基本的sdc<b class='flag-5'>時序</b>特例

    怎樣查看input/output delay是否生效

    通過get_port命令查看接口。 get_ports * 以LVDS的輸入輸出為例 怎樣去查看outputdelay ? set_output_delay -clock
    的頭像 發(fā)表于 02-27 08:38 ?451次閱讀
    怎樣查看input/<b class='flag-5'>output</b> <b class='flag-5'>delay</b>是否生效

    詳細(xì)講解SDC語法中的set_input_delayset_output_delay

    在數(shù)字集成電路設(shè)計中,Synopsys Design Constraints(SDC)是一種重要的約束語言,用于指導(dǎo)綜合、布局布線等后續(xù)流程。
    的頭像 發(fā)表于 05-06 14:15 ?1819次閱讀