精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何利用Tcl腳本在Manage IP方式下實現對IP的高效管理

OpenFPGA ? 來源:OpenFPGA ? 2024-04-22 12:22 ? 次閱讀

在Vivado下,有兩種方式管理IP。一種是創建FPGA工程之后,在當前工程中選中IP Catalog,生成所需IP,這時相應的IP會被自動添加到當前工程中;另一種是利用Manage IP,創建獨立的IP工程,缺省情況下,IP工程的名字為magaged_ip_project。在這個工程中生成所需要的IP,之后把IP添加到FPGA工程中。Xilinx推薦使用第二種方法,尤其是設計中調用的IP較多時或者采用團隊設計時。Tcl作為腳本語言,在FPGA設計中被越來越廣泛地使用。借助Tcl可以完成很多圖形界面操作所不能完成的工作,從而,可提高設計效率和設計自動化程度。Vivado對Tcl具有很好的支持,專門設置了Tcl Shell(純腳本模式)和Tcl Console(圖形界面模式)用于Tcl腳本的輸入和執行。本文介紹了如何利用Tcl腳本在Manage IP方式下實現對IP的高效管理。

Manage IP的特點:

(1)Vivado在Manage IP模式下只顯示IP Catalog,便于直觀地定制IP;

(2)IP工程目錄獨立于FPGA工程目錄,可獨立管理并便于IP復用;

(3)對IP采用OOC(Out-of-Context)的綜合方式,生成相應的DCP文件,添加到FPGA工程中,無需再次綜合;

與ISE Core Generator的不同之處:

(1)ISE Core Generator不同IP的生成文件會在同一目錄下,而Vivado下每個IP有獨立的文件夾,該文件夾下包含了IP所有相關文件,這為IP復用提供了便利;

(2)ISE Core Generator生成的IP定制文件為.xco,Vivado生成IP的定制文件為.xci;

(3)ISE Core Generator生成的網表文件為.ngc,Vivado生成的網表文件為.dcp,DCP不僅包含網表文件還包含約束文件;

(4)ISE Core Generator不支持Tcl腳本,Vivado則支持Tcl腳本;

Vivado下IP生成文件:

(1)用于綜合的RTL文件和約束文件;

(2)實例化模板文件;

(3)行為級仿真文件;

(4)綜合后的網表文件DCP;

(5)用于第三方綜合工具的Stub文件;

(6)例子工程;

生成文件是可以定制的,這可通過generate_target命令完成,同時,生成的文件也可以通過reset_target被清除掉,如Tcl腳本 1所示。

981f2f60-0054-11ef-a297-92fbcf53809c.jpg

Vivado下每個對象都有自己的屬性,這些屬性可通過report_property顯示。managed_ip_project的屬性如圖 1所示。圖中綠色線條標記了該工程所在目錄;紅色方框MANAGED_IP屬性值為1,表明該工程為IP工程;藍色方框是我們創建或修改IP工程設置時最常用的一些屬性。Tcl腳本 2中第1行語句用于顯示IP工程屬性,第2~4行語句用于設置仿真工具、目標語言和芯片型號。set_property命令的第一個參數為屬性名,第二個參數為屬性值,第三個參數為屬性所屬對象。

9827f60e-0054-11ef-a297-92fbcf53809c.jpg

采用Vivado Manage IP創建IP工程后,可能會遇到以下情況:(1)軟件版本升級,例如Vivado由2013.4升級至2014.2;(2)芯片型號改變,例如芯片型號由XC7K325TFFG676-2變為XC7K160TFFG676-2;(3)A項目中的一些IP在B項目中也被使用,且這些IP參數配置完全相同。上述三種情況均可通過Tcl命令完成。

第一種情況:軟件版本升級

假如用Vivado 2013.4創建的IP工程,當軟件版本升級至2014.2時,需要將IP重新生成。此時,若用Vivado 2014.2打開該工程會彈出如圖 2所示的對話框。選擇圖中藍色方框標記的選項打開工程,通過report_ip_status命令顯示當前IP狀況,如圖 3所示。

982f4d78-0054-11ef-a297-92fbcf53809c.jpg

圖 3中藍色方框顯示了IP處于鎖定狀態,可通過get_property查看IS_LOCKED屬性確定;紅色方框顯示了IP當前版本號和建議升級到的新版本號。相應的Tcl腳本如Tcl腳本 3所示。對處于鎖定狀態的IP可選擇升級,這可通過Tcl腳本 4完成指定IP的升級。Tcl腳本 4可內嵌到Vivado中作為用戶常用命令。

983a43ae-0054-11ef-a297-92fbcf53809c.jpg

第二種情況:芯片型號改變

若芯片型號改變,首先要對舊型號芯片對應的工程做備份處理,這可通過archive_project命令完成;然后修改芯片型號。相應的Tcl腳本如Tcl腳本 5所示。完成這些操作之后,會發現IP處于鎖定狀態,此時可通過Tcl腳本 4對IP升級。

984615c6-0054-11ef-a297-92fbcf53809c.jpg

第三種情況:A項目中的一些IP在B項目中也被使用,且這些IP參數配置完全相同

在這種情況下,可將A項目中的IP導入到B項目的IP工程中,這可通過import_ip命令完成,如Tcl腳本 6所示。Import_ip的第一個參數為原始IP所在目錄,第二個參數為該IP的新名字,缺省情況下與原始IP名一致。導入之后,可通過Tcl腳本 4重新生成IP。

