vitis 订阅
葡萄属种质资源极为丰富,包括亚属、种、亚种、变种,可以鲜食、酿酒、制汁、制干、制罐,还可以作抗性砧木及杂交育种的重要材料等。葡萄属已确定的种有70多个,已登记的品种有16000个。 展开全文
葡萄属种质资源极为丰富,包括亚属、种、亚种、变种,可以鲜食、酿酒、制汁、制干、制罐,还可以作抗性砧木及杂交育种的重要材料等。葡萄属已确定的种有70多个,已登记的品种有16000个。
信息
拉丁学名
Vitis L.
被子植物门 Angiospermae
植物界
亚    纲
原始花被亚纲 Archichlamydeae
鼠李目 Rhamnales
葡萄属
中文学名
葡萄属
葡萄科 Vitaceae
双子叶植物纲 Dicotyledoneae
模式种
葡萄Vitis vinifera L.
分布区域
分布于世界温带或亚热带
葡萄属形态特征
木质藤本,有卷须。叶为单叶、掌状或羽状复叶;有托叶,通常早落。花5数,通常杂性异株,稀两性,排成聚伞圆锥花序;萼呈碟状,萼片细小;花瓣凋谢时呈帽状粘合脱落;花盘明显,5裂;雄蕊与花瓣对生,在雌花中不发达,败育;子房2室,每室有2颗胚珠;花柱纤细,柱头微扩大。果实为一肉质浆果,有种子2-4颗。种子倒卵圆形或倒卵椭圆形,基部有短喙,种脐在种子背部呈圆形或近圆形,腹面两侧洼穴狭窄呈沟状或较阔呈倒卵长圆形,从种子基部向上通常达种子1/3处;胚乳呈M形。x=19。 [1] 
收起全文
精华内容
下载资源
问答
  • Xilinx:registered:Vitis:trade_mark:AI是在Xilinx硬件平台(包括边缘设备和Alveo卡)上进行AI推理的开发堆栈。 它由优化的IP,工具,库,模型和示例设计组成。 设计时考虑到了高效率和易用性,充分发挥了Xilinx ...
  • 该存储库在Vitis中以100 Gbit / s的速度提供TCP / IP网络支持,并提供了一些示例来演示其用法。 具有100 Gbps TCP / IP网络堆栈的Vitis该存储库在Vitis中以100 Gbit / s的速度提供TCP / IP网络支持,并提供了一些...
  • zcu106_vitis_platform_v1.txt

    2020-04-06 21:56:50
    解压到Vitis安装目录下的platform文件夹内,即可作为Vitis的默认平台进行使用。 可以开发XRT,Hardware Acceleration,OpenCL,Linux APP,Bare metal APP,RTOS APP等功能。 该platform内的sysroot包含了XRT,...
  • Xilinx Vitis(Vivado) 2019.2

    2020-03-11 09:35:05
    Vitis 统一软件平台可实现在 Xilinx 异构平台(包括 FPGA、SoC 和 Versal ACAP)上开发嵌入式软件和加速应用。它可为边缘、云和混合计算应用加速提供统一编程模型。 利用与高层次框架的集成,通过加速库采用 C、...
  • matlab自动生成verilog代码Vitis 模型作曲家 如何访问此存储库的内容? 从 2020.2 版本开始,我们将在 GitHub 中存储和管理产品示例的子集。 这样,用户将始终可以访问最新和最新的示例。 您可以从此存储库或直接从...
  • 开始使用Vitis软件工具,主要是关于xilinx新软件vitis的一些简单看法,没有啥新的内容,这些内容从官网中也能看到。
  • 本文是介绍xilinx最先的同意开发平台Vitis 文档名称是ug1400-Vitis Unified Software Platform Documentation
  • Vitis脚本示例 Vitis脚本编制工作流的示例和模板项目。 该项目演示了以下主题: 用HLS C ++编写的内核 使用内存映射与主机通信 AXI流与其他内核 用RTL编写的内核 自由运行的AXI流内核 从Verilog源构建并打包到XO...
  • Vitis-Tutorials-1.3-源码

    2021-02-15 15:17:46
    Vitis:trade_mark:深度教程 为所有开发人员释放新的设计体验 Vitis统一软件平台支持在异构Xilinx平台(包括FPGA,SoC和Versal ACAP)上开发嵌入式软件和加速应用程序。 它提供了用于加速Edge,Cloud和Hybrid计算...
  • vitis 2019.2  链接:https://pan.baidu.com/s/17pk0PLyFy4V67CW-CTIqDQ  提取码:ryf1  复制这段内容后打开百度网盘手机App,操作更方便哦 vivado hls 2019.1  链接:...
  • 《course_s2_ALINX_ZYNQ(AX7010_AX7020)开发平台Vitis应用教程V1.02》,很不错的资料,希望对你的学习工作有所帮助。
  • vitis_1.7z

    2020-01-09 09:39:38
    博客配套资源 https://blog.csdn.net/botao_li/article/details/103901856
  • Vitis指南 | Xilinx Vitis 系列(一)

    千次阅读 2021-02-11 18:48:52
    大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有不足之处,还请多多指教。 由于内容过多...

    大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有不足之处,还请多多指教。

    由于内容过多,首篇给大侠列出目录,后续有时间分篇连载发出,欢迎各位大侠关注“FPGA技术江湖”,我们是真正做事的团队,希望大家多多支持,如果想获取更多资源,可以加大辉哥微信,进交流群,可以永久性交流学习,共同进步。

    今天带来第一篇,介绍Vitis 2019.2软件平台发行说明、安装以及Vitis加速环境简介。后续还会带来详细的开发教程,敬请关注。话不多说,咱们就进入正题。

    VITIS简介

    作者:艮林子  校对:陆辉

    连载目录

    一、Vitis 2019.2软件平台发行说明

      1.1 Vitis软件平台中的内容

        1.1.1 硬件加速的应用程序开发流程

      1.2 改变行为

        1.2.1 从SDAccel迁移

        1.2.2 从SDSoC迁移

      1.3 支持平台

        1.3.1 数据中心加速卡

        1.3.2 嵌入式平台

    二、安装

    三、Vitis加速环境简介

      3.1 简介与概述

      3.2 FPGA加速

      3.3 执行模型

      3.4 建立过程

        3.4.1 主机程序构建过程

        3.4.2 FPGA二进制构建过程

      3.5 建立目标

        3.5.1 软件仿真

        3.5.2 硬件仿真

        3.5.3 系统

      3.6 使用Vitis软件平台加速应用程序的方法论

        3.6.1 文件受众和范围

        3.6.2 加速:工业类比

        3.6.3 设计设备加速应用程序的方法

        3.6.4 开发C / C ++内核的方法论

    四、开发应用程序

      4.1 程序设计模型

      4.2 主机申请

        4.2.1 设置OpenCL环境

        4.2.2 在FPGA中执行命令

        4.2.3 后处理和FPGA清理

        4.2.4 摘要

      4.3 RTL内核

        4.3.1 RTL内核的要求

        4.3.2 RTL内核开发流程

          4.3.2.1 将RTL代码打包为Vivado IP

          4.3.2.2 创建内核描述XML文件

          4.3.2.3 从RTL内核创建XO文件

        4.3.3 RTL内核向导

        4.3.4 摘要

    五、构建和运行程序

      5.1 设置Vitis环境

      5.2 建立目标

        5.2.1 软件仿真

        5.2.2 硬件仿真

        5.2.3 系统硬件目标

      5.3 构建主机程序

      5.4 构建FPGA二进制文件

        5.4.1 在Vivado HLS中创建内核

    六、对应用程序进行性能分析,优化和调试

    七、使用Vitis分析仪

      7.1 处理报告

     7.2 了解葡萄分析仪

     7.3 创建运行配置

     7.4 配置葡萄分析仪

    八、使用Vitis IDE

      8.1 Vitis命令选项

      8.2 创建Vitis IDE项目

        8.2.1 启动Vitis IDE工作区

        8.2.2 创建一个应用程序项目

        8.2.3 管理平台和存储库

        8.2.4 了解Vitis IDE

        8.2.5 添加源

          8.2.5.1 添加源文件

          8.2.5.2 创建和编辑新的源文件

          8.2.5.3 在项目编辑器视图中工作

          8.2.5.4 在助理视图中工作

      8.3 建立系统

        8.3.1 Vitis IDE指导视图

        8.3.2 从Vitis IDE使用Vivado工具

      8.4 建立系统

      8.5 配置Vitis IDE

        8.5.1 Vitis项目设置

        8.5.2 Vitis Build配置设置

        8.5.3 Vitis运行配置设置

        8.5.4 Vitis二进制容器设置

        8.5.5 Vitis硬件功能设置

        8.5.6 Vitis工具链设置

          4.5.6.1 Vitis内核编译器和链接器选项

          4.5.6.2 emconfigutil设置

          4.5.6.3 G ++主机编译器和链接器设置

      8.6 项目进出口

        8.6.1 导出Vitis项目

        8.6.2 导入葡萄项目

     

    正文

    一 Vitis 2019.2软件平台发行说明

    1.1 Vitis软件平台中的内容

    1.1.1 硬件加速的应用程序开发流程

    对于基于FPGA的加速,Vitis核心开发工具包允许使用API构建软件应用程序,比如建立一个软件应用程序的OpenCL™ API,运行硬件(HW)内核上加速卡,如赛灵思 Alveo数据中心加速卡。所述葡萄核心开发套件还支持运行运行Linux,如嵌入式处理器平台上的软件应用ZYNQ的UltraScale +片上多核设备。对于嵌入式处理器平台,Vitis核心开发套件执行模型还使用OpenCL API和基于Linux的Xilinx 运行时(XRT),用于调度硬件内核并控制数据移动。

    VItis具包可支持Alove 200,U250,U280和数据中心加速卡,还有zcu102_base,zcu104_base,zc702_base和zc706_base嵌入式处理器平台。除了这些现成的平台以外,还支持自定义平台。

    通过Vitis软件平台,您可以将数据中心应用程序迁移到嵌入式平台。所述Vitis核心开发工具包括在V++台上的硬件内核编译器,g++编译器用于编译在x86主机上运行的应用,以及ARM®用于交叉编译应用程序到的嵌入式处理器上运行的编译器的Xilinx设备。

    1.2 改变行为

    1.2.1 从SDAccel迁移

    下表列出了SDAccel开发环境和Vitis软件平台之间的差异。

    1.2.2 从SDSoC迁移

    • 总览

    该葡萄的核心开发工具包是仿照SDAccel™编程和执行模型。Vitis环境的一项优势是它对数据中心和边缘应用程序的支持。这意味着您可以在标准数据中心平台(例如Alveo™数据中心U200加速卡)上对应用程序进行原型设计,然后在可用时将应用程序重定向到边缘平台。有关更多信息,请参阅构建主机程序。

    在Vitis环境中,您需要调用Arm交叉编译器以构建主应用程序代码,并调用Vitis编译器以构建硬件内核。您为主机(.elf)创建一个可执行文件,为硬件内核(.xclbin)创建一个映像。您将使用OpenCL API和基于Linux的Xilinx运行时(XRT)来控制主应用程序和内核之间的数据移动,并计划任务的执行。

    对于嵌入式处理器平台(或项目),Vitis环境仅支持运行Linux主机操作系统且平台已将XRT和ZOCL驱动程序添加到根文件系统的平台。平台创建者需要提供一个sysroot,以便通过OpenCL包含文件和库交叉编译到Arm 核心。在主机编译期间,您将需要使用适当的标头。

    要从SDSoC环境迁移到Vitis环境,您将必须修改构建脚本和源代码。本节讨论迁移步骤,包括命令行示例,这些示例使用sysroot中的文件,使用Vitis编译器编译硬件内核,并使用Arm cross编译器编译主机应用程序。提供的代码示例仅用于教育目的,不应用于您的设计。

    基本迁移步骤如下:

    • 迁移主机应用程序

      • 更新所需的#include文件

      • 根据需要编辑主要功能以及任何其他软件的仅特定功能

    • 迁移硬件功能

      • 使用编译指示定义内核接口

    • 建立系统

      • 构建和链接内核

      • 编译和链接应用程序

    • 迁移主机应用程序

    在本节中,您将回顾具有和加速功能的简单SDSoC™程序,main()以识别必须更改的元素。要开始将应用程序和硬件功能迁移到Vitis环境平台和工具的过程,请检查您的主要功能和硬件功能代码。此处提供的代码是mmult示例应用程序。

    以下代码段是main()原始开发应用程序项目中的示例函数。

    #include <stdlib.h>
    #include <iostream>
    #include "mmult.h"
    #include "sds_lib.h"
    
    #define NUM_TESTS 5
    
    void printMatrix(int *mat, int col, int row) {
     for (int i = 0; i < col; i++) {
      for (int j = 0; j < row; j++) {
       std::cout << mat[i*row+j] << "\t";
      }
      std::cout << std::endl;
     }
     std::cout << std::endl;
    }
    
    int main() {
     int col = BUFFER_SIZE;
     int row = BUFFER_SIZE;
     int *matA = (int*)sds_alloc(col*row*sizeof(int));
     int *matB = (int*)sds_alloc(col*row*sizeof(int));
     int *matC = (int*)sds_alloc(col*row*sizeof(int));
    
     std::cout << "Mat A" << std::endl;
     printMatrix(matA, col, row);
    
     std::cout << "Mat B" << std::endl;
     printMatrix(matB, col, row);
    
     //Run the hardware function multiple times
     for(int i = 0; i < NUM_TESTS; i++) {
      std::cout << "Test #: " << i << std::endl;
      // Populate matA and matB
      srand(time(NULL));
      for (int i = 0; i < col*row; i++) {
       matA[i] = rand()%10;
       matB[i] = rand()%10;
      }
    
      std::cout << "MatA * MatB" << std::endl;
      mmult(matA, matB, matC, col, row);
    
     }
     printMatrix(matC, col, row);
    
     return 0;
    

    该代码为存储为一维数组的三个不同的二维矩阵分配内存matA,matB使用随机数填充和 ,然后相乘matA并matB计算 matC。结果打印到屏幕上,测试运行十次。

    转到Vitis环境sds++时,需要由应用程序开发人员显式管理由编译器和运行时隐式处理的一些任务。

    • 迁移硬件功能

    从SDSoC™环境迁移硬件功能以用于Vitis环境时,需要记住的内容很少。

    为了在PL中执行,现在将硬件功能单独编译为.xo文件,因此它不包含在main()函数中,并且不需要像SDSoC环境中那样的用于函数定义的特定头文件。在丢弃头文件之前,必须将BUFFER_SIZE声明复制 到mmult函数中。您还可以评论或删除该 #include语句。

    • 建立系统

    在SDSoC™环境中,sds++编译器同时构建主应用程序(.elf)和硬件加速功能(PL区域的位流)。在简单的示例中,用于编译main()函数和mmult硬件函数的命令行如下:

    sds++ -Wall -O0 -g -I"../src" -c -fmessage-length=0 -MT"src/mmult.o" -MMD \
    -MP -MF"src/mmult.d" -MT"src/mmult.o" -o "src/mmult.o" "../src/mmult.cpp" \
    -sds-hw mmult mmult.cpp -sds-end -sds-sys-config a53_linux -sds-proc      \
    a53_linux -sds-pf "zcu102"
    

    从该单个命令中,该sds++命令处理该sds-hw块以编译mmult函数,然后再链接main.o对象文件以构建目标应用程序main.elf。最后,它将生成sd_card文件夹,其中包含启动和运行应用程序所需的适当文件。

    在Vitis环境中,硬件内核和主要应用程序的编译由两个单独的编译器执行。

    • 高级主题:多个计算单元和内核流

    1.3 支持平台

    1.3.1 数据中心加速卡

    Xilinx提供了几种可用于数据中心的加速卡:

    • Alveo U50数据中心加速卡

    • Alveo U200数据中心加速卡

    • Alveo U250数据中心加速卡

    • Alveo U280数据中心加速卡

    有关每个加速卡和可用目标平台的规格,请参阅数据中心加速卡。

    1.3.2 嵌入式平台

    不支持 Artix®-7,Kintex®-7,Virtex®-7以及裸机和RTOS平台进行加速。对于基于非加速的设计,请参见《Vitis Unified软件平台文档:嵌入式软件开发(UG1400)》。

    下面列出了可与Vitis核心开发套件一起使用的嵌入式平台,可以在Xilinx官网上找到它们。

    • zcu102_base:基于ZCU102 Zynq UltraScale + MPSoC和XRT。

    • zcu104_base:基于ZCU104 Zynq UltraScale + MPSoC和XRT。

    • zc702_base:基于ZC702Zynq®- 7000SoC 和XRT。

    • zc706_base:基于ZC706Zynq®- 7000SoC 和XRT。

    二、安装

    三、Vitis 加速环境简介

    3.1 简介与概述

    Vitis unified 软件是一个将Xilinx软件开发的各个方面结合到一个统一环境中的新工具。Vitis软件平台既支持Vitis嵌入式软件开发流程,也支持Vitis应用程序加速开发流程,Vitis嵌入式软件开发流程是为希望使用下一代技术的Xilinx软件开发工具包(SDK)用户设计的,Vitis应用程序加速开发流程是为希望使用最新的Xilinx FPGA软件加速开发流程的软件开发人员设计的。该内容主要涉及应用程序加速流,以及Vitis核心开发工具包和Xilinx运行时(XRT)的使用。

    Vitis应用程序加速开发流程为使用软件和硬件组件的标准编程语言开发和交付FPGA加速应用程序提供了一个框架。软件组件或主机程序是使用C/ c++开发的,可以在x86或嵌入式处理器上运行,并使用OpenCL API调用来管理与加速器的运行时交互。可以使用C/ c++、OpenCL C或RTL开发硬件组件或内核。Vitis软件平台支持各种方法,允许您从开发应用程序或内核开始。

    下图是Vitis软件平台示意图。如图所示,Vitis 统一软件平台包含以下功能和元素:

    • Vitis技术的目标是加速硬件平台,例如Alveo™数据中心加速器卡或Zynq®UltraScale +™MPSoC和基于Zynq®-7000SoC的嵌入式处理器平台。

    • XRT为您的宿主程序提供了API和驱动程序,以使其与目标平台连接,并处理宿主程序和加速内核之间的事务。

    • Vitis核心开发套件提供了软件开发工具堆栈(例如编译器和交叉编译器),用于构建主机程序和内核代码;分析器(可让您分析和分析应用程序的性能);调试器(可帮助您定位和修复任何问题)您的应用程序中的问题。

    • Vitis加速库通过最少的代码更改即可提供性能优化的FPGA加速,而无需重新实现算法即可利用Xilinx自适应计算的优势。Vitis加速库可用于数学,统计,线性代数和DSP的常用功能,也可用于特定领域的应用程序,例如视觉和图像处理,定量财务,数据库,数据分析和数据压缩。有关Vitis加速库的更多信息,请参见Xilinx github库,https://xilinx.github.io/Vitis_Libraries/。。

    3.2 FPGA加速

    与传统的CPU / GPU加速相比,Xilinx FPGA具有许多优势,包括能够实现可在处理器上运行的任何功能的自定义架构,从而以较低的功耗实现了更好的性能。与处理器体系结构相比,在Xilinx器件中包含可编程逻辑(PL)架构的结构在应用程序执行中实现了高度的并行性。

    为了在Xilinx器件上实现软件加速的优势,可以考虑在硬件中加速应用程序的大型计算密集型部分。在自定义硬件中实现这些功能可以使您在性能和功耗之间达到理想的平衡。

    有关如何构建具有最佳性能的应用程序以及其他推荐设计技术的更多信息,请查看使用Vitis软件平台加速应用程序的方法。

    3.3 执行模型

    在Vitis核心开发套件中,应用程序在主机应用程序和硬件加速的内核之间分割,并在它们之间建立通信通道。使用C / C ++编写并使用API抽象(例如OpenCL)的主机程序在主机处理器(例如x86服务器或 用于嵌入式平台的Arm处理器)上运行,而硬件加速的内核则在主机的可编程逻辑(PL)区域内运行。一个赛灵思设备。

    由XRT管理的API调用用于处理主机程序和硬件加速器之间的事务。主机和内核之间的通信(包括控制和数据传输)通过PCIe®总线或嵌入式平台的AXI总线进行。当控制信息在硬件中的特定内存位置之间传输时,全局内存用于在主机程序和内核之间传输数据。主机处理器和硬件加速器均可访问全局内存,而主机应用程序只能访问主机内存。

    例如,在典型的应用程序中,主机首先将要由内核操作的数据从主机内存传输到全局内存。内核随后对数据进行操作,将结果存储回全局内存中。内核完成后,主机将结果传输回主机内存。主机和全局内存之间的数据传输会引入延迟,这可能会给整个应用程序带来巨大的成本。为了在实际系统中实现加速,硬件加速内核所获得的好处必须超过数据传输所增加的延迟。

    Vitis核心开发套件应用程序的体系结构

    目标平台包含FPGA加速内核,全局存储器以及用于存储器传输的直接存储器访问(DMA)。内核可以具有一个或多个全局存储器接口,并且是可编程的。该葡萄的核心开发工具包执行模型可以分解为以下步骤:

    • 1.主机程序通过Alveo数据中心加速器卡上的PCIe接口,或通过嵌入式平台上的AXI总线,将内核所需的数据写入连接的设备的全局存储器中。

    • 12.主机程序使用其输入参数设置内核。

    • 13.主机程序触发FPGA上内核功能的执行。

    • 14.内核根据需要执行所需的计算,同时从全局内存中读取数据。

    • 15.内核将数据写回到全局内存,并通知主机它已完成任务。

    • 16.主机程序将数据从全局存储器读回主机存储器,并根据需要继续处理。

    FPGA可以在加速器上容纳多个内核实例,不同类型的内核以及同一内核的多个实例。XRT透明地协调了主机程序和加速器中内核之间的交互。Xilinx Github存储库上提供了XRT体系结构文档,https://xilinx.github.io/XRT/。。

    3.4 建立过程

    Vitis的核心开发工具包提供了所有标准的软件开发环境的特点:

    • 在x86或Arm®处理器上运行的主机应用程序的编译器或交叉编译器。

    • 交叉编译器,用于构建FPGA二进制文件。

    • 调试环境可帮助识别和解决代码中的问题。

    • 性能分析器可识别瓶颈并帮助您优化应用程序。

    构建过程遵循主机程序和内核代码的标准编译和链接过程。如下图所示,主机程序是使用GNU C ++编译器(g++)或GNU C ++ Arm交叉编译器为基于MPSoC的设备构建的。FPGA二进制文件是使用Vitis编译器构建的。

    3.4.1 主机程序构建过程

    主应用程序g++通过以下两步过程进行编译并与编译器链接:

    • 1.将任何所需的代码编译到目标文件(.o)中。

    • 2.将对象文件(.o)与XRT共享库链接以创建可执行文件。

    3.4.2 FPGA二进制构建过程

    内核可以用C / C ++或OpenCL C代码描述,也可以从打包的RTL设计中创建。如上图所示,每个硬件内核都独立编译为Xilinx目标(.xo)文件。

    Xilinx对象(.xo)文件与硬件平台链接,以创建FPGA二进制文件(.xclbin),该文件已加载到目标平台上的Xilinx设备中。

    构建FPGA二进制文件的关键是确定要生成的构建目标。有关更多信息,请参阅构建目标。

    有关构建过程的详细说明,请参见构建FPGA二进制文件。

    3.5 建立目标

    Vitis编译器生成过程生成主机程序可执行文件和FPGA二进制(.xclbin)。FPGA二进制文件的性质由构建目标确定。

    • 当构建目标是软件或硬件仿真时,Vitis编译器会生成FPGA二进制文件中内核的仿真模型。这些仿真目标使您可以在相对较快的周期内构建,运行和迭代设计。调试应用程序并评估性能。

    • 当构建目标是硬件系统时,Vitis编译器使用Vivado Design Suite运行综合和实现,从而为硬件加速器生成.xclbin 。它使用这些工具进行预定义的设置,这些设置被证明可以提供良好的结果质量。使用Vitis核心开发套件不需要这些工具的知识。但是,精通硬件的开发人员可以充分利用这些工具,并使用所有可用功能来实现内核。

    Vitis编译器提供了三种不同的构建目标,用于调试和验证目的的两个仿真目标,用来产生实际的FPGA二进制文件的默认硬件目标:

    • 软件仿真(sw_emu)

    主机应用程序代码和内核代码都被编译为在主机处理器上运行。这样可以通过快速的构建和运行循环来优化迭代算法。该目标对于识别语法错误,对与应用程序一起运行的内核代码执行源代码级调试以及验证系统的行为很有用。

    • 硬件仿真(hw_emu)

    内核代码被编译成硬件模型(RTL),该模型在专用模拟器中运行。这种构建和运行循环需要更长的时间,但可以提供详细的,周期精确的内核活动视图。该目标对于测试将在FPGA中使用的逻辑功能以及获得初始性能估计非常有用。

    • 系统(hw)

    内核代码被编译成硬件模型(RTL),然后在FPGA上实现,从而产生可以在实际FPGA上运行的二进制文件。

    3.6 使用Vitis软件平台加速应用程序的方法论

    3.6.1 文件受众和范围

    本指南的目的是使系统设计师和软件开发人员熟悉以下内容:

    • 架构设备加速应用程序的方法

    • 开发C / C ++内核的方法

    3.6.2 加速:工业类比

    CPU,GPU和可编程设备之间存在明显差异。了解这些差异是有效开发每种设备的应用程序并实现最佳加速的关键。

    CPU和GPU均具有预定义的体系结构,具有固定数量的内核,固定指令集和刚性内存体系结构。GPU通过内核数量和采用SIMD / SIMT并行性来扩展性能。相反,可编程设备是完全可定制的体系结构。开发人员创建针对应用程序需求进行了优化的计算单元。通过创建深度流水线化的数据路径来实现性能,而不是乘以计算单元的数量。

    可以将CPU视为一组研讨会,每个研讨会都雇用一名非常熟练的工人。这些工人可以使用通用工具,使他们可以构建几乎所有东西。每个工人一次制作一件商品,先后使用不同的工具将原材料变成成品。此顺序转换过程可能需要许多步骤,具体取决于任务的性质。讲习班是独立的,工人都可以完成不同的任务,而不会分散注意力或出现协调问题。

    GPU也有车间和工人,但其中有很多,工人也更专业。他们只能访问特定的工具,只能做更少的事情,但是他们做得非常有效。当GPU工人重复执行相同的几个任务,并且所有人都同时执行相同的事情时,它们的功能最佳。毕竟,在有这么多不同的工人的情况下,给他们所有相同的订单会更有效率。

    可编程设备使这个车间类似于工业时代。如果CPU和GPU是一组单独的工人,并采取顺序步骤将输入转换为输出,则可编程设备是具有装配线和传送带的工厂。沿组装线分派的工人将原材料逐步转变为制成品。每个工人重复执行相同的任务,并且部分成品在传送带上从一个工人转移到另一个工人。这导致更高的生产吞吐量。

    可编程设备的另一个主要区别是工厂和装配线不存在,这与CPU和GPU的车间和工人不同。为了完善我们的类比,可编程设备就像是一批待开发的空批。这意味着设备开发人员可以建立工厂,装配线和工作站,然后针对所需任务自定义它们,而不必使用通用工具。就像批量一样,设备的房地产也不是无限的,这限制了可以在设备中建立工厂的数量和规模。因此,正确设计和配置这些工厂是设备编程过程的关键部分。

    传统的软件开发是关于在预定义的体系结构上进行编程的功能。可编程设备开发是关于对体系结构进行编程以实现所需功能。

    3.6.3 设计设备加速应用程序的方法

    在开始开发加速应用程序之前,正确地架构它很重要。在此阶段,开发人员将对应用程序的体系结构做出关键决策,并确定诸如应将哪些软件功能映射到设备内核,需要多少并行性以及如何交付并行化等因素。

    • 步骤1:建立基准应用程序性能并建立目标

    • 步骤2:确定要加速的功能

    • 步骤3:确定设备并行化需求

    • 步骤4:确定软件应用程序并行化需求

    • 步骤5:细化建筑细节

    3.6.4 开发C / C ++内核的方法论

    Vitis软件平台支持建模内核用C / C ++或RTL(的Verilog,VHDL,系统的Verilog)。本方法指南适用于C / C ++内核。有关开发RTL内核的详细信息,请参见RTL内核。

    关于高级综合编译器

    在开始内核开发过程之前,开发人员应该熟悉高级综合(HLS)概念。HLS编译器将C / C ++代码转换为RTL设计,然后将其映射到设备结构上。

    HLS编译器比标准软件编译器更具限制性。例如,存在不支持的构造,包括:系统函数调用,动态内存分配和递归函数。有关更多信息,请参见《Vivado Design Suite用户指南:高级综合(UG902)》中的“不受支持的C构造” 。

    更重要的是,请始终牢记C / C ++源代码的结构会对所生成的硬件实现的性能产生重大影响。该方法指南将帮助您构建代码,以满足应用程序吞吐量的目标。有关编程内核的特定信息,请参见C / C ++内核。

    • 步骤1:将代码划分为负载计算-存储模式

    • 步骤2:将计算块划分为较小的函数

    • 步骤3:确定需要优化的循环

    • 步骤4:改善循环延迟

    • 步骤5:提高环路吞吐量

    END

    后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。

    大侠们,江湖偌大,继续闯荡,愿一切安好,有缘再见!

    往期精选 

     

    【免费】FPGA工程师招聘平台

    汇总篇 | FPGA零基础学习系列

    FPGA零基础学习:SPI 协议驱动设计

    FPGA设计中,对SPI进行参数化结构设计

    精品 | FPGA时序分析专题课,欢迎购买!

    开课通知 | FPGA就业班3月2日正式开课!

     

    展开全文
  • Vitis指南 | Xilinx Vitis 系列(六) 大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有...

    Vitis指南 | Xilinx Vitis 系列(六)

    大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有不足之处,还请多多指教。

    由于内容过多,首篇给大侠列出目录,后续有时间分篇连载,今天带来第六篇,介绍配置Vitis IDE和项目进出口。后续还会带来详细的开发教程,敬请关注。话不多说,咱们就进入正题。

     

    VITIS简介

    作者:艮林子 校对:陆辉

    第一篇放个超链接https://zhuanlan.zhihu.com/p/350466734

    第二篇放个超链接https://zhuanlan.zhihu.com/p/350471476

    第三篇放个超链接https://zhuanlan.zhihu.com/p/350474904

    第四篇放个超链接https://zhuanlan.zhihu.com/p/350641410

    第五篇放个超链接https://zhuanlan.zhihu.com/p/350642591

     

    八、使用Vitis IDE

     

    8.5 配置Vitis IDE

    在“助手”视图中,使用“ 设置”按钮(

    )配置选定的项目或配置对象。

     

    8.5.1 Vitis项目设置

    要编辑Vitis项目设置,请在“助手”视图中选择项目,然后单击“设置”按钮(

    )弹出“项目设置”对话框。通过此对话框,您可以为Vitis编译器v++命令指定链接和编译选项,以自定义项目构建过程。

    Project name:项目名称。单击链接以打开项目的“属性”对话框。

    Platform平台:该项目的目标平台。单击链接以打开“平台描述”对话框。单击浏览 以更改平台。

    Runtime运行:显示此项目中使用的运行时。

    Number of devices:指定在仿真过程中主机程序可以使用的OpenCL加速器设备的数量。

    V++ compiler options:指定v++ 命令的编译器选项,如Vitis Compiler Command中所述。

    V++ linker options:指定v++ 命令的链接选项。

     

    8.5.2 Vitis Build 配置设置

    要编辑项目下任何构建配置的设置,请在“助手”视图中选择构建配置,然后单击“ 设置”按钮(

    )弹出“构建配置设置”对话框。在此对话框中,您可以启用主机和内核调试,指定在构建过程中要报告的信息级别,并指定硬件构建的优化级别。

    Target:如构建目标中所述的构建配置目标。

    Host debug:选择启用主机代码调试。

    Kernel debug:选择以启用内核代码调试。

    Report level:按照控制报告生成中所述指定要生成的报告级别。

    Hardware optimization:指定在优化硬件上要花费多少精力。硬件优化是一项计算密集型任务。更高级别的优化可能会导致更多最佳硬件,但会增加构建时间。此选项仅在构建配置系统中可用。

    “生成配置”对话框还包含指向“编译器”和“链接器工具链”设置的链接。它们提供了对标准Eclipse环境中所有设置的完全访问权限,并且可以用于配置Vitis核心开发工具包,如Vitis工具链设置中所述。其他选项卡中提供了Vitis特定设置,例如Vitis编译器和链接器标志,它们不属于标准C / C ++工具链。

     

    8.5.3 Vitis运行配置设置

    要编辑运行配置的设置,请选择一个构建配置,然后使用右键单击菜单导航至“运行” > “运行配置”以打开所选构建配置的“运行配置”对话框。如下所示,“运行配置”对话框使您可以指定调试选项,启用正在运行的应用程序的性能分析以及指定要收集的性能数据的类型。

    Name:指定运行配置的名称。

    Project:显示当前项目,但可以更改为其他打开的项目。

    Build Configuration:指定当前选择的构建配置,或将您的设置应用于活动的构建配置。

    Kernel Debug:选择以启用用于内核调试的波形视图,或启用实时波形视图,如基于波形的内核调试中所述。

    Enable profiling:如Profile Summary Report中所述,在应用程序运行时启用概要文件数据的收集。

    Generate timeline trace:如应用程序时间线中所述,为该应用程序生成时间线跟踪报告。

    Collect Data Transfer Trace:按照Vitis Compiler常规选项和xrt.ini文件中的说明指定数据传输数据的收集。

    Collect Stall Trace:使您可以指示各种条件下的停顿数据捕获,如Vitis Compiler General Options和xrt.ini File中所述。

    “运行配置”对话框具有其他选项卡,可帮助您在运行应用程序时配置运行时环境。在下面的示例中,显示了“参数”选项卡,其中包含使应用程序成功运行所需的各种参数。

    Program arguments程序参数:指定应用程序所需的参数和值。涉及路径的选项是相对于工作目录指定的,如上例中的xclbin文件所示。

    Automatically add binary containers to arguments:自动将二进制容器添加到参数:启用此复选框可自动包含二进制容器。

    Working directory:指定正在运行的应用程序的位置。这是由Vitis IDE 自动定义的,或者可以通过禁用“使用默认值”复选框并指定路径来覆盖。

     

    8.5.4 Vitis二进制容器设置

    要编辑项目下任何二进制容器的设置,请在“助手”视图中选择二进制容器,然后单击“ 设置”按钮(

    ),以打开“二进制容器设置”对话框。这使您可以为二进制容器指定新名称,并为v++命令指定链接选项。

    Name:指定二进制容器名称。

    V++ Linker Options:在指定的构建配置中输入所选二进制容器的链接选项。有关可用选项的更多信息,请参考《Vitis编译器命令》。

    V++ Linker Command Line:显示当前v++命令行以及您指定的任何链接选项。

     

    8.5.5 Vitis硬件功能设置

    可以编辑项目中任何构建配置的硬件功能设置。在“助手”视图中,为特定的构建配置选择硬件功能,例如Emulation-HW,然后单击“ 设置”按钮(

    )以打开“硬件功能设置”对话框,如下图所示。

    通过此对话框,您可以设置与所选构建配置中的硬件功能相关的选项,例如,指定内核实例的计算单元数,或将内核端口映射到特定的全局存储库。具体选项包括:

    Compute Units计算单位:为内核创建的计算单元的数量,如创建内核的多个实例中所述。

    Max Memory Ports:对于OpenCL内核,启用后,将为内核函数签名中声明的每个全局内存缓冲区生成一个单独的物理内存接口(m_axi)。如果未启用,则为内存映射的内核端口创建单个物理内存接口。

    Port Data Width:对于OpenCL内核,请指定数据端口的宽度。

    Extra Source Files:定义此硬件功能所需的任何其他源文件,例如输入数据文件。

    Compiler Options:为所选的硬件功能指定Vitis编译器选项。

    Compute Unit Settings:如将计算单元分配给SLR中所述,为内核的每个计算单元定义SLR位置;如将内核端口映射到全局内存中所述,为计算单元的每个端口定义全局内存分配。

    Hardware Debug and Profiling Settings:当选定的构建配置是系统构建时,“计算单元设置”还使您能够启用将调试和配置文件监视器插入每个计算单元的接口,以捕获和查看信号轨迹。这些监视器启用以下功能:

    ChipScope Debug:添加监视器以捕获硬件跟踪调试信息。

    ChipScope Debug:添加AXI协议检查器。

    Data Transfer:添加性能监视器以捕获在计算单元和全局内存之间传输的数据。捕获的数据包括计数器和/或跟踪。

    Execute Profiling:添加一个加速器监视器以捕获计算单元执行的开始和结束。

    Stall Profiling:添加具有功能的加速器监视器,以捕获内核内部,两个内核之间或内核与外部内存之间的数据流中的停顿。

    提示:硬件功能设置对话框中指定的设置将被写入Vitis编译器使用的配置文件,该--config选项具有Vitis Compiler Configuration File中所述的选项。

     

    8.5.6 Vitis工具链设置

    工具链设置提供项目的基于Eclipse的标准视图,并提供Vitis IDE中C / C ++构建的所有选项。

    在“构建配置设置”对话框中,从“构建配置”窗口的底部单击“ 编辑工具链编译器设置”或“ 编辑工具链链接器设置”以显示包含所有C / C ++构建设置的编译器和“链接器设置”对话框。此对话框使您可以设置标准C ++路径,包括路径,库,项目范围的定义和主机定义。

    在Vitis IDE项目中工作时,“工具设置”选项卡下的五个主要设置为:

    V++ Kernel Compiler:指定v++命令以及在调用v++内核编译过程的命令时必须传递的所有其他选项。请参见Vitis内核编译器和链接器选项。

    V++ Kernel Linker:指定v++命令以及在调用v++内核链接过程的命令时要传递的任何其他选项。请参见Vitis内核编译器和链接器选项。

    emconfigutil:指定emconfigutil实用工具的命令行选项。请参见emconfigutil设置。

    GCC Host Compiler (x86_64):指定g++在主机编译过程中必须传递的链接器参数。请参阅G ++主机编译器和链接器设置。

    GCC Host Linker (x86_64):指定g++在主机链接过程中必须传递的链接器参数。请参阅G ++主机编译器和链接器设置。

     

    8.5.6.1 Vitis内核编译器和链接器选项

    1.Vitis内核编译器选项

    V ++内核编译器部分显示了该v++ 命令以及在调用v++内核编译过程的命令时必须传递的所有其他选项。该 v++命令选项可以是符号,包括路径,或其他有效的选项,其中包括任何的v++要添加命令行选项。

    Symbols:单击Vitis编译器下的“ 符号 ” 以定义调用命令时随选项传递的所有符号。 Includes:要将包含路径添加到Vitis 编译器,请选择包含,然后单击添加(

    )按钮。

    Miscellaneous:可以将必须传递给Vitis编译器的所有其他编译选项添加为“其他”部分中的标志。

    2.Vitis内核链接器选项

    VItis内核链接设置显示的v++命令和任何其他选项调用时传递v++的内核连接处理指令。

    可以将需要传递给Vitis编译器的任何其他选项添加为“其他”部分中的标志。有关更多信息,请参考Vitis Compiler Command以获取链接过程中的可用选项。

     

    8.5.6.2 emconfigutil设置

    该emconfigutil命令选项可以在命令字段中输入创建中所描述的仿真配置文件emconfigutil实用。在启动运行配置之前,Vitis IDE 通过运行指定的命令来创建emconfig.json文件emconfigutil

     

    8.5.6.3 G ++主机编译器和链接器设置

    1.G ++编译器选项

    Vitis核心开发套件g++使用的编译器参数可以在“工具链设置”的“ G ++主机编译器”部分下进行访问。

    Dialect:指定用于选择要使用的C ++语言标准的命令选项。标准方言选项包括C ++ 98,C ++ 2011和C ++ 2014(1Y)。

    Preprocessor预处理器:为主机编译器指定预处理器参数,例如符号定义。已经定义的默认符号包括平台,以便主机代码可以检查特定平台。

    Includes:指定包含路径和包含文件。

    Optimization:指定编译器优化标志和其他优化设置。

    Debugging:指定调试级别和其他调试标志。

    Warnings:指定与编译器警告相关的选项。

    Miscellaneous:指定传递给g++编译器的任何其他标志。

    2.G ++链接器选项

    Vitis 技术G ++ Host Linker 的链接器参数通过此处提供的选项提供。具体部分包括常规选项,库和库路径,其他链接器选项以及共享库。

     

    8.6 项目进出口

    Vitis IDE提供了导出或导入一个或多个简化的方法,葡萄在工作区中的IDE项目。您可以选择包括关联的项目构建文件夹。

     

    8.6.1 导出Vitis项目

    导出项目时,将项目压缩为一个zip文件,其中包含导入到另一个工作区所需的所有相关文件。

    1.要导出项目,请从主菜单中选择“ 文件” >“ 导出 ”

    2.要更改档案的名称,请编辑“档案文件”字段。

    3.要包括当前的构建配置,请在窗口底部启用“ 包括构建文件夹 ”。

    提示:这可能会大大增加档案的大小,但是在某些情况下可能是必要的。

    4.要使用所选文件创建档案,请单击“ 确定”以创建档案。

    选定的Vitis IDE项目将被保存在指定的文件和位置中,并且可以由不同的用户在不同的工作空间,不同的计算机上导入到Vitis IDE中

     

    8.6.2 导入葡萄项目

    1.要导入项目,请从顶部菜单中选择“ 文件” >“ 导入 ”。

    这将打开“导入项目”对话框以选择导入文件类型。您可以选择两种类型的文件来导入:

    Vitis项目导出的zip文件

    允许您导入先前从Vitis IDE 导出的项目,如“ 导出Vitis项目”中所述。

    Eclipse工作区或zip文件

    允许您从另一个Vitis IDE工作区导入项目。

    2.下图显示了选择Eclipse工作区或zip文件并单击Next时打开的对话框。

    3.对于“选择根目录”,指向Vitis IDE 的工作区,然后根据需要指定以下选项:

    • 搜索嵌套项目 在工作空间中的其他项目中查找项目。

    • 将项目复制到工作区 在当前打开的工作空间中创建项目的物理副本。

    • 完成后关闭新创建的导入项目 创建项目后,在打开的工作区中关闭项目。

    4.单击完成将项目导入到Vitis IDE中打开的工作区中

    本篇到此结束,本次Vitis指南连载也到此结束,希望对大侠有所帮助,后续有时间再出详细的开发教程,欢迎大侠关注!

     

    【QQ交流群】

    群号:173560979,进群暗语:FPGA技术江湖粉丝。

    多年的FPGA企业开发经验,各种通俗易懂的学习资料以及学习方法,浓厚的交流学习氛围,QQ群目前已有1000多名志同道合的小伙伴,无广告纯净模式,给技术交流一片净土,从初学小白到行业精英业界大佬等,从军工领域到民用企业等,从通信、图像处理到人工智能等各个方向应有尽有。

     

    【微信交流群】

    现微信交流群已建立08群,人数已达数千人,欢迎关注“FPGA技术江湖”微信公众号,可获取进群方式。

    后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。

    江湖偌大,继续闯荡,愿大侠一切安好,有缘再见!

    展开全文
  • 赛灵思Vitis HLS LLVM 2020.2 该目录包含Xilinx HLS LLVM源代码以及与Xilinx Vitis HLS 2020.2版本一起使用的示例。 目录 描述 可以在Vitis HLS中构建和使用的llvm和clang源 可以在Vitis HLS中构建和使用的自定义...
  • Vitis指南 | Xilinx Vitis 系列(四) 大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有...

    Vitis指南 | Xilinx Vitis 系列(四)

    大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有不足之处,还请多多指教。

    由于内容过多,首篇给大侠列出目录,后续有时间分篇连载,今天带来第四篇,介绍使用Vitis IDE,包括Vitis命令选项和创建Vitis IDE项目。后续还会带来详细的开发教程,敬请关注。话不多说,咱们就进入正题。

     

    VITIS简介

    作者:艮林子 校对:陆辉

    第一篇放个超链接https://zhuanlan.zhihu.com/p/350466734

    第二篇放个超链接https://zhuanlan.zhihu.com/p/350471476

    第三篇放个超链接https://zhuanlan.zhihu.com/p/350474904

     

    八、使用Vitis IDE

     

    8.1 Vitis命令选项

    Vitis命令将使用您定义的选项启动Vitis IDE。它提供用于指定工作区的选项以及项目的选项。以下各节描述了Vitis命令的选项。

    • 显示选项 以下选项显示要查看的指定信息。 -help:显示有关Vitis 核心开发工具包命令选项的帮助信息。 -version:显示Vitis核心开发工具包的发行版本。

    • 命令选项 以下命令选项指定如何Vitis为当前工作空间和项目配置命令。 -workspace :指定Vitis IDE项目的工作空间目录。 {-lp <repository_path>}:将<repository_path>添加到Driver / OS / Library搜索目录列表。 -eclipseargs :特定于Eclipse的参数传递给Eclipse。 -vmargs :要传递给Java VM的其他参数。

     

    8.2 创建Vitis IDE项目

    在Vitis IDE中,您可以创建一个新的应用程序项目或平台开发项目。下一节将向您展示如何设置工作区,创建新的Vitis IDE项目以及如何使用IDE的关键功能。

     

    8.2.1 启动Vitis IDE工作区

    1.直接从以下命令行启动Vitis IDE。

    2.选择一个工作空间,如下图所示。

    工作区是在IDE中工作时用于存储项目,源文件和结果的文件夹。您可以为每个项目定义单独的工作空间,或者具有包含多个项目和类型的单个工作空间。以下说明显示了如何为Vitis IDE项目定义工作区。

    3.单击浏览以浏览并指定工作区,或在工作区字段中键入适当的路径。

    4.选择“ 将此用作默认值”,并且不再次询问将指定的工作空间设置为默认选项,并在以后的IDE使用中取消此对话框。

    5.点击启动。

     

    8.2.2 创建一个应用程序项目

    1.选择文件> 新建> Vitis应用程序项目,或者如果这是第一次启动Vitis IDE,则可以在“欢迎”屏幕上选择“ 创建应用程序项目 ”。将打开“ New Vitis Project”向导。

    2.在“创建新的Vitis应用程序项目”页面中,在“项目名称”字段中指定项目的名称 。

    3.默认情况下,选择“ 使用默认位置”可以在工作空间的文件夹中找到您的项目。您可以取消选中此复选框以指定在您选择的位置创建项目。

    4.如果指定位置,请使用“选择文件系统”选择默认文件系统JSch,或启用Eclipse远程文件系统资源管理器(RSE)。

    5.单击“ 下一步”打开“平台”对话框,以指定Vitis目标平台:目标平台由基本硬件设计和用于将加速器附加到声明的接口的元数据组成。

    6.选择目标平台,然后单击下一步。

    7.如果选择“ 嵌入式目标平台”,如“平台”对话框的“流量”列中所示,则“域”页面将打开,如下图所示。选择域,然后为所选平台指定Sysroot路径。

    a)域定义了用于在目标平台上运行主机程序的处理器域。

    b)所述SYSROOT是其中基本系统根文件结构所限定的平台的一部分。该SYSROOT路径让你定义一个新的SYSROOT为您的应用。

    8.单击“ 下一步”后,将显示“模板”页面,如下图所示。为新项目选择一个应用程序模板。

    9.您可以选择“ 清空应用程序”来创建一个空白项目,您可以将文件导入其中并从头开始构建项目。您可以使用Vector Addition模板项目作为示例来了解Vitis IDE,也可以作为新应用程序项目的基础。

    10.单击“ 完成”关闭“新建Vitis项目”向导,然后打开项目。

     

    8.2.3 管理平台和存储库

    可以从打开的项目的主菜单中的Xilinx > 添加自定义平台,或从“平台”对话框中管理Vitis IDE项目中可用的平台,如创建应用程序项目所示。这使您可以添加新平台或新平台存储库。

    在“平台”对话框中,使用以下选项之一管理可用的平台和平台存储库:

    添加自定义平台(

    ):将您自己的平台添加到可用平台列表中。要添加新平台,请导航到自定义平台的顶级目录,选择它,然后单击“ 确定”。该定制平台可立即从可用平台列表中进行选择。

    管理平台存储库(

    ):添加或删除标准和自定义平台。如果添加了自定义平台,则新平台的路径会自动添加到存储库中。从存储库列表中删除平台后,该平台不再显示在可用平台列表中。

    添加设备/平台(

    ):管理作为标准软件安装的一部分安装的Xilinx设备和平台。如果在安装过程中未选择设备或平台,则可以稍后使用此选项将其添加。这将启动Vitis安装程序,因此您可以选择其他内容进行安装。要将自定义平台直接添加到工具中,请选择“ 帮助” >“ 添加设备/平台”。

     

    8.2.4 了解Vitis IDE

    在Vitis IDE中打开项目时,工作空间将按一系列不同的视图和编辑器排列,在基于Eclipse的IDE中也称为 透视图。该工具将打开,并具有下图所示的默认透视图。

    默认窗口中的一些关键视图和编辑器包括:

    Explorer view资源管理器视图:显示项目文件夹及其关联的源文件,构建文件和工具生成的报告的面向文件的树形视图。您可以使用它来浏览项目文件的层次结构。

    Assistant view助理视图:提供一个集中位置来查看和管理工作区的项目,以及项目的生成和运行配置。您可以与各种项目设置和不同配置的报告进行交互。从此视图,您可以构建和运行Vitis IDE应用程序项目,并启动Vitis分析器以查看报告和性能数据,如使用Vitis分析器中所述。

    Project Editor view项目编辑器视图:显示当前项目,目标平台,活动的构建配置和指定的硬件功能;允许您直接编辑项目设置。

    Console view控制台视图:显示多个视图,包括命令控制台,设计指南,项目属性,日志和终端视图。

    Vitis IDE包括几个预定义的观点,如葡萄 IDE的角度来看,调试的角度来看,和性能分析视角。要在透视图之间快速切换,请单击Vitis IDE 右上角的透视图名称。

    可以通过将视图拖放到IDE中的新位置来排列视图,以适应您的需求,并且视图的排列保存在当前透视图中。您可以通过选择“视图”选项卡上的“ 关闭” (X)按钮来关闭窗口。您可以使用“ 窗口” >“ 显示视图”命令并选择特定视图来打开新窗口。

    要将透视图还原为默认的视图排列,请启用透视图,然后选择“ 窗口” >“ 重置视图”。

    要打开不同的透视图,请选择“ 窗口” >“ 打开视图”。

     

    8.2.5 添加源

    该项目包含许多不同的源文件,包括C / C ++文件和标头,OpenCL文件和标头,包含RTL内核中讨论的RTL内核的已编译Xilinx目标文件(.xo)或直接在Vivado中编译内核中所述的HLS内核。

     

    8.2.5.1 添加源文件

    1.在Vitis IDE中打开项目的情况下,要添加源文件,请在Project Explorer中右键单击src文件夹,然后单击Import Sources。

    2.在对话框的“从目录”字段中,单击“ 浏览”命令以选择要从中导入源的目录。

    3.在“到目录”字段中,确保指定的文件夹是您的应用程序项目的src文件夹。

    4.选择所需的源文件,然后单击完成。

    5.通过启用文件名旁边的复选框来选择所需的源文件,然后单击完成。

    重要说明:将源文件导入工作区时,它将文件复制到工作区中。如果删除工作空间,对文件的任何更改都将丢失。

    将源文件添加到项目中之后,您就可以开始配置,构建和运行该应用程序了。要在内置文本编辑器中打开源文件,请在“项目资源管理器”中展开src文件夹,然后双击特定文件。

     

    8.2.5.2 创建和编辑新的源文件

    1.在打开的项目中,右键单击src文件夹,然后选择“ 新建” >“ 文件”。

    2.选择要在其中创建新文件的文件夹,然后输入文件名。

    3.单击完成将文件添加到项目。

    将源文件添加到项目中之后,就可以开始配置,构建和运行该应用程序了。要在内置文本编辑器中打开源文件,请在“项目资源管理器”中展开src文件夹,然后双击特定文件。

     

    8.2.5.3 在项目编辑器视图中工作

    构建系统需要编译并链接主机程序和FPGA二进制文件(xclbin)。您定义的应用程序项目在项目中导入或创建的src文件夹中都包含主机代码和内核代码。下图所示的“项目编辑器”视图提供了项目及其各种构建配置的顶层视图。它提供:

    • 有关项目名称的一般信息

    • 目标平台

    • 活动构建配置

    • 与该构建配置相关的几个配置选项

    其中包括用于启用主机程序或内核代码的调试功能的调试选项,以及用于选择构建报告级别的菜单,如控制报告生成中所述。

    编辑器视图的底部显示“硬件功能”窗口,该窗口显示分配给要构建到xclbin中的二进制容器的内核。要将内核添加到二进制容器,请单击窗口右上方的“ 添加硬件功能”(

    )按钮。它显示了项目中定义的内核列表。从“添加硬件功能”对话框中选择内核,如下图所示。

    添加内核之后,请在“硬件功能”窗口中的“计算单位”下输入一个值,以实例化内核的多个实例,如创建内核的多个实例中所述。

     

    8.2.5.4 在助理视图中工作

    助理视图提供了一个项目树,用于管理构建配置,运行配置以及设置这些配置的属性。它是资源管理器视图的配套视图,并在默认的Vitis IDE透视图中显示在该视图的正下方。下图显示了一个示例助理视图及其树结构。

    助理视图层次结构中显示的对象包括顶级系统项目,应用程序项目,软件和硬件仿真构建配置以及系统硬件构建配置。

    生成配置按照“ 生成目标”中的说明定义生成目标,并指定生成过程的选项。选择构建配置(例如Emulation-HW构建)并单击“ 设置”图标(

    )时,将打开“ Vitis构建配置设置”对话框。您将使用此“设置”对话框为特定的仿真或硬件目标配置构建过程。

    提示:您还可以通过双击配置对象来打开“设置”对话框。

    每个构建配置的层次结构中都有二进制容器(或.xclbin),二进制容器中的一个或多个硬件功能,运行配置以及由构建或运行过程生成的任何报告或摘要。选择特定构建配置的硬件功能并单击“ 设置”图标时,将显示“ Vitis硬件功能设置”对话框。您将使用“硬件功能设置”对话框来指定每个内核的计算单元数量,将计算单元分配给SLR,并将内核端口分配给全局内存。

    运行配置是用于运行已编译和链接的应用程序的配置文件。它定义了运行应用程序的环境和选项。选择一个构建配置,然后使用右键单击菜单导航到 Run > Run Configurations,打开Vitis Run Configuration Settings对话框,您可以在其中配置运行。

    在助手视图中,“视图”菜单包含影响助手视图显示内容的选项,但不影响项目数据。左键单击向下箭头打开“查看”菜单,以显示以下选项:

    Show Active Build Configurations Only:启用后,“助手”视图将仅显示每个项目的活动构建配置。此选项可用于减少“助手”视图中的混乱情况。在“项目编辑器”视图的“应用程序项目设置”选项卡中选择“ 活动构建配置 ”。

    Link with Console:启用后,“控制台”视图中的构建控制台会自动切换以匹配“助手”视图中当前选择的构建配置。如果未启用,则构建控制台不会自动更改为与助手视图匹配。

    Link with Guidance:启用后,“控制台”视图的“引导”选项卡将自动切换以匹配“助手”视图中的当前选择。

    对于每个构建配置,将在构建和运行过程中生成报告,并在“助手”视图中显示报告,如下所示。您可以右键单击报告,然后选择“ 在Vitis Analyzer中打开”以按照使用Vitis Analyzer中的说明查看结果。

    本篇到此结束,下篇还会继续连载,欢迎大侠关注!

     

    【QQ交流群】

    群号:173560979,进群暗语:FPGA技术江湖粉丝。

    多年的FPGA企业开发经验,各种通俗易懂的学习资料以及学习方法,浓厚的交流学习氛围,QQ群目前已有1000多名志同道合的小伙伴,无广告纯净模式,给技术交流一片净土,从初学小白到行业精英业界大佬等,从军工领域到民用企业等,从通信、图像处理到人工智能等各个方向应有尽有。

     

    【微信交流群】

    现微信交流群已建立08群,人数已达数千人,欢迎关注“FPGA技术江湖”微信公众号,可获取进群方式。

    后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。

    江湖偌大,继续闯荡,愿大侠一切安好,有缘再见!

    展开全文
  • vitis-ai中文资料.pdf

    2021-08-02 09:22:25
    中文手册方便入门过程中快速打通流程
  • Vitis指南 | Xilinx Vitis 系列(三) 大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有...

    Vitis指南 | Xilinx Vitis 系列(三)

    大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有不足之处,还请多多指教。

    由于内容过多,首篇给大侠列出目录,后续有时间分篇连载,今天带来第三篇,介绍使用Vitis分析仪。后续还会带来详细的开发教程,敬请关注。话不多说,咱们就进入正题。

     

    VITIS简介

    作者:艮林子 校对:陆辉

    第一篇放个超链接。

    FPGA技术江湖:Vitis指南 | Xilinx Vitis 系列(一)​https://zhuanlan.zhihu.com/p/350466734

    第二篇放个超链接。

    FPGA技术江湖:Vitis指南 | Xilinx Vitis 系列(二)https://zhuanlan.zhihu.com/p/350471476

     

    七、使用Vitis分析仪

    Vitis分析仪是一种实用工具,允许查看和分析,同时建立并运行应用程序生成的报告。旨在查看由构建应用程序时的Vitis编译器和运行应用程序时的Xilinx®Runtime(XRT)库生成的报告。所述Vitis分析器可以用于观看来自两份报告v++命令行流,和Vitis集成设计环境(IDE)。您将使用vitis_analyzer命令启动该工具。

    首次启动时,Vitis分析器将打开并显示一个主屏幕,让您从“构建”和“配置文件”报告中进行选择。单击这些链接中的任何一个,将打开一个文件浏览器,使您可以选择所述类型的特定文件。

    对于“创建”部分:

    Open Compile Summary:“编译摘要”报告由v++命令在编译期间生成,提供了内核编译过程的状态。在查看“编译摘要”报告时,该工具还会引用在编译过程中生成的以下报告:内核估计,内核指导,HLS综合和编译日志。

    Open Link Summary:链接摘要报告是v++在链接期间由命令创建的,提供了FPGA二进制构建过程的状态。在查看“链接摘要”报告时,该工具还会引用链接期间生成的以下报告:系统估计,系统指导,时序摘要,利用率,操作跟踪,平台和系统图以及链接日志。当您打开链接摘要时,Vitis分析器将自动为使用v++command 编译的内核打开关联的编译摘要。

    注意:仅当构建针对硬件(而不是仿真)时,才会生成“时序摘要”和“利用率”。 Open Binary Container:打开所选的xclbin文件以显示构建的平台图和系统图。

    Open Directory:指定要打开的目录。该工具以递归方式检查目录的内容,并显示一个对话框,允许您选择要打开的文件类型和要打开的单个文件。

    对于“个人资料”部分:

    Open Run Summary:XRT库在应用程序执行期间创建“运行摘要”报告,并提供运行过程的摘要。在查看“运行摘要”报告时,该工具还引用了在应用程序运行期间生成的以下报告:“运行指南”,“概要摘要”,“应用程序时间表”,“平台和系统图”。

    Run:此选项使您可以创建,选择和启动运行配置,并显示反映运行记录的命令控制台。

     

    7.1 处理报告

    通常,“编译摘要”,“链接摘要”和“运行摘要”报告为您提供了有关构建和分析应用程序的特定步骤的概述,以使您更好地了解应用程序在性能和优化方面的位置。对于单个内核,从“编译摘要”开始。对于FPGA二进制文件(xclbin),请从链接摘要开始,该链接摘要还将加载所包含内核的编译摘要。要分析与应用程序执行相关的数据,请从“运行摘要”开始。

    此外,“ 文件”菜单还提供了一些命令,可让您打开各个报告以及报告目录。

    Open Directory:指定要打开的目录。该工具以递归方式检查目录的内容,并显示一个对话框,允许您选择要打开的文件类型和要打开的单个文件。

    Open Binary Container:FPGA二进制文件 .xclbin,由编译和链接过程创建,如构建和运行应用程序中所述。

    Open Report File:在编译,链接或运行应用程序期间,打开由Vitis核心开发套件生成的报告文件之一。您可以打开以下报告:

    Application Timeline:请参阅申请时间表。

    Profile Summary:请参阅配置文件摘要报告。

    Waveform:波形数据库或波形配置文件,如Waveform View和Live Waveform Viewer中所述。

    Utilization:当您构建系统硬件(HW)目标时,由Vivado®工具生成的资源利用率报告。

    Vitis分析仪还可以打开核估计,动作追踪,系统评估,日志和定时汇总报表。请参阅对 应用程序进行概要分析,以获取有关由构建和运行过程生成的各个报告的更多信息。

    Vitis分析仪的功能取决于您正在查看的特定报告。当报表的结构类似于电子表格时,您可以像电子表格一样与报表进行交互,选择数据行或单元格,并通过单击列标题对列进行排序。如果报告本质上是图形报告,则可以通过放大报告以查看详细信息,并缩小以查看更多信息来与报告进行交互。Vitis分析仪支持以下鼠标招让你快速放大和缩小的图形报告:

    放大:按住鼠标左键,同时从左上角到右下角拖动鼠标以定义要放大的区域。

    缩小:按住鼠标左键,同时从左下到右上画一条对角线。这会将窗口缩小可变的数量。

    画出的线条的长度决定了所应用的缩放系数。或者,按Ctrl键 并向下滚动鼠标滚轮按钮以缩小。

    缩放适合:按住鼠标左键,同时从右下到左上画一条对角线。窗口会缩小以显示整个设备。

    水平滚动:在诸如“应用程序时间轴”之类的报告中,您可以在按住鼠标中键滚动时间轴的同时按住Shift键。

    平移:按住并按住滚轮鼠标按钮以进行平移。

     

    7.2 了解葡萄分析仪

    下图显示了在Vitis分析器中打开的“链接摘要”和“系统指导”报告的示例。默认情况下,工作空间安排在三个视图中,包括“报告导航器”和“报告”以及“源代码”视图。

    Report Navigator:在左侧,此视图列出了所有打开的摘要文件和关联的报告。您可以使用此视图快速查找并打开报告。在上图中,您可以看到“链接摘要”和“编译摘要”报告及其所有相关报告都在“报告导航器”中列出。

    Reports:中心区域显示摘要文件和打开的报告的内容。您可以在“报告”视图中打开多个报告,然后通过选择视图顶部的窗口选项卡快速将其从一个报告更改为另一个报告。

    Source Code:可选的源代码视图在工作区的右侧打开。例如,这使您可以基于系统指导报告的反馈来查看和编辑内核源代码。您可以通过选择“指导”报告中的链接来打开源代码窗口,或者在“报告导航器”中右键单击“编译摘要”,然后单击“ 开源”。 可以通过单击工具栏上的“ 最小化”按钮来折叠“报表导航器”视图和“源代码”视图 ,然后通过单击折叠视图中的“还原”按钮来还原该视图。

    要关闭与“摘要”报告关联的所有打开的报告,例如“链接摘要”,请在“报告导航器”视图中右键单击“摘要”,然后选择“ 关闭选项卡”。这将关闭与“报告”视图中的摘要关联的所有打开的报告。

    要关闭“摘要”报告,例如“链接摘要”,请在“报告导航器”区域中右键单击该报告,然后选择“ 关闭文件”。关闭“摘要”报告将关闭所有关联的报告和文件。因此,例如,关闭链接摘要也将关闭构建的编译摘要。

    要关闭“报告导航器”中显示的所有文件,请选择“ 文件” >“ 关闭所有文件”命令。这会将Vitis分析器返回到主屏幕。

    要为在HLS中编译的C / C ++或OpenCL™内核打开HLS项目,请在“报表浏览器”区域中右键单击相应的“ 编译摘要”,然后选择“ 打开HLS项目”。

     

    7.3 创建运行配置

    1. Vitis分析仪可以让您创建运行配置,指定如何运行应用程序。您可以创建和保存用于软件仿真,硬件仿真和系统硬件的运行配置。

    从“运行”菜单中,选择“ 编辑运行配置”命令以打开“运行配置”对话框,如下所示

    1. 通过“运行配置”对话框,您可以创建新的运行配置或编辑和管理现有的运行配置。另外,您可以 从左窗格的“ 配置 ”列表中选择运行配置,“ 右窗格”的“ 编辑配置”下的字段由所选配置的设置填充。配置设置包括:

    Name:指定运行配置的名称。

    Launch mode:将运行配置指定为仿真运行或硬件运行。

    Executable:这定义了用于运行应用程序的主机程序。包括可执行文件的完整路径,或单击按钮找到所需的文件。

    Working directory:这是收集运行输出并生成报告的目录。指定的目录必须在运行前存在,否则 Vitis Analyzer将返回错误。

    Arguments:这些是“ 可执行文件”字段指定的主机程序的参数 。这些参数可以包括xitisbin 文件(在Vitis 示例中很常见),以及主机程序所需的任何其他输入。

    Environment variables:这指定了主机程序所需的任何环境变量。它不需要如“ 运行应用程序”中所述的XCL_EMULATION_MODE定义 ,因为此环境变量是通过上面的“启动模式”下拉设置设置的。

    XRT configuration:这将显示启动运行配置时将使用的xrt.ini文件的设置。单击按钮修改磁盘上的xrt.ini文件。有关更多信息,请参考xrt.ini文件。

    Make this configuration active:此复选框指定当前运行配置应为Vitis分析器中的活动运行。快速运行菜单命令中显示活动运行。

    Show this page before run:该复选框打开带有指定运行的“运行配置”对话框,允许您在实际运行之前编辑任何当前设置。

    3.编辑运行配置后,选择确定以接受您的更改并关闭对话框。

    4.选择应用接受更改并保持对话框打开,或者选择取消拒绝更改并关闭对话框。

    5.如果在启动选定的运行之前已打开“运行配置”对话框,请选择“运行”启动运行,或按“ 取消”关闭对话框而不启动运行。

    6.在Vitis 分析器中启动运行时,将打开一个控制台窗口,其中包含运行记录,所有报告均写入指定的工作目录。运行期间将生成各种报告,如运行应用程序中所述。

     

    7.4 配置葡萄分析仪

    工具> 设置命令打开葡萄分析器设置对话框如下所示。

    在常规设置中,可以配置以下内容:

    Default Directory:指定Vitis分析器打开时使用的默认目录。

    Recent:配置该工具以在重新打开Vitis分析器时还原工作区,并为“ 文件” >“ 打开最近的命令” 指定要显示的条目数。

    Reports:配置Vitis分析器以在打开“编译摘要”,“链接摘要”,“运行摘要”或“二进制容器”报告时打开所有相关报告。

    在显示设置中,可以配置以下内容:

    Scaling:设置字体缩放比例,以使显示更容易在高分辨率监视器上阅读。使用操作系统字体缩放使用操作系统为主显示器设置的值。用户定义的缩放比例允许您指定特定于Vitis分析仪的值。

    Spacing:设置Vitis使用的空间量(IDE。默认设置为“舒适”。“紧凑”减少元素之间的空间量,以将更多元素放入较小的空间。

    对于“报告”设置,您可以配置以下内容:

    Compile Summary:选择“报告摘要”下“报告导航器”视图中列出的报告。

    Link Summary:选择“链接摘要”下“报告导航器”视图中列出的报告。

    Run Summary:选择“运行摘要”下“报告导航器”中列出的报告。

    Binary Container:选择“二进制容器”下“报告导航器”视图中列出的报告。

    对于“窗口行为”设置,可以配置以下内容:

    Warnings:退出或刚退出Vitis分析仪时显示警告。

    Alerts:在不受支持的操作系统上运行该工具时发出警报。

    配置工具后,单击“ 确定”,“ 应用 ”或“ 取消”。您还可以使用“ 还原”命令来还原该工具的默认设置。

    本篇到此结束,下篇还会继续连载,欢迎大侠关注!

     

    【QQ交流群】

    群号:173560979,进群暗语:FPGA技术江湖粉丝。

    多年的FPGA企业开发经验,各种通俗易懂的学习资料以及学习方法,浓厚的交流学习氛围,QQ群目前已有1000多名志同道合的小伙伴,无广告纯净模式,给技术交流一片净土,从初学小白到行业精英业界大佬等,从军工领域到民用企业等,从通信、图像处理到人工智能等各个方向应有尽有。

     

    【微信交流群】

    现微信交流群已建立08群,人数已达数千人,欢迎关注“FPGA技术江湖”微信公众号,可获取进群方式。

    后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。

    江湖偌大,继续闯荡,愿大侠一切安好,有缘再见!

    展开全文
  • Vitis指南 | Xilinx Vitis 系列(二)

    千次阅读 2021-02-11 20:07:58
    Vitis指南 | Xilinx Vitis 系列(二) 大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有...
  • Vitis指南 | Xilinx Vitis 系列(五) 大侠好,欢迎来到“艮林子”专栏,本次为艮林子首次和大侠见面,新春佳节之际,略备薄礼,不成敬意,给大侠带来“Xilinx Vitis 系列连载”,给大侠提供参考学习的资料,如有...
  • Vitis HLS中使用C ++实现2D卷积神经网络 CNN-使用-HLS 目录结构: 该软件包包含以下目录: modules /-用于开发和测试用于CNN实施的单个HLS功能的目录 neuronetwork_stream /-包含C ++源代码和测试平台的目录 py ...
  • vitisvitis ai

    2021-05-16 13:29:28
    vitis vitis是赛灵思统一软件开发平台,边云设备都可在上面开发。其有4个组成部分(从下到上): 1、目标平台(target platform):基本软件和基本硬件(zynq-7000, zynqUltarScale + MPsoc, Alveo, Versal ACAPs...
  • ug1399-vitis-hls_HLS_源码

    2021-09-30 05:23:31
    关于xilinx的vivado中的hls的学习资料
  • Vitis-AI集成

    2020-12-23 08:32:16
    Vitis-AI集成 Vitis-AI是Xilinx的开发堆栈,用于在Xilinx平台(包括边端设备和Alveo卡)上进行硬件加速的AI推理。它由优化的IP,工具,库,模型和示例设计组成。设计时考虑到了高效率和易用性,充分发挥了Xilinx ...
  • 基于Vitis AI1.2 dpu平台测试

    千次阅读 2021-03-10 10:55:06
    vitis2020.01 芯片:zu3eg784 本篇博客较长,可以先看结果,同时dp上有图片输出。 参考网站设计: (1)...
  • vitis使用教程

    2021-09-15 22:13:29
    在学习ZYNQ嵌入式开发的过程中,正点原子的教程是采用SDK,而我下载的vivado2020.1已经变成了vitis,所以写一这篇博客,方便后续查阅。 文章目录学习记录找到vitis安装vitis创建platform工程创建application工程找...
  • vitis zync 介绍

    2021-03-19 16:07:23
    文章目录 1 - 从 Xilinx Zynq 讲起 2 - Vitis 平台概览 2.1 - Vitis IDE 2.2 - Vitis HLS / Accelerated ...Xilinx 赛灵思官方推出的 Vitis 统一软件平台可以大致的理解为在原本 SDK 软件的基础上将其做大做强,使其可
  • Xilinx Vitis HLS教程[02/10]1.2 Vitis HLS简介总结 1.2 Vitis HLS简介 总结 提示:这里对文章进行总结: 例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地...
  • Vitis统一软件平台概览

    千次阅读 2020-10-16 17:58:13
    文章目录1 - 从 Xilinx Zynq 讲起2 - Vitis 平台概览2.1 - Vitis IDE2.2 - Vitis HLS / Accelerated Library2.3 - Vitis AI2.4 - Petalinux3 - The end? Xilinx 赛灵思官方推出的 Vitis 统一软件平台可以大致的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,579
精华内容 631
关键字:

vitis