|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
各位:
正在使用UVM搭建验证环境,sequence采用随机值跑的话没有问题,但是如果使用特定值的话,会出现std::bad_alloc的问题。
- `uvm_do_with(req,{req.r.size==arr_size;
- req.g.size==arr_size;
- req.g.size==arr_size;
- foreach(req.r[i]) req.r[i]==r[i];
- foreach(req.g[i]) req.g[i]==g[i];
- foreach(req.b[i]) req.b[i]==b[i];
- })
复制代码
提示的错误是:terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
遇上这个问题,我该怎么改变我的代码呢?
之前使用`uvm_create(req)产生req,然后给req中的动态数组赋值,然后使用`uvm_send发送出去,但是因为在transfer中增加了一个随机化的变量,要求的是transfer中的动态数组给特定的值,但是新增的随机变量需要让它自己随机产生。所以使用原来的`uvm_send就不能满足要求了,而`uvm_rand_send则将动态数组的值也给随机化了,不知道有什么办法能解决这个问题呀? |
|