Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module myTask_tester;
- logic [1:0] sel;
- logic a,b;
- logic val;
- // a = sel[0]
- // b = sel[1]
- // c = a
- // d = b
- // c & 'b & 'a & 'b c' d a' ab cda db
- assign ref_val = sel[1]&~sel[0]&~a&~b | ~sel[1]&sel[0]&~a | a&b | sel[1]&sel[0]&a | sel[0]&b;
- initial begin
- b = 0;
- forever #10 b = ~b; //d
- end
- initial begin
- a = 0;
- forever @(negedge b) a = ~a;
- end
- initial begin
- sel[1] = 0;
- forever @(negedge a) sel[1] = ~sel[1];
- end
- initial begin
- sel[0] = 0;
- forever @(negedge sel[1]) sel[0] = ~sel[0];
- end
- initial begin
- repeat(16)
- begin
- #11 $strobe("%d %d %d %d = %d = %d %d", sel[0], sel[1], a, b, ref_val, out, ref_val == out);
- end
- #9 $stop;
- end
- myTask uut_inst(sel, a, b, out);
- endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement