`timescale 1ns/1ps module testbench; reg clk; initial begin // $dumpfile("testbench.vcd"); // $dumpvars(0, testbench); #0 clk = 0; repeat (10000) begin #5 clk = 1; #5 clk = 0; end $display("OKAY"); end reg [3:0] in = 2; reg [1:0] count = 0; reg init = 0; wire [7:0] out; always @(posedge clk) begin in = in + 7; count = count + 1; if (count == 2'b11) init = 1; end top uut(clk,in,out); genvar index; generate for (index=0; index <= 7; index=index+1) begin: gen_code_label check_X check_output(clk,init,out[index]); end endgenerate endmodule module check_X(input clk,input init, input A); always @(posedge clk) begin #1; if (A === 1'bX && init == 1'b1) begin $display("ERROR: ASSERTION FAILED in %m:",$time," ",A); $stop; end end endmodule