在绑定文件中访问局部变量的分层路径?

pc3e

这是一种常见的方法,可以通过将断言,覆盖点等放置在单独的模块或接口bind中并将其附加到设计中来将其与设计分开,例如,

module foo (input a);
  wire b = a;
endmodule

interface foo_assertions (input a, b);
  initial #1 assert (b == a);
endinterface
bind foo foo_assertions i_foo_assertions(.*);

一个问题是它需要维护中的端口列表foo_assertions但是,如果foo有一个bar子模块,信号里面bar可以方便地使用相对于声明文件分层引用访问foo,例如assert (i_bar.sig == a)

有没有办法使用分层路径语法来访问直接在中声明的变量foo,从而消除了对端口列表的需要foo_assertions请注意,foo该模块不一定是顶层模块,因此$root.b将无法正常工作。看起来foo.b可行,但是当foo顶层存在多个实例时,这是否安全

dave_59

Verilog始终使用向上的名称引用,这就是为什么能foo.b起作用的原因(请参阅IEEE 1800-2017 SystemVerilog LRM中的23.8节)。foo只要您绑定foo_assertions到名为的模块中,实例的数量无关紧要foo每个向上的引用均适用于其下方的特定实例。

在层次结构路径中引用顶级模块时,您一直在使用向上引用,而不必实现它。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

访问内部类中的局部变量

来自分类Dev

无法在for,php中访问局部变量

来自分类Dev

在 *ngIf 中访问局部变量

来自分类Dev

访问函数局部变量

来自分类Dev

局部变量与数组访问

来自分类Dev

局部变量与方法访问

来自分类Dev

在回调函数中访问局部变量

来自分类Dev

通过反射访问main方法中的局部变量

来自分类Dev

访问ASM Java库中的局部变量

来自分类Dev

允许加载了imp的模块访问python中的局部变量

来自分类Dev

如何使用OCMock在XCTestCase的方法中访问局部变量?

来自分类Dev

访问超类构造函数中的局部变量

来自分类Dev

访问ASM Java库中的局部变量

来自分类Dev

如何使局部变量在Java中的循环外可访问

来自分类Dev

C#Func:在块中访问局部变量

来自分类Dev

JVMTI Agent中的访问线程局部变量

来自分类Dev

如何绑定尊重DataContext的局部变量

来自分类Dev

Java中的局部变量

来自分类Dev

在Rails erb文件中创建实例或局部变量?

来自分类Dev

在Concourse凭证文件中引用局部变量

来自分类Dev

Java中的线程局部变量与局部变量

来自分类Dev

通过名称访问局部变量

来自分类Dev

使用PowerMockito访问方法的局部变量?

来自分类Dev

局部变量可访问的外部块

来自分类Dev

通过Main()方法访问局部变量

来自分类Dev

在函数外部访问局部变量

来自分类Dev

如何访问内部类的局部变量

来自分类Dev

如何从C / C ++访问lua脚本中的局部变量或调用局部函数?

来自分类Dev

Rails-如何将局部变量传递给共享文件夹中的局部变量?