小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

時(shí)序約束系統(tǒng)學(xué)習(xí)

 zhangquanling 2011-11-05
時(shí)序約束系統(tǒng)學(xué)習(xí)發(fā)布時(shí)間:2010-06-03 12:02:42  

一直對(duì)時(shí)序約束沒(méi)有什么明確的概念,故詳細(xì)了解各方面資料,對(duì)時(shí)序約束有一個(gè)全面的從無(wú)到有的學(xué)習(xí),記錄如下筆記:


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


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


另外通過(guò)區(qū)域約束還能在FPGA上規(guī)劃各個(gè)模塊的實(shí)現(xiàn)區(qū)域,通過(guò)物理布局布線約束,完成模塊化設(shè)計(jì)等。





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


常用時(shí)序約束的概念:



周期:如圖1是周期示意圖,當(dāng)計(jì)算出Tperiod,那么當(dāng)然fmax=1/Tperiod,fmax是顯示設(shè)計(jì)最重要的性能指標(biāo)之一。


時(shí)鐘建立時(shí)間:時(shí)鐘建立時(shí)間的計(jì)算方法 Tsu = datadelay - clkdelay + Microsetup


Clock Setup Time (tsu),時(shí)鐘建立時(shí)間
要想正確采樣數(shù)據(jù),就必須使數(shù)據(jù)和使能信號(hào)在有效時(shí)鐘沿到達(dá)前就準(zhǔn)備好,所謂時(shí)鐘建立時(shí)間就是指時(shí)鐘到達(dá)前,數(shù)據(jù)和使能已經(jīng)準(zhǔn)備好的最小時(shí)間間隔。如下圖所示:


時(shí)序約束匯總


 tsu示意圖


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


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


時(shí)鐘保持時(shí)間:計(jì)算Th=clkdelay-datadelay+Microhold

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

Clock Hold Time tH,時(shí)鐘保持時(shí)間
時(shí)鐘保持時(shí)間是只能保證有效時(shí)鐘沿正確采到的數(shù)據(jù)和使能信號(hào)的最小穩(wěn)定時(shí)間。如下圖所示。

時(shí)序約束匯總


tH示意圖


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


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

指在時(shí)鐘有效到數(shù)據(jù)有效的最大時(shí)鐘間隔。

Tco=clkdelay+datadelay+Microco

這個(gè)時(shí)間指的是當(dāng)時(shí)鐘有效沿變化后,將數(shù)據(jù)推倒同步時(shí)序路徑的輸出端的最小時(shí)間間隔。如圖8所示。

時(shí)序約束匯總


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


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

 

 

 

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


時(shí)序約束匯總


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


Clock Skew
Clock Skew指一個(gè)同源時(shí)鐘到達(dá)兩個(gè)不同的寄存器時(shí)鐘端的時(shí)間偏移。如圖10所示。


時(shí)序約束匯總


 clock skew示意圖


周期(PERIOD)的含義
        周期的含義是時(shí)序中最簡(jiǎn)單也是最重要的含義,其它很多時(shí)序概念會(huì)因?yàn)檐浖滩煌杂胁町悾芷诘母拍畲_是最通用的,周期的概念是FPGA/ASIC時(shí)序定義的基礎(chǔ)概念。其它時(shí)序約束都是建立在周期約束的基礎(chǔ)上的。
        周期約束是一個(gè)基本時(shí)序和綜合約束,它附加在時(shí)鐘網(wǎng)線上,時(shí)序分析工具根據(jù)PERIOD約束檢查時(shí)鐘域內(nèi)所有同步元件的時(shí)序是否滿足要求。PERIOD約束會(huì)自動(dòng)處理寄存器時(shí)鐘端的反相問(wèn)題,如果相鄰?fù)皆r(shí)鐘相位相反,那么它們之間的延遲將被默認(rèn)限制為PERIOD約束值的一半。
如下圖所示,時(shí)鐘的最小周期為:


時(shí)序約束匯總


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



