RM新时代网站-首页

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

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

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

如何檢查時(shí)序窗口的穩(wěn)定性

sally100 ? 來(lái)源:數(shù)字ICer ? 作者:數(shù)字ICer ? 2022-10-19 09:47 ? 次閱讀

timing check

描述設(shè)計(jì)時(shí)序時(shí),所有的時(shí)序檢查都有一個(gè)參考事件(reference event)和一個(gè)數(shù)據(jù)事件(data event),數(shù)據(jù)事件常常是數(shù)據(jù)信號(hào),而參考事件常常是時(shí)鐘信號(hào),它們通過(guò)一個(gè)布爾表達(dá)式相聯(lián)接,還包括一個(gè)可選的notifier寄存器選項(xiàng),這個(gè)寄存器用來(lái)打印錯(cuò)誤信息或者傳播X態(tài)。

檢查時(shí)序窗口的穩(wěn)定性,包括:setup、hold、setuphold、recovery、removal和recrem。

$setuphold

$setuphold(reference_event, data_event, setup_limit,hold_limit, notifier, [timestamp_cond, timecheck_cond,delayed_reference_signal, delayed_data_signal]);

其中setup limit 和hold limit 的數(shù)值是從SDF 文件取出反標(biāo)到網(wǎng)表上的。

$setup (data_event, reference_event, limit, notifier);

當(dāng)reference_event time - limit < data_event time < reference_event time時(shí),就會(huì)報(bào)告setup time violations。

$hold (reference_event, data_event, limit, notifier);

當(dāng)reference_event time < data_event time < reference_event time + limit時(shí),就會(huì)報(bào)告hold time violations。

$setuphold (reference_event, data_event, setup_limit, hold_limit, notifier);

setup和$hold 兩者的聯(lián)合。

例如:

setup (negedge d, posedge clk, 2, notifier); 和 $hold (posedge clk, negedge d, 1, notifier);

setup和hold都為正值:

如下面例子 setup limit 和 hold limit 都為正值:

$setuphold (posedge clock, data, 10, 11, notifyreg);

其中,data要在時(shí)鐘上升沿10ns保持穩(wěn)定(假設(shè)時(shí)間單位是ns),在clk上升沿之后11ns內(nèi)保持穩(wěn)定;如果在時(shí)鐘clk上升沿到來(lái)之前,data小于10ns或時(shí)鐘clk上升沿到來(lái)之之后小于11ns,則為時(shí)序違例;

d3d4b4ce-4ef0-11ed-a3b6-dac502259ad0.pngPositive Setup and Hold Limits

上圖中,可見,

對(duì)于setup檢查Data Event 要早于 Clock Event;

對(duì)于hold 檢查Data Event 要晚于 Clock Event;

符合這種情況的時(shí)序,setup limit 和 hold limit 用正值來(lái)表示。

setup為負(fù)值,hold都為正值:

在討論這個(gè)問(wèn)題之前需要弄明白,我們現(xiàn)在所說(shuō)的setup hold timing check是針對(duì)std cell的,在實(shí)際的std cell中不僅僅有DFF還有一些buffer之類的cell。

d417c41c-4ef0-11ed-a3b6-dac502259ad0.png

一個(gè)典型的std cell的簡(jiǎn)化結(jié)構(gòu)如上圖所示,D1和D2表示兩個(gè)delay cell。而實(shí)際上我們要保證的是DFF的setup 和hold timing check是正值,由于D1和D2兩個(gè)cell的delay不同就導(dǎo)致了在對(duì)std cell做timing check時(shí)出現(xiàn)了負(fù)值的timing check。再次強(qiáng)調(diào),這里的負(fù)值的timing check是針對(duì)std cell的并不是針對(duì)DFF的。

d42bef32-4ef0-11ed-a3b6-dac502259ad0.png

當(dāng)標(biāo)準(zhǔn)單元內(nèi)部clk上有較長(zhǎng)的延遲時(shí),對(duì)于setup檢查Data Event就可以晚一些來(lái),如果晚于Clock Event(時(shí)刻為 0),用負(fù)值來(lái)表示。

$setuphold (posedge clock, data, -10, 31, notifyreg);

d461c710-4ef0-11ed-a3b6-dac502259ad0.pngNegative Setup Limit

setup為正值,hold都為負(fù)值:

d47634a2-4ef0-11ed-a3b6-dac502259ad0.png

當(dāng)標(biāo)準(zhǔn)單元內(nèi)部data上有較長(zhǎng)的延遲時(shí),對(duì)于hold檢查Data Event就需要早一些來(lái),如果早于Clock Event(時(shí)刻為 0),用負(fù)值來(lái)表示。$setuphold (posedge clock, data, 31, -10, notifyreg);

d493825a-4ef0-11ed-a3b6-dac502259ad0.pngNegative Hold Limit

