SystemVerilog中随机的constrain语法

本文详细介绍了SystemVerilog中如何使用`rand`关键字进行随机变量定义,并通过`constraint`设置约束条件,包括`inside`操作符、`dist`操作符、条件限制符和`solve...before`操作符的使用,以及`rand_mode`函数在控制随机激励方面的应用。
摘要由CSDN通过智能技术生成

SystemVerilog中随机

通过关键字rand定义

rand bit [1:0] a;
randc bit [1:0] b;
rand bit [31:0] addr;

constraint rang{ addr >= 1024; //分开写
addr <= 16384;
a == b; //等于
}

用rand定义变量之后,调用randomize()函数进行随机化。若随机成功,这个函数返回值是1,否则0 。

rand_mode函数打开激励随机

class Packet;
rand integer src, dst;
endclass
Packet packet_a = new;
packet_a.rand_mode(0); //调用函数赋值0,关闭随机
packet_a.src.rand_mode(1);//打开类中src的随机
t = packet_a.rand_mode();//随机成功返回1

SystemVerilog中constrain语法

inside操作符

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值