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

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

3天內不再提示

使用VVAS調用HLS生成硬件加速器的主要流程

XILINX開發(fā)者社區(qū) ? 來源:XILINX開發(fā)者社區(qū) ? 2023-08-04 11:00 ? 次閱讀

本文作者:AMD 工程師Shaoyi Chen

本篇博客介紹 VVAS 框架所支持調用的 H/W(HLS) 內核。 H/W 內核指的是使用 HLS 工具生成的在 FPGA 部分執(zhí)行的硬件功能模塊。

HLS kernel 創(chuàng)建:

我們以 smartcam 的預處理作為例子,相關的代碼可以在參考鏈接中找到。xf_pp_pipeline 的作用是將輸入圖像的格式從 NV12 轉換為 BGR,再進行減均值和歸一化操作。xf_pp_pipeline 的實現基于 HLS vision library。Vitis 視覺庫是為在 Vitis 開發(fā)環(huán)境中工作而設計的,它為在 FPGA 設備上加速的計算機視覺功能提供了一個軟件接口。Vitis 視覺庫的功能大多與 OpenCV 的功能相似。更多的詳細說明可以在參考鏈接中找到。

c8337eb2-31ed-11ee-9e74-dac502259ad0.png

xf_pp_pipeline_accel.cpp 作為硬件的一部分,需要將它和 platform 結合在一起。v++ 將 HLS kernel 打包為 xo 文件用于后續(xù)的硬件集成。

c874c03e-31ed-11ee-9e74-dac502259ad0.png

kv260_ispMipiRx_vcu_DP 是 smartcam 應用使用的 platform,xf_pp_pipeline.cpp 打包成 xo 對象后,通過v++ 鏈接為完整的硬件工程并生成 xclbin 文件。完整的硬件框圖如下圖所示,紅框部分為對應的 HLS kernel。

c888a45a-31ed-11ee-9e74-dac502259ad0.png

Kernel 調用:

使用 VVAS 框架為 xf_pp_pipeline.cpp 編寫自定義驅動是要實現四個函數,分別是:

xlnx_kernel_start

xlnx_kernel_done

xlnx_kernel_init

xlnx_kernel_deinit

xlnx_kernel_init() 函數讀取 json 文件中的 mean_r、mean_g、mean_b、scale_r、scale_g、scale_b。

c8c0396a-31ed-11ee-9e74-dac502259ad0.png

xlnx_kernel_start() 函數為 HLS kernel 配置參數。

c8d910a2-31ed-11ee-9e74-dac502259ad0.png

xlnx_kernel_deinit() 函數用來釋放不需要的句柄。

c916426a-31ed-11ee-9e74-dac502259ad0.png

xlnx_kernel_done() 函數進行超時檢測。

c92d6b0c-31ed-11ee-9e74-dac502259ad0.png

通過這四個函數就完成了 VVAS 自定義插件的設計。在 smartcam 應用運行時,通過命令行 gst-launch-1.0 -v filesrc XXXXXX ! queue ! vvas_xmultisrc kconfig="/opt/xilinx/kv260-smartcam/share/vvas/facedetect/preprocess.json" ! XXXXXX 完成插件的調用。


其中 preprocess.json 的內容為:

c9564338-31ed-11ee-9e74-dac502259ad0.png

本文簡要介紹了 VVAS 調用 HLS 生成的硬件加速器的主要流程,更多的細節(jié)可以參考 VVAS 手冊。

審核編輯:湯梓紅

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

    關注

    1643

    文章

    21968

    瀏覽量

    614307
  • amd
    amd
    +關注

    關注

    25

    文章

    5566

    瀏覽量

    135916
  • 內核
    +關注

    關注

    3

    文章

    1410

    瀏覽量

    41118
  • 硬件加速器
    +關注

    關注

    0

    文章

    42

    瀏覽量

    12997
  • Vitis
    +關注

    關注

    0

    文章

    147

    瀏覽量

    7836

原文標題:開發(fā)者分享|使用 VVAS 調用硬件加速器

