色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

Vitis軟件平臺、vitis實例、裸機SOC(SDK)程序移植教程

電子設計 ? 來源:VagueCheung的博客 ? 作者:VagueCheung的博客 ? 2022-07-25 18:07 ? 次閱讀

本文轉載自:VagueCheung的博客

賽靈思公司(Xilinx)推出Vitis——這是一款統一軟件平臺,可以讓包括軟件工程師AI科學家在內的廣大開發者都能受益于硬件靈活應變的優勢。歷經5年、投入總計1000人打造而成,Vitis統一軟件平臺無需用戶深入掌握硬件專業知識,即可根據軟件或算法代碼自動適配和使用賽靈思硬件架構。此外,Vitis 平臺不限制使用專有開發環境,而是可以插入到通用的軟件開發工具中,并利用豐富的優化過的開源庫,使開發者能夠專注于算法的開發。Vitis獨立于Vivado設計套件,后者仍然繼續為希望使用硬件代碼進行編程的用戶提供支持。但是,Vitis也能夠通過將硬件模塊封裝成軟件可調用的函數, 從而提高硬件開發者的工作效率。

Vitis統一軟件平臺的四層架構

o4YBAGAKOeuARHC2AAOporZIYS4132.png

Vitis構建在基于堆棧的架構之上,共有四層。

第一層是基礎層,是Vitis目標平臺。該平臺由電路板和預編程I/O構成;

第二層是Vitis 核心開發套件,覆蓋開源賽靈思運行時庫,以管理不同域間的數據移動, 包括子系統、即將發布的Versal ACAP內的AI 引擎和必要的外部主機。此外,該層也提供編譯器、分析器和調試器等核心開發工具。這些工具均能與業界標準的構建系統與開發環境無縫集成;

在第三層,8個Vitis 庫提供400余種優化的開源應用。這8個庫分別是:Vitis 基本線性代數子程序(B LAS)庫、Vitis 求解器庫、Vitis安全庫、Vitis視覺庫、Vitis數據壓縮庫、Vitis計量金融庫、Vitis數據庫集和Vitis AI 庫。借助這些庫,軟件開發者可以使用標準的應用編程接口(API)來實現硬件加速;

Vitis AI是Vitis 平臺的第四層,也是最具有變革意義的一層。它集成了特定領域架構(DSA)。 DSA 提供了針對AI模型的硬件實現,開發者可以使用包括TensorFlow和Caffe等業界領先框架對其進行配置與編程。Vitis AI提供的工具鏈能在數分鐘內完成優化、量化和編譯操作,在賽靈思器件上高效地運行預先訓練好的AI模型。此外,它也為從邊緣到云端的部署提供了專用API,實現業界一流的推斷性能與效率。賽靈思陸續還將推出另一個DSA(Vitis Video),支持從FFmpeg直接進行編碼并提供同樣超級簡單且功能極強大的端到端視頻解決方案。目前,由合作伙伴公司提供的DSA包括:與GATK 集成用于基因分析的Illumina,與ElasticSearch 集成用于大數據分析的BlackLynx, 以及當前我們客戶正在使用的專有DSA。

Vitis擁有三大特點:第一是開放,第二是標準,第三是免費。首先,Vitis統一軟件平臺支持在賽靈思異構平臺上開發嵌入式軟件和加速應用,包括FPGA、SoC和Versal ACAP,為邊緣、云和混合計算應用 加速提供了統一編程模型。其次,Vitis可與高層次框架進行集成,可以通過加速庫采用C、C++Python進行開發,也可以使用基于RTL的加速器和低層次運行是API對實現方案進行粒度更精確的控制。

硬件加速應用程序開發流程:

對于基于FPGA的加速,Vitis核心開發套件支持用戶通過API函數創建軟件應用程序,例如OpenCL函數,在Alveo加速卡上運行加速硬核。Vitis核心開發套件也支持將軟件程序運行在基于Linux嵌入式處理器平臺上,例如ZYNQ的UltraScale+MPSOC設備。對于嵌入式處理器平臺Vitis開發套件執行模型也通過OpenCL API和基于Linux的Xilinx運行庫(XRT)來調度硬核和控制數據的搬移。(加速庫和xilinx運行庫在GitHub上可下載)

Vitis核心開發套件可支持Alveo U50、U200、U250、U280加速卡,也支持zcu102、zcu104、zc702、zc706嵌入式處理器平臺。除了以上比較流行的平臺外,同時也支持自定義平臺。

Vitis軟件平臺允許用戶將數據中心應用程序移植到嵌入式平臺上。Vitis核心開發套件不僅具有適用于硬核的V++編譯器。也具有運行在X86主機的g++編譯器和運行在Xilinx設備的嵌入式處理器的Arm編譯器

Vitis與SDK對比:

pIYBAGAKOiuAcbwdAAFPhTf3mTA068.png

系統項目指的是什么?域domain可以理解成SDK中的BSP么?

系統項目就是指在Vitis中創建的application。

pIYBAGAKOnCAd4RrAAFR1EC4nTk200.png

Vitis軟件平臺 SDK
可在Vitis中直接創建一個平臺項目(需要添加vivado生成的XSA文件或者從平臺庫中添加任意平臺作為基礎例如vck190.xsa、zc702.xsa、zc706.xsa、zcu102.xsa、zed.xsa) SDK是從vivado工程中導出硬件平臺項目
為平臺添加域 創建BSP
創建應用程序(通過平臺的域) 創建應用程序(通過BSP)
改制一個預置平臺 無提及
可在一個系統項目中管理多個應用程序 無提及
修改并且更新硬件 基本相同,工作流程可能有細微改變
在硬件上調試應用程序 基本相同,工作流程可能有細微改變
在一個系統項目下運行和調試應用程序 無提及
創建boot image 基本相同,工作流程可能有細微改變
Flash 編程 基本相同,工作流程可能有細微改變
生成設備樹 基本相同,工作流程可能有細微改變
通過User-Modify/Custom FSBL測試應用程序 基本相同,工作流程可能有細微改變
修改域源文件 基本相同,工作流程可能有細微改變

實測Vitis編譯時間要比SDK編譯時間略長;

Vitis實現簡單的HelloWord

基于黑金ZYNQ 7020開發板創建工程,打開vivado2019.2一步步創建工程,vivado部分還是與之前一模一樣沒有任何改變。

pIYBAGAKOr6AQoEfAAD0LutSQIw236.png

pIYBAGAKOweANY-LAABJdAmuS-U471.png

pIYBAGAKO5CANq9yAABvER9AfFw755.png

pIYBAGAKO86AWqTsAABoYHI-DVs374.png

pIYBAGAKPA2AMJK_AACXPiE3pBc295.png

pIYBAGAKPFyAa31QAABwD5HDRfk161.png

創建完工程,創建同一個 Block Design工程

o4YBAGAKPJyACVLjAAEqeU2WE4M440.png

添加ZYNQ 核

pIYBAGAKPOuAVHgeAACL23gTgW4011.png

雙擊ZYNQ核設置一下,這里設置跟板子一致UART1,波特率選擇115200,沒有用到PL,AXI也沒使用。

pIYBAGAKPSqAC3NEAAD30cfmWWs263.png

o4YBAGAKPWqAP4JtAAClhVwyALY696.png

pIYBAGAKPaiAbfsfAADnDvbEND4033.png

時鐘默認即可,黑金的7020最高可以跑到767Mhz。

pIYBAGAKPeeABSsTAADE1HNh-os689.png

pIYBAGAKPiWAS-etAADXWcnqBBo839.png

o4YBAGAKPmSAKsKNAACblvJcb_Y075.png

設置完成。自動連線。

o4YBAGAKPqKAA4PaAABfx4_yh3g463.png

pIYBAGAKPwGAb2zxAACmPmKfaGg432.png

生成文件:

pIYBAGAKP0CAXzd-AAGO3AvIcA4804.png

o4YBAGAKP3-AeOPHAABW2Gtluco646.png

生成頂層文件:

o4YBAGAKP7-AUoSRAAGElqgodyE015.png

o4YBAGAKQD2AOnK8AABGQGFKiAw989.png

至此PL部分完成了。

o4YBAGAKQHuAVqpaAAC4nqkpGlw077.png

導出設計到軟件,沒有用到PL,所以不用綜合生成bit文件了,這里直接導出

pIYBAGAKQMOAem6IAADfkCbYXtk395.png

pIYBAGAKQQGAfb1bAAAxvSd0W7k381.png

導出完成,這里開始軟件操作,打開vitis先創建一個 platform project導入剛才的設計xsa文件。

這里與SDK不同,SDK是從vivado直接Launch打開,而Vitis是獨立與vivado IDE的開發工具。

o4YBAGAKQYWAVzsuAABzyW5HlwA499.png

pIYBAGAKQcqAWmI8AAFBsic-iq4965.png

o4YBAGAKQgmAKhCMAABv7dQaxOI359.png

選擇Vivado導出的設計,點擊 finish完成

o4YBAGAKQk-AeffXAABntidiqCk983.png

pIYBAGAKQquABnDsAAEv5OZCubM013.png

創建一個Application project:

o4YBAGAKQuqAcggwAAD5QKXbUr0062.png

o4YBAGAKQymAcJrdAAFJMOAGNYs460.png

pIYBAGAKQ2qAQAYiAAByTtpg-fI706.png

o4YBAGAKQ62AfstwAAA-ltSrND8241.png

o4YBAGAKQ-uAQ11AAAB0cy16KA8513.png

o4YBAGAKRCqAImi_AAEyFv6rDA4410.png

編譯helloworld工程

o4YBAGAKRGyAOjHUAAEFfstjnHk566.png

給板子接好上電,連接串口助手軟件,打開串口設置如下,com口根據實際而定。

o4YBAGAKRK6AFPTxAABK6rwDYos949.png

下載運行

o4YBAGAKRO6AcAZ7AAD4z84d0ms021.png

已經輸出了“hello world”

o4YBAGAKRS2AN4ANAACArXPXMDM913.png

移植vivado2019.2之前版本的SOC工程:

1)Vivado部分:

使用Vivado 2019.2打開之前版本的vivado工程項目 ,重新綜合生成bit流文件,如果工程中不設計PL部分則不需要生成bit文件。綜合通過之后導出硬件

File——Export——Export HardWare,導出成功后會發現在vivado工程路徑中會多出一個.XSA文件(個人理解與SDK導出的Hdf文件大同小異);

pIYBAGAKRW6AWV1vAAEGI-3Lpa4878.png

2)Vitis部分:

打開Vitis工具,創建一個Platform,設置項目名,添加vivado工程路徑中的.XSA文件。創建完Platform之后接下來創建一個Application項目,復制原工程SDK中的相應文件(.c和.h),粘貼到Vitis Apllication。

pIYBAGAKRayAPeUhAAB8d8_HEfo221.png

點擊編譯。右鍵app——DebugAs——DebugConfigurations

pIYBAGAKRe6AMhv1AAEhFOKdWPo603.png

嘗試分別選擇上圖中3個Debug Configuration,運行均能正確實現原SDK工程的功能;

還不清楚這三個配置有什么區別。

總結:SDK工程的移植基本沒什么太大的變化,Vitis只是將SDK從Vivado中抽離出來單獨運行而已;

審核編輯 黃昊宇

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

    關注

    3

    文章

    1067

    瀏覽量

    47783
  • Vitis
    +關注

    關注

    0

    文章

    148

    瀏覽量

    7851
