XilinxFPGA編程技巧之常用時序約束詳解_第1頁
XilinxFPGA編程技巧之常用時序約束詳解_第2頁
XilinxFPGA編程技巧之常用時序約束詳解_第3頁
全文預覽已結(jié)束

下載本文檔

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

文檔簡介

.*ilin*FPGA編程技巧之常用時序約束詳解根本的約束方法為了保證成功的設計,所有路徑的時序要求必須能夠讓執(zhí)行工具獲取。最普遍的三種路徑為:.輸入路徑〔InputPath〕,使用輸入約束.存放器到存放器路徑〔Register-to-RegisterPath〕,使用周期約束.輸出路徑〔OutputPath〕,使用輸出約束.具體的異常路徑〔Pathspecifice*ceptions〕,使用虛假路徑、多周期路徑約束1.輸入約束InputConstraintOFFSETIN約束限定了輸入數(shù)據(jù)和輸入時鐘邊沿的關(guān)系。1.1.1.系統(tǒng)同步輸入約束SystemSynchronousInput 在系統(tǒng)同步接口中,同一個系統(tǒng)時鐘既傳輸數(shù)據(jù)也獲取數(shù)據(jù)??紤]到板子路徑延時和時鐘抖動,接口的操作頻率不能太高。1-1簡化的系統(tǒng)同步輸入SDR接口電路圖1-2SDR系統(tǒng)同步輸入時序上述時序的約束可寫為:NET"SysClk"TNM_NET="SysClk";TIMESPEC"TS_SysClk"=PERIOD"SysClk"5nsHIGH50%;OFFSET=IN5nsVALID5nsBEFORE"SysClk";1.1.2.源同步輸入約束SourceSynchronousInput 在源同步接口中,時鐘是在源設備中和數(shù)據(jù)一起產(chǎn)生并傳輸。1-3簡化的源同步輸入DDR接口電路1-4DDR源同步輸入時序上圖的時序約束可寫為:NET"SysClk"TNM_NET="SysClk";TIMESPEC"TS_SysClk"=PERIOD"SysClk"5nsHIGH50%;OFFSET=IN1.25nsVALID2.5nsBEFORE"SysClk"RISING;OFFSET=IN1.25nsVALID2.5nsBEFORE"SysClk"FALLING;1.2.存放器到存放器約束Register-to-RegisterConstraint存放器到存放器約束往往指的是周期約束,周期約束的覆蓋圍包括:.覆蓋了時鐘域的時序要求.覆蓋了同步數(shù)據(jù)在部存放器之間的傳輸.分析一個單獨的時鐘域的路徑.分析相關(guān)時鐘域間的所有路徑.考慮不同時鐘域間的所有頻率、相位、不確定性差異1.1.2.1.使用DLL,DCM,PLL,andMMCM等時鐘器件自動確定同步關(guān)系使用這一類時鐘IPCore,只需指定它們的輸入時鐘約束,器件將自動的根據(jù)用戶生成IPCore時指定的參數(shù)約束相關(guān)輸出,不需用戶手動干預。1-5輸入到DCM的時鐘約束上圖的時序約束可寫為:NET“ClkIn〞TNM_NET=“ClkIn〞;TIMESPEC“TS_ClkIn〞=PERIOD“ClkIn〞5nsHIGH50%;1.2.2.手動約束相關(guān)聯(lián)的時鐘域在*些情況下,工具并不能自動確定同步的時鐘域之間的時鐘時序關(guān)系,這個時候需要手動約束。例如:有兩個有相位關(guān)系的時鐘從不同的引腳進入FPGA器件,這個時候需要手動約束這兩個時鐘。1-6通過兩個不同的外部引腳進入FPGA的相關(guān)時鐘上圖的時序約束可寫為:NET“Clk1*"TNM_NET=“Clk1*";NET“Clk2*180"TNM_NET=“Clk2*180";TIMESPEC"TS_Clk1*"=PERIOD"Clk1*75ns;TIMESPEC"TS_Clk2*180"=PERIOD"Clk2*180“TS_Clk1*/2PHAS2+1.25ns;1.2.3.異步時鐘域異步時鐘域的發(fā)送和接收時鐘不依賴于頻率或相位關(guān)系。因為時鐘是不相關(guān)的,所以不可能確定出建立時間、保持時間和時鐘的最終關(guān)系。因為這個原因,*ilin*推薦使用適當?shù)漠惒皆O計技術(shù)來保證對數(shù)據(jù)的成功獲取。*ilin*約束系統(tǒng)允許設計者在不需考慮源和目的時鐘頻率、相位的情況下約束數(shù)據(jù)路徑的最大延時。異步時鐘域使用的約束方法的流程為:.為源存放器定義時序組.為目的存放器定義時序組.使用From-to和DATAPATHDELAY關(guān)鍵字定義存放器組之間的最大延時1.3.輸出約束OutputConstraint 輸出時序約束約束的是從部同步元件或存放器到器件管腳的數(shù)據(jù)。1.3.1.系統(tǒng)同步輸出約束SystemSynchronousOutputConstraint 系統(tǒng)同步輸出的簡化模型如以下圖,在系統(tǒng)同步輸出接口中,傳輸和獲取數(shù)據(jù)是基于同一個時鐘的。1-7系統(tǒng)同步輸出其時序約束可寫為:NET"ClkIn"TNM_NET="ClkIn";OFFSET=OUT5nsAFTER"ClkIn";1.1.3.2.源同步輸出約束SourceSynchronousOutputConstraint 在源同步輸出接口中,時鐘是重新產(chǎn)生的并且在*一FPGA時鐘的驅(qū)動下和數(shù)據(jù)一起傳輸至下游器件。1-8源同步輸出簡化電路時序圖1-9源同步小例子時序圖小例子的時序約束可寫為:NET“ClkIn〞TNM_NET=“ClkIn〞;OFFSET=OUTAFTER“ClkIn〞REFERENCE_PIN“ClkOut〞RISING;OFFSET=OUTAFTER“ClkIn〞REFERENCE_PIN“ClkOut〞FALLING;1.3.3.虛假路徑約束FalsePathConstraint令SRC_GRP為一組源存放器,DST_GRP為一組目的存放器,如果你確定SRC_GRP到DST_GRP之間的路徑不會影響時序性能,則可以將這一組路徑約束為虛假路徑,工具在進展時序分析的時候?qū)^對這組路徑的時序分析。這種路徑最常見于不同時鐘域的存放器數(shù)據(jù)傳輸,如以下圖:1-10虛假路徑其約束可寫為:NET"CLK1"TNM_NET=FFS"GRP_1";NET"CLK2"TNM_NET=FFS"GRP_2";TIMESPECTS_E*ample=FROM"GRP_1"TO"GRP_2"TIG;1.3.4.多周期路徑約束Multi-CyclePathConstraint在多周期路徑里,令驅(qū)動時鐘的周期為PERIOD,數(shù)據(jù)可以最大n*PERIOD的時間的從源同步元件傳輸?shù)侥康耐皆?,這一約束降低工具的布線難度而又不會影響時序性能。這種約束通常用在有時鐘使能控制的同步元件路徑中。圖1-11時鐘使能控制的存放器路徑必須說明的是上圖Enable信號的產(chǎn)生周期必須大于等于n*PERIOD,且每個Enable傳輸一個數(shù)據(jù)。假設上圖的n=2,MC_GRP為時鐘使能Enable控制的多周期同步元件組,則約束可寫為:NET"CLK1"TNM_NET

溫馨提示

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

評論

0/150

提交評論