13 lines
398 B
Systemverilog
13 lines
398 B
Systemverilog
module top (input logic clk, input logic selA, selB, QA, QB, output logic Q);
|
|
always @(posedge clk) begin
|
|
if (selA) Q <= QA;
|
|
if (selB) Q <= QB;
|
|
end
|
|
|
|
check_selA: assert property ( @(posedge clk) selA |=> Q == $past(QA) );
|
|
check_selB: assert property ( @(posedge clk) selB |=> Q == $past(QB) );
|
|
`ifndef FAIL
|
|
assume_not_11: assume property ( @(posedge clk) !(selA & selB) );
|
|
`endif
|
|
endmodule
|