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

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

3天内不再提示

将SDAccel项目迁移到Vitis 2019.2的技巧

YCqV_FPGA_EETre 来源:FPGA开发圈 2020-06-28 10:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

介绍

DesignLinx 及其客户是赛灵思 SDAccel 开发环境的早期用户。他们使用 SDAccel 开发环境,针对搭载加速软件的亚马逊 AWS F1 和赛灵思 Alveo 数据中心加速器卡,开发云端应用和本地应用。

结合 SDSoC 和赛灵思 SDK,SDAccel 流现在是 2019.2 Vitis 统一软件平台的组成部分,便于开发者针对赛灵思器件上的所有软件任务使用统一平台。下面分享来自 DesignLinx 公司高级嵌入式软件工程师 Nathan Sullivan 所撰写的技巧:

1. Vitis 的优势

Vitis 2019.2 采用经过更新的 v++ 编译器,强化 IDE 项目组织,为嵌入式应用和数据中心应用提供统一的工具流。因为全部三种流程现在都集成在 Vitis 内部,所以无需针对不同类型的应用在 SDAccel、SDK 和 SDSoC 之间进行切换。除了 Vitis IDE 以外,通过 v++ 工具和 SDAccel 提供的 xocc/xcpp 流等生成文件,也为构建软件提供完整的命令行流程。

2. 易于迁移

Vitis 2019.2 使用 gcc 编译 C 语言源代码,使用 Vivado HLS 编译与 SDAccel 流匹配的加速内核。此外,Vitis 也使用与 SDAccel 相同的目标平台和赛灵思运行时。这意味着新环境能够兼容源代码,SDAccel 项目只需少量修改或完全无需任何修改就能在 Vitis 内完成构建。在迁移源代码时,用户能够使用 Vitis IDE 或 v++ 命令行工具链选择性构建新项目。

3. IDE 迁移

使用 Vitis IDE 迁移项目时,只需将所有源代码文件从 SDAccel 项目添加到新的 Vitis 项目中,最好是指向同一器件。使用右键菜单上的“import sources”选项能够轻松完成这一操作。一旦源文件导入完成,必须向二进制容器添加内核函数(如同它们在原始项目中那样),并且任何定制构建设置也需要手动复制。

4. 命令行迁移

要对使用命令行(通常是通过生成文件)构建的项目进行迁移,必须用 v++ 调用替换 xocc 调用。类似地,必须用 g++ 调用替换 xcpp 调用,即直接调用主机 c++ 编译器。新的 v++ 工具提供的命令行选项与 SDAccel 下的 xocc 工具一样,因此无需做其他修改。请参阅 UG1393 进一步了解 Vitis 2019.2 有关工具变化的详细说明。

在 SDAccel 样例生成文件中替换 XOCC 和 CXX

修改完成后,就可以使用 Vitis 工具构建之前的 SDAccel 项目:

和以往一样构建 SDAccel 示例,但这次使用 Vitis 路径和工具

5.结论

虽然 Vitis 2019.2 将所有赛灵思软件工具集成在统一平台上,但 SDAccel 流并没有显著变化,这使得迁移工作简单易行。现有项目在源代码上兼容新工具链,因此基本无需修改,它们就能直接获得 Vitis 2019.2 统一软件平台提供的优势。

赛灵思高级合作伙伴 DesignLinx 为运行在 Vitis 和 SDAccel 平台上的加速应用提供开发服务,同时提供云端和本地硬件部署服务。

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

    关注

    33

    文章

    1798

    浏览量

    133663
  • 数据中心
    +关注

    关注

    18

    文章

    5773

    浏览量

    75209

原文标题:将 SDAccel 项目迁移到 Vitis 2019.2 的技巧

