在使用sv编写验证环境的时候,在类中可以在变量的前面添加上rand,同时加上constraint,在randomize的时候随机.但是,有时候在task或者function中需要对一个临时变量做随机,此时便可以借助于std::randomize(a,b,c)with实现对变量的随机.
std::randomize(a,b,c)with时,括号内的变量成为random variable,括号外的变量都成为state variable.也就是说括号外的变量可以成为random variable的约束变量.
std::randomize(m_pkt_q)with{
m_pkt_q.size() == 2;
foreach(m_pkt_q[i]){
m_pkt_q[i] >0;
}
m_pkt_q.sum() == 100;
};
std::randomize用法
最新推荐文章于 2024-01-23 14:17:10 发布