hls高层次设计ii latency效率-好的设计判断标准
一、hls设计功能
1.vivado hls设计一个算法功能不是本事,很多人能做到;
2.设计出一个功能就完事儿了?并不是,设计一个功能是最基础的
3.你设计的模块的frequency能跑多高,你别和我说你的设计只能跑100MHZ,那就太垃圾了,你好歹能跑150MHZ吧
4.正常情况你的frequency应该能起码跑200MHZ,才算一个合格的设计
5.如何评价你的设计是否优秀,如果你设计的模块frequency>=300MHZ,大概率可以认为是一个优秀的设计
6.你的设计的Latency不能太大
7.你设计的II不能太大
二、hls设计性能之frequency
1.要求设计的模块的frequency>=200MHZ作为及格要求;
2.要求设计的模块的frequency>=300MHZ作为你是否是一个优秀的vivado hls设计工程师的标准
三、hls设计性能之latency
1.设计的latency不能太垃圾了,否则,你的输入到输出的链路太长了,数据半天才出来,准备预热太慢了吧
四、hls设计性能之ii
1.设计的II=1才是好的设计
2.如果设计的II=2,那么你需要充分利用II=2,虽然表面II=2,但是实际上II=1,怎么处理呢?
for(){
src0 = src_stream.read();
src1 = src_stream.read();
//process0
//process1
}
五、调度效率
1.如果一个1080p的图像,你一个clock处理一个pixel,那么需要的时钟周期数为clock_target_num = 2,073,600
2.如果你的设计近似clock_target_num< 2*clock_target_num可以认为是一个好的设计。
