1. 内建数据类型
(1)按照四值逻辑类型和二值逻辑类型分类
四值逻辑:integer、reg、logic、net- type
二值逻辑:byte、shortint、int、longint、bit
注:四值逻辑即可以表示0 1 x z,二值逻辑即可以表示0 1
(2)按照有符号和无符号类型分类
有符号:byte、shortint、int、longint、integer
无符号:bit、logic、reg、net-type
注:
- 四值逻辑即可以表示0 1 x z,二值逻辑即可以表示0 1
- 四值逻辑推荐使用logic,二值逻辑推荐使用bit,有正负数的二值逻辑使用int
- logic作为sv的新数据类型可以省去考虑使用reg还是wire的精力
- 当不同数据类型进行操作时,需要注意变量的逻辑数值类型、符号类型以及矢量位宽
- 四值逻辑默认值是x,二值逻辑默认值是0
2. 常用数据类型
2.1 数组
2.1.1 定宽数组与多维数组
定宽数组:int a[0:15] 或 int a[16] //16个整数
多维数组:int array[0:1][0:2] 或 int array[2][3]='{'{0,1,2},'{3,4,5}}
2.1.2 合并数组与非合并数组
合并数组:有时需要把数据当作一个整体来访问,同时又可以把它分解成更小的单元