module hh (input [2:0] a [0:3], output b);
wire [2:0] c1 [4:1];
wire [0:2] c2 [0:3];
wire d;
u_hh_1 hh (.a(c1 ), .b(d)); // it is right;
u_hh_2 hh (.a(c1[4:1][2:0]), .b(d)); // illegal slice name;
u_hh_3 hh (.a(c2 ), .b(d)); // it is right,
// and in the netlist,
// the bits of c2 is swapped to a;
u_hh_4 hh (.a(c2[0:3][2:0]), .b(d)); // illegal slice name;
Iは、ポートリストのアレイを使用するだけVERILOGない、SystemVerilogのに支持されている知っています。これをより読みやすくするために、範囲を明示的に表示したいが、それは違法である。関数でも同じ問題が発生します。これをどうすれば解決できますか?SystemVerilogの使用アレイ