| module testbench; |
| reg [0:7] in; |
| |
| reg patt_B = 0; |
| wire B; |
| |
| initial begin |
| // $dumpfile("testbench.vcd"); |
| // $dumpvars(0, testbench); |
| |
| #5 in = 0; |
| repeat (10000) begin |
| #5 in = in + 1; |
| end |
| |
| $display("OKAY"); |
| end |
| |
| top uut ( |
| .x(in[1:2]), |
| .y(in[3:4]), |
| .z(in[5:6]), |
| .clk(in[0]), |
| .A(in[7]), |
| .B(B) |
| ); |
| |
| always @(negedge in[0]) begin |
| if (in[1:2] || in[3:4] && in[5:6]) |
| patt_B <= in[7] & in[5:6]; |
| if (in[1:2] || in[3:4] && !in[5:6]) |
| patt_B <= in[7] | in[1:2]; |
| end |
| |
| assert_tri out_test(.A(patt_B), .B(B), .en(1'b1)); |
| |
| endmodule |