久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    時序約束系統學習

     zhangquanling 2011-11-05
    時序約束系統學習發布時間:2010-06-03 12:02:42  

    一直對時序約束沒有什么明確的概念,故詳細了解各方面資料,對時序約束有一個全面的從無到有的學習,記錄如下筆記:


    時序約束的概念和基本策略:
            時序約束主要包括周期約束(FFS到FFS,即觸發器到觸發器)和偏移約束(IPAD到FFS、FFS到OPAD)以及靜態路徑約束(STA, IPAD到OPAD)等3種。通過附加約束條件可以使綜合布線工具調整映射和布局布線過程,使設計達到時序要求。例如用OFFSET_IN_BEFORE約束可以告訴綜合布線工具輸入信號在時鐘之前什么時候準備好,綜合布線工具就可以根據這個約束調整與IPAD相連的Logic Circuitry的綜合實現過程,使結果滿足FFS的建立時間要求。
            附加時序約束的一般策略是先附加全局約束,然后對快速和慢速例外路徑附加專門約束。附加全局約束時,首先定義設計的所有時鐘,對各時鐘域內的同步元件進行分組,對分組附加周期約束,然后對FPGA/CPLD輸入輸出PAD附加偏移約束、對全組合邏輯的PAD TO PAD路徑附加約束。附加專門約束時,首先約束分組之間的路徑,然后約束快、慢速例外路徑和多周期路徑,以及其他特殊路徑


    約束的基本作用有3:
    (1)提高設計的工作頻率。通過  附加約束可以控制邏輯的綜合、映射、布局和布線,以減小邏輯和布線延時,從而提高工作頻率。
    (2)獲得正確的時序分析報告
               幾乎所有的FPGA設計平臺都包含靜態時序分析工具,利用這類工具可以獲得映射或布局布線后的時序分析報告,從而對設計的性能做出評估。靜態時序分析工具以約束作為判斷時序是否滿足設計要求的標準,因此要求設計者正確輸入約束,以便靜態時序分析(STA)工具輸出正確的時序分析報告。
    (3)指定FPGA/CPLD引腳位置與電氣標準
             FPGA/CPLD的可編程特性使電路板設計加工和FPGA/CPLD設計可以同時進行,而不必等FPGA/CPLD引腳位置完全確定,從而節省了系統開發時間。這樣,電路板加工完成后,設計者要根據電路板的走線對FPGA/CPLD加上引腳位置約束,使FPGA/CPLD與電路板正確連接。另外通過約束還可以指定IO引腳所支持的接口標準和其他電氣特性。為了滿足日新月異的通信發展,Xilinx新型FPGA/CPLD可以通過IO引腳約束設置支持諸如AGP、BLVDS、CTT、GTL、GTLP、HSTL、LDT、LVCMOS、LVDCI、LVDS、LVPECL、LVDSEXT、LVTTL、PCI、PCIX、SSTL、ULVDS等豐富的IO接口標準。


    另外通過區域約束還能在FPGA上規劃各個模塊的實現區域,通過物理布局布線約束,完成模塊化設計等。





    時序約束在Xilinx中用Setup to Clock(edge),Clock(edge) to hold等表示。在Altera里常用tsu (Input Setup Times)、th (Input Hold Times)、tco (Clock to Out Delays)來表示。很多其它時序工具直接用setup和hold表示。其實他們所要描述的是同一個問題,僅僅是時間節點的定義上略有不同。


    常用時序約束的概念:



    周期:如圖1是周期示意圖,當計算出Tperiod,那么當然fmax=1/Tperiod,fmax是顯示設計最重要的性能指標之一。


    時鐘建立時間:時鐘建立時間的計算方法 Tsu = datadelay - clkdelay + Microsetup


    Clock Setup Time (tsu),時鐘建立時間
    要想正確采樣數據,就必須使數據和使能信號在有效時鐘沿到達前就準備好,所謂時鐘建立時間就是指時鐘到達前,數據和使能已經準備好的最小時間間隔。如下圖所示:


    時序約束匯總


     tsu示意圖


    注:這里定義Setup時間是站在同步時序整個路徑上的,需要區別的是另一個概念Micro tsu。


    Micro tsu指的是一個觸發器內部的建立時間,它是觸發器的固有屬性,一般典型值小于1~2ns。在Xilinx等的時序概念中,稱Altera的Microtsu為setup時間,用Tsetup表示,請大家區分一下。
    回到Altera的時序概念,Altera的tsu定義如下:
    tsu = Data Delay – Clock Delay + Micro tsu


    時鐘保持時間:計算Th=clkdelay-datadelay+Microhold

    注意:前兩個公式中提到的Microsetup 和Microhold一般均是一個小于1ns的常量。

    Clock Hold Time tH,時鐘保持時間
    時鐘保持時間是只能保證有效時鐘沿正確采到的數據和使能信號的最小穩定時間。如下圖所示。

    時序約束匯總


    tH示意圖


    定義的公式為:
    tH= Clock Delay – Data Delay + Micro tH
    注:其中Micro tH是指寄存器內部的固有保持時間,同樣是寄存器的一個固有參數,典型值小于1~2ns。


    Clock-to-Output Delay(tco)時鐘輸出延遲Tco

    指在時鐘有效到數據有效的最大時鐘間隔。

    Tco=clkdelay+datadelay+Microco

    這個時間指的是當時鐘有效沿變化后,將數據推倒同步時序路徑的輸出端的最小時間間隔。如圖8所示。

    時序約束匯總


     tco示意圖
    tco = Clock Delay + Micro tco + Data Delay
    注:其中 Micor tco也是一個寄存器的固有屬性,指的是寄存器相應時鐘有效沿,將數據送到輸出端口的內部時間參數。它與Xilinx的時序定義中,有一個概念叫Tcko是同一個概念。


    Pin to Pin Delay (tpd),管腳延時
    tpd指輸入管腳通過純組合邏輯到達輸出管腳這段路徑的延時,特別需要說明的是,要求輸入到輸出之間只有組合邏輯,才是tpd延時。

     

     

     

    slack:表示設計是否滿足時序的一個稱謂:正的slack表示滿足時序,負的slack表示不滿足時序。保持時間slack是一個重要的概念,引起不滿足的主要原因是時鐘偏斜大于數據路徑的偏斜。


    時序約束匯總


     slack示意圖
    Slack = Required clock period – Actual clock period
    Slack = Slack clock period – (Micro tCO+ Data Delay + Micro tSU)


    Clock Skew
    Clock Skew指一個同源時鐘到達兩個不同的寄存器時鐘端的時間偏移。如圖10所示。


    時序約束匯總


     clock skew示意圖


    周期(PERIOD)的含義
            周期的含義是時序中最簡單也是最重要的含義,其它很多時序概念會因為軟件商不同略有差異,而周期的概念確是最通用的,周期的概念是FPGA/ASIC時序定義的基礎概念。其它時序約束都是建立在周期約束的基礎上的。
            周期約束是一個基本時序和綜合約束,它附加在時鐘網線上,時序分析工具根據PERIOD約束檢查時鐘域內所有同步元件的時序是否滿足要求。PERIOD約束會自動處理寄存器時鐘端的反相問題,如果相鄰同步元件時鐘相位相反,那么它們之間的延遲將被默認限制為PERIOD約束值的一半。
    如下圖所示,時鐘的最小周期為:


    時序約束匯總


    周期的定義
    TCLK = TCKO +TLOGIC +TNET +TSETUP -TCLK_SKEW
    TCLK_SKEW =TCD2 -TCD1



    其中TCKO為時鐘輸出時間,TLOGIC為同步元件之間的組合邏輯延遲,TNET為網線延遲,TSETUP為同步元件的建立時間,TCLK_SKEW為時鐘信號延遲的差別。


    Altera的周期定義如圖所示,公式描述如下:


    時序約束匯總


         Altera 的 Period 示意圖



                                  Clock Period = Clk-to-out + Data Delay + Setup Time - Clk Skew
                                 即,Tclk        =          Tco   +      B             + Tsu              -   (E-C)


                                          Fmax         =    1/Tclk


     







    常用的三種時序約束設置方法:

     

    1 通過Assignment/timing settings

    2 Assignment/timing wiard tool

    3 Assignment/Assignment editor 選擇在圖形界面下完成對設計的時序約束。一般情況下前兩種是做全局的時序約束,后一種是做局部的時序約束,另外還可以通過修改.qsf文件來實現。

     

    時序約束思想時序約束一般都是先全局后個別,如果沖突則個別的優先級更高。

    一、將編繹器設置為時序驅動編繹,即是指讓編繹過程盡量向著滿足時序約束方向努力!assignment/settings/fitter setting.

    二、全局時鐘設置如果在設計中只有一個全局時鐘,或者所有的時鐘同頻,可以在Quartus2中只設置一個全局時鐘約束。 Assignment/timing settings

    三、時序向導 在對時序約束設置不熟悉的情況下,可以選擇使用向導。 Assignment/classic timing analyser wizards.

    四、可以設置獨立時鐘與衍生時鐘,衍生時鐘是由獨立時鐘變化而來的,他是由獨立時鐘分頻,倍頻,移相等變化而來的,可以在設置中確定二者的關系 Assignment/settings/timing analyse setting/classic timing analyse setting/individual clock。

    五、通過assignment editor 設置個別時鐘約束

     

    各部分延遲的計算:

    在FPGA設計工具中包含有4種路徑:從輸入端口到寄存器,從寄存器到寄存器,從寄存器到輸出,從輸入到輸出的純組合邏輯。通常,需要對這幾種路徑分別進行約束,以便使設計工具能夠得到最優化的結果。下面對這幾種路徑分別進行討論。


    點擊看大圖

    1. 從輸入端口到寄存器

    這種路徑的約束是為了讓FPGA設計工具能夠盡可能的優化從輸入端口到第一級寄存器之間的路徑延遲,使其能夠保證系統時鐘可靠的采到從外部芯片到FPGA的信號。

    約束名稱:input delay。

    約束條件的影響主要有4個因素:外部芯片的Tco,電路板上信號延遲Tpd,FPGA的Tsu, 時鐘延遲Tclk.  Tco的參數通常需要查外部芯片的數據手冊。計算公式:input delay = Tco+Tpd+Tsu-Tclk。FPGA的Tsu也需要查FPGA芯片的手冊。 FPGA速度等級不同,這個參數也不同。Tpd和Tclk需要根據電路板實際的參數來計算。通常,每10cm的線長可以按照1ns來計算。例如:系統時鐘100MHz,電路板上最大延遲2ns,時鐘最大延遲1.7ns,Tco 3ns,FPGA的Tsu為0.2ns。那么輸入延遲的值:max Input delay = 2+3+0.2-1.7=3.5ns.  這個參數的含義是指讓FPGA的設計工具把FPGA的輸入端口到第一級寄存器之間的路徑延遲(包括門延遲和線延遲)控制在10ns-3.5ns=6.5ns 以內。

    2. 寄存器到寄存器

    這種路徑的約束是為了讓FPGA設計工具能夠優化FPGA內寄存器到寄存器之間的路徑,使其延遲時間必須小于時鐘周期,這樣才能確保信號被可靠的傳遞。 由于這種路徑只存在于FPGA內部,通常通過設定時鐘頻率的方式就可以對其進行約束。對于更深入的優化方法,還可以采用對寄存器的輸入和寄存器的輸出加入適當的約束,來使邏輯綜合器和布線器能夠對某條路徑進行特別的優化。還可以通過設定最大扇出數來迫使工具對其進行邏輯復制,減少扇出數量,提高性能。

    3. 寄存器到輸出

    這種路徑的約束是為了讓FPGA設計工具能夠優化FPGA內部從最后一級寄存器到輸出端口的路徑,確保其輸出的信號能夠被下一級芯片正確的采到。

    約束的名稱: output delay。

    約束條件的影響主要有3個因素:外部芯片的Tsu,電路板上信號延遲Tpd,時鐘延遲Tclk。Tsu的參數通常需要查外部芯片的數據手冊。計算公式:output delay = Tsu+Tpd-Tclk。例如:系統時鐘100MHz,電路板上最大延遲2ns,時鐘最大延遲 1.7ns,Tsu 1ns,輸出延遲的值:max output delay = 1+2-1.7=1.3ns。這個參數的含義是指讓FPGA的設計工具把最后一級寄存器到輸出端口之間的路徑延遲(包括門延遲和線延遲)控制在 10ns-1.3ns=8.7ns 以內。

    4. 從輸入端口到輸出端口

    這種路徑是指組合邏輯的延遲,指信號從輸入到輸出沒有經過任何寄存器。給這種路徑加約束條件,需要虛擬一個時鐘,然后通過約束來指定哪些路徑是要受該虛擬時鐘的約束。在Synplifypro和Precision中都有相應的約束來處理這種路徑。



      本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
      轉藏 分享 獻花(0

      0條評論

      發表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 人妻少妇无码精品专区| 视频二区中文字幕在线| 国产午夜亚洲精品福利| 一本大道中文日本香蕉| 国产欧美日韩一区二区三区| 国产不卡一区不卡二区| 亚洲国产成人久久精品APP| 天堂mv在线mv免费mv香蕉| 国产乱理伦片在线观看夜| 精品国产成人A区在线观看| 美日韩在线视频一区二区三区 | 国内熟妇人妻色在线视频| 51国偷自产一区二区三区| 亚洲另类丝袜综合网| 性做久久久久久久| 在线观看成人年视频免费| 少妇人妻无码专区视频| 麻豆成人传媒一区二区| 亚洲av日韩在线资源| 狠狠色噜噜狠狠狠狠AV| 92精品国产自产在线观看481页 | 色综合久久久久综合体桃花网| 人妻日韩精品中文字幕| 亚洲国产精品一区二区WWW| 日本一区二区三区专线| 亚洲av成人无码天堂| 12裸体自慰免费观看网站| 麻豆国产成人AV在线播放| 2021国产成人精品久久| 97人人添人澡人人爽超碰 | 亚洲欧美偷国产日韩| 午夜亚洲乱码伦小说区69堂| 男同精品视频免费观看网站| 精品无码国产污污污免费| 国内综合精品午夜久久资源| 久久97人人超人人超碰超国产| 无码精品人妻一区二区三区中| 高清无码一区二区在线观看吞精| 午夜福利片1000无码免费| 久久久久免费看成人影片| 精品国精品无码自拍自在线|