Hardware Reference
In-Depth Information
As explained in Sect. 6.4 , nonoverlapping implication is a shortcut:
.s |=> p/ .s ##1 1 |-> p/:
22.3.6
Suffix Conjunction: Followed-by
The formal semantics of followed-by (also called suffix conjunction) is as follows:
w ˆ s #-# p iff for some i 0; w 0;i
j s and w i::
ˆ p.
Followed-by and suffix implication are dual operations (Chap. 10.3 ):
.s #-# p/ . not ( s |-> not p ) /:
Indeed, property s |-> p is false iff at some tight satisfaction point of sequence s
property p does not hold.
Nonoverlapping followed-by is defined as a shortcut:
.s #=# p/ .s ##1 1 #-# p/:
22.4
Formal Semantics of Clocks
The following notations, with and without subscripts, are used throughout this
section: b, c, d , x, y, and z denote Boolean expressions; e denotes an event
expression; r denotes a sequence; p denotes a property; v denotes a local variable
(see Chap. 15 ); h denotes an expression.
The formal semantics treats clocks like Boolean expressions. If e is a clocking
event, then .e/ denotes the associated Boolean expression. The semantics of .e/
is that ` ˆ .e/ iff there is a tick of e in letter `. In this way, the question of whether
e occurs at a particular tick of the global clock is transformed into the question of
whether the Boolean expression .e/ is true at that tick of the global clock. is
defined as follows:
C1 If e is a named event, then .e/ is assumed to be understood as a Boolean
expression at the granularity of the global clock. 3
C2 . $global_clock / D 1'b1 .
C3 .b/ D $changing_gclk( b ) , where b is not $global_clock .
3 The formal semantics does not attempt to expand the meaning of a named event in terms of the
various code that may trigger the event.
Search WWH ::




Custom Search