标量依赖关系 - 2021.2 Chinese

Vitis 高层次综合用户指南 (UG1399)

Document ID
UG1399
Release Date
2021-12-15
Version
2021.2 Chinese

部分标量依赖关系较难以解析,且通常需要更改源代码。标量数据依赖关系如下所示:

while (a != b) {
   if (a > b) a -= b;
   else b -= a;  
 }

此循环的当前迭代完成 ab 的更新值计算后才能启动下一次迭代,如下图所示。

图 1. 标量依赖关系

如果必须得到上一次循环迭代结果后才能开始当前迭代,则无法进行循环流水打拍。如果 Vitis HLS 无法以指定的启动时间间隔进行流水打拍,那么它会增加启动时间间隔。如果完全无法流水打拍,则它会停止流水打拍并继续输出非流水打拍设计。