微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > 微电子学习交流 > 问个随机约束的写法

问个随机约束的写法

时间:12-12 整理:3721RD 点击:
rand bit [3:0] data[16];
期望产生16个data,分别对应0-15(当然顺序不固定)
这个约束应该怎么写呢?
如果是randc bit [3:0] data[16],那是两次随机过程中
同一个data[i]会不重复地取[0:15]中数,不是想要的约束。
请指教。谢谢

post_randomize里面这么做
for(int i=0;i<16;i++) a[i]=i;
a.shuffle();

直接写约束也很简单
constraint t_c {
foreach(a[i]) {
  foreach(a[j]){
     if(i!=j) {
       a[i] != a[j];
     }
   }
}
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top