20 lines
413 B
Systemverilog
20 lines
413 B
Systemverilog
|
module top (input logic clock, ctrl);
|
||
|
logic read, write, ready;
|
||
|
|
||
|
demo uut (
|
||
|
.clock(clock),
|
||
|
.ctrl(ctrl)
|
||
|
);
|
||
|
|
||
|
assign read = uut.read;
|
||
|
assign write = uut.write;
|
||
|
assign ready = uut.ready;
|
||
|
|
||
|
a_rw: assert property ( @(posedge clock) !(read && write) );
|
||
|
`ifdef FAIL
|
||
|
a_wr: assert property ( @(posedge clock) write |-> ready );
|
||
|
`else
|
||
|
a_wr: assert property ( @(posedge clock) write |=> ready );
|
||
|
`endif
|
||
|
endmodule
|