核心頻率的約束分析解析_第1頁(yè)
核心頻率的約束分析解析_第2頁(yè)
核心頻率的約束分析解析_第3頁(yè)
核心頻率的約束分析解析_第4頁(yè)
核心頻率的約束分析解析_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、添加約束的原則為先添加全局約束,再補(bǔ)充局部約束,而且局部約束比全局約束寬松,其目的是在可能的地方盡量放松約束,提高布線成功概率,減少ISE布局布線時(shí)間。典型的全局約束分成周期約束和偏移約束,本節(jié)主要講述的就是這兩種約束。周期約束主要是對(duì)某一個(gè)時(shí)鐘域的時(shí)鐘進(jìn)行約束,有兩種方式:1、NET trn_clk_s PERIOD= 8 ns;2、NET trn_clk_s TNM_NET =USERCLK;TIMESPEC TS_USERCLK =PERIOD USERCLK 125 MHz HIGH 50%; 第二種方法可以用來(lái)衍生約束派生時(shí)鐘。 NET clk_1 TNM_NET =clk_syn;

2、TIMESPEC TS_clk_syn = PERIOD clk_syn 5ns;NET clk_2 TNM_NET =clk_syn_n;TIMESPEC TS_clk_syn_n = PERIOD clk_syn_n clk_syn PHASE + 2.5ns;NET clk_2 TNM_NET =clk_syn_m;TIMESPEC TS_clk_syn_m = PERIOD clk_syn_m clk_syn /2; 偏移約束也是一種基本時(shí)序約束,規(guī)定了外部時(shí)鐘和數(shù)據(jù)輸入和輸出引腳之間的相對(duì)時(shí)序關(guān)系,只能用于端口信號(hào),不能用于內(nèi)部信號(hào)。當(dāng)考慮到PCB的布局布線對(duì)入口時(shí)序有影響的時(shí)候,需

3、要采用此種約束。主要分成OFFSET_IN_AFTER、OFFSET_IN_BEFORE、OFFSET_OUT_AFTER和OFFSET_OUT_BEFORE。 1、NET DATA_IN OFFSET = IN 10.0 BEFORE CLK_50MHz;表明在時(shí)鐘信號(hào)上升沿到達(dá)前的10ns內(nèi),數(shù)據(jù)必須到達(dá)輸入管腳,實(shí)際上約束的是保持時(shí)間,說(shuō)明Thu=Tp-Tc1=Tp-10;2、NET DATA_IN OFFSET = IN 10.0 AFTER CLK_50MHz;表明在時(shí)鐘信號(hào)上升沿到達(dá)后的10ns內(nèi),數(shù)據(jù)必須到達(dá)輸入管腳,實(shí)際上約束的是建立時(shí)間,說(shuō)明Tsu=Tp-Tc2=Tp-10;

4、3、NET DATA_OUT OFFSET =IN 10.0 BEFORE CLK_50MHz;表明在時(shí)鐘信號(hào)上升沿到達(dá)前的10ns內(nèi),輸出信號(hào)必須離開(kāi)數(shù)據(jù)管腳,基本上是下一級(jí)邏輯建立時(shí)間的上限。4、NET DATA_OUT OFFSET =OUT 10.0 AFTER CLK_50MHz;表明在時(shí)鐘信號(hào)上升沿到達(dá)后的10ns內(nèi),輸出信號(hào)必須保持在輸出管腳上,是芯片內(nèi)部輸出延時(shí)的上限。資料:1、Xilinx FPGA設(shè)計(jì)約束的分類 摘要:本文主要通過(guò)一個(gè)實(shí)例具體介紹ISE中通過(guò)編輯UCF文件來(lái)對(duì)FPGA設(shè)計(jì)進(jìn)行約束,主要涉及到的約束包括時(shí)鐘約束、群組約束、邏輯管腳約束以及物理屬性約束。Xili

5、nx定義了如下幾種約束類型: “Attributes and Constraints” “CPLD Fitter” “Grouping Constraints” “Logical Constraints” “Physical Constraints” “Mapping Directives” “Placement Constraints” “Routing Directives” “Synthesis Constraints” “Timing Constraints” “Configuration Constraints”通過(guò)編譯UCF(user constraints file)文件可以完成