需要注意的是不論setup 或者h(yuǎn)old出現(xiàn)負(fù)值,但setup和hold的和必須是正值。這是因?yàn)閟etup必然要發(fā)生在hold的前面。

$recrem

復(fù)位信號(hào)的恢復(fù)時(shí)間檢查:

$recovery (reference_event, data_event, limit, notifier);

當(dāng)data_event time - limit < reference_event time < data_event time時(shí),就會(huì)報(bào)告recovery time violations。

復(fù)位信號(hào)的移除時(shí)間檢查

$removal (reference_event, data_event, limit, notifier);

當(dāng)data_event time < reference_event time < data_event time + limit時(shí),就會(huì)報(bào)告removal time violations。

復(fù)位信號(hào)的恢復(fù)/移除時(shí)間檢查:

$recrem (reference_event, data_event, recovery_limit, removal_limit, notifier);

$recrem是$recovery和$removal兩者的聯(lián)合。

recovery (posedge clr, posedge clk, 2, notifier); 和 $removal (posedge clr, posedge clk, 3, notifier);

數(shù)據(jù)事件常常是時(shí)鐘信號(hào),而參考事件常常是控制信號(hào),比如清除信號(hào)或者置位信號(hào),如下圖:

d4ac858e-4ef0-11ed-a3b6-dac502259ad0.png

啟用負(fù)時(shí)序檢查

當(dāng)時(shí)序存在負(fù)值時(shí),必須要用 recrem 來(lái)表示;而不能用單獨(dú)的 hold,removal;

同時(shí)使用負(fù)時(shí)序檢查,必須在編譯設(shè)計(jì)時(shí)包含+neg_tchk和-negdelay選項(xiàng)。如果省略此選項(xiàng),VCS將將所有負(fù)限制更改為0。

如果在+neg_tchk選項(xiàng)中包含 +no_notifier選項(xiàng),則表示notifer寄存器不進(jìn)行翻轉(zhuǎn),X態(tài)不會(huì)傳播,但是vcs還是會(huì)報(bào)告timing violation;

相反,如果在+neg_tchk選項(xiàng)中包含+no_tchk_msg選項(xiàng),則vcs不報(bào)告timing violation。但VCS仍然會(huì)創(chuàng)建時(shí)鐘和數(shù)據(jù)信號(hào)的延遲,并在存在時(shí)序違例時(shí)翻轉(zhuǎn)notifer寄存器。

