请教个随机约束的写法
时间:10-02
整理:3721RD
点击:
rand bit [3:0] data[16];
期望产生16个data,分别对应0-15(当然顺序不固定)
这个约束应该怎么写呢?
如果是randc bit [3:0] data[16],那是两次随机过程中
同一个data会不重复地取[0:15]中数,不是想要的约束。
请指教。谢谢
期望产生16个data,分别对应0-15(当然顺序不固定)
这个约束应该怎么写呢?
如果是randc bit [3:0] data[16],那是两次随机过程中
同一个data会不重复地取[0:15]中数,不是想要的约束。
请指教。谢谢
这个约束不是太好写,systemverilog for verification 2nd上有介绍,不过我更喜欢用下面的方法:
bit [3:0] data[16];
initial begin
foreach(data[i]) begin
data[i] = i;
end
data.shuffle();
foreach(data[i]) begin
$display("data[%0d] = %0d", i, data[i]);
end
end
en.用两个foreach 循环可以写。
