接口在SV LRM动态阵列2012他们说的SV
interface_instantiation ::= interface_identifier [ parameter_value_assignment ] hierarchical_instance { , hierarchical_instance } ;
当搜索hierarchical_instance的含义,你可以找到
hierarchical_instance ::= name_of_instance ([ list_of_port_connections ]) name_of_instance ::= instance_identifier { unpacked_dimension }
最后,可以发现,
unpacked_dimension ::= [ constant_range ] | [ constant_expression ]
我想阅读它,以便您不能拥有动态数组你的SV代码中的接口,对吧?但是,模拟都与VCS和奎斯塔下面的代码行的时候,它的工作没有任何警告/错误:
virtual protocol_if ifs[];
为什么它的工作原理?你能向我澄清一下吗?
这是因为使用的是** **虚拟接口,它是**实际接口**的指针/句柄。如果使用实际的接口实例,它可能不起作用。使用实际接口时,可能会出现此错误:'在模块实例数组中使用可变大小的维度。请在模块实例数组中使用固定尺寸。 – sharvil111
我可以做同样的解释。无论如何,我想在LRM中找到确切的解释。可能我找不到它,但是我需要在各行之间阅读。 – user7218867