尝试从环境访问接口内的接口(SystemVerilog、OVM)

用户1980750

在我的 env 类的构建函数中尝试连接接口:

   virtual my_if  my_vif;

   for (int i = 0; i<32; i++) begin
     _agent[i]._vif = my_vif._if[i];
   end

在 my_if 中:

  interface my_if();
      if     _if[32]();
  endinterface :my_if

运行模拟时出现此错误:

Error-[MFNF] Member not found
my_env.sv, 229 "this.my_vif." 
Could not find member '_if' in interface 'my_if', at "my_if.sv", 1.

_if 也是下一个信号的接口:

interface if(); 
 logic                   clk;
 logic                   rstn;
 logic [101:0] requests;
 logic [63:0]  dataOut;
endinterface :if

问题是,当接口 _if 未包装在 my_if 接口下时,一切正常。

哔叽

看起来您正在尝试_if使用数组实例在界面中实例化某些类型的设计元素32 次。

array instancesgenerate有关因此,索引它们的唯一方法是从另一个generate块中进行索引您不能使用带有索引的简单 for 循环来执行此操作。

生成块是 rtl 设计的一部分,通常对测试台的适用性非常有限,尤其是动态结构作为agent.

您需要重新考虑实现它的方式。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

访问接口内的枚举

来自分类Dev

在SystemVerilog中为接口内部的接口指定modport

来自分类Dev

在接口内实现接口

来自分类Dev

接口内的通用方法

来自分类Dev

接口内的实现-Java

来自分类Dev

接口内的通用方法

来自分类Dev

接口内部接口打字稿

来自分类Dev

SystemVerilog接口的“ this”等效项

来自分类Dev

Systemverilog接口突破数组

来自分类Dev

系统Verilog:接口内的枚举

来自分类Dev

系统Verilog:接口内的枚举

来自分类Dev

尝试从其父级的方法访问Fragment的接口

来自分类Dev

是否可以在接口内创建JUnit规则

来自分类Dev

接口内部的打字稿默认功能

来自分类Dev

函数类型的接口内的泛型类型

来自分类Dev

同名C#接口内的属性

来自分类Dev

是否可以在接口内创建JUnit规则

来自分类Dev

具有不同输入的systemverilog接口数组

来自分类Dev

基于接口对模块进行参数化(SystemVerilog)

来自分类Dev

Systemverilog 接口中的外部上拉

来自分类Dev

Docker:访问wifi接口

来自分类Dev

父类的访问接口

来自分类Dev

访问XML RPC接口

来自分类Dev

接口内部的主要方法(java-8)

来自分类Dev

Kotlin批注:获取接口内部批注的属性

来自分类Dev

呼叫签名在带有params的接口内不兼容

来自分类Dev

在 C# 中的接口内使用枚举类型

来自分类Dev

在 Idris 的接口内定义数据类型

来自分类Dev

我们可以在接口内使用 lambda 表达式作为接口内的默认或静态实现吗?