问题描述
随Vivado HLS安装一起,提供了线性代数库。该库中有QRF_ALT函数,该函数应该是Qrf-basic的高吞吐量版本:QR分解使用给定的旋转。
我的问题是,它如何实现高吞吐量?从代码附带的简短注释中,我猜测是它使用了一批矩阵行的并行处理,但是我如何理解它的调度方式。
有人在Vivado HLS上有过任何经验,可以帮助我吗?在这一点上,任何帮助将不胜感激。
该库位于(linux)中
/opt/Xilinx/Vivado/<installation version>/examples/design/linear_algebra/qrf_alt
文件也可以在这里找到:
https://filebin.ca/5gtV16lXK4ZT/qrf_alt.h
https://filebin.ca/5gtVEqUqccsx/qrf_alt.cpp
https://filebin.ca/5gtVLiMVGsbv/qrf_alt_tb.cpp
解决方法
请问在这里或粘贴第53行在qrf_alt.cpp中调用的hls::qrf_top
的内核函数体是什么? hls::qrf_top
是真正执行QR因式分解的函数。您提供的文件不包含算法部分。