在我的工作中,我必须证明在Xilinx的Zynq702上运行在FPGA上的VHDL(通过Vivado HLS制作)的合成C ++可视化算法代码比传统CPU上的经典C ++代码更快。
我无法解决的主要问题是 - 如何可以将合成代码“加载”到Vivado 2016工具的SDK工具中,换句话说 - 如何运行合成的VHDL代码(比特流)董事会?
在我看来,SDK程序仅适用于C / C ++代码。有什么办法可以在处理器上获得VHDL代码的比特流,并证明在FPGA上运行的合成代码比原始C ++代码更快?
你可以给我一个建议吗?我浏览了几个YouTube教程和论坛,但它没有帮助我。答案 0 :(得分:-1)
基本上你需要两个版本的代码。一个C / C ++版本意味着在CPU上运行,一个C / C ++版本(略微适应)与HLS(针对可编程逻辑)一起使用。
Xilinx提供了一个名为SDSoC的工具,可以帮您完成。基本上你用C / C ++编写应用程序一次。分析器会告诉您哪个函数使用了大部分计算能力,您可以将这些函数标记为可卸载到可编程逻辑。该工具将在后台使用Vivado HLS将您的C / C ++转换为RTL代码。 SDSoC将告诉您预期的加速比与完全在CPU中运行的原始代码相比较。
我建议你仔细阅读UG1028