module main; typedef struct packed { logic [1:0][2:0] x; logic [0:2][1:0] y; logic z; } foo_t; foo_t foo; initial begin $monitor($time, " %b %b %b %b %b %b %b %b", foo, foo.x, foo.y, foo.z, foo.x[0], foo.x[0][0], foo.y[0], foo.y[0][0]); #1; foo.z = 0; #1; foo.y = 0; #1; foo.y[0] = '1; #1; foo.y[1] = '1; #1; foo.y[1][1] = 0; #1; foo.y[0][0] = 1; #1; foo.y[0][1] = 1; #1; foo.x = 0; #1; foo.x[0] = '1; #1; foo.x[1] = '1; #1; foo.x[1][1] = 0; #1; foo.x[0][0] = 1; #1; foo.x[0][1] = 1; end endmodule module top; endmodule