+notimingcheck 表示在vcs編譯過(guò)程中不進(jìn)行 setuphold,recrem 等函數(shù)的編譯,vcs產(chǎn)生delayed_reference_signal 和delayed_reference_data但是不會(huì)去標(biāo)記這些delay的值,從而不進(jìn)行任何的timing檢查。

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

    關(guān)注

    8

    文章

    7002

    瀏覽量

    88940
  • 時(shí)序
    +關(guān)注

    關(guān)注

    5

    文章

    387

    瀏覽量

    37318
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    環(huán)路增益的穩(wěn)定性

    由基本反饋電路的電路組成結(jié)構(gòu),得出閉環(huán)傳遞函數(shù)為,電路的開環(huán)增益是各個(gè)晶體管參數(shù)和電容參數(shù)的函數(shù),所以也是頻率的函數(shù),于是閉環(huán)增益就可以寫作,反饋電路的穩(wěn)定性和1環(huán)路增益A(w)有關(guān),當(dāng)環(huán)路增益的幅
    發(fā)表于 06-18 15:00

    使用SPICE工具檢查運(yùn)放穩(wěn)定性

    作者: TI專家Bruce Trump翻譯: TI信號(hào)鏈工程師 Rickey Xiong (熊堯) SPICE是一種檢查電路潛在穩(wěn)定性問(wèn)題的有用工具 。本文將介紹一種使用SPICE工具來(lái)檢查電路
    發(fā)表于 09-21 15:45

    基于利用Pspice模型的放大器環(huán)路穩(wěn)定性設(shè)計(jì)

    雖然在較低頻率下可以較輕松地檢查一個(gè)簡(jiǎn)單放大器的穩(wěn)定性,但評(píng)估一個(gè)較為復(fù)雜的電路是否穩(wěn)定,難度可能會(huì)大得多。本文使用常見的Pspice宏模型結(jié)合一些簡(jiǎn)單的電路設(shè)計(jì)技巧來(lái)提高設(shè)計(jì)工程師的設(shè)計(jì)能力,以確保其設(shè)計(jì)的實(shí)用性與
    發(fā)表于 06-26 07:22

    如何提高lwip的穩(wěn)定性

    如題、如何提高lwip的穩(wěn)定性,目前用的是f107+lwip1.4.1目前系統(tǒng)運(yùn)行一段時(shí)間后lwip就掛掉啦(時(shí)間很不固定)問(wèn)題;應(yīng)主要從那幾個(gè)方面來(lái)提高穩(wěn)定性,懇請(qǐng)大家指點(diǎn)一二,小弟在此不勝感激
    發(fā)表于 07-09 23:36

    怎么使用SPICE工具來(lái)檢查電路潛在穩(wěn)定性?

    SPICE是一種檢查電路潛在穩(wěn)定性問(wèn)題的有用工具 。本文將介紹一種使用SPICE工具來(lái)檢查電路潛在穩(wěn)定性的簡(jiǎn)單方法。
    發(fā)表于 04-06 08:10

    淺析環(huán)路穩(wěn)定性原理與DCDC Buck環(huán)路穩(wěn)定性

    環(huán)路穩(wěn)定性原理與DCDC Buck環(huán)路穩(wěn)定性這個(gè)文章是之前寫的,但是自己對(duì)于這部分理解又忘記了,所以在此發(fā)布下,大家都可以看看有哪些問(wèn)題存在。
    發(fā)表于 11-17 08:26

    電力系統(tǒng)中的電壓穩(wěn)定性介紹

      大干擾電壓穩(wěn)定性 –它涉及系統(tǒng)穩(wěn)定性,以在系統(tǒng)故障、負(fù)載損失或發(fā)電損失等大干擾后控制電壓。為了確定這種形式的穩(wěn)定性,需要檢查系統(tǒng)的動(dòng)態(tài)性能,使其在足以捕獲負(fù)載下分接變壓器、發(fā)電機(jī)磁
    發(fā)表于 04-21 16:14

    電感的穩(wěn)定性

    電感的穩(wěn)定性 穩(wěn)定性是表示電感線圈參數(shù)隨環(huán)境條件變化而改變的程度。通常用電感溫度系數(shù)αL 來(lái)評(píng)定線圈的穩(wěn)定程度,它表示電感量相對(duì)淚度的穩(wěn)定
    發(fā)表于 08-22 14:33 ?1562次閱讀

    系統(tǒng)的穩(wěn)定性

    現(xiàn)代控制理論-5.系統(tǒng)的穩(wěn)定性
    發(fā)表于 12-13 22:20 ?0次下載

    如何使用SPICE最簡(jiǎn)單的方法檢查電路潛在穩(wěn)定性

    SPICE是一種檢查電路潛在穩(wěn)定性問(wèn)題的有用工具 。本文將介紹一種使用SPICE工具來(lái)檢查電路潛在穩(wěn)定性的簡(jiǎn)單方法。
    的頭像 發(fā)表于 10-04 15:10 ?4178次閱讀
    如何使用SPICE最簡(jiǎn)單的方法<b class='flag-5'>檢查</b>電路潛在<b class='flag-5'>穩(wěn)定性</b>

    什么是熱電偶穩(wěn)定性?如何檢測(cè)熱電偶穩(wěn)定性

    在規(guī)定的條件下,熱電特性變化大即表明穩(wěn)定性差,變化小則表明穩(wěn)定性良好。熱電偶的穩(wěn)定性好壞會(huì)直接影響到熱電偶測(cè)量的準(zhǔn)確性,因此,穩(wěn)定性是衡量熱電偶性能的一個(gè)重要指標(biāo)。
    發(fā)表于 12-31 09:19 ?2633次閱讀
    什么是熱電偶<b class='flag-5'>穩(wěn)定性</b>?如何檢測(cè)熱電偶<b class='flag-5'>穩(wěn)定性</b>?

    啟用負(fù)時(shí)序檢查的步驟

    檢查時(shí)序窗口穩(wěn)定性,包括:setup、hold、setuphold、recovery、removal和recrem。
    的頭像 發(fā)表于 10-19 09:46 ?6666次閱讀

    怎么分析電路的穩(wěn)定性?

    怎么分析電路的穩(wěn)定性?? 電路的穩(wěn)定性是指電路在不同條件下保持穩(wěn)定的能力。穩(wěn)定性是電路設(shè)計(jì)中十分重要的一個(gè)方面,因?yàn)?b class='flag-5'>穩(wěn)定的電路能夠提供可靠和
    的頭像 發(fā)表于 09-17 16:44 ?1932次閱讀

    什么是熱電偶穩(wěn)定性?影響熱電偶穩(wěn)定性的主要因素

    什么是熱電偶穩(wěn)定性?影響熱電偶穩(wěn)定性的主要因素 熱電偶熱穩(wěn)定性怎樣檢測(cè)? 熱電偶穩(wěn)定性是指熱電偶在一定時(shí)間范圍內(nèi)的溫度測(cè)量值的穩(wěn)定程度。在實(shí)
    的頭像 發(fā)表于 03-08 15:32 ?1605次閱讀

    簡(jiǎn)化穩(wěn)定性檢查

    電子發(fā)燒友網(wǎng)站提供《簡(jiǎn)化穩(wěn)定性檢查.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 11:23 ?0次下載
    簡(jiǎn)化<b class='flag-5'>穩(wěn)定性</b><b class='flag-5'>檢查</b>
    RM新时代网站-首页