6、上述的功能。還是用實(shí)例來(lái)講UCF的語(yǔ)法是如何的。圖1 RTL Schematic圖1 是頂層文件RTL圖,左側(cè)一列輸入,右側(cè)為輸出,這些端口需要分配相應(yīng)的FPGA管腳。表1. UCF example對(duì)上面的UCF文件進(jìn)行一些注釋:該UCF文件主要是完成了管腳的約束、時(shí)鐘的約束,以及組的約束。第一、二行:主要定義了時(shí)鐘以及對(duì)應(yīng)的物理管腳。第一行,端口pin_sysclk_i 分配到FPGA管腳AD12,并放到了 pin_sysclk_i group中。那如何得知是AD12的管腳呢,請(qǐng)看圖2,F(xiàn)PGA管腳AD12 是一個(gè)66MHz的外部時(shí)鐘。FPGA的開(kāi)發(fā)板肯定有電路原理圖供你分配外部管腳。圖2,

7、電路原理圖第二行:時(shí)鐘說(shuō)明:周期15ns,占空比50%。關(guān)鍵詞TIMESPEC(Timing Specifications),即時(shí)鐘說(shuō)明。一般的語(yǔ)法是:TIMESPEC TSidentifier=PERIOD timegroup_name value units;其中TSidentifier用來(lái)指定TS(時(shí)鐘說(shuō)明)的唯一的名稱。第七行:pin_plx_lholda_o 連接至物理管腳 D17,并配置該管腳電平變化的速率。關(guān)鍵詞:SLEW,用來(lái)定義電平變化的速率的,一般語(yǔ)法是:NET top_level_port_name SLEW=value;其中value = FAST|SLOW|QUIET

8、IO, QUIETIO僅用在Spartan-3A。第十行:定義pin_plx_ads_n_i 輸入跟時(shí)鐘的關(guān)系。OFFSET IN和OFFSET OUT的約束。OFFSET IN 定義了數(shù)據(jù)輸入的時(shí)間和接收數(shù)據(jù)時(shí)鐘沿(capture Edge)的關(guān)系。一般的語(yǔ)法是:OFFSET = IN value VALID value BEFORE clockOFFSET = OUT value VALID value AFTER clock圖3 時(shí)序圖(OFFSET IN)例子:NET SysCLk TNM_NET = SysClk;TIMESPEC TS_SysClk = PERIOD SysClk

9、5 ns HIGH 50%;OFFSET = IN 5 ns VALID 5 ns BEFORE SysClk;上面的定義了基于SysClk的全局OFFSET IN的屬性。時(shí)序可看圖3.圖4 時(shí)序圖(OFFSET OUT)例子:NET ClkIn TNM_NET = ClkIn;OFFSET = OUT 5 ns AFTER ClkIn;上面設(shè)置主要是定了了時(shí)鐘跟數(shù)據(jù)的時(shí)間關(guān)系,時(shí)序圖4??梢钥吹竭@時(shí)一種全局定義,Data1 和Data2輸出時(shí)間都受到 OFFSET = OUT 5 ns AFTER ClkIn 的約束。如果需要單獨(dú)定義輸出端口的OFFSET OUT的,需要制定相應(yīng)的NET,可

10、參考表1中的第57行。第18至49行:pin_plx_lad_io 被歸到了名稱為L(zhǎng)AD的TMN(Timing name),這個(gè)可以說(shuō)是GROUP的約束。這樣往往給約束帶來(lái)方便,不用一個(gè)一個(gè)的NET 或者INST進(jìn)行約束。第50至51行:對(duì)TIMEGRP 是LAD進(jìn)行OFFSET IN和OUT的定義。在時(shí)序約束中,在這里還未提及FROM TO的約束。FROM TO的約束主要是用來(lái)兩個(gè)同步模塊之間的時(shí)間關(guān)系的約束。在這里不做深入的討論。至此,基本上把一般的UCF文件的作用進(jìn)行了注釋。注:一般的時(shí)間的約束需要通過(guò)靜態(tài)的時(shí)序分析,然后再設(shè)定相應(yīng)PERIOD,OFFSET IN 以及OFFEET OU

