介紹
DesignLinx 及其客戶是賽靈思 SDAccel 開發(fā)環(huán)境的早期用戶。他們使用 SDAccel 開發(fā)環(huán)境,針對(duì)搭載加速軟件的亞馬遜 AWS F1 和賽靈思 Alveo 數(shù)據(jù)中心加速器卡,開發(fā)云端應(yīng)用和本地應(yīng)用。
結(jié)合 SDSoC 和賽靈思 SDK,SDAccel 流現(xiàn)在是 2019.2 Vitis 統(tǒng)一軟件平臺(tái)的組成部分,便于開發(fā)者針對(duì)賽靈思器件上的所有軟件任務(wù)使用統(tǒng)一平臺(tái)。下面分享來自 DesignLinx 公司高級(jí)嵌入式軟件工程師 Nathan Sullivan 所撰寫的技巧:
1. Vitis 的優(yōu)勢(shì)
Vitis 2019.2 采用經(jīng)過更新的 v++ 編譯器,強(qiáng)化 IDE 項(xiàng)目組織,為嵌入式應(yīng)用和數(shù)據(jù)中心應(yīng)用提供統(tǒng)一的工具流。因?yàn)槿咳N流程現(xiàn)在都集成在 Vitis 內(nèi)部,所以無需針對(duì)不同類型的應(yīng)用在 SDAccel、SDK 和 SDSoC 之間進(jìn)行切換。除了 Vitis IDE 以外,通過 v++ 工具和 SDAccel 提供的 xocc/xcpp 流等生成文件,也為構(gòu)建軟件提供完整的命令行流程。
2. 易于遷移
Vitis 2019.2 使用 gcc 編譯 C 語言源代碼,使用 Vivado HLS 編譯與 SDAccel 流匹配的加速內(nèi)核。此外,Vitis 也使用與 SDAccel 相同的目標(biāo)平臺(tái)和賽靈思運(yùn)行時(shí)。這意味著新環(huán)境能夠兼容源代碼,SDAccel 項(xiàng)目只需少量修改或完全無需任何修改就能在 Vitis 內(nèi)完成構(gòu)建。在遷移源代碼時(shí),用戶能夠使用 Vitis IDE 或 v++ 命令行工具鏈選擇性構(gòu)建新項(xiàng)目。
3. IDE 遷移
使用 Vitis IDE 遷移項(xiàng)目時(shí),只需將所有源代碼文件從 SDAccel 項(xiàng)目添加到新的 Vitis 項(xiàng)目中,最好是指向同一器件。使用右鍵菜單上的“import sources”選項(xiàng)能夠輕松完成這一操作。一旦源文件導(dǎo)入完成,必須向二進(jìn)制容器添加內(nèi)核函數(shù)(如同它們?cè)谠柬?xiàng)目中那樣),并且任何定制構(gòu)建設(shè)置也需要手動(dòng)復(fù)制。
4. 命令行遷移
要對(duì)使用命令行(通常是通過生成文件)構(gòu)建的項(xiàng)目進(jìn)行遷移,必須用 v++ 調(diào)用替換 xocc 調(diào)用。類似地,必須用 g++ 調(diào)用替換 xcpp 調(diào)用,即直接調(diào)用主機(jī) c++ 編譯器。新的 v++ 工具提供的命令行選項(xiàng)與 SDAccel 下的 xocc 工具一樣,因此無需做其他修改。請(qǐng)參閱 UG1393 進(jìn)一步了解 Vitis 2019.2 有關(guān)工具變化的詳細(xì)說明。
在 SDAccel 樣例生成文件中替換 XOCC 和 CXX
修改完成后,就可以使用 Vitis 工具構(gòu)建之前的 SDAccel 項(xiàng)目:
和以往一樣構(gòu)建 SDAccel 示例,但這次使用 Vitis 路徑和工具
5.結(jié)論
雖然 Vitis 2019.2 將所有賽靈思軟件工具集成在統(tǒng)一平臺(tái)上,但 SDAccel 流并沒有顯著變化,這使得遷移工作簡(jiǎn)單易行?,F(xiàn)有項(xiàng)目在源代碼上兼容新工具鏈,因此基本無需修改,它們就能直接獲得 Vitis 2019.2 統(tǒng)一軟件平臺(tái)提供的優(yōu)勢(shì)。
賽靈思高級(jí)合作伙伴 DesignLinx 為運(yùn)行在 Vitis 和 SDAccel 平臺(tái)上的加速應(yīng)用提供開發(fā)服務(wù),同時(shí)提供云端和本地硬件部署服務(wù)。
-
賽靈思
+關(guān)注
關(guān)注
32文章
1794瀏覽量
131369 -
數(shù)據(jù)中心
+關(guān)注
關(guān)注
16文章
4827瀏覽量
72244
原文標(biāo)題:將 SDAccel 項(xiàng)目遷移到 Vitis 2019.2 的技巧
文章出處:【微信號(hào):FPGA-EETrend,微信公眾號(hào):FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論