| module testbench; | |
| reg en; | |
| initial begin | |
| // $dumpfile("testbench.vcd"); | |
| // $dumpvars(0, testbench); | |
| #5 en = 0; | |
| repeat (10000) begin | |
| #5 en = 1; | |
| #5 en = 0; | |
| end | |
| $display("OKAY"); | |
| end | |
| reg dinA = 0; | |
| wire [1:0] dioB; | |
| wire [1:0] doutC; | |
| top uut ( | |
| .en (en ), | |
| .a (dinA ), | |
| .b (dioB ), | |
| .c (doutC ) | |
| ); | |
| always @(posedge en) begin | |
| #3; | |
| dinA <= !dinA; | |
| end | |
| assert_dff b_test(.clk(en), .test(dinA), .pat(dioB[0])); | |
| assert_dff c_test(.clk(en), .test(dinA), .pat(doutC[0])); | |
| assert_dff cz_test(.clk(!en), .test(1'bZ), .pat(doutC[0])); | |
| endmodule | |