11、T等的時(shí)間參數(shù)。當(dāng)然在例子中還沒(méi)有涉及到區(qū)域的約束。下面會(huì)試圖說(shuō)一下。ISE進(jìn)行綜合后會(huì)將設(shè)計(jì)代碼生成相應(yīng)的邏輯網(wǎng)表,然后經(jīng)過(guò)translate過(guò)程,轉(zhuǎn)換到Xilinx特定的底層結(jié)構(gòu)和硬件原語(yǔ),MAP過(guò)程就是將映射到具體型號(hào)的器件上,最后就是就是布線和布局的操作了。區(qū)域的約束相當(dāng)于將布局過(guò)程中指定特定型號(hào)的器件的位置,這完全可以通過(guò)FloorPlanner的GUI界面進(jìn)行設(shè)置,用圖形界面設(shè)置完后,配置信息會(huì)放到UCF中,這里只介紹UCF的使用。例如:INST Done LOC = SLICE_X32Y163 ; #Done映射為一個(gè)寄存器,映射到SLICE_X32Y163的位置上。(32,16

12、3)相當(dāng)于一個(gè)坐標(biāo),可以用FloorPlanner進(jìn)行查看。INSTBRAM4/BU2/U0/blk_mem_generator/valid.cstr/ramloop0.ram.r/v4_init.ram/TRUE_DP.SINGLE_PRIM.TDPLOC = RAMB16_X2Y22 ; #RAM16的一個(gè)映射。又例如,X,Y,Z是對(duì)應(yīng)的是寄存器。現(xiàn)在想把它們放在一個(gè)指定的區(qū)域中,我可以這樣寫(xiě),INST “X” AREA_GROUP = reg;INST “X” AREA_GROUP = reg;INST “X” AREA_GROUP = reg;AREA_GROUP reg RANGE

13、= SLICE_X1Y1 :SLICE_X1Y6;注:如何查看INST中的名稱呢?在ISE中 Timing constraints editor中可以查看。注:NET,LOC,TNM_NET,TIMESPEC,PERIOD,OFFSET,IN,OUT,SLEW,HIGH等都是關(guān)鍵字,UCF文件是大小敏感的,端口名稱必須和源代碼中的名字一致,且端口名字不能和關(guān)鍵字一樣。但是關(guān)鍵字NET是不區(qū)分大小寫(xiě)的。2、約束、時(shí)序分析的概念 很多人詢問(wèn)關(guān)于約束、時(shí)序分析的問(wèn)題,比如:如何設(shè)置setup,hold時(shí)間?如何使用全局時(shí)鐘和第二全局時(shí)鐘(長(zhǎng)線資源)?如何進(jìn)行分組約束?如何約 束某部分組合邏輯?如何通

14、過(guò)約束保證異步時(shí)鐘域之間的數(shù)據(jù)交換可靠?如何使用I/O邏輯單元內(nèi)部的寄存器資源?如何進(jìn)行物理區(qū)域約束,完成物理綜合和物理 實(shí)現(xiàn)?為了解決大家的疑難,我們將逐一討論這些問(wèn)題。(注:以下主要設(shè)計(jì)時(shí)序約束) A 時(shí)序約束的概念和基本策略 時(shí)序約束主要包括周期約束(FFS到FFS,即觸發(fā)器到觸發(fā)器)和偏移約束(IPAD到FFS、FFS到OPAD)以及靜態(tài)路徑約束(IPAD到 OPAD)等3種。通過(guò)附加約束條件可以使綜合布線工具調(diào)整映射和布局布線過(guò)程,使設(shè)計(jì)達(dá)到時(shí)序要求。例如用OFFSET_IN_BEFORE約束可以告 訴綜合布線工具輸入信號(hào)在時(shí)鐘之前什么時(shí)候準(zhǔn)備好,綜合布線工具就可以根據(jù)這個(gè)約束調(diào)整與

15、IPAD相連的Logic Circuitry的綜合實(shí)現(xiàn)過(guò)程,使結(jié)果滿足FFS的建立時(shí)間要求。 附加時(shí)序約束的一般策略是先附加全局約束,然后對(duì)快速和慢速例外路徑附加專門約束。附加全局約束時(shí),首先定義設(shè)計(jì)的所有時(shí)鐘,對(duì)各時(shí)鐘域內(nèi)的同步元件進(jìn)行 分組,對(duì)分組附加周期約束,然后對(duì)FPGA/CPLD輸入輸出PAD附加偏移約束、對(duì)全組合邏輯的PAD TO PAD路徑附加約束。附加專門約束時(shí),首先約束分組之間的路徑,然后約束快、慢速例外路徑和多周期路徑,以及其他特殊路徑。B 附加約束的基本作用1. 提高設(shè)計(jì)的工作頻率 對(duì)很多數(shù)字電路設(shè)計(jì)來(lái)說(shuō),提高工作頻率非常重要,因?yàn)楦吖ぷ黝l率意味著高處理能力。通過(guò)附加約束

