iverilog/ivtest/ivltests/pr1799904.v

46 lines
660 B
Verilog

module test;
reg clock;
initial begin
clock = 0;
forever #5 clock = !clock;
end
wire [0:31] read_data1 [0:7];
reg [0:31] read_data2 [0:7];
assign read_data1[0] = 0;
assign read_data1[1] = 1;
assign read_data1[2] = 2;
assign read_data1[3] = 3;
assign read_data1[4] = 4;
assign read_data1[5] = 5;
assign read_data1[6] = 6;
assign read_data1[7] = 7;
always @(posedge clock) begin: we
reg [3:0] x;
for (x=0; x<8; x=x+1) begin
read_data2[x[2:0]] <= read_data1[x[2:0]];
end
end
always @(posedge clock) begin: wg
integer i;
#1 for (i=0; i<8; i=i+1) begin
$write("%x ", read_data2[i]);
end
$display;
end
initial begin
#20;
$finish(0);
end
endmodule // test