【发布时间】:2014-12-01 15:05:52
【问题描述】:
我想实例化一个 systemverilog 接口数组,其中每个数组元素使用不同的输入。
如果所有元素都使用相同的输入,那么实例化很简单:
x_if x_IF[`NUM_INTERFACES](clk);
这里,如果`NUM_INTERFACES 是2,那么clk 输入会同时发送到x_IF[0] 和x_IF[1]。
但如果我也有
reg clk[`NUM_INTERFACES];
如何实例化x_IF,以便clk[0] 输入到x_IF[0] 和clk[1] 输入到x_IF[1]?
这是一个简单的例子;我期待在某种循环中(可能使用generate)为一组 12 个接口实现这一点。
【问题讨论】:
-
如果您使用
generate循环来实现它,您将不会有一个数组,而是有12 个不同的实例,每个实例都在自己的范围内。 -
没错,这就是为什么我想知道如何在循环中完成这项工作。终于有了解决办法;我在声明中未连接接口输入,后来在生成循环中为它们分配了值。
标签: arrays interface system-verilog