1、Xilinx中約束的設計中約束的設計1.1xilinx中的約束文件中的約束文件1、約束的分類利用FPGA進行系統設計常用的約束主要分為3類。(1)時序約束:主要用于規(guī)范設計的時序行為,表達設計者期望滿足的時序條件,知道綜合和布局布線階段的優(yōu)化算法等。(2)布局布線約束:主要用于指定芯片IO引腳位置以及指導軟件在芯片特定的物理區(qū)域進行布局布線。(3)其它約束:指目標芯片型號、接口位置、電氣特性等約束屬性。2、約束的主要作用(1)提高設計的
2、工作效率對很多數字電路設計來說,提高工作頻率是非常重要的,因為高的工作頻率意味著高效的電路處理能力,通過附加約束可以控制邏輯的綜合、映射、布局和布線,以減少邏輯和布線的延遲,從而提高工作效率。(2)獲得正確的時序分析報告幾乎所有的FPGA設計平臺都包含靜態(tài)時序分析工具,利用這類工具可以獲得映射或者是布局布線后的時序分析報告,從而對設計的性能做出評估。靜態(tài)時序分析工具以約束作為判斷時序是否滿足設計要求的標準,因此要求設計者正確輸入約束,以
3、便靜態(tài)時序分析工具輸出正確的時序分析報告。(3)指定FPGA引腳位置與電氣標準FPGA的可編程性使電路板設計加工和FPGA設計可以同時進行,而不必等FPGA引腳位置的完全確定,從而節(jié)約了系統開發(fā)時間。電路板加工完成后,設計者要根據電路板的走線對FPGA加上引腳位置約束,以保證FPGA與電路板正確連接。另外通過約束還可以指定IO引腳所支持的接口標準和其他電氣特性。為了滿足日新月異的通信發(fā)展,Xilinx新型FPGA可以通過IO引腳約束設置
4、支持,諸如AGP、BLVDS、CTT、GTL、GTLP、HSTL、LDT、LVCMOS、LVDCI、LVDS、LVPECL、LVDSEXT、LVTTL、PCI、PCIX、SSTL、ULVDS等豐富的IO接口標準。(4)利于模塊化設計通過區(qū)域約束還能在FPGA上規(guī)劃各個模塊的實現區(qū)域,通過物理布局布線約束完成模塊化設計等。3、UCF約束文件ISE通過綜合工具XST對設計進行約束,XST的綜合約束文件時XCF文件,而在布局布線階段,最重要的
5、約束文件是用戶約束文件UCF(userconstraintfile),兩者有著千絲萬縷的聯系,UCF幾乎支持XCF的所有約束語言和命令。通常在使用XST綜合流程時,僅僅通過綜合屬性設置來設置全局的綜合策略與參數,細化的約束是通過實現階段的約束文件UCF完成的。因此,UCF文件時約束文件的核心,通過編譯UCF文件可以實現時序、布局布線約束以及其他約束的絕大部分功能。1.2約束設計實例約束設計實例1.2.1時序約束時序約束條約束定義其周期為
6、5ns,即200MHZ2、IO時序約束IO時序約束定義了時鐘和IO接口之間的時序關系,只用于與IO接口相連的信號,不能用于內部信號。IO時序約束可以約束輸入數據、輸出數據相對于時鐘的時序關系,從而在綜合實現中調整布局布線,是正在開發(fā)的FPGA的輸入建立時間、輸出保持時間保持系統要求。IO時序約束的語法如下:OFFSET=IN“offset_time”[units]BEFE“clk_name”[TIMEGRP“group_name”]OF
7、FSET=OUT“offset_time”[units]AFTER“clk_name”[TIMEGRP“grout_name”]說明:(1)OFFSET、IN、BEFE是IO時序約束輸入建立時間標識,具體含義為:輸入數據與時鐘的時序關系滿足offset_time定義的時間(2)OFFSET、OUT、AFTER是IO時序約束輸出保持時間標識,具體含義為:輸出數據與時鐘的時序關系滿足offset_time定義的時間(3)”offset_ti
8、me”是約束要求的時間(4)”clk_name”為參考時鐘(5)[TIMEGRP“grout_name”]為約束的寄存器組?!纠?】IO時序約束INST“io_emif_data”TNM=TS_emif_dataINST“io_emif_data”TNM=TS_emif_dataINST“io_emif_data”TNM=TS_emif_dataINST“io_emif_data”TNM=TS_emif_dataINST“io_emif
9、_data”TNM=TS_emif_dataINST“io_emif_data”TNM=TS_emif_dataINST“io_emif_data”TNM=TS_emif_dataINST“io_emif_data”TNM=TS_emif_data“IO_emif_clk”TNM_=I_emif_clkTIMEGRP“TS_emif_data”O(jiān)FFSET=OUT7nsAFTER“I_emif_clk”例2表示,約束定義TS_emif_
10、data寄存器組與時鐘I_emif_clk的關系為時鐘有效后7ns輸出TS_emif_data寄存器的可靠數據。3、分組約束分組約束是將一些具有相同時序要求的器件歸為一組,進行相同的時序約束。分組約束的語法如下:|INST“_name”TNM_=[predefined_group]identifier|INST|PIN“__pin__inst_name”TNM=[predefined_group]identifier(1)INST、和P
評論
0/150
提交評論