SystemVerilog学习之数据类型

1.简述

入职两个月了,都是使用System Verilog做验证。之前直接用Verilog编写testbench,这段时间使用sv后发现,确实很有必要转用sv做验证。

2.正文

1)数据类型

类型描述符号
logic四状态,相当于Verilogreg和wire功能
bit双状态,自定义位宽默认无符号
int双状态,32bit有符号
byte双状态,8bit有符号
shortint双状态,16bit有符号
longint双状态,64bit有符号
integer四状态,32bit有符号
time四状态,64bit无符号
real双状态,64bit双精度浮点,相当于double
shortreal双状态,32bit相当于float

注:

  • 四状态为:0、1、x、z;双状态为:0、1。
  • 在verilog中reg型数据只能在always中赋值,使用assign赋值则要使用wire类型,在sv中logic既可以在always中赋值也可以在assign中使用,但是不能在多处驱动。

2) 定宽数组

int array0[0:15];		//16个整数
int array1[16];			//16个整数
int array2[0:7][0:3];	//二维数组
int array3[8][4];		//二维数组 
array3[5][2]=1;			//数组赋值
bit [7:0] unpack[3];	//非合并数组,分配三个字空间,但只存放低字节
int ascend[4]=`{0,1,2,3};//常量数组前面加 “ ` ”

3)数组的操作

initial begin
	bit [31:0] src[5],dst[5];
	for(int i=0;i<$size(src);i++)
		src[i] = i;
	foreach(dst[j])
		dst[j]=src[j]*2;
end

欢迎关注我的公众号:芯王国,有更多的FPGA&数字IC的技术分享,还可以获取开源FPGA项目!

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值