收藏 1人收藏

    評論

    相關推薦
    熱點推薦

    如何使用AMD Vitis HLS創建HLS IP

    本文逐步演示了如何使用 AMD Vitis HLS 來創建一個 HLS IP,通過 AXI4 接口從存儲器讀取數據、執行簡單的數學運算,然后將數據寫回存儲器。接著會在 AMD Vivado Design Suite 設計中使用此 HLS IP,并使用嵌入式 Vitis
    的頭像 發表于 06-13 09:50 ?258次閱讀
    如何使用AMD <b class='flag-5'>Vitis</b> HLS創建HLS IP

    在任何平臺上使用PetaLinux的先決條件

    本篇文章介紹了在任何平臺上使用 PetaLinux 的先決條件。PetaLinux 是一種嵌入式 Linux 軟件開發套件 (SDK),主要用于基于 FPGA 的系統級芯片 (SoC)
    的頭像 發表于 04-24 10:40 ?417次閱讀
    在任何<b class='flag-5'>平臺</b>上使用PetaLinux的先決條件

    基于HPM_SDK_ENV開發應用程序的升級處理

    基于HPM_SDK_ENV開發應用程序的方式HPM_SDK_ENV是先楫半導體MCU的Windows集成開發環境,其包含HPM_SDK,工具鏈,依賴工具(cmake,ninja,ope
    的頭像 發表于 02-08 13:38 ?935次閱讀
    基于HPM_<b class='flag-5'>SDK</b>_ENV開發應用<b class='flag-5'>程序</b>的升級處理

    使用AMD Vitis進行嵌入式設計開發用戶指南

    由于篇幅有限,本文僅選取部分內容進行分享。 Vitis 簡介 AMD Vitis 工具套件包含多種設計技術,用于開發以 AMD 器件(例如,AMD Versal 自適應 SoC 器件、AMD
    的頭像 發表于 01-08 09:33 ?1321次閱讀
    使用AMD <b class='flag-5'>Vitis</b>進行嵌入式設計開發用戶指南

    全新AMD Vitis統一軟件平臺2024.2版本發布

    全新 AMD Vitis 統一軟件平臺 2024.2 版本已于近期推出。
    的頭像 發表于 12-11 15:06 ?974次閱讀

    AMD Vitis Unified Software Platform 2024.2發布

    近日,全新 AMD Vitis Unified Software Platform 2024.2 版本推出。
    的頭像 發表于 11-27 15:47 ?651次閱讀

    U50的AMD Vivado Design Tool flow設置

    AMD Alveo 加速卡使用有兩種流程,AMD Vitis Software Platform flow 和 AMD Vivado Design Tool flow。比較常見的是 Vitis
    的頭像 發表于 11-13 10:14 ?745次閱讀
    U50的AMD Vivado Design Tool flow設置

    用戶手冊 | 全志T113-S3開發板——SDK編譯指南

    前言:軟件開發套件(SDK)是為軟件工程師在特定的平臺上進行應用程序開發而提供的一系列軟件開發工
    的頭像 發表于 11-01 08:08 ?4571次閱讀
    用戶手冊 | 全志T113-S3開發板——<b class='flag-5'>SDK</b>編譯指南

    處理器SDK RTOS定制:修改板庫以更改UART實例

    電子發燒友網站提供《處理器SDK RTOS定制:修改板庫以更改UART實例.pdf》資料免費下載
    發表于 10-11 09:53 ?0次下載
    處理器<b class='flag-5'>SDK</b> RTOS定制:修改板庫以更改UART<b class='flag-5'>實例</b>

    在Jacinot6 SOC上集成VISION SDK和PSDK之間的虛擬DRM

    電子發燒友網站提供《在Jacinot6 SOC上集成VISION SDK和PSDK之間的虛擬DRM.pdf》資料免費下載
    發表于 09-24 11:28 ?0次下載
    在Jacinot6 <b class='flag-5'>SOC</b>上集成VISION <b class='flag-5'>SDK</b>和PSDK之間的虛擬DRM

    Jacinto6 SoC上VISION SDK和PSDKLA之間的IVA-HD共享

    電子發燒友網站提供《Jacinto6 SoC上VISION SDK和PSDKLA之間的IVA-HD共享.pdf》資料免費下載
    發表于 09-20 11:20 ?0次下載
    Jacinto6 <b class='flag-5'>SoC</b>上VISION <b class='flag-5'>SDK</b>和PSDKLA之間的IVA-HD共享

    如何在RT-thread studio的裸機例程上移植freertos?

    如何在RT-thread studio的裸機例程上移植freertos
    發表于 09-13 06:32

    FPGA無芯片HDMI接入方案及源碼

    。 2.選擇FPGA板卡和 Vivado 工具版本 下載與主板和 Vivado 工具版本相關的硬件 (hw) 和軟件 (sw) zip 文件。 下載的 zip 文件中既包含 .bit 文件,也
    發表于 07-16 19:25

    將應用程序從NoOS SDK移植到RTOS SDK遇到異常怎么解決?

    我正在將應用程序從 NoOS SDK 移植到 RTOS SDK。但現在有問題了。它得到了致命的異常 28。 問:context(stack) 通過espconn_regist_recv
    發表于 07-11 07:56

    BES2300 SDK簡介

    BES平臺SDK軟件開發
    發表于 06-14 16:56 ?1次下載
    主站蜘蛛池模板: 無码一区中文字幕少妇熟女网站 | 国产XXXXXX农村野外 | 亚洲欧洲精品A片久久99 | 好吊妞国产欧美日韩视频 | 女人十八毛片水真多啊 | 蜜桃久久久亚洲精品成人 | 欧美国产精品久久久乱码 | 2021国产精品视频一区 | 国产女人91精品嗷嗷嗷嗷 | 国产精品成人免费视频99 | 小SB几天没做SAO死了H | 国产99久久九九免费精品无码 | 精品无人区麻豆乱码无限制 | 久久本道久久综合伊人 | 啊片色播电影 | 人妻无码AV中文系列 | 女教师二十三歳 | 成人免费观看在线视频 | 国产高清视频在线观看不卡v | 中国人泡妞www免费 中国拍三a级的明星女 | 亚洲无碼网站观看 | 久久视频精品38线视频在线观看 | 精品淑女少妇AV久久免费 | a视频免费在线观看 | 777黄色片 | 国产精品大全国产精品 | 国产精品99久久久久久AV蜜臀 | 欧美性最猛xxxx在线观看视频 | 一个人的免费完整在线观看HD | 国产区在线不卡视频观看 | 无码国产精品高潮久久9 | 乌克兰女人与动ZOZO | 国产精品免费大片一区二区 | 黄色网址在线看 | 亚洲人视频在线观看 | 亚洲欧美自拍明星换脸 | 成都电影免费中文高清 | 日日操天天操夜夜操 | 灌饱娇嫩H将军公主最新章节 | 丝瓜视频樱桃视频在线观看免费 | 蜜臀AV色欲A片无码一区 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品