您好,登錄后才能下訂單哦!
小編給大家分享一下Vivado中如何使用自定義BD,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
在TCL終端下運行ipx::add_file_group -type elaborate_bd {} [ipx::current_core]
出現的Elaborate BD這個Group下添加bd.xit:
proc update_bd { } {#### Setting Current Instance#### 設置當前IP的句柄,以便獲取當前IP的Parameterset greg_bd [::ipxit::current_inst]## 獲取當前IP的REG_NUM這個Parameterset reg_num [get_property CONFIG.REG_NUM $greg_bd]## 向vivado發出一些信息,可有可無send_msg INFO 0 " Create CLK_WIZ "## 在IP頂層BD內創建clock Wizard IP,命令詳情見help create_bd_cell,貌似它不支持type為module的創建set clk_lib [create_bd_cell -type ip -vlnv xilinx.com:ip:clk_wiz "clklib"]send_msg INFO 0 " Create CONFIG CLK_WIZ "## 往SubCore里寫入SubCore的屬性值## Syntax:set_property -dict [list CONFIG.<subcore's param> {<value of subcore's param> ] <subcore's handle>set_property -dict [ list \CONFIG.CLKOUT2_JITTER {130.958} \CONFIG.CLKOUT2_PHASE_ERROR {98.575} \] $clk_lib## 連接BD的端口和SubCore的Pinconnect_bd_net -quiet [get_bd_ports clk_pin] [get_bd_pins ${clk_lib}/clk_in1]## 連接SubCore的Pin和SubCore的Pin## connect_bd_net -quiet [get_bd_pins ${clklib}/clk_out1] [get_bd_pins ${uart_mst}/clk_pin]## 連接SubCore的Interface和BD的Interface## connect_bd_intf_net -quiet [get_bd_intf_ports m_axil] [get_bd_intf_pins ${clklib}/m_axil]}## 設置生成的BD可不可以在工程下可見,默認為falseset_bd_viewable trueupdate_bd
最后需要在Elaborate BD這個Group的IP File Group Properities內的Component subcores填入xit文件所調用的Subcore名字,多個則以空格隔開,本例則需要填入 xilinx.com:ip:clk_wiz:5.4;然后在Utility XIT/TTCL下右鍵Add SubCore Reference...即可.
注:BD內的所有port也即IP的所有向外引出端口必須在BD內有連接到子IP的Pin上,否則IP使用會報錯,無任何提示。
看完了這篇文章,相信你對“Vivado中如何使用自定義BD”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。