Vivado_HLS 学习笔记5-多个循环的并行
案例1: 常数边界的循环合并
期待的情形:
HLS综合的结果
做的操作:循环合并
操作的结果
循环边界均为常数,但不相等时,按最大的边界进行循环合并
案例2: 变量边界的循环合并
能合并的循环,边界必须相同!
案例3: 数据流
HLS默认综合结果
使用Dataflow的结果
案例4: 数据流
HLS综合结果
使用DataFlow
案例5: 数据流
HLS综合结果
使用DataFlow
提醒
- 对于scalar,指针,或引用和返回值, HLS会综合为FIFO
- 对于数组,HLS如果判断出有顺序,则综合为FIFO; 如果是随机访问,会实现为ping-pong RAM.
- 可以手动设置config_dataflow