Vector Data Type
·
一、Vector Data Type
1.对于function,使用task parallelism,pipeline和dataflow
2.对于data_width上面要data parallelsim,可以使用vector data type,也就是SIMD单指令多数据
3.memory bandwidth和vector data type的data位宽有关系
二、vector data type实际上就是一个array

vector作为array,其中每个element元素,都是可以同时抓出来处理
三、xilinx的hls中提供了hls::vector这个数据类型

其中T表示是数据类型,可以是基本数据类型,也可以是用户自定义数据类型,比如说char ,int,或者struct类型。N表示元素的个数,表示vector这个数组中有多少个元素。
size(T)*N=2^power,也就是这个vector元素合计的total位宽为16bit,32bit,64bit,128bit,256bit,512bit;这样memory的使用效率最为理想。

需要注意的是:

四、memory对齐

padding in lower地位,如果没有对齐,那么会在地位进行padding,从而使得设计对齐。
五、使用vector来实现高位宽的m-axi总线访问
方式一:

方式二:

方式三:

推荐方式三的写法!
更多推荐



所有评论(0)