文章出处:【微信号:FPGA-EETrend,微信公众号:FPGA开发圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Freescale半导体QFN封装迁移及MC9S08QG8/4微控制器解析

    的QFN封装迁移以及MC9S08QG8/4微控制器的相关特性。 文件下载: MC9S08QG44CDNE.pdf 一、QFN封装迁移 1.1 迁移原因 Freescale半导体的部分封装从金线
    的头像 发表于 04-09 16:15 202次阅读

    如何使用AMD Vitis硬件在环功能运行Vitis子系统设计

    到目前为止,本文关于 AMD Versal AIE 验证和 AMD Vitis 新的验证功能的研究,所有内容都基于仿真完成。
    的头像 发表于 04-02 10:29 7212次阅读
    如何使用AMD <b class='flag-5'>Vitis</b>硬件在环功能运行<b class='flag-5'>Vitis</b>子系统设计

    基于Vitis Model Composer完成全流程AI Engine开发

    基于Vitis Model Composer进行AI Engine(AIE)开发,核心优势体现在AIE专属优化、开发流程简化、灵活的适配性、高效验证及量产适配等方面。
    的头像 发表于 12-31 11:20 6327次阅读
    基于<b class='flag-5'>Vitis</b> Model Composer完成全流程AI Engine开发

    急急急!我正在使用vivado2019.2,请帮忙生成一个项目

    请帮忙生成一个项目:输入一个整数,输出该整数各位数之和,在触摸屏输入整数,在触摸屏输出计算结果。 使用的板子的family是Artix-7,package是fbg676,speed是-2,产生的代码
    发表于 12-19 23:17

    电子材料抗离子迁移方案!东亚合成 IXE/IXEPLAS,智美行科技免费试样

    离子迁移是电子材料失效的主要原因之一,封装材料中的 Na⁺、Cl⁻、Cu²⁺、Ag⁺等杂质离子,在电场、温湿度等环境因素作用下,会从材料内部迁移到布线表面或间隙中,形成导电通路,引发布线腐蚀、电路
    的头像 发表于 12-16 16:07 824次阅读
    电子材料抗离子<b class='flag-5'>迁移</b>方案!东亚合成 IXE/IXEPLAS,智美行科技免费试样

    无质量损失的数据迁移:Nikon SLM Solutions信赖3Dfindit企业版

    使用转换器CAD数据从一个系统传输到另一个系统,但这往往会导致数据的质量下降。因此,该公司决定使用3Dfindit企业版CAD数据迁移到新系统,便不会造成任何质量损失。这样,在保持最高数据质量
    发表于 11-25 10:06

    如何在AMD Vitis Unified IDE中使用系统设备树

    您将在这篇博客中了解系统设备树 (SDT) 以及如何在 AMD Vitis Unified IDE 中使用 SDT 维护来自 XSA 的硬件元数据。本文还讲述了如何对 SDT 进行操作,以便在 Vitis Unified IDE 中实现更灵活的使用场景。
    的头像 发表于 11-18 11:13 3323次阅读
    如何在AMD <b class='flag-5'>Vitis</b> Unified IDE中使用系统设备树

    AMD Vitis AI 5.1测试版现已开放下载

    AMD Vitis AI 5.1全新发布——新增了对 AMD Versal AI Edge 系列神经网络处理单元( NPU )的支持。Vitis AI 包含优化的 NPU IP、模型编译工具和部署 API,可在嵌入式平台上实现可扩展的高性能推理。
    的头像 发表于 11-08 09:24 1450次阅读

    AMD Vitis AI 5.1测试版发布

    AMD Vitis AI 5.1全新发布——新增了对 AMD Versal AI Edge 系列神经网络处理单元 (NPU) 的支持。Vitis AI 包含优化的 NPU IP、模型编译工具和部署 API,可在嵌入式平台上实现可扩展的高性能推理。
    的头像 发表于 10-31 12:46 1000次阅读

    如何在Keil中将NuMicro BSP从Arm编译器5迁移到编译器6?

    在Keil中将NuMicro BSP从Arm编译器5迁移到编译器6!
    发表于 08-20 06:29

    如何在AMD Vitis Unified 2024.2中连接到QEMU

    在本篇文章我们学习如何在 AMD Vitis Unified 2024.2 中连接到 QEMU。 这是本系列的第 2 篇博文。要了解如何设置和使用 QEMU + 协同仿真,请参阅开发者分享|在 AMD Versal 自适应 SoC 上使用简单的 QEMU + 协同仿真示
    的头像 发表于 08-06 17:24 2001次阅读
    如何在AMD <b class='flag-5'>Vitis</b> Unified 2024.2中连接到QEMU

    全新AMD Vitis统一软件平台2025.1版本发布

    全新 AMD Vitis 统一软件平台 2025.1 版正式上线!此最新版本为使用 AMD Versal AI 引擎的高性能 DSP 应用提供了改进后的设计环境。
    的头像 发表于 06-24 11:44 1944次阅读

    使用AMD Vitis Unified IDE创建HLS组件

    这篇文章在开发者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 传统 IDE) 的基础上撰写,但使用的是 AMD Vitis Unified IDE,而不是之前传统版本的
    的头像 发表于 06-20 10:06 2558次阅读
    使用AMD <b class='flag-5'>Vitis</b> Unified IDE创建HLS组件

    如何使用AMD Vitis HLS创建HLS IP

    本文逐步演示了如何使用 AMD Vitis HLS 来创建一个 HLS IP,通过 AXI4 接口从存储器读取数据、执行简单的数学运算,然后数据写回存储器。接着会在 AMD Vivado Design Suite 设计中使用此 HLS IP,并使用嵌入式
    的头像 发表于 06-13 09:50 2252次阅读
    如何使用AMD <b class='flag-5'>Vitis</b> HLS创建HLS IP

    从Keil MDK到IAR EWARM:通过工程迁移实现项目资产的更好管理

    对于需要统一开发环境或涉及多核架构(如Cortex-A/R)的项目,越来越多的用户选择从Keil MDK迁移到IAR EWARM。这就会面临着需要将之前的Keil MDK工程迁移到IAR EWARM的问题。本文
    的头像 发表于 05-08 09:03 1482次阅读
    从Keil MDK到IAR EWARM:通过工程<b class='flag-5'>迁移</b>实现<b class='flag-5'>项目</b>资产的更好管理