0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何创建在目标平台上实现设计加速所需的软件镜像

电子工程师 来源:XILINX威廉希尔官方网站 社区 作者:XILINX威廉希尔官方网站 社区 2020-10-26 15:48 次阅读

这是《创建 Vitis 加速平台》系列的第 2 篇博文。

在前文中,我们讲解了如何创建硬件以及如何通过 XSA 将元数据 (metadata) 传递给 Vitis。

在本文中,我们将讲解如何使用此 XSA 以及如何创建在目标平台上实现设计加速所需的软件镜像。

熟悉 OpenCL 的用户可能对“内核 (kernel)”一词已耳熟能详,在 OpenCL 中执行功能的位置即被称为“内核”。

在 Vitis 加速流程中也使用同样的命名法。但在其中使用 Xilinx Runtime (XRT) API 来执行内核。

XRT 基于 Linux 并在 x86 或开发板(AArch64 或 Arm)上运行。XRT 的功能与用于其执行的架构彼此独立,即,它并不知晓自己是在 x86 上执行还是在开发板(AArch64 或 Arm)上执行。

但对于边缘(AArch64 或 Arm)平台,我们需要添加 ZOCL 驱动。ZOCL 驱动用于为每个内核分配资源。在本文中,我们将讲解如何向全新或现有 PetaLinux 工程添加 XRT 和 ZOCL。

向 PetaLinux 工程添加 XRT:

petalinux-create -t project --template zynqMP -n zcu104_base_sw

cd zcu104_base_sw

petalinux-config --get-hw-description=
Select DTG Settings -> (zcu104-revc) MACHINE_NAME

打开project-spec/meta-user/

conf/user-rootfsconfig,并添加如下内容:

CONFIG_xrt

CONFIG_xrt-dev

CONFIG_zocl

CONFIG_opencl-clhpp-dev

CONFIG_opencl-headers-dev

CONFIG_packagegroup-petalinux-opencv

petalinux-config -c rootfs
User Packages, and select all here

下一步,将 zocl 驱动节点添加到 system-user.dtsi。

/include/ "system-conf.dtsi"

/{

};

&axi_intc_0 {

xlnx,kind-of-intr = <0x0>;

xlnx,num-intr-inputs = <0x20>;

};

&amba {

zyxclmm_drm {

compatible = "xlnx,zocl";

status = "okay";

interrupt-parent = <&axi_intc_0>;

interrupts = <0  4>, <1  4>, <2  4>, <3  4>,

<4  4>, <5  4>, <6  4>, <7  4>,

<8  4>, <9  4>, <10 4>, <11 4>,

<12 4>, <13 4>, <14 4>, <15 4>,

<16 4>, <17 4>, <18 4>, <19 4>,

<20 4>, <21 4>, <22 4>, <23 4>,

<24 4>, <25 4>, <26 4>, <27 4>,

<28 4>, <29 4>, <30 4>, <31 4>;

};

};

然后,运行以下命令:

petalinux-build

cd images/linux

petalinux-build --sdk

petalinux-package --sysroot

完整性检查:

在封装平台之前,有必要执行完整性检查,以确保已将 XRT 和 ZOCL 添加到 rootfs 中。

方法是在板上启动 Linux 镜像:

cd images/linux

petalinux-package --boot --fpga --u-boot

将以下文件置于启动器件上,然后启动

image.ub

BOOT.BIN

boot.scr

验证XRT 库:

在 /usr/lib 目录中对 XRT 库执行 grep 操作:

ls /usr/lib | grep libxrt_core

针对 libxilinxopencl 重复此操作:

ls /usr/lib | grep libxilinxopencl

验证ZOCL DT 节点:

列出 amba 下的所有节点

ls /sys/devices/platform/amba

至此大功告成。

这样所得到的 Linux 镜像中已包含了 XRT 支持,并且针对开发板已启用该支持。不仅如此,我们已生成了 Vitis 中执行交叉编译所需的 sysroot。如果您计划设置一系列定制平台用于相同架构,那么只需为每个版本创建 1 个 sysroot 即可(例如,2020.1)。

原文标题:开发者分享 | 在 PetaLinux 中为加速平台创建软件工程

文章出处:【微信公众号:XILINX威廉希尔官方网站 社区】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 内核
    +关注

    关注

    3

    文章

    1375

    浏览量

    40312
  • Linux
    +关注

    关注

    87

    文章

    11314

    浏览量

    209772
  • 软件
    +关注

    关注

    69

    文章

    4965

    浏览量

    87640

