我在vivado HLS中实现了这个循环计算。
For (i = 0; i < 59; i++){
#pragma HLS unroll
tmp = C[i];
For (j = 0; j < 3; j++){
#pragma HLS unroll
tmp = tmp + A[j][i] * B[j];
}
C[i] = tmp;
}DSP48E利用率为189。
我导出这个模块并在vivado中运行合成。
DSP48利用率为39。
我想知道为什么结果有很大的不同?
发布于 2022-03-08 11:52:00
请记住,Vivado HLS (高级合成)将始终提供估计.它永远不会提供准确的资源利用率,因为Vivado HLS中的编译器不执行地点和路线。而Vivado综合为您提供了实际的资源利用率。
但是,尽管如此,您已经提到的DSP48差异的数量,这是一个相当大的差异,不应该发生。以下是我对此的回答:
opt_design优化。https://stackoverflow.com/questions/71393849
复制相似问题