从除WORK之外的库将VHDL包导入SV

时间:2015-06-15 13:27:11

标签: vhdl system-verilog assertions

我有一个编译到库的VHDL模块,比如LIB_A。该模块具有作为记录的端口,相应的类型在包中定义,该包也被编译为LIB_A。我想为模块编写一些断言并使用OneSpin检查它们。

目前我遇到的问题是我可以访问SV中模块的简单端口,但我无法访问作为记录元素的端口。我尝试使用import以及库/包名称的不同组合导入VHDL包,但它没有用。

从库LIB_A导入VHDL包的语法是什么?我还需要考虑其他事情吗?

代码示例:

import my_package::*; // LIB_A?

module checker_m;


// 
// A plain SVA assertion
// 
always dummy_a: assert ( my_module.record_output.Reg1.some_sig == 0 );


endmodule

bind my_module checker_m checker_inst ();

1 个答案:

答案 0 :(得分:1)

这个问题似乎确实是特定于供应商的,正如@toolic所提到的那样。由于某些原因,当我用小写字母写下记录元素时,它可以工作。其余的(信号,模块)我在与VHDL相同的情况下编写,并且它有效。只有记录元素才会出现问题,直到用小写字母书写。