Vitis学习笔记(一)

Vitis学习笔记(一)——Getting-Started

Part One

基本概念

本部分一共有三部分概念
第一、Vitis编程和执行的模型
第二、Vitis执行的过程(Process)
第三、Vitis执行的目标(Target)

① 关于Vitis平台——

                           用标准编程语言开发和交付:FPGA的加速应用;
                           包含完整的开发环境;

开发环境

Vitis编程和执行模型——

Vitis加速应用包含两个部分:软件程序(sw)硬件加速内核(hw)
在这里插入图片描述
在上图中,左半部分即为sw,右半部分为hw。
SW部分:
① 使用C/C++语言编程,生成host文件,在CPU里运行(分为数据中心和嵌入式加速平台两种);
② 通过Xilinx Runtime library(XRT为接口)实现的用户空间API进行交互。
右半部分:
① 使用C/C++或RTL语言编程,生成kernel code,在安装了加速卡的FPGA里运行;
② 使用标准的AXI接口与Vitis硬件平台交互。

两种平台进行vitis加速:data-center or embedded acceleration platforms

常用的软件程序与硬件内核交互的方法

在这里插入图片描述

  1. 主机应用程序将内核所需的数据写入FPGA全局寄存器当中。
  2. 主机程序设置了内核的输入参数。
  3. 主机程序触发内核开始执行操作。
  4. 内核执行所需的计算,必要时访问全局内存以读取或写入数据。内核也可以使用流式连接与其他内核进行通信,将数据从一个内核传递到另一个内核。
  5. 内核通知主机操作完成。
  6. 主机程序将数据从全局内存转移回主机内存,或者可以将数据的所有权交给另一个内核。

③Vitis的构建过程

标准过程:

在这里插入图片描述
分为两部分(host program 和 kernel code)
Software Emulation: 即 host program : 使用GNU C++ Arm cross-compiler 编译链
Hardware Emulation: 即 kernel code :
第一步,将代码编译生成 .xo 文件.
第二步,将**.xo** 文件与硬件平台连接起来,生成xclbin文件.

④Vitis的构建目标

一共有三个目标:
Software Emulation
Hardware Emulation
Hardware

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值