mirror of https://github.com/zachjs/sv2v.git
24 lines
497 B
Systemverilog
24 lines
497 B
Systemverilog
|
|
interface Interface;
|
||
|
|
integer x;
|
||
|
|
endinterface
|
||
|
|
|
||
|
|
module Single(intf);
|
||
|
|
Interface intf;
|
||
|
|
initial #1 $display("Single %0d", intf.x);
|
||
|
|
endmodule
|
||
|
|
|
||
|
|
module Group(intfs);
|
||
|
|
parameter WIDTH = 1;
|
||
|
|
Interface intfs [WIDTH];
|
||
|
|
initial $display("Group %0d", WIDTH);
|
||
|
|
for (genvar i = 0; i < WIDTH; ++i)
|
||
|
|
Single s(intfs[i]);
|
||
|
|
endmodule
|
||
|
|
|
||
|
|
module top;
|
||
|
|
Interface intfs[8]();
|
||
|
|
for (genvar i = 0; i < 8; ++i)
|
||
|
|
initial intfs[i].x = i ** 3;
|
||
|
|
Group #(.WIDTH(8)) g(intfs);
|
||
|
|
endmodule
|