hls优化指令

Vitis hls 工程中,循环嵌套是比较耗时的工作,通过循环控制指令能增强算法的并行,提高吞吐量,降低延迟,也就是进行优化设计。
hls的循环控制指令:
1、Piplining :通过执行并发的操作提高吞吐量
2、Dataflow:允许顺序循环和并发的操作
3、Unrolling:展开循环,用于创建多个独立的操作
4、Merging:合并联系的循环,减少总体的延迟,提高共享和优化
5、Flattening:允许将带有改善延迟和逻辑优化的嵌套循环整理为单个的循环
6、Dependence:提供额外的信息以克服循环-进位的依赖
7、Tripcount:提供用户迭代分析的覆盖
8、Latency:制定用于循环操作的延迟

完美循环:只有最里面的循环才具有主体内容,在循环语句之间没有指定逻辑,循环界限是恒定的。
半完美循环:只有最里面的循环才具有主体 (内容), 在循环语句之间没有指定逻辑,只有最外面的循环边界可以是可变的。
非完美循环:循环的主体内容分布在循环的各个层次或内层循环的边界是变量
在hls工程中,每个solution可以设置不同的优化指令,多个solution的编译结果,分析资源占用。

完美循环参考:https://m.elecfans.com/article/1454848.html

你可能感兴趣的:(FPGA,FPGA,hls,fpga加速)