技术热点
当前位置:首页 > 资讯中心 > 技术热点
FPGA开发难?Xilinx这款软件平台解锁全员创新:开放,标准,免费!
FPGA开发难?Xilinx这款软件平台解锁全员创新:开放,标准,免费!

浏览量:32773    发布日期:2019.10.14

提及FPGA,许多人的第一印象就是“难,难于上青天”,一方面Verilog/VHDL与C语言大庭相径,需要彻底理解FPGA内部的逻辑结构的知识,另一方面,FPGA不仅逻辑思维很重要,在数学思维上的化繁为简在优化过程中也让人头疼。对于掌握知识不同的软件工程师或硬件工程师,都驻足在了上手难度的门外,尤其是想要开发一些具有AI的复杂算法场景就更加雪上加霜了……


 
就在2019年10月9日,赛灵思公司(Xilinx)发布了里程碑式的 Vitis™ 统一软件平台,以“突破软硬壁垒,解锁全员创新” 为主题,解锁软件开发者的硬件加速壁垒,将赛灵思独特的自适应计算能力带给全员开发者的新篇章。
 
对Xilinx比较熟悉的开发人员,可能在认知中Xilinx是一家偏向硬件的企业,此次发布的软件软件平台正是为适应现如今行业发展、为不同层次开发者提供便捷开发能力、为行业创造更大价值而发布的。
 
21ic中国电子网记者受邀参加此次发布会,赛灵思大中华区销售副总裁唐晓蕾(Maria) 及赛灵思软件和人工智能高级经理罗霖(Andy)现场为记者解答相关问题。
 
既可编程又自适应的Vitis:行业三大趋势中应运而生
 
在开始介绍这款软件平台前,首先强调的便是,这款工具不同以往,是“开放,标准,免费”的。对于FPGA熟悉的人,一定对Xilinx也并不陌生,这也许是Xilinx历史上第一次将软件开发平台免费。
 
现场,据唐晓蕾介绍,如今,行业正迈向三个趋势——AI激增异构计算从云端到边缘
 
第一,AI激增:AI也是近几年最火热的词,从数据中心、5G、自动驾驶、基因组学、医疗、金融等各种应用的大规模应用,导致数据量的激增,这种情况下就需要一个非常统一的平台。
 
第二,从云端到边缘:数据量的激增导致大量的计算需要放在云端。假若都在云端计算对整个带宽的要求是不是一样的,所以产生了边缘计算;但都在端计算,功耗、计算能力都是问题。所以这种情况,云端与边缘的统一化逐渐成为现今的最佳解决方案。
 
第三,异构计算:在计算能力不足以完成当前任务量之时,行业引入了CPU+ASIC、CPU+GPU、CPU+FPGA的概念,这也便是异构计算的概念。而Xilinx所提出的异构,与传统异构并不同,是自适应的异构,主要是软件感知架构,这种架构将不再单纯用硬件决定应用场景。当然Xilinx去年10月发布的ACAP也已提出软件自适应计算加速平台,该平台是为配合ACAP而生。


1.jpg


图1:赛灵思大中华区销售副总裁唐晓蕾(Maria)
 
在这种趋势下,如何解决这种问题?唐晓蕾表示,现今基本大多采用可编程或自适应来解决,但大多数情况下,市面的CPU、GPU、ASSP在可编程和自适应上市场还难以做到二者同时存在,Vitis正是这样一款既可做到可编程,又可做到自适应的软件平台
 
正如上文所述,Vitis这款软件平台是免费开放的,是一款统一的软件平台,可实现在 Xilinx 异构平台(包括 FPGA、SoC 和 Versal ACAP)上开发嵌入式软件和加速应用。它可为边缘、云和混合计算应用加速提供统一编程模型。可以让包括软件工程师和 AI 科学家在内的广大开发者都能受益于硬件灵活应变的优势。
 
Vitis统一软件平台:创造效率降低成本
 
