HOME
UP
  PREV
NEXT (TLM - Measuring Utilisation and Modelling Contention)
Adding The Timing Annotations
For approximate timing:
-
In the non-blocking coding style, we can make a note of the simulator tnow
in a local variable at the start of a transaction and not return success
of the transaction (or a sub-part of it) until tnow
has sufficiently advanced.
-
In the blocking coding style we can block the caller's thread
for the appropriate number of cycles before returning with the result.
For loose timing:
-
In the blocking coding style, we can compare the delay time so far
accumulated with a desired maximum (the quantum for that thread or
component or system wide quantum) and if it is exceeded then do a resynch.
-
In the non-blocking coding style we can do the same, but non-blocking with loose
timing is not commonly used.
The loose timing allows transactions to execute out of order (see later slides).