《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 解決方案 > 【Vivado使用誤區與進階】XDC約束技巧之時鐘篇

【Vivado使用誤區與進階】XDC約束技巧之時鐘篇

2015-03-05
關鍵詞: Vivado 約束 時鐘

Xilinx 的新一代設計套件Vivado中引入了全新的約束文件XDC,在很多規則和技巧上都跟上一代產品ISE中支持的UCF大不相同,給使用者帶來許多額外挑 戰。Xilinx工具專家告訴你,其實用好XDC很容易,只需掌握幾點核心技巧,并且時刻牢記:XDC的語法其實就是Tcl語言。

XDC的優勢

XDC 是Xilinx Design Constraints的簡寫,但其基礎語法來源于業界統一的約束規范SDC(最早由Synopsys公司提出,故名Synopsys Design Constraints)。所以SDC、XDC跟Vivado Tcl的關系如下圖所示。

XDC約束技巧之時鐘篇

XDC的主要優勢包括:

● 統一了前后端約束格式,便于管理;                          
● 可以像命令一樣實時錄入并執行;
● 允許增量設置約束,加速調試效率;
● 覆蓋率高,可擴展性好,效率高;
● 業界統一,兼容性好,可移植性強;

XDC在本質上就是Tcl語言,但其僅支持基本的Tcl語法如變量、列表和運算符等等,對其它復雜的循環以及文件I/O等語法可以通過在Vivado中source一個Tcl文件的方式來補充。(對Tcl話題感興趣的讀者可以參考作者的另一篇文章《Tcl在Vivado中的應用》

XDC與UCF的最主要區別有兩點:

1. XDC可以像UCF一樣作為一個整體文件被工具讀入,也可以在實現過程中被當作一個個單獨的命令直接執行。這就決定了XDC也具有Tcl命令的特點,即后 面輸入的約束在有沖突的情況下會覆蓋之前輸入的約束(時序例外的優先級會在下節詳述)。另外,不同于UCF是全部讀入再處理的方式,在XDC中,約束是讀 一條執行一條,所以先后順序很重要,例如要設置IO約束之前,相對應的clock一定要先創建好。

2. UCF是完全以FPGA的視角看問題,所以缺省認為所有的時鐘之間除非預先聲明是同步的,否則就視作異步而不做跨時鐘域時序分析;XDC則恰恰相 反,ASIC世界的血緣背景決定了在其中,所有的時鐘缺省視作全同步,在沒有時序例外的情況下,工具會主動分析每一條跨時鐘域的路徑。

XDC的基本語法

XDC 的基本語法可以分為時鐘約束、I/O約束以及時序例外約束三大類。根據Xilinx的UltraFast設計方法學中Baseline部分的建議 (UG949中有詳細介紹),對一個設計進行約束的先后順序也可以依照這三類約束依次進行。本文對可以在幫助文檔中查到的基本XDC語法不做詳細解釋,會 將重點放在使用方法和技巧上。

時鐘約束

時 鐘約束必須最早創建,對7系列FPGA來說,端口進來的主時鐘以及GT的輸出RXCLK/TXCLK都必須由用戶使用create_clock自主創建。 如果是差分輸入的時鐘,可以僅僅在差分對的P側用get_ports獲取端口,并使用create_clock創建。例如,

XDC約束技巧之時鐘篇

Vivado自動推導的衍生時鐘

MMCM/PLL /BUFR的輸出作為衍生時鐘,可以由Vivado自動推導,無需用戶創建。自動推導的好處在于當MMCM/PLL/BUFR的配置改變而影響到輸出時鐘 的頻率和相位時,用戶無需改寫約束,Vivado仍然可以自動推導出正確的頻率/相位信息。劣勢在于,用戶并不清楚自動推導出的衍生鐘的名字,當設計層次 改變時,衍生鐘的名字也有可能改變。這樣就會帶來一個問題:用戶需要使用這些衍生鐘的名字來創建I/O約束、時鐘關系或是時序例外等約束時,要么不知道時 鐘名字,要么時鐘名字是錯的。

推薦的做法是,由用戶來指定這類衍生時鐘的名字,其余頻率等都由Vivado 自動推導。這樣就只需寫明create_generated_clock 的三個option,其余不寫即可。如下所示。

XDC約束技巧之時鐘篇

當 然,此類情況下用戶也可以選擇完全由自己定義衍生時鐘,只需補上其余表示頻率/相位關系的option,包括-multiply_by 、-devide_by 等等。需要注意的是,一旦Vivado在MMCM/PLL/BUFR 的輸出檢測到用戶自定義的衍生時鐘,就會報告一個Warning,提醒用戶這個約束會覆蓋工具自動推導出的衍生時鐘(例外的情況見文章下半段重疊時鐘部分 的描述),用戶須保證自己創建的衍生鐘的頻率等屬性正確。

用戶自定義的衍生時鐘

工具不能自動推導出衍生鐘的情況,包括使用寄存器和組合邏輯搭建的分頻器等,必須由用戶使用create_generated_clock 來創建。舉例如下,

XDC約束技巧之時鐘篇

I/O約束

在設計的初級階段,可以不加I/O約束,讓工具專注于滿足FPGA內部的時序要求。當時序要求基本滿足后,再加上I/O約束跑實現。XDC中的I/O約束有以下幾點需要注意:

1. 不加任何I/O約束的端口時序要求被視作無窮大。

2. XDC中的set_input_delay / set_output_delay對應于UCF中OFFSET IN / OFFSET OUT,但視角相反。OFFSET IN / OFFSET OUT是從FPGA內部延時的角度來約束端口時序,set_input_delay / set_output_delay則是從系統角度來約束。

3. 典型的I/O時序,包括系統同步、源同步、SDR和DDR等等,在Vivado圖形界面的XDC templates中都有示例。2014.1版后還有一個Timing Constraints Wizard可供使用。

時序例外約束

時 序例外約束包括set_max_delay/set_min_delay,set_multicycle_path,set_false_path等,這 類約束除了要滿足XDC的先后順序優先級外,還受到自身優先級的限制。一個總的原則就是針對同一條路徑,對約束目標描述越具體的優先級越高。不同的時序例 外約束以及同一約束中不同條件的優先級如下所示:

XDC約束技巧之時鐘篇

舉例來說,依次執行如下兩條XDC,盡管第二條最后執行,但工具仍然認定第一條約束設定的15為clk1到clk2之間路徑的max delay值。

XDC約束技巧之時鐘篇

再比如,對圖示路徑依次進行如下四條時序例外約束,優勝者將是第二條。但如果再加入最后一條約束,false path的優先級最高,會取代之前所有的時序例外約束。

XDC約束技巧之時鐘篇

高級時鐘約束

約束最終是為了設計服務,所以要用好XDC就需要深入理解電路結構和設計需求。接下來我們就以常見FPGA設計中的時鐘結構來舉例,詳細闡述XDC的約束技巧。

時序的零起點

用 create_clock定義的主時鐘的起點即時序的"零起點",在這之前的上游路徑延時都被工具自動忽略。所以主時鐘創建在哪個"點"很重要,以下圖所 示結構來舉例,分別于FPGA輸入端口和BUFG輸出端口創建一個主時鐘,在時序報告中體現出的路徑延時完全不同,很明顯sysclk_bad的報告中缺 少了之前一段的延時,時序報告不可信。

XDC約束技巧之時鐘篇XDC約束技巧之時鐘篇

時鐘定義的先后順序

時鐘的定義也遵從XDC/Tcl的一般優先級,即:在同一個點上,由用戶定義的時鐘會覆蓋工具自動推導的時鐘,且后定義的時鐘會覆蓋先定義的時鐘。若要二者并存,必須使用 -add 選項。

XDC約束技巧之時鐘篇XDC約束技巧之時鐘篇

上 述例子中BUFG的輸出端由用戶自定義了一個衍生鐘clkbufg,這個衍生鐘便會覆蓋此處原有的sysclk。此外,圖示BUFR工作在bypass模 式,其輸出不會自動創建衍生鐘,但在BUFR的輸出端定義一個衍生鐘clkbufr,并使用-add 和 -master_clock 選項后,這一點上會存在sysclk和clkbufg兩個重疊的時鐘。如下的Tcl命令驗證了我們的推論。

XDC約束技巧之時鐘篇

同步時鐘和異步時鐘

XDC約束技巧之時鐘篇

不同于UCF約束,在XDC中,所有的時鐘都會被缺省認為是相關的,也就是說,網表中所有存在的時序路徑都會被Vivado分析。這也意味著FPGA設計人員必須通過約束告訴工具,哪些路徑是無需分析的,哪些時鐘域之間是異步的。

如上圖所示,兩個主時鐘ssclkin和sysclk由不同的端口進入FPGA,再經由不同的時鐘網絡傳遞,要將它們設成異步時鐘,可以使用如下約束:

XDC約束技巧之時鐘篇

其中,-include_generated_clocks 表示所有衍生鐘自動跟其主時鐘一組,從而與其它組的時鐘之間為異步關系。不加這個選項則僅僅將時鐘關系的約束應用在主時鐘層面。

重疊(單點多個)時鐘

重疊時鐘是指多個時鐘共享完全相同的時鐘傳輸網絡,例如兩個時鐘經過一個MUX選擇后輸出的時鐘,在有多種運行模式的設計中很常見。

如下圖所示,clk125和clk250是clkcore_buf的兩個輸入時鐘,不約束時鐘關系的情況下,Vivado會對圖示路徑做跨 時鐘域(重疊時鐘之間)分析。這樣的時序報告即便沒有違例,也是不可信的,因為clk125和clk250不可能同時驅動這條路徑上的時序元件。這么做也 會增加運行時間,并影響最終的實現效果。

XDC約束技巧之時鐘篇XDC約束技巧之時鐘篇

如果clk125和clk250除了通過clkcore_buf后一模一樣的扇出外沒有驅動其它時序元件,我們要做的僅僅是補齊時鐘關系的約束。

XDC約束技巧之時鐘篇

在 很多情況下,除了共同的扇出,其中一個時鐘或兩個都還驅動其它的時序元件,此時建議的做法是在clkcore_buf的輸出端上創建兩個重疊的衍生鐘,并 將其時鐘關系約束為-physically_exclusive 表示不可能同時通過。這樣做可以最大化約束覆蓋率,也是ISE和UCF中無法做到的。

XDC約束技巧之時鐘篇

其它高級約束

時鐘的約束是XDC的基礎,熟練掌握時鐘約束,也是XDC約束技巧的基礎。其它高級約束技巧,包括復雜的CDC(Clock Domain Crossing)約束和接口時序(SDR、DDR、系統同步接口和源同步接口)約束等方面還有很多值得注意的地方。

這一系列《XDC約束技巧》文章還會繼續就上述所列方向分篇詳述,敬請關注作者的后續更新,以及Xilinx 官方網站和中文論壇上的更多技術文章。

allyzhou.jpg

Ally Zhou 2014-9-25 于Xilinx上海Office


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美激情视频网站| 欧美在线观看视频一区二区三区| 在线亚洲自拍| 亚洲一区二区三区欧美| 欧美视频一区| 欧美激情精品久久久久久大尺度| 国产日产亚洲精品系列| 久久久久综合| 国产伦精品一区二区三区视频黑人| 久久精品国产欧美亚洲人人爽| 久久免费国产精品1| 亚洲午夜激情免费视频| 免费国产一区二区| 亚洲国产精品va在线看黑人| 国产精品久久久对白| 欧美日韩国产成人在线91| 欧美激情中文不卡| 久久亚洲捆绑美女| 欧美69wwwcom| 性欧美xxxx视频在线观看| 一区二区三区av| 久久久福利视频| 久久动漫亚洲| 亚洲欧美国产精品va在线观看| 亚洲国产欧美日韩精品| 亚洲国产你懂的| 激情综合中文娱乐网| 亚洲欧美日韩国产一区二区| 国产精品影片在线观看| 怡红院精品视频| 亚洲精品一区二区三区在线观看| 欧美电影美腿模特1979在线看| 欧美国产视频在线观看| 在线综合视频| 免费高清在线一区| 老司机精品导航| 欧美在线观看视频一区二区三区| 国产三区二区一区久久| 欧美激情在线有限公司| 亚洲电影激情视频网站| 亚洲激情在线| 国产日韩一区二区三区在线| 91久久国产综合久久蜜月精品| 国产精品mv在线观看| 欧美电影在线观看| 亚洲欧美福利一区二区| 亚洲品质自拍| 欧美激情精品久久久久久蜜臀| 午夜欧美视频| 在线日韩av永久免费观看| 久久免费高清| 国产美女一区二区| 国产日本亚洲高清| 国产一区二区黄色| 欧美一区二区视频在线观看2020| 日韩亚洲在线| 国产日韩久久| 国产精品激情偷乱一区二区∴| 国外成人在线视频网站| 亚洲欧美成aⅴ人在线观看| 樱桃视频在线观看一区| 国产精品久久久久久久久久妞妞| 六月婷婷久久| 国产精品视频99| 亚洲精品日产精品乱码不卡| 欧美综合77777色婷婷| 一区二区三区色| 一区二区三区在线观看欧美| 亚洲欧美日韩成人高清在线一区| 欧美精品激情blacked18| 国产日韩精品一区二区浪潮av| 亚洲国产精品va在线看黑人动漫| 欧美在线999| 狂野欧美性猛交xxxx巴西| 性做久久久久久免费观看欧美| 亚洲精品资源| 在线视频国内自拍亚洲视频| 99re热这里只有精品免费视频| 国产精品免费aⅴ片在线观看| 亚洲国产日本| 亚洲自拍偷拍一区| 亚洲欧美三级在线| 久久久国产精品一区二区中文| 一区二区国产精品| 国产乱子伦一区二区三区国色天香| 欧美激情五月| **欧美日韩vr在线| 亚洲成色777777在线观看影院| 国产三级欧美三级| 亚洲激情在线观看| 欧美精品三级日韩久久| 99视频国产精品免费观看| 在线电影欧美日韩一区二区私密| 亚洲第一在线综合网站| 免费观看一区| 亚洲国产综合视频在线观看| 欧美一区二区三区在线观看| 国产一区二区三区不卡在线观看| 夜夜夜精品看看| 久久综合中文色婷婷| 亚洲午夜一区二区| 香蕉久久夜色| 国产亚洲亚洲| 午夜精彩国产免费不卡不顿大片| 欧美一区中文字幕| 激情视频一区二区| 性久久久久久久| 欧美日韩在线观看一区二区三区| 欧美一区三区二区在线观看| 亚洲一区在线观看视频| 亚洲丁香婷深爱综合| 国产精品免费一区二区三区观看| 激情久久久久久久| 一区二区电影免费在线观看| aa级大片欧美三级| 午夜精品理论片| 影音先锋中文字幕一区二区| 亚洲图中文字幕| 欧美三级电影精品| 你懂的网址国产 欧美| 一区二区三区视频在线观看| 欧美日韩亚洲系列| 欧美人与禽猛交乱配| 国产日韩欧美亚洲| 久久免费精品视频| 国产精品电影观看| 欧美日韩一区二区三区免费看| 国产精品久久久久久亚洲毛片| 久久久久久免费| 国产伦理精品不卡| 欧美~级网站不卡| 亚洲一区在线直播| 欧美日韩国产bt| 国产精品亚洲产品| 亚洲免费成人| 国产精品v片在线观看不卡| 久久久久国产精品午夜一区| 国产精品理论片| 欧美日韩国产在线播放| 国产精品网站在线观看| 韩国一区二区三区美女美女秀| 亚洲欧美日本国产专区一区| 国产情侣久久| 影音先锋亚洲一区| 亚洲精选久久| 久久久久91| 亚洲欧美一区二区激情| 亚洲网友自拍| 欧美日韩国产亚洲一区| 亚洲国产免费| 国产一区二区三区四区三区四| 激情综合五月天| 欧美日本在线一区| 亚洲一区免费在线观看| 亚洲神马久久| 欧美亚州一区二区三区| 亚洲天堂黄色| 欧美一区二区视频观看视频| 久久大综合网| 国产一区二区三区成人欧美日韩在线观看| 久久人人精品| 久久九九免费视频| 久久精品视频99| 中文欧美在线视频| 老司机午夜免费精品视频| 亚洲欧美色一区| 国产婷婷色综合av蜜臀av| 激情欧美国产欧美| 中文高清一区| 亚洲欧美视频一区二区三区| 亚洲私人影院| 欧美日韩一区二区三区免费| 亚洲影院免费观看| 日韩午夜电影av| 米奇777超碰欧美日韩亚洲| 欧美网站在线观看| 久久av一区二区三区亚洲| 亚洲午夜一区二区三区| 一区二区三区成人精品| 国产亚洲欧美日韩美女| 国产日韩精品一区二区三区| 在线观看国产欧美| 伊人夜夜躁av伊人久久| 午夜久久久久久久久久一区二区| 国内外成人免费激情在线视频网站| 国产欧美一区二区三区视频| 蜜乳av另类精品一区二区| 国产视频一区在线观看| 91久久精品国产91性色| 国产日韩欧美三级| 欧美黄色影院| 欧美一区二区三区在线视频| 国产综合香蕉五月婷在线| 国内不卡一区二区三区| 在线亚洲观看| 欧美精品久久久久久久免费观看| 午夜精品久久久久久久久久久| 亚洲国产第一| 欧美在线观看日本一区| 裸体丰满少妇做受久久99精品| 国产精品日韩一区二区三区| 亚洲日韩中文字幕在线播放| 亚洲日本激情| 国产精品视频久久| 久久精品123| 亚洲视频一区二区| 欧美日韩在线播| 欧美日韩黄色大片| 亚洲一区综合| 在线精品高清中文字幕| 欧美黄污视频| 在线观看国产成人av片| 欧美视频在线免费| 国产精品r级在线| 日韩一级黄色片| 麻豆国产精品va在线观看不卡| 欧美国产成人在线| 国产午夜精品久久久久久久| 性欧美办公室18xxxxhd| 欧美高清在线视频观看不卡| 国产一区二区三区日韩欧美| 欧美在线高清| 欧美久久在线| 91久久久久久国产精品| 亚洲韩国一区二区三区| 欧美一级视频免费在线观看| 日韩一区二区免费看| 伊人精品在线| 欧美三级日韩三级国产三级| 亚洲激情在线激情| 亚洲福利国产| 欧美在线国产精品| 亚洲在线免费观看| 久久久久99精品国产片| 亚洲午夜高清视频| 欧美伊人久久久久久午夜久久久久| 亚洲天堂激情| 国产精品综合色区在线观看| 在线观看日韩专区| 国产精品一区久久| 国产精品久久国产精麻豆99网站| 欧美高清视频在线观看| 久久久亚洲影院你懂的| 久久精品99国产精品酒店日本| 欧美三区不卡| 久久久久久网站| 一区二区三区精密机械公司| 亚洲欧美高清| 亚洲精选视频免费看| 国产综合在线视频| 一本久久综合亚洲鲁鲁五月天| 国精品一区二区三区| 噜噜噜91成人网| 欧美乱人伦中文字幕在线| 欧美日韩精品免费观看视一区二区| 久久国产一区二区三区| 国产麻豆精品在线观看| 亚洲手机视频| 欧美精品久久99| 欧美激情亚洲另类| 久久精品国产免费观看| 国产伦精品一区二区三区在线观看| 欧美另类女人| 欧美成人国产一区二区| 亚洲电影第三页| 国产精品福利网| 久久久久久噜噜噜久久久精品| 亚洲国产精品久久久久秋霞蜜臀| 国内精品美女av在线播放| 亚洲午夜成aⅴ人片| 精品成人一区二区三区| 欧美一区二区三区男人的天堂| 亚洲精品视频在线| 91久久精品久久国产性色也91| 国内在线观看一区二区三区| 欧美在线观看视频一区二区三区| 午夜精品一区二区三区电影天堂| 狠狠色狠狠色综合系列| 亚洲精品在线免费| 韩国视频理论视频久久| 国产欧美一区二区精品仙草咪| 久久久久久一区二区三区| 91久久一区二区| 欧美精品久久久久久久久老牛影院| 亚洲欧美日韩精品久久久| 国产欧美精品日韩区二区麻豆天美| 久久精品成人欧美大片古装| 亚洲六月丁香色婷婷综合久久| 99成人免费视频| 国产精品v亚洲精品v日韩精品| 亚洲美女啪啪| 久久国产精品久久精品国产| 久久九九国产精品| 欧美福利视频在线观看| 亚洲精品少妇| 国产精品一区二区三区成人| 国产精品成人观看视频国产奇米| 免费在线日韩av| 欧美福利精品| 在线免费观看一区二区三区| 亚洲综合清纯丝袜自拍| 欧美成人免费全部观看天天性色| 国语对白精品一区二区| 一本久久a久久免费精品不卡| 久久综合中文字幕| 国产一区二区在线观看免费播放| 免费日本视频一区| 欧美精品乱码久久久久久按摩| 韩国欧美国产1区| 久久久久国产成人精品亚洲午夜| 老司机凹凸av亚洲导航| 亚洲人精品午夜在线观看| 亚洲精品黄色| 激情综合色综合久久综合| 欧美日韩亚洲综合一区| 精品999久久久| 国产综合视频在线观看| 在线看片一区| 欧美韩日一区二区| 一区二区三区四区五区精品视频| 亚洲精品一品区二品区三品区| 亚洲一区视频在线观看视频| 亚洲在线观看免费| 欧美波霸影院| 日韩天堂在线视频| 久久一区视频| 亚洲美女黄网| 欧美在线视频观看|