如前所述,Vivado下生成的IP都有獨立的文件目錄,在添加IP到Vivado FPGA工程中時,若采用圖形界面方式就需要一個一個地瀏覽到IP所在文件目錄,找到.xci文件,然后添加到工程中,如果調用的IP較多,顯然這種方式不夠高效。此時可用Tcl腳本 7所示的Tcl命令找到所有IP相關文件,文件類型可以是xci或dcp。該命令會返回完整的文件路徑,如Tcl腳本 6中的文件路徑。然后通過add_files命令將其添加到當前工程中。


98510e72-0054-11ef-a297-92fbcf53809c.jpg

此外,有些IP會有例子工程,這些例子工程帶有完整的測試激勵,可對IP進行仿真,以理解IP的輸入/輸出時序,也可單獨生成bit文件。可通過open_example_project命令打開例子工程,如Tcl腳本 8所示。

與ISE Core Generator相比,Vivado Manage IP對IP的管理更加便捷,加之Vivado對Tcl腳本的支持,利用Tcl腳本可實現對IP更高效的管理,進一步加強FPGA設計自動化的程度。

審核編輯:黃飛

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1626

    文章

    21665

    瀏覽量

    601802
  • TCL
    TCL
    +關注

    關注

    10

    文章

    1715

    瀏覽量

    88459
  • Vivado
    +關注

    關注

    19

    文章

    808

    瀏覽量

    66321

原文標題:在Vivado下利用Tcl實現IP的高效管理

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何使用FPGA和IP Core實現定制緩沖管理

    如何使用FPGA和IP Core實現定制緩沖管理
    發表于 04-29 06:01

    Xilinx中的加密 源碼和tcl腳本

    工程項目中常常使用xilinx的IP時常會遇到一些加密的verilog和vhdl,打開后是以Xlx開始的十六進制文件,某些IP中的tcl和ttcl也是用這種
    發表于 06-20 17:50

    Vivado圖形化界面IDE中運行和調試Tcl命令

    IP內部的代碼。實現(Implementation)過程中,發現某資源占用過多,導致無法通過,我們可以考慮使用tcl命令,remove多余的資源。下面的例子中,例化了兩個axi_ch
    發表于 06-17 14:52

    介紹IP數據報的格式及IP相關功能在Lwip中的實現方式

    。本文主要介紹IP數據報的格式,以及IP相關功能在Lwip中的實現方式,希望能對同樣在學習Lwip的小伙伴們有所幫助。IP基礎知識介紹
    發表于 08-23 17:38

    利用面向對象技術進行可配置的FFT IP設計與實現

    利用面向對象技術進行可配置的FFT IP 設計與實現摘要:為了縮短產品上市時間并降低設計成本,IP 復用已經成為IC設計的重要手段。以往利用
    發表于 07-04 11:42 ?8次下載

    利用FFT IP Core實現FFT算法

    利用FFT IP Core實現FFT算法 摘要:結合工程實踐,介紹了一種利用FFT IP Core實現
    發表于 01-16 10:04 ?6896次閱讀
    <b class='flag-5'>利用</b>FFT <b class='flag-5'>IP</b> Core<b class='flag-5'>實現</b>FFT算法

    LabVIEW中利用TCP_IP協議實現網絡通信_labview程序案例

    程序案例 LabVIEW 中利用TCP_IP協議實現網絡通信
    發表于 01-12 15:45 ?676次下載

    LabWindowsCVI 中利用TCP_IP協議_labview程序案例

    程序案例 LabWindowsCVI 中利用TCP_IP協議實現網絡通信
    發表于 01-12 15:45 ?25次下載

    Vivado利用Tcl腳本對綜合后的網表進行編輯過程

    ISE,對綜合后的網表進行編輯幾乎是不可能的事情,但在Vivado下成為可能。Vivado對Tcl的支持,使得Tcl腳本
    發表于 11-18 03:16 ?7478次閱讀
    <b class='flag-5'>在</b>Vivado<b class='flag-5'>下</b><b class='flag-5'>利用</b><b class='flag-5'>Tcl</b><b class='flag-5'>腳本</b>對綜合后的網表進行編輯過程

    Vivado利用Tcl實現IP高效管理

    Vivado,有兩種方式管理IP。一種是創建FPGA工程之后,在當前工程中選中IP Cata
    發表于 11-18 04:22 ?5781次閱讀

    網站總被攻擊?寫個自動封禁IP腳本給你

    個人網站總被攻擊?寫個自動封禁IP腳本給你!
    的頭像 發表于 01-29 11:44 ?1096次閱讀

    ip腳本進化的解決辦法

    上次給大家分享過一個封IP腳本。我搞那個腳本的目的是為了把訪問量太大的IP地址給封掉,然后每隔半小時解封。
    的頭像 發表于 06-11 17:03 ?649次閱讀
    封<b class='flag-5'>ip</b><b class='flag-5'>腳本</b>進化的解決辦法

    IP 地址XSS中的利用與防范

    ?隨著互聯網的普及和Web應用的廣泛使用,跨站腳本攻擊(XSS)成為了網絡安全領域中的一個重要威脅。XSS攻擊中,攻擊者常常會巧妙地利用各種元素,包括用戶的IP地址,來
    的頭像 發表于 08-07 16:43 ?208次閱讀

    高效管理代理IP,關鍵操作步驟與技巧來了!

    高效管理代理IP是提高網絡工作效率和安全性的重要環節
    的頭像 發表于 09-14 08:08 ?188次閱讀