作者:Steve Leibson, 赛灵思战略营销与业务规划总监
注:以下文章节选自最新出版的Xcell期刊第87期“利用Vivado HLS加速运行慢的软件”,作者David C Black。
David C Black是Doulos技术类高级成员
您是否设想过,“是否能有一种简单的方法,将一些代码加入不太昂贵的自定义处理器或自定义硬件?” 如果将这些慢代码集成在硬件中难度是否会加大,我是否能够利用Vivado HLS完成这项要求较高的运算呢? 我开始从软件方面考虑这个转换,我开始关注软件界面。毕竟,HLS创建专用于处理硬件接口的硬件。幸好Vivado HLS支持创建AXI slave的想法,同时工作量较少。
我发现Vivado HLS编码限制相当合理。它支持大多数C + +语言,动态存储器分配除外。毕竟,在运行中硬件不会创建硬件本身。这其实也是限制使用标准模板库(STL )的功能,因为标准模板库大量使用动态分配。只要数据保持不变,可使用大多数语言功能。此外, Vivado HLS支持C + +类、模板、函数和运算符重载。这样便于在自定义矩阵类封装矩阵运算。
目标技术和时钟速度方面,需要对Vivado HLS进行一些设置。在此之后,开发过程中需要关注违反策略的报告,研究分析报告以确保Vivado HLS运行合乎预期。Vivado IP Integrator可使得将AXI slave加入Zynq SoC硬件且删除更为容易,变得轻而易举,并消除信号连接不正确的顾虑。
我对从Vivado HLS得出的结果感到由衷的高兴,我强烈建议研究软件代码瓶颈的所有开发人员关注这个工具集。我们将提供丰富的培训课程、资源和材料以便开发人员(包括 Doulos成员)迅速掌握。
了解有关使用Vivado HLS的更详细信息,请点击此处阅读David C Black的文章。
原文链接:
http://forums.xilinx.com/t5/Xcell-Daily-Blog/Make-Slow-Software-Run-Fast...
© Copyright 2014 Xilinx Inc.
如需转载,请注明出处