最近有網友私信我,說我之前發的幾篇文章寫得不錯,在此感謝大家的鼓勵。
正如我在第一篇文章里所說,我分享的內容主要包括但不限于,HDL語言,TCL語言,vivado的使用,Modelsim/Questasim的使用,matlab的使用,通信原理及系統,無線通信,數字信號處理等,由淺入深,化繁為簡,后續內容聽我娓娓道來。
今天我想說說我自己對vivado中文件分類的理解。
用過ISE的人都知道,vivado用起來是多么舒服,不管是從界面、綜合策略、時序分析等各個方面來說,都有很好的體驗,新版的vivado還引入了機器學習,進一步增強了綜合能力。
從vivado的圖形界面可以看到,工程文件主要包括:
HDL文件
IP文件
BD文件
約束文件
網表文件
輔助文件
HDL文件
主要是.v,.vhd文件,包括可以綜合的,以及用于仿真的.v和.vhd文件,可以綜合的文件也可被用于仿真。
Source框里的Compile Order可以看到文件的編譯順序,有時候如果有公用的package的.v文件的時候,可以看到package文件是否優先編譯起效。
在vivado圖形界面中,能夠點擊的對象都有自己的屬性,可以通過CTRL+E快捷方式打開。
IP文件
主要是.xcix和.xci文件。
如果勾選設置選項下IP內的Use Core Containers for IP框框,則IP的形式為.xcix,否則IP形式為.xci,且每個IP都會生成以IP名命名的文件夾,.xcix簡化了IP核的管理。
.xcix和.xci是可以相互轉化的,IP核右鍵Enable Core Container或Disable Core Container即可。
BD文件
主要是.BD文件。
如果一個工程想套用另一個既有工程的BD文件,可以直接將BD文件夾整個進行復制,這樣較為方便。
約束文件
主要是.xdc和.tcl文件,包括管腳約束、時序約束、debug約束、位置約束等。
管腳約束:管腳和電平。
時序約束:基本時鐘約束,跨時鐘域約束,路徑約束。
Debug約束:抓取調試信號(使用綜合里的set up debug會自動添加文件到這里,使用ip核中的ila核則不會),設置Debug_hub參數(debug_hub時鐘等)。
位置約束:可通過pblock命令,設置指定模塊位置或面積。
特別說明一下,約束的屬性中有一個USED_IN的選項,之前提到的,如果要將當前工程封裝成dcp文件,作為子文件放到大工程中,一定要勾選USED_IN中的synthesis、out_of_context選項,當然,USED_IN也適用于其他.v文件或ip核。
網表文件
主要是.dcp文件
用于封裝子模塊或子工程
輔助文件
主要是.tcl(鉤子腳本)和.dcp(增量編譯)文件
最近使用國內某公司的國產化芯片時,就用到了鉤子腳本,用以給程序打補丁。按照手冊打完補丁后,在設置中的綜合、布局布線、生成比特流中,會看到.pre和.post里面已經有補丁腳本的路徑。當然,也可以自己寫鉤子腳本。
-
數字信號
+關注
關注
2文章
958瀏覽量
47519 -
TCL語言
+關注
關注
0文章
2瀏覽量
6227 -
Vivado
+關注
關注
19文章
808瀏覽量
66347
原文標題:說說vivado中的文件分類
文章出處:【微信號:FPGA通信小白成長之路,微信公眾號:FPGA通信小白成長之路】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論