文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏

    評論

    相關推薦
    熱點推薦

    無法導入硬件加速器

    嗨!我已經創(chuàng)建了一個硬件加速器(在vhdl中)并且合成成功完成。但是,當我使用創(chuàng)建和導入外圍設備向導時,它向我顯示我的包在庫中不可用,盡管它是。我能做什么 ???L'enfer,c'est l
    發(fā)表于 02-27 14:15

    H.264解碼中CABAC硬件加速器怎么實現?

    H.264解碼中CABAC硬件加速器怎么實現?
    發(fā)表于 06-07 06:48

    問下ARM3的硬件加速器只能用verilog寫嗎?

    問下ARM3的硬件加速器只能用verilog寫嗎?
    發(fā)表于 09-30 10:45

    利用硬件加速器提高處理的性能

    處理內部集成的硬件加速器可以實現三種廣泛使用的信號處理操作:FIR(有限沖激響應)、IIR(無限沖激響應)和FFT(快速傅里葉變換)。硬件加速器減輕了核處理的負擔,能潛在的提升處理
    發(fā)表于 12-04 15:22 ?1507次閱讀

    Veloce仿真環(huán)境下的SoC端到端硬件加速器功能驗證

    很多人認為硬件加速器無非是一種速度更快的仿真而已。毫無疑問,由于硬件加速器使用物理硬件進行仿真,使用硬件加速器驗證復雜的集成電路和大型片上
    發(fā)表于 03-28 14:50 ?4136次閱讀
    Veloce仿真環(huán)境下的SoC端到端<b class='flag-5'>硬件加速器</b>功能驗證

    基于Xilinx FPGA的Memcached硬件加速器的介紹

    本教程討論基于Xilinx FPGA的Memcached硬件加速器的技術細節(jié),該硬件加速器可為10G以太網端口提供線速Memcached服務。
    的頭像 發(fā)表于 11-27 06:41 ?3929次閱讀

    毫米波傳感1443硬件加速器的簡單介紹

    2.6 mmWave波形傳感簡介1443硬件加速器
    的頭像 發(fā)表于 05-08 06:20 ?3650次閱讀
    毫米波傳感<b class='flag-5'>器</b>1443<b class='flag-5'>硬件加速器</b>的簡單介紹

    硬件加速器提升下一代SHARC處理的性能

    硬件加速器提升下一代SHARC處理的性能
    發(fā)表于 04-23 13:06 ?6次下載
    <b class='flag-5'>硬件加速器</b>提升下一代SHARC處理<b class='flag-5'>器</b>的性能

    OpenHarmony 分論壇-華秋電子新硬件加速器

    OpenHarmony 分論壇-華秋電子新硬件加速器 今天的華為開發(fā)者大會2021上,OpenHarmony分論壇上展示了華秋電子新硬件加速器 。 HDC分論壇-OpenHarmony 分論壇推薦鏈接:http://t.elecfans.com/live/1708.htm
    的頭像 發(fā)表于 10-23 16:53 ?1930次閱讀
    OpenHarmony 分論壇-華秋電子新<b class='flag-5'>硬件加速器</b>

    OpenHarmony Dev-Board-SIG專場:OpenHarmony 新硬件加速器

    OpenHarmony Dev-Board-SIG專場:OpenHarmony 新硬件加速器
    的頭像 發(fā)表于 12-28 15:12 ?1523次閱讀
    OpenHarmony Dev-Board-SIG專場:OpenHarmony 新<b class='flag-5'>硬件加速器</b>

    什么是AI加速器 如何確需要AI加速器

    AI加速器是一類專門的硬件加速器或計算機系統(tǒng)旨在加速人工智能的應用,主要應用于人工智能、人工神經網絡、機器視覺和機器學習。
    發(fā)表于 02-06 12:47 ?5045次閱讀

    用于 AI 應用的硬件加速器設計師指南

    當 AI 設計人員將硬件加速器整合到用于訓練和推理應用的定制芯片中時,應考慮以下四個因素
    發(fā)表于 08-19 11:35 ?1894次閱讀
    用于 AI 應用的<b class='flag-5'>硬件加速器</b>設計師指南

    借助硬件加速器開發(fā)您的設計

    借助硬件加速器開發(fā)您的設計
    的頭像 發(fā)表于 01-03 09:45 ?1107次閱讀

    VVAS調用HLS生成硬件加速器主要流程介紹

    我們以smartcam的預處理作為例子。xf_pp_pipeline的作用是將輸入圖像的格式從NV12轉換為BGR,再進行減均值和歸一化操作。
    的頭像 發(fā)表于 06-26 16:55 ?1436次閱讀
    <b class='flag-5'>VVAS</b><b class='flag-5'>調用</b><b class='flag-5'>HLS</b><b class='flag-5'>生成</b><b class='flag-5'>硬件加速器</b>的<b class='flag-5'>主要</b><b class='flag-5'>流程</b>介紹

    VVAS調用HLS生成硬件加速器主要流程

    本文介紹VVAS框架所支持調用的H/W(HLS)內核
    的頭像 發(fā)表于 07-14 15:55 ?1030次閱讀
    <b class='flag-5'>VVAS</b><b class='flag-5'>調用</b><b class='flag-5'>HLS</b><b class='flag-5'>生成</b>的<b class='flag-5'>硬件加速器</b>的<b class='flag-5'>主要</b><b class='flag-5'>流程</b>

    電子發(fā)燒友

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

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