Hardware Reference
In-Depth Information
Example 21.34.
Consider the following code fragment:
always @( posedge clk) begin
// ...
if (en) begin
// ...
a1: assert #0 ($onehot0({a, b});
end
end
In FV, the deferred assertion a1 is interpreted as a concurrent assertion:
always @( posedge clk) begin
// ...
if (en) begin
// ...
a1: assert property ($onehot0({a, b});
end
end
t
Exercises
21.1. Write a module implementing a counter modulo 4 and build the correspond-
ing FV model. Write a symbolic representation of its transition relation.
21.2. Build an automaton for the complement of the property always a[ * 3]
##1 b |=> c . Compare it with the automaton for the complement of the property
always a[+] ##1 b |=> c
21.3.
What do the following properties mean?
(1) @clk s_eventually always p .
(2) @clk s_nexttime nexttime p .
(3) @clk nexttime s_nexttime p .
(4) @clk p until s_nexttime q .
(5) @clk p s_until nexttime q .
21.4.
Rewrite the following properties without using negation:
(a) @clk not weak (a ##1 b)
(b) @clk not strong (s[->2]) .
21.5.
What is the meaning of the property @clk p s_until_with always q ?
Search WWH ::




Custom Search