Temporal expressions provide a declarative way to describe temporal behavior. The e language provides a set of temporal operators and keywords that can be use to construct temporal expressions. Every temporal expression has a default clock, called its sampling event .The temporal language is the basis for capturing behavior over time for:
--Synchronizing with the DUT
--Debugging
--Protocol checking
--Functional coverage
The language is built of:
--Temporal expressions (TEs).
--Temporal operators, for defining complex expressions.
--Event struct members, for defining occurrences of events during the run.
--Expect struct members, for checking temporal behavio
Basic Temporal Expressions
Each TE is associated with a sampling event that indicates when the TE should be evaluated by Specman Elite.
------------------------------------------------------------------------
Temporal Expression Sampling Event
------------------------------------------------------------------------
true(boolean-exp)@sample-event Every sample-event at which boolean
exp is true
rise/fall/change(exp)@sample event Every sample-event at which exp had
risen/fallen/changed since previous
sample-event
cycle @sample-event Every sample-event
[num] * TE Above TEs repeated num times
-----------------------------------------------------------------------
Temporal Checking
1. The temporal expressions we saw for defining events and using in wait actions in TCMs can also be used for checking behavior through time.
2. The struct member expect spawns a thread that reports an error if a temporal expression does not succeed.