原文标题:开发者分享 | 在 PetaLinux 中为加速平台创建软件工程

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    docker通过中间镜像加速部署

    使用 docker 打包镜像的时候, 每次耗费时间最多的就是 docker build 的过程. 特别是对于前端工程的打包, 有时候下载依赖包的时间就要 10 几分钟, 这就导致发布版本的效率极低.
    的头像 发表于 01-06 12:39 52次阅读

    基于Flexus X加速MySQL镜像搭建XXL-JOB任务调度平台

    随着云计算威廉希尔官方网站 的飞速发展,Flexus 云服务器 X 凭借其高性能和高可用性,成为了众多企业和开发者的首选。本文旨在通过搭建基于 Flexus X 加速 MySQL 镜像的 XXL-JOB 任务调度
    的头像 发表于 12-29 15:45 121次阅读
    基于Flexus X<b class='flag-5'>加速</b>MySQL<b class='flag-5'>镜像</b>搭建XXL-JOB任务调度<b class='flag-5'>平台</b>

    飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程介绍之烧写所需镜像

    USB OTG烧写所需镜像在:ELF 1开发板资料包\\06-常用工具\\06-4 烧写工具\\OTG烧写\\mfgtools\\Profiles\\Linux\\OS Firmware
    发表于 12-20 09:05

    HAL库在Arduino平台上的使用

    HAL库在Arduino平台上的使用 Arduino平台是一个开源的电子原型平台,它包括硬件(基于微控制器的电路板)和软件(Arduino IDE)。Arduino
    的头像 发表于 12-02 14:04 336次阅读

    NVIDIA IGX平台加速实时边缘AI应用

    实时边缘 AI 对于医疗、工业和科学计算至关重要,因为这些任务关键型应用需要即时数据处理、低延迟和高可靠性,以确保作出及时准确的决策。这些挑战不仅涉及硬件平台上的高带宽传感器处理和 AI 计算,还需要企业级 AI 软件来支持整个边缘计算
    的头像 发表于 09-09 10:14 538次阅读
    NVIDIA IGX<b class='flag-5'>平台</b><b class='flag-5'>加速</b>实时边缘AI应用

    Elektrobit EB zoneo平台助力提升车辆网络性能

    有增无减。这种快速演变正在影响硬件和软件的设计和性能,并推动了对最大化计算能力和创建更有效的网络通信的需求。为满足这些需求,汽车制造商需要智能和可扩展的工具来开发、配置和启用最新平台上的全新功能,并同时
    的头像 发表于 08-27 14:50 444次阅读
    Elektrobit EB zoneo<b class='flag-5'>平台</b>助力提升车辆网络性能

    ARM平台实现Docker容器威廉希尔官方网站

    平台上,而不用担心运行环境的变化导致应用无法正常运行的情况。 更轻松的维护和拓展:Docker使用的分层存储以及镜像的威廉希尔官方网站 ,使得应用重复部分的复用更为容易,也使得应用的维护更新更加简单,基于基础镜像
    发表于 07-25 14:36

    ARM平台实现Docker容器威廉希尔官方网站

    T113-i工业核心板在支持Docker后,其性价比还将进一步提升!图2基于T113-i平台实现Docker容器威廉希尔官方网站 如下为基于全志T113-i工业平台,演示Docker安装、构建镜像
    发表于 07-17 11:05

    深度学习算法在嵌入式平台上的部署

    随着人工智能威廉希尔官方网站 的飞速发展,深度学习算法在各个领域的应用日益广泛。然而,将深度学习算法部署到资源受限的嵌入式平台上,仍然是一个具有挑战性的任务。本文将从嵌入式平台的特点、深度学习算法的优化、部署流程、代码示例以及面临的挑战和未来趋势等方面,详细探讨深度学习算法在嵌入式
    的头像 发表于 07-15 10:03 1472次阅读

    在arduino平台上开发esp32c3,twai队列异常的原因?

    我在arduino平台上开发esp32c3。采用了freertos创建了几个任务。主要有主循环loop和CAN数据读写任务。主循环的优先级高于CAN读写任务。现在的问题是我在CAN任务执行完毕检查
    发表于 06-11 06:16

    用ISD平台建立工程后,有软件可以把在ISD平台上编译后生成的文件用imontionlink直接烧录进芯片吗?

    用ISD平台建立工程后,在ISD平台上有烧录程序的入口,有软件可以把在ISD平台上编译后生成的文件用imontionlink直接烧录进芯片吗?
    发表于 05-20 07:44

    华中科技大学开源镜像站上线44个软件镜像,欢迎下载

    此站早在去年11月即在学校内部试运行,正式开放之前,已积累大量开放资源,包括44款开源软件的最新版本。截至目前,该镜像库已有超40TB的有效镜像数据。
    的头像 发表于 05-09 15:53 608次阅读

    高通支持Meta Llama 3大语言模型在骁龙旗舰平台上实现终端侧执行

    高通和Meta合作优化Meta Llama 3大语言模型,支持在未来的骁龙旗舰平台上实现终端侧执行。
    的头像 发表于 04-20 09:13 524次阅读

    能在Meteor Lake平台上使用SDK 3.5吗?

    SDK 是 3.6 版,不支持 CYPD6127 部件。 那么,我能在 Meteor Lake 平台上使用 SDK 3.5 吗? SDK 3.5 - 平台选择有"MTL" 关键字 :
    发表于 03-04 06:32

    把CY8C4146平台上工程移植到CY8C4147平台上,用户程序没运行的原因?

    客户现在想把CY8C4146平台上工程移植到CY8C4147平台上,在topdesign重新选择4147,管脚也调整了一下,编译重新生成底层代码,creator4.2IDE编译没报错,同时同步更新
    发表于 02-21 06:04