從2020.2開(kāi)始,XRT提供了新的Native API,以區(qū)別行業(yè)標(biāo)準(zhǔn)OpenCL API的,在FPGA加速應(yīng)用上,兩者都是可以使用的。XRT Native API的優(yōu)勢(shì)是更加契合FPGA加速應(yīng)用,而OpenCL的優(yōu)勢(shì)則是平臺(tái)通用性比較好。
XRT Native API里面有兩個(gè)API比較有意思,可能會(huì)產(chǎn)生混淆,一個(gè)是xrt_kernel,另一個(gè)是xrt_ip。IP這個(gè)概念,在FPGA中還是比較常用的,典型的就是IP catalog里面的IP,當(dāng)然這次講到的IP更傾向于custom IP,即用戶(hù)自定義IP(以下略作IP)。無(wú)論使用Vitis_hls, V++,Package_xo中哪種生成方法,最后生成的kernel的端口類(lèi)型都是固定的,另外控制端口AXI_LITE的寄存器配置也是保持固定的(當(dāng)然會(huì)因參數(shù)數(shù)量不同而變化)。
截取以下網(wǎng)址-page 274 S_AXILITE Control Register Map作參考:
(https://www.xilinx.com/support/documentation/sw_manuals/xilinx2021_2/ug1399-vitis-hls.pdf )
這些寄存器設(shè)置都是工具自動(dòng)生成的,用戶(hù)不需要進(jìn)行修改。具體這些信號(hào)是如何讓控制這些模塊的,以后有機(jī)會(huì)可以再講。那么如果有些需求是,我是一名RTL設(shè)計(jì)者,設(shè)計(jì)里面有Xilinx IP需要配置功能,我想用更多一點(diǎn)的寄存器空間作額外配置,現(xiàn)有的寄存器空間不夠,不能滿(mǎn)足我的要求:假設(shè),一個(gè)IP中內(nèi)嵌了一個(gè)axi_timer IP(截圖取自:https://www.xilinx.com/support/documentation/ip_documentation/axi_timer/v2_0/pg079-axi-timer.pdf page 12)
那么我該如何配置它呢?
這時(shí),之前提到xrt_ip就可以派上用場(chǎng)了,用戶(hù)可以自己定制控制寄存器而不用受限于規(guī)定的control register map,當(dāng)然端口類(lèi)型還是需要按照kernel的要求來(lái)設(shè)計(jì)。沿用上述的寄存器配置,我們可以額外地添加寄存器:
所以我們可以看到,kernel應(yīng)該算IP中的一個(gè)子集,只是IP的話(huà)更加的靈活些。但是由于IP控制寄存器配置的不固定,導(dǎo)致xrt無(wú)法自動(dòng)管理IP(不知道哪個(gè)寄存器代表的含義),所以只能提供了寄存器接口讓用戶(hù)自己訪(fǎng)問(wèn)控制。從這方面來(lái)說(shuō),使用的便利性會(huì)降低,無(wú)論是IP的啟動(dòng)停止,還是寄存器配置都需要用戶(hù)來(lái)控制。相對(duì)來(lái)說(shuō),xrt_kernel匹配的set_arg,run,wait等操作,它能夠代替用戶(hù)做一些底層操作,更加地省時(shí)省力。
原文標(biāo)題:開(kāi)發(fā)者分享|XRT Native API: XRT_Kernel & XRT_IP 介紹
文章出處:【微信公眾號(hào):XILINX開(kāi)發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
審核編輯:湯梓紅
-
FPGA
+關(guān)注
關(guān)注
1630文章
21799瀏覽量
606196 -
寄存器
+關(guān)注
關(guān)注
31文章
5367瀏覽量
121221 -
IP
+關(guān)注
關(guān)注
5文章
1721瀏覽量
150005 -
API
+關(guān)注
關(guān)注
2文章
1513瀏覽量
62430 -
Kernel
+關(guān)注
關(guān)注
0文章
48瀏覽量
11240
原文標(biāo)題:開(kāi)發(fā)者分享|XRT Native API: XRT_Kernel & XRT_IP 介紹
文章出處:【微信號(hào):gh_2d1c7e2d540e,微信公眾號(hào):XILINX開(kāi)發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
如何申請(qǐng)xilinx IP核的license
![如何申請(qǐng)xilinx <b class='flag-5'>IP</b>核的license](https://file1.elecfans.com/web2/M00/0A/36/wKgZomcbW8KAAwLHAAALYsx2gPs295.jpg)
理解彈性IP與浮動(dòng)IP
![](https://file1.elecfans.com/web2/M00/03/61/wKgaoma76oyAQeSVAAPJAEAPwqY407.jpg)
![](https://file1.elecfans.com/web2/M00/02/39/wKgZoma6mliACI_-AAMgayN5Wf4096.jpg)
![](https://file1.elecfans.com/web2/M00/FD/D2/wKgaomaXAzuATBL_AAQyQc-Tvn4850.png)
![](https://file1.elecfans.com/web2/M00/F4/55/wKgaomZ8pleAD7pTAALqoblPgxw273.jpg)
免費(fèi)改ip的產(chǎn)品好用嗎以下是免費(fèi)代理ip的優(yōu)缺點(diǎn)分析#全球ip代理
![](https://file1.elecfans.com/web2/M00/F2/A6/wKgZomZ5_VeAPROGAA0RRZl_wbQ249.png)
![](https://file1.elecfans.com/web2/M00/EF/A3/wKgZomZwyf-AWrtLAAwSHQiSayo497.png)
![](https://file1.elecfans.com/web2/M00/EC/16/wKgZomZhBoeAHIu_AAZqt7Z6B1k511.png)
![](https://file1.elecfans.com/web2/M00/EA/9C/wKgaomZVENaAMNoCAAcLWfZXf3o600.png)
介紹海外住宅IP購(gòu)買(mǎi)渠道等相關(guān)知識(shí)#全球ip代理 #海外代理ip排行榜
![](https://file1.elecfans.com/web2/M00/E6/8B/wKgaomZD6_SAUdgdAA1vaKEJOHo683.png)
![](https://file1.elecfans.com/web2/M00/E2/11/wKgZomY6sZ2AFXHqABFT8G4k_7w079.png)
![](https://file1.elecfans.com/web2/M00/D9/9E/wKgaomYpiy2ACpHMAAUyixHm6ME438.jpg)
OpenVINO?協(xié)同Semantic Kernel:優(yōu)化大模型應(yīng)用性能新路徑
![OpenVINO?協(xié)同Semantic <b class='flag-5'>Kernel</b>:優(yōu)化大模型應(yīng)用性能新路徑](https://file1.elecfans.com/web2/M00/C3/44/wKgZomXqe3SAAnoLAAAXt18WHA4565.png)
評(píng)論