Vivado HLS数据类型及数据类型转换

引言

     Vivado HLS数据类型与C语言的基本数据类型稍微有些不同,由于FPGA所需要的数据类型可能是任意bit的,而C语言则是以8bit为单位的,所以如果继续沿用C语言的数据类型,会在利用C语言开发FPGA时造成资源的极大浪费。

1、任意数据类型

      任意数据类型的含义指定义的数据类型可以自定义bit位数,如下图:

Vivado HLS数据类型及数据类型转换_第1张图片

      对于C++语言还提出了定点数据类型,其中各种参数的含义定义如下:

Vivado HLS数据类型及数据类型转换_第2张图片

Vivado HLS数据类型及数据类型转换_第3张图片

 2、数据类型转换

      Vivado HLS还定义了不同数据类型间进行转换的规则和格式,有显式转换和隐式转换两种方式。

  • 显式转换

Vivado HLS数据类型及数据类型转换_第4张图片

  • 隐式转换

Vivado HLS数据类型及数据类型转换_第5张图片

3、复合数据类型 

     Vivado HLS中的复合数据类型类似于C语言中的结构体,但是没有C语言结构体类型中的指针类型,如下两例:

Vivado HLS数据类型及数据类型转换_第6张图片

Vivado HLS数据类型及数据类型转换_第7张图片

 

 

 

 

你可能感兴趣的:(Vivado,HLS)