其中TCKO為時(shí)鐘輸出時(shí)間,TLOGIC為同步元件之間的組合邏輯延遲,TNET為網(wǎng)線延遲,TSETUP為同步元件的建立時(shí)間,TCLK_SKEW為時(shí)鐘信號(hào)延遲的差別。


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


時(shí)序約束匯總


     Altera 的 Period 示意圖



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


                                      Fmax         =    1/Tclk


 







常用的三種時(shí)序約束設(shè)置方法:

 

1 通過(guò)Assignment/timing settings

2 Assignment/timing wiard tool

3 Assignment/Assignment editor 選擇在圖形界面下完成對(duì)設(shè)計(jì)的時(shí)序約束。一般情況下前兩種是做全局的時(shí)序約束,后一種是做局部的時(shí)序約束,另外還可以通過(guò)修改.qsf文件來(lái)實(shí)現(xiàn)。

 

時(shí)序約束思想時(shí)序約束一般都是先全局后個(gè)別,如果沖突則個(gè)別的優(yōu)先級(jí)更高。

一、將編繹器設(shè)置為時(shí)序驅(qū)動(dòng)編繹,即是指讓編繹過(guò)程盡量向著滿足時(shí)序約束方向努力!assignment/settings/fitter setting.

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

三、時(shí)序向?qū)?在對(duì)時(shí)序約束設(shè)置不熟悉的情況下,可以選擇使用向?qū)А?Assignment/classic timing analyser wizards.

四、可以設(shè)置獨(dú)立時(shí)鐘與衍生時(shí)鐘,衍生時(shí)鐘是由獨(dú)立時(shí)鐘變化而來(lái)的,他是由獨(dú)立時(shí)鐘分頻,倍頻,移相等變化而來(lái)的,可以在設(shè)置中確定二者的關(guān)系 Assignment/settings/timing analyse setting/classic timing analyse setting/individual clock。

五、通過(guò)assignment editor 設(shè)置個(gè)別時(shí)鐘約束

 

各部分延遲的計(jì)算:

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


點(diǎn)擊看大圖

1. 從輸入端口到寄存器

這種路徑的約束是為了讓FPGA設(shè)計(jì)工具能夠盡可能的優(yōu)化從輸入端口到第一級(jí)寄存器之間的路徑延遲,使其能夠保證系統(tǒng)時(shí)鐘可靠的采到從外部芯片到FPGA的信號(hào)。

約束名稱:input delay。

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

2. 寄存器到寄存器

這種路徑的約束是為了讓FPGA設(shè)計(jì)工具能夠優(yōu)化FPGA內(nèi)寄存器到寄存器之間的路徑,使其延遲時(shí)間必須小于時(shí)鐘周期,這樣才能確保信號(hào)被可靠的傳遞。 由于這種路徑只存在于FPGA內(nèi)部,通常通過(guò)設(shè)定時(shí)鐘頻率的方式就可以對(duì)其進(jìn)行約束。對(duì)于更深入的優(yōu)化方法,還可以采用對(duì)寄存器的輸入和寄存器的輸出加入適當(dāng)?shù)募s束,來(lái)使邏輯綜合器和布線器能夠?qū)δ硹l路徑進(jìn)行特別的優(yōu)化。還可以通過(guò)設(shè)定最大扇出數(shù)來(lái)迫使工具對(duì)其進(jìn)行邏輯復(fù)制,減少扇出數(shù)量,提高性能。

3. 寄存器到輸出

這種路徑的約束是為了讓FPGA設(shè)計(jì)工具能夠優(yōu)化FPGA內(nèi)部從最后一級(jí)寄存器到輸出端口的路徑,確保其輸出的信號(hào)能夠被下一級(jí)芯片正確的采到。

約束的名稱: output delay。

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

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

這種路徑是指組合邏輯的延遲,指信號(hào)從輸入到輸出沒(méi)有經(jīng)過(guò)任何寄存器。給這種路徑加約束條件,需要虛擬一個(gè)時(shí)鐘,然后通過(guò)約束來(lái)指定哪些路徑是要受該虛擬時(shí)鐘的約束。在Synplifypro和Precision中都有相應(yīng)的約束來(lái)處理這種路徑。



    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多