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

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

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

DC中有一個比較常用的方法:set_cost_priority -delay

數(shù)字前端ic芯片設(shè)計 ? 來源:未知 ? 作者:李倩 ? 2018-03-23 16:07 ? 次閱讀

在綜合的時候,可能大家最關(guān)心的是如何設(shè)置提高timing QoR。在DC中有一個比較常用的方法,使用set_cost_priority -delay。

DC綜合過程中默認(rèn)的優(yōu)化是有優(yōu)先級順序的,即DRC>timing。有的時候會出現(xiàn)某些路徑的優(yōu)化考慮了DRC而忽略timing,導(dǎo)致timing violation的出現(xiàn)。比如以下這種情況:

上圖所示的電路中第一級buffer驅(qū)動了fanout為3的buffer tree(這里只畫了fanout=3,一般情況下遠(yuǎn)遠(yuǎn)不止),這段net因為fanout較多有可能會有max transition,max capacitance甚至max fanout的DRC違例。但是起點寄存器到終點寄存器之間都只有2級buffer,timing情況還比較樂觀,不太容易出現(xiàn)timing violation。在默認(rèn)情況下,DC為了避免DRC問題,不會將電路優(yōu)化成這種樣子,更有可能是以下的電路:

這段電路從功能上與上一圖中電路是一致的,在優(yōu)化過程中為了避免DRC違例,DC將buffer tree拉長,并將連接到終點寄存器的節(jié)點分散,這樣每個buffer只驅(qū)動一個寄存器以及一個buffer,比起圖1中一個buffer驅(qū)動3個buffer,fanout的數(shù)量減小了。乍一看只是從3減小為2,但如果在圖1中第一級buffer驅(qū)動的是15個fanout,那么這里的將會是15->2的fanout的優(yōu)化,可以大大避免DRC問題。

DRC的問題避免了,但我們可以明顯看到圖二中從起點寄存器到終點寄存器中間經(jīng)過的buffer數(shù)量增加了(最多經(jīng)過4個buffer),而這條path比起圖一中的timing path,無疑timing會更差(這里即便考慮到圖1中high fanout的net的big transition可能帶來的單級較大delay,也不會差過多級buffer相連接,如果buffer數(shù)量增加,delay差距更加明顯)。

在這種情況下,set_cost_priority -delay這個命令就能使綜合工具在優(yōu)化過程中優(yōu)先考慮timing,從而綜合出圖1的網(wǎng)表,即便有一些DRC violation,我們也可以放到后端去修復(fù)。因此,我們?nèi)绻诜治鼍C合網(wǎng)表的時候(在DC中使用report_timing)看到有較長的buffer tree導(dǎo)致的timing violation,并且每級buffer的fanout都較小,可以考慮使用這個命令來實現(xiàn)改善。

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

    關(guān)注

    172

    文章

    5922

    瀏覽量

    172315
  • DC
    DC
    +關(guān)注

    關(guān)注

    9

    文章

    3648

    瀏覽量

    679714

原文標(biāo)題:DC應(yīng)用——set_cost_priority

文章出處:【微信號:ic_frontend,微信公眾號:數(shù)字前端ic芯片設(shè)計】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    不同創(chuàng)建線程安全Set的方式

    。 使用ConcurrentHashMap工廠方法構(gòu)造線程安全的HashSet 首先, 我們來看看_ConcurrentHashMap_暴露出來的靜態(tài)方法 -- newKeySet() 。此方法返回
    的頭像 發(fā)表于 09-25 14:20 ?670次閱讀

    TI-RTOS的PRIORITY如何Set?

    TI-RTOS操作系統(tǒng)中的優(yōu)先級(PRIORITY)是如何Set或使用的?搶占式還是時間片。謝謝!
    發(fā)表于 03-26 08:36

    常用的產(chǎn)生負(fù)電源的方法

    有時對于些單電源供電應(yīng)用我們需要將單電源轉(zhuǎn)換成雙電源以給像運(yùn)算放大器這類芯片供電,我們常用的產(chǎn)生負(fù)電源的方法是使用DC-DC轉(zhuǎn)換模塊或者反相DC-
    發(fā)表于 11-11 06:06

    MAX15026 Low-Cost, DC-DC Synch

    MAX15026 Low-Cost, DC-DC Synchronous Controller with Wide Operating Range Delivers Up to 25A
    發(fā)表于 02-13 13:30 ?1067次閱讀

    基于混合SET/MOSFET的比較

    基于混合SET/MOSFET的比較器 據(jù)2001 年的國際半導(dǎo)體技術(shù)未來發(fā)展預(yù)示,到2016 年MOSFETs 的物理溝道長度將達(dá)到低于10nm 的尺寸[1],而這種尺寸條件會影響到MOSFETs 的基本工作原理
    發(fā)表于 04-20 11:04 ?1342次閱讀
    基于混合<b class='flag-5'>SET</b>/MOSFET的<b class='flag-5'>比較</b>器

    延遲線比較-Delay Lines Comparison

    Abstract: Maxim manufactures several delay lines. This application note compares each programmable
    發(fā)表于 04-22 10:28 ?1071次閱讀
    延遲線<b class='flag-5'>比較</b>-<b class='flag-5'>Delay</b> Lines Comparison

    延遲線比較-Delay Lines Comparison

    Abstract: Maxim manufactures several delay lines. This application note compares each programmable
    發(fā)表于 04-29 09:56 ?3128次閱讀
    延遲線<b class='flag-5'>比較</b>-<b class='flag-5'>Delay</b> Lines Comparison

    Low-Cost, Dual SCART Solution

    Low-Cost, Dual SCART Solution for Set-Top Boxes Also Has Optional Kanal+ Support Abstract: 
    發(fā)表于 09-02 10:56 ?1845次閱讀
    Low-<b class='flag-5'>Cost</b>, Dual SCART Solution

    set_max_delay被覆蓋的解決辦法

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

    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>延時的<b class='flag-5'>方法</b>

    Vivado中如何做set_input_delay約束

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

    Vivado中如何做set_input_delay約束

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

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

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

    python中的set類型

    Python中的set類型是種無序、可變的集合數(shù)據(jù)類型,它的主要特點是不允許重復(fù)元素的存在。本文將詳盡、詳實、細(xì)致地介紹set類型的使用場景、常用操作以及與其他類型的
    的頭像 發(fā)表于 11-21 16:25 ?906次閱讀

    27比較常用的電源符號

    27比較常用的電源符號
    的頭像 發(fā)表于 11-24 14:43 ?5436次閱讀
    27<b class='flag-5'>個</b><b class='flag-5'>比較</b><b class='flag-5'>常用</b>的電源符號