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

    文章

    1797

    浏览量

    133147
  • 数据中心
    +关注

    关注

    16

    文章

    5515

    浏览量

    74649

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    无质量损失的数据迁移: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 2809次阅读
    如何在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 982次阅读

    AMD Vitis AI 5.1测试版发布

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

    如何在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 1484次阅读
    如何在AMD <b class='flag-5'>Vitis</b> Unified 2024.2中连接到QEMU

    使用AMD Vitis Unified IDE创建HLS组件

    这篇文章在开发者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 传统 IDE) 的基础上撰写,但使用的是 AMD Vitis Unified IDE,而不是之前传统版本的
    的头像 发表于 06-20 10:06 1915次阅读
    使用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 1277次阅读
    如何使用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 998次阅读
    从Keil MDK到IAR EWARM:通过工程<b class='flag-5'>迁移</b>实现<b class='flag-5'>项目</b>资产的更好管理

    请问项目从RT1024迁移到RT1064的最快方法是什么?

    我正在将我的项目从基于 RT1024 迁移到基于 RT1064 的下一代产品,是否有快速的方法,或者我只能手动完成? 谢谢!
    发表于 03-31 06:15

    如何项目从IAR迁移到Embedded Studio

    本文描述如何IAR EWARM项目迁移到SEGGER Embedded Studio(简称SES)中。
    的头像 发表于 02-25 17:11 1054次阅读
    如何<b class='flag-5'>将</b><b class='flag-5'>项目</b>从IAR<b class='flag-5'>迁移到</b>Embedded Studio

    使用AMD Vitis进行嵌入式设计开发用户指南

    由于篇幅有限,本文仅选取部分内容进行分享。 Vitis 简介 AMD Vitis 工具套件包含多种设计技术,用于开发以 AMD 器件(例如,AMD Versal 自适应 SoC 器件、AMD
    的头像 发表于 01-08 09:33 2163次阅读
    使用AMD <b class='flag-5'>Vitis</b>进行嵌入式设计开发用户指南

    AKI跨语言调用库神助攻C/C++代码迁移至HarmonyOS NEXT

    ,真正做到所“键”即所得。 这一创新框架的出现,正是为了解决开发者在迁移C/C++项目到HarmonyOS NEXT时面临的核心痛点。传统的NAPI接口调用复杂,学习成本高,开发者需要耗费大量精力进行适配
    发表于 01-02 17:08

    HarmonyOS Next 应用元服务开发-应用接续动态配置迁移保持迁移连续性

    INACTIVE等情况)。为了保证迁移过后的应用依然具有可以迁移回源端的能力,应在onCreate和onNewWant的迁移调用判断中,迁移
    发表于 12-30 10:30

    龙智直播预告:揭示现代化数据管理与版本控制优势、从SVN迁移到Helix Core的实践指导、迁移步骤等

    2025年1月9日(周四)14:00-14:45,Perforce中国授权合作伙伴-龙智将在线直播,分享为何您的传统数据管理与版本控制系统需要升级、Perforce Helix Core的显著优势,以及如何迁移到Helix Core等实用见解,以为您的数据管理与版本控制系统现代化转型提供有力支持。
    的头像 发表于 12-16 15:35 626次阅读
    龙智直播预告:揭示现代化数据管理与版本控制优势、从SVN<b class='flag-5'>迁移到</b>Helix Core的实践指导、<b class='flag-5'>迁移</b>步骤等