2016-12-01 13:42:17 +01:00
|
|
|
module demo(input clk, reset, ctrl);
|
|
|
|
localparam NBITS = 10;
|
|
|
|
reg [NBITS-1:0] counter;
|
|
|
|
initial counter[NBITS-2] = 0;
|
|
|
|
initial counter[0] = 1;
|
|
|
|
always @(posedge clk) begin
|
2016-12-03 13:20:29 +01:00
|
|
|
counter <= reset ? 1 : ctrl ? counter + 1 : counter - 1;
|
2016-12-01 13:42:17 +01:00
|
|
|
assume(counter != 0);
|
|
|
|
assume(counter != 1 << (NBITS-1));
|
|
|
|
assert(counter != (1 << NBITS)-1);
|
|
|
|
end
|
|
|
|
endmodule
|