16、可以控制邏輯的綜合、映射、布局和布線,以減小邏輯和布線延時(shí),從而提高工作頻率。 2. 獲得正確的時(shí)序分析報(bào)告 幾乎所有的FPGA設(shè)計(jì)平臺(tái)都包含靜態(tài)時(shí)序分析工具,利用這類工具可以獲得映射或布局布線后的時(shí)序分析報(bào)告,從而對(duì)設(shè)計(jì)的性能做出評(píng)估。靜態(tài)時(shí)序分析工 具以約束作為判斷時(shí)序是否滿足設(shè)計(jì)要求的標(biāo)準(zhǔn),因此要求設(shè)計(jì)者正確輸入約束,以便靜態(tài)時(shí)序分析工具輸出正確的時(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è)

17、計(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ì)等。 C 周期(PERIOD)的含義 周期的

18、含義是時(shí)序中最簡(jiǎn)單也是最重要的含義,其它很多時(shí)序概念會(huì)因?yàn)檐浖滩煌杂胁町?,而周期的概念確是最通用的,周期的概念是FPGA/ASIC時(shí)序 定義的基礎(chǔ)概念。后面要講到的其它時(shí)序約束都是建立在周期約束的基礎(chǔ)上的,很多其它時(shí)序公式,可以用周期公式推導(dǎo)。周期約束是一個(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約束值的一半。如下圖所示,圖1 周期的定義 時(shí)鐘的最小周期為:TCLK = TCKO +TLO

19、GIC +TNET +TSETUP TCLK_SKEWTCLK_SKEW =TCD2 TCD1 其中TCKO為時(shí)鐘輸出時(shí)間,TLOGIC為同步元件之間的組合邏輯延遲,TNET為網(wǎng)線延遲,TSETUP為同步元件的建立時(shí)間,TCLK_SKEW為時(shí)鐘信號(hào)TCD2和TCD1延遲的差別。D 數(shù)據(jù)和時(shí)鐘之間的約束 為了確保芯片數(shù)據(jù)采樣可靠和下級(jí)芯片之間正確地交換數(shù)據(jù),需要約束外部時(shí)鐘和數(shù)據(jù)輸入輸出引腳之間的時(shí)序關(guān)系(或者內(nèi)部時(shí)鐘和外部輸入/輸出數(shù)據(jù)之間的關(guān) 系,這僅僅是從采用了不同的參照系罷了)。約束的內(nèi)容為告訴綜合器、布線器輸入數(shù)據(jù)到達(dá)的時(shí)刻,或者輸出數(shù)據(jù)穩(wěn)定的時(shí)刻,從而保證與下一級(jí)電路的時(shí)序關(guān) 系。

20、這種時(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)的定義上略有不同。下面依次介 紹。E 關(guān)于輸入到達(dá)時(shí)間 Xilinx的輸入到達(dá)時(shí)間的計(jì)算時(shí)序描述如下圖所示:圖2 輸入到達(dá)時(shí)間示意圖 定義的含義是輸入數(shù)據(jù)在有效時(shí)鐘沿之后的TARRIVAL時(shí)刻到達(dá)。則,TARRIVAL

21、=TCKO+TOUTPUT+TLOGIC 公式1 根據(jù)上面介紹的周期(Period)公式,我們可以得到:Tcko+Toutput+Tlogic+Tinput+Tsetup-Tclk_skew=Tclk; 公式2 將公式1代入公式2: Tarrival+Tinput+Tsetup-Tclk_skew=Tclk, 而Tclk_skew滿足時(shí)序關(guān)系后為負(fù),所以TARRIVAL +TINPUT+TSETUP TCLK 公式3 這就是Tarrival應(yīng)該滿足的時(shí)序關(guān)系。其中TINPUT為輸入端的組合邏輯、網(wǎng)線和PAD的延遲之和,TSETUP為輸入同步元件的建立時(shí)間。F 數(shù)據(jù)延時(shí)和數(shù)據(jù)到達(dá)時(shí)間的關(guān)系圖3

22、數(shù)據(jù)延時(shí)和數(shù)據(jù)到達(dá)時(shí)間示意圖TDELAY為要求的芯片內(nèi)部輸入延遲,其最大值TDELAY_MAX與輸入數(shù)據(jù)到達(dá)時(shí)間TARRIVAL的關(guān)系如上圖所示。也就是說(shuō): TDELAY_MAX+TARRIVAL=TPERIOD 公式4 所以:TDELAYTDELAY_MAX=TPERIODTARRIVALG 要求輸出的穩(wěn)定時(shí)間 從下一級(jí)輸入端的延遲可以計(jì)算出當(dāng)前設(shè)計(jì)輸出的數(shù)據(jù)必須在何時(shí)穩(wěn)定下來(lái),根據(jù)這個(gè)數(shù)據(jù)對(duì)設(shè)計(jì)輸出端的邏輯布線進(jìn)行約束,以滿足下一級(jí)的建立時(shí)間要求,保證下一級(jí)采樣的數(shù)據(jù)是穩(wěn)定的。計(jì)算要求的輸出穩(wěn)定時(shí)間如下圖所示:圖4 要求的輸出穩(wěn)定時(shí)間示意圖 公式的推導(dǎo)如下: 定義:TSTABLE = TL

23、OGIC +TINPUT +TSETUP 從前面帖子介紹的周期(Period)公式,可以得到(其中TCLK_SKEWTCLK1TCLK2):TCLKTCKOTOUTPUT+TLOGIC+TINPUT+TSETUP+TCLK_SKEW將TSTABLE的定義代入到周期公式,可以得到:TCLK=TCKO+TOUTPUT+TSTABLE+TCLK_SKEW 所以:TCKO +TOUTPUT+TSTABLETCLK 這個(gè)公式就是TSTABLE必須要滿足的基本時(shí)序關(guān)系,即本級(jí)的輸出應(yīng)該保持怎么樣的穩(wěn)定狀態(tài),才能保證下級(jí)芯片的采樣穩(wěn)定。有時(shí)我們也稱這個(gè)約束關(guān)系是 輸出數(shù)據(jù)的保持時(shí)間的時(shí)序約束關(guān)系。只要滿足上

24、述關(guān)系,當(dāng)前芯片輸出端的數(shù)據(jù)比時(shí)鐘上升沿提早TSTABLE 時(shí)間穩(wěn)定下來(lái),下一級(jí)就可以正確地采樣數(shù)據(jù)。其中TOUTPUT為設(shè)計(jì)中連接同步元件輸出端的組合邏輯、網(wǎng)線和PAD的延遲之和,TCKO為同步元件時(shí)鐘 輸出時(shí)間。H 實(shí)施時(shí)序約束的方法和命令 實(shí)施上述約束的基本方法是,根據(jù)已知時(shí)序信息,推算需要約束的時(shí)間值,實(shí)施約束。具體地說(shuō)是這樣的,首先對(duì)于一般設(shè)計(jì),首先掌握的是TCLK,這個(gè)對(duì)于設(shè) 計(jì)者來(lái)說(shuō)是個(gè)已知量。前面介紹公式和圖中的TCKO和TSETUP(注:有的工具軟件對(duì)TCKO和TSETUP的定義與前面圖形不同,還包含了到達(dá)同步器 件的一段logic的時(shí)延)是器件內(nèi)部固有的一個(gè)時(shí)間量,一般我們

25、選取典型值,對(duì)于FPGA,這個(gè)量值比較小,一般不大于12ns。比較難以確定的是 TINPUT和TOUTPUT兩個(gè)時(shí)間量。 約束輸入時(shí)間偏移,需要知道TINPUT,TINPUT為輸入端的組合邏輯、網(wǎng)線和PAD的延遲之和,PAD的延時(shí)也根據(jù)器件型號(hào)也有典型值可選,但是 到達(dá)輸入端的組合邏輯電路和網(wǎng)線的延時(shí)就比較難以確定了,只能通過(guò)靜態(tài)時(shí)序分析工具分析,或者通過(guò)底層布局布線工具量取,有很大的經(jīng)驗(yàn)和試探的成分在里 面。 約束輸出時(shí)間偏移,需要知道TOUTPUT,TOUTPUT為設(shè)計(jì)中連接同步元件輸出端的組合邏輯、網(wǎng)線和PAD的延遲之和,仍然是到達(dá)輸出端的組合邏輯 電路和網(wǎng)線的延時(shí)就比較難以確定,需要通

26、過(guò)靜態(tài)時(shí)序分析工具分析,或者通過(guò)底層布局布線工具量取,有很大的經(jīng)驗(yàn)和試探的成分在里面。 約束的具體命令根據(jù)約束工具不同而異,首先說(shuō)使用Xilinx器件的情況下,實(shí)施上述約束的命令和方法。Xilinx把上述約束統(tǒng)稱為:OFFSET約束 (偏移約束),一共有4個(gè)相關(guān)約束屬性:OFFSET_IN_BEFORE、OFFSET_IN_AFTER、OFFSET_OUT_BEFORE和 OFFSET_OUT_AFTER。其中前兩個(gè)屬性叫做輸入偏移(OFFSET_IN)約束,基本功能相似,僅僅是約束取的參考對(duì)象不同而已。后兩個(gè)屬性 叫做輸出偏移(OFFSET_OUT)約束,基本功能相似,也是約束取的參考對(duì)象不

27、同而已。為了便于理解,舉例說(shuō)明。 輸入偏移約束:時(shí)鐘周期為20ns,前級(jí)寄存器的TCKO選擇1ns,前級(jí)輸出邏輯延時(shí)TOUTPUT為3ns,中間邏輯TLOGIC的延時(shí)為 10ns,那么TARRIVAL=14ns,于是可以在數(shù)據(jù)輸入引腳附加NET DATA_IN OFFET=IN 14ns AFTER CLK約束,也可以使用OFFSET_IN_BEFORE對(duì)芯片內(nèi)部的輸入邏輯進(jìn)行約束,其語(yǔ)法如下:NET DATA_IN OFFET=IN TDELAY BEFORE CLK 其中TDELAY為要求的芯片內(nèi)部輸入延遲,其最大值與輸入數(shù)據(jù)到達(dá)時(shí)間TARRIVAL的關(guān)系:TDELAY_MAX + TAR

28、RIVAL = TPERIOD,所以TDELAY TPERIOD - TARRIVAL = 20 - 14 =6 ns。 輸出偏移約束:設(shè)時(shí)鐘周期為20ns,后級(jí)輸入邏輯延時(shí)TINPUT為4ns、建立時(shí)間TSETUP為1ns,中間邏輯TLOGIC的延時(shí)為10ns,那 么TSTABLE=15ns,于是可以在數(shù)據(jù)輸入引腳附加NET DATA_OUT OFFET=OUT 15ns BEFORE CLK約束,也可以直接對(duì)芯片內(nèi)部的輸出邏輯直接進(jìn)行約束,NET DATA_OUT OFFET=OUT TOUTPUT_DELAY AFTER CLK,其中TOUTPUT_DELAY為要求的芯片內(nèi)部輸出延遲,其

29、最大值與要求的輸出數(shù)據(jù)穩(wěn)定時(shí)間TSTABLE的關(guān)系為:TOUTPUT_DELAY_MAX+TSTABLE= TPERIOD。 TOUT_DELAY TPERIOD - TSTABLE = 20 - 15 = 5nsI Altera對(duì)應(yīng)的時(shí)序概念 下面主要介紹Altera對(duì)應(yīng)的這些時(shí)序概念和約束方法。 前面首先介紹的第一個(gè)時(shí)序概念是周期(Period),這個(gè)概念是FPGA/ASIC通用的一個(gè)概念,各方的定義相當(dāng)統(tǒng)一,至多是描述方式不同罷了,所有 的FPGA設(shè)計(jì)都首先要進(jìn)行周期約束,這樣做的好處除了在綜合與布局布線時(shí)給出規(guī)定目標(biāo)外,還能讓時(shí)序分析工具考察整個(gè)設(shè)計(jì)的Fmax等。 Altera的周期定

30、義如下圖所示,公式描述如下: 圖5 Altera 的 Period 示意圖Clock Period = Clk-to-out + Data Delay + Setup Time - Clk Skew即,Tclk= Tco+ B + Tsu-(E-C) Fmax =1/Tclk 對(duì)比一下前面的介紹,只要理解了B 包含了兩級(jí)寄存器之間的所有 logic 和 net 的延時(shí)就會(huì)發(fā)現(xiàn)與前面公式完全一致。J Altera的其他基本時(shí)序概念 Clock Setup Time (tsu) 要想正確采樣數(shù)據(jù),就必須使數(shù)據(jù)和使能信號(hào)在有效時(shí)鐘沿到達(dá)前就準(zhǔn)備好,所謂時(shí)鐘建立時(shí)間就是指時(shí)鐘到達(dá)前,數(shù)據(jù)和使能已經(jīng)準(zhǔn)備好的最小時(shí)間間隔。如下圖所示:圖6

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論