|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
各位:
正在用UVM搭建仿真环境,把以前的apb的testcase拿出来跑的时候突然想到一个问题,我们通常使用`uvm_do_with(req,{req.addr==my_addr;req.direction==WRITE;req.data==my_data})来发送写传输,用`uvm_do_with(req,{req.addr==my_addr;req.direction==READ})来发送读传输。但是很多情况下,我们还需要知道读出来是什么值,对该值进行判断,然后才进行后续处理,比如:
- rdata=apb_read(addr);
- if(rdata==FF)
- ....
- else
- .....
复制代码
但是,使用了UVM的sequence中,该如何取得读的数据呢?
我在我的`uvm_do_with(req,{req.addr==my_addr;req.direction==READ})之后,加了一行“$display("addr=%h,data=%h",req.addr,req.data);"结果出来的地址是对的,data却一直是0。因此,我想问问大家,有什么办法来解决这个问题么?还是没办法? |
|