vivado HLS 数据类型及转换 VS中调试任意精度

Q:是生成两个一位数组好还是二维数组好?
函数参数传递和内存空间占用的权衡??

vivado HLS 的任意精度数据类型:

vivado HLS 数据类型及转换 VS中调试任意精度_第1张图片
资源对比
vivado HLS 数据类型及转换 VS中调试任意精度_第2张图片

头文件定义

#define W 18
#define __ NO_SYNTH__
#ifdef  __ NO_SYNTH__
typedef  int data_t;
#else

typedef  ap_int<W> data_t;
#endif

查看

sizeof()
vivado HLS 数据类型及转换 VS中调试任意精度_第3张图片

VS中调试任意精度类型

商业版,只需添加库
vivado HLS 数据类型及转换 VS中调试任意精度_第4张图片

任意精度数据类型初始化

vivado HLS 数据类型及转换 VS中调试任意精度_第5张图片

ap_fix

vivado HLS 数据类型及转换 VS中调试任意精度_第6张图片
AP_RND截尾模式
AP_SAT溢出模式

数据类型显式转换

最终目的:大数据不溢出,小数据不损失

vivado HLS 数据类型及转换 VS中调试任意精度_第7张图片
eg
除法前面增加目标数据类型的强制转换

(ap_ufixed<6,4>)i4/i3

vivado HLS 数据类型及转换 VS中调试任意精度_第8张图片

在进行运算中,需要明确数据类型
vivado HLS 数据类型及转换 VS中调试任意精度_第9张图片

ref
https://blog.csdn.net/h__ang/article/details/90070607
https://blog.csdn.net/weixin_41967965/article/details/82080230?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

你可能感兴趣的:(HLS)