verilog中的数据类型有variable型和net型,都是为四值逻辑,取值分别为:0,1,X,Z。System Verilog增加了许多新的数据类型,以方便设计和验证的工程师来灵活运用。
逻辑(logic)类型
1、可被连续赋值语句,门电路和module所驱动--rtl设计
2、不能被多驱动,比如说双向总线(不能同时做input和output)
双状态数据类型
bit(1位)是最简单的双状态数据类型(取值为0和1),还有byte(8位)、shortint(16位)、int(32位)、longint(64位),那么二值逻辑的优势在哪里呢?
1、产生激励的有效值为0和1
2、二值逻辑更省内存
内建数据类型
四值逻辑类型:logic、reg、wire、integer
二值逻辑类型:bit、byte、int、shortint、int、longint
有符号:bit、logic、reg、wire
无符号:byte、int、shortint、int、longint、integer
转换关系
四值逻辑向二值逻辑转化时,X,Z转化为0;二值逻辑向四值逻辑转化时,无影响
有符号位向无符号位转化时,会直接向最高位扩展一位符号位