据罗霖介绍,现如今,应用场景是非常碎片化、多样化、创新化的,举个例子来说,自动驾驶的厂商软件迭代周期非常短,模型近乎每周更新,这个前提下专门为某个应用做一款芯片是不可能满足客户需求的,客户需求的是扩展灵活的平台,可以根据应用和工作负载自动优化系统,包括软件和底层的硬件,这也是Vitis能为市场带来价值的最大价值。
 

2.jpg


图2:赛灵思软件和人工智能高级经理罗霖(Andy)

 
那么这款Vitis统一软件平台究竟有哪些功能?Vitis 统一软件平台是将Vitis目标平台、Vitis核心开发套件、Vitis加速库集合在一起的统一平台,可完成从端到云不同形态的需求,具体功能包括:


3.jpg


图3:Vitis统一软件平台所具有的的功能
 
Vitis目标平台:Vitis目标平台为Xilinx平台定义了基本软硬件架构及应用环境,包括外部存储接口、自定义输入输出接口和软件运行时。
 
Vitis核心开发套件:包括编译器分析器调试器赛灵思运行时库(Xilinx RunTime库,即XRT)
 
Xilinx RunTime库主要目的是为上层用将底层细节抽象,包括终端处理、生命周期管理、内存数据搬运,都是由该库负责进行。Xilinx RunTime库可促进应用代码(运行在嵌入式 ARM 或 x86 主机上)与加速器(部署在基于 PCIe 的 Xilinx 加速卡、基于 MPSoC 的嵌入式平台或 ACAP 的可重构部分上)之间的通信。它包括用户空间库和 API、内核驱动、电路板实用程序和固件。
 
编译器既包含C/C++/Python的编译器,也包含赛灵思的V++编译器,主要用来针对具体的应用产生具体加速内核;分析机能够直观了解底层到底层间究竟发生什么;调试器可以在遇到错误或Bug时,帮助分析进行调试。
 
在用户体验方面,该套系统的用户体验将会给工程师带来非常熟悉的开发环境,与此前所使用的的ARM、DSP开发流程完全一致。
 
Vitis加速库:包括OpenCV库BLAS库金融库,另外还包括Xilinx专门针的解决方案Vitis AIVitis video,其中Vitis AI将在下文中介绍,Vitis video面世在即,这两款解决方案也可帮助开发特定环境方面的应用。
 
通过上述的三重功能,对于开发“苦手”的人可直接应用相关库进行开发,而专业人员也可以使用相关的套件和Xilinx提供的经过优化的库进行高效率开发,减少开发时间的同时还可节省成本。
 
值得一提的是,Xilinx自28nm开始的器件均可使用该平台,另外一般的FPGA都可支持,不过ACAP一定要使用Vitis进行开发。
 
Vitis AI:由传统软件转向深度学习
 
在人工智能时代,市场已逐渐从传统的软件开发方法转向深度学习的算法。自1997年IBM深蓝成为国际象棋的冠军开始,IBM Watson、AlphaGo等逐渐可实现性能超越人类的高精准应用,现在对于人工智能软件的注重程度越来越高。诸如汽车驾驶员辅助系统(ADAS)、机器人出租车是现在正在发展的项目,而在2024年,汽车还将实现全自动驾驶。在这样的背景下,Vitis同样也具有这样的解决方案——Vitis AI。


4.jpg


图4:传统软件已逐渐走向深度学习
 
据罗霖介绍,Vitis AI底层是业界主流的框架,包括TensorFlow、Caffe、PyTorch,另外,包括37个开源的模型,这些模型是针对不同应用,诸如智慧城市、智能驾驶、实施目标分析跟踪等,开发者可以直接取用模型进行开发。


深圳市科通技术股份有限公司    客服电话:(+86)755-26018083    邮箱:cs@comtech.cn

隐私政策 | © Copyright 2018 www.comtech.cn | 粤ICP备19161615号 | 粤公网安备 44030502003347号