Vivado以IP為核心的設(shè)計(jì)理念的一個(gè)重要支撐就是IP Integrator(簡(jiǎn)稱(chēng)IPI,IP集成器)。用戶可以很便捷地把VivadoIP Catalog中的IP拖到IPI中形成Block Design(.bd文件)。
同時(shí),對(duì)于用戶自己的RTL代碼,可以借助IP Packager先封裝成IP,再導(dǎo)入到IP Catalog中,然后在IPI中使用。
此外,Vitis HLS、Vitis Model Composer都可以將用戶設(shè)計(jì)以IP形式輸出供用戶導(dǎo)入到IP Catalog中調(diào)用。
盡管如此,不得不說(shuō)借助IP Packager封裝IP的過(guò)程還是有些繁瑣的。當(dāng)然,我們也要看到封裝IP帶來(lái)的好處就是便于不同設(shè)計(jì)團(tuán)隊(duì)開(kāi)發(fā)使用。IPI的功能仍在不斷增強(qiáng)。
一個(gè)顯著的功能是用戶可以直接將RTL代碼拖到IPI中構(gòu)成BD,如下圖所示。要求RTL設(shè)計(jì)的頂層如這里的uart_tx必須是Verilog或VHDL描述。SystemVerilog/VHDL-2008不支持此功能。
此功能被稱(chēng)為模塊引用(Module Reference)。
關(guān)于模塊引用,我們可能會(huì)碰到以下問(wèn)題。
問(wèn)題1:待引用的頂層采用的是SystemVerilog或VHDL-2008描述的。
因?yàn)槟K引用不支持SystemVerilog也不支持VHDL-2008,在這種情況下,可以用Verilog或VHDL先對(duì)該模塊封裝以下,這樣就可以將封裝后的.v或.vhd模塊添加到IPI中。
問(wèn)題2:若待引用的頂層其子模塊包含IP Catalog中的IP(以.xci形式存在),那么是否支持此功能?
模塊引用功能允許待引用的頂層其子模塊包含.xci IP,但并不是所有的IP都支持。可通過(guò)如下命令獲取不支持此功能的IP。可以看到NoC、CIPS和PS是不支持的。換言之,目前的Vivado版本(2023.1)只能在IPI中直接使用這些IP。
審核編輯:劉清
-
VHDL語(yǔ)言
+關(guān)注
關(guān)注
1文章
113瀏覽量
18577 -
RTL
+關(guān)注
關(guān)注
1文章
388瀏覽量
60804 -
Vivado
+關(guān)注
關(guān)注
19文章
834瀏覽量
68380 -
HLS
+關(guān)注
關(guān)注
1文章
132瀏覽量
24713
原文標(biāo)題:如何把子模塊包含網(wǎng)表的RTL代碼添加到BD中
文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
xilinx EDF已經(jīng)綜合過(guò)的網(wǎng)表文件怎樣添加到Vivado工程中?
可以將塊設(shè)計(jì)添加到庫(kù)中嗎?
有什么方法能將以太網(wǎng)功能添加到PSoC設(shè)計(jì)中去?
將新庫(kù)添加到Petalinux rootfs的最簡(jiǎn)單方法是什么
請(qǐng)問(wèn)如何將自己的代碼添加到工程中?
如何在arduino IDE上將SPI模塊作為庫(kù)添加到nodemcu代碼中?
Yocto S32G添加新層,如何添加到圖像?
包含路徑不會(huì)添加到項(xiàng)目中的每個(gè)源文件怎么解決?
如何將Crosswalk添加到Cordova應(yīng)用程序中
谷歌將在本周把隱私信息添加到ios應(yīng)用中
將RTL模塊添加到Block Design的步驟

評(píng)論