Guest
Perhaps somebody could explain the following?
My SystemVerilog simulator complains about line 13 but not line 12?
It indicates that line 13's access to 'd' has the "wrong number of
indices"? Am I missing something obvious here?
(A corner case I agree but one that I need in a parameterized design)
- Robert.
module test();
parameter N=1;
logic [7:0] a;
logic [1:0][1:0] b;
logic [1:0][N-1:0][1:0] c; // fine
logic [1:0][N-1:0][N-1:0][1:0] d; // complains?
assign a[0]=b[1][1];
assign a[1]=c[1][0][1]; // line 12
assign a[2]=d[1][0][0][1]; // line 13
endmodule
My SystemVerilog simulator complains about line 13 but not line 12?
It indicates that line 13's access to 'd' has the "wrong number of
indices"? Am I missing something obvious here?
(A corner case I agree but one that I need in a parameterized design)
- Robert.
module test();
parameter N=1;
logic [7:0] a;
logic [1:0][1:0] b;
logic [1:0][N-1:0][1:0] c; // fine
logic [1:0][N-1:0][N-1:0][1:0] d; // complains?
assign a[0]=b[1][1];
assign a[1]=c[1][0][1]; // line 12
assign a[2]=d[1][0][0][1]; // line 13
endmodule