UVM环境所遇到的错误

1、./apb_slv_agt/apb_slv_agt.sv, 30
  Incompatible complex type usage in task or function call.
  The following expression is incompatible with the formal parameter of the 
  function. The type of the actual is 'class 
  uvm_pkg::uvm_seq_item_pull_imp#(class uvm_pkg::uvm_sequence_item,class 
  uvm_pkg::uvm_sequence_item,class uvm_pkg::uvm_sequencer#(class 
  uvm_pkg::uvm_sequence_item,class uvm_pkg::uvm_sequence_item))', while the 
  type of the formal is 'class uvm_pkg::uvm_port_base#(class 
  uvm_pkg::uvm_sqr_if_base#(class apb_slv_pkg::apb_slv_trans,class 
  apb_slv_pkg::apb_slv_trans))'. Expression: this.sqr.seq_item_export
  Source info: this.drv.seq_item_port.connect(this.sqr.seq_item_export)

该问题出现的原因是driver类 添加了参数(一般是transaction)而sequencer 没有,导致两者之间不匹配

2、

Token 'apb_slv_pkg' is not a package. 
  Originating module 'ahb2apb_pkg'.
  Move package definition before the use of the package.

解决方法:加上编译指令  添加 -ntb_opts uvm参数

3、 Could not find member 'type_id' in class 'apb_slv_agt', at 
  "./apb_slv_agt/apb_slv_agt.sv", 

解决方法:忘记在工厂注册了,加上`uvm_component_utils(apb_slv_agt)即可。

4、

解决方法:此处的object未实例化。

5、在driver中,我们不仅要将信号驱动到virtual interface中,有时候还需要将部分变量保存到类的变量里面,此处切记,对类的变量赋值,采用=,而不是<=,不然会出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

都依爱妃之见

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值