Variable Length Messaging Revised

From: Bojsen, Per <bojsen_at_.....>
Date: Wed Mar 23 2005 - 20:02:53 PST
Hi,

I rewrote a central section of my note on variable length
messaging and streaming to avoid talking in terms of uclock and
cclock and instead talk about zero time and non-zero time.  The
new text is as follows:

------- Start of rewrite
** Zero Time

In this mode, all message words are transferred at the same simulation
time.  It can be assumed that message words are transferred
sequentially (not necessarily in order, if random access is
supported), because otherwise this would be a traditional SCE-MI 1.x
fixed-length message.  Processing of the words is also done at least
in part using zero-time sequential operations.

** Non-Zero Time

In the non-zero time mode, the message transfer consumes simulation
time.  There are at least two possibilities that fit within this
category:

  Clocked: individual message words are transferred on the edge of a
    user clock.

  Unclocked: message words are transferred using a mechanism similar
    to the zero time mode, except that the message is not transferred
    completely at a given simulation time.

In the clocked scenario, for simplicity it can be assumed that words
clock out on the rising edge of the user clock, because one can always
construct a user clock that allows this given the constraints of the
application, e.g., if the application requires words to be clocked out
on the falling edge of some user clock, one can construct a clock that
is the inverse of this clock and use that to clock the words out.

Further, message words do not have to transfer on every rising edge of
the user clock.  Using appropriate control mechanisms the message
word transfer can be delayed to some future time.

The unclocked scenario can be seen as a generalization of the
non-zero time mode.  In this scenario, the number of message words
transferred at any given simulation time is variable, i.e, it could be
0, 1, or more than 1.  In other words, this is like the zero time
mode, except time is allowed to pass after only some of the words have
transferred.

As a special case of the unclocked scenario, a sub-scenario where
times message word transfers happens coincide with the rising edges of
a user clock can be considered.  In other words, message word
transfers do not happen at completely arbitrary times.  At any given
rising edge of the user clock 0, 1, or more messages may be
trasnferred, but no messages transfer at any other time.

Russ defined one type of VLMs as large messages transferred in zero
simulation time.  The above extends this concept to the non-zero time
case as well.  Russ' definition of streaming applies to the non-zero
time case, but is not identical to it.  Streaming will be discussed in
the next section.
------- End of rewrite

I have enclosed the updated document.

The section on streaming still has a couple of references to cclock
and uclock but I don't think they confuse too much.

-- 
Per Bojsen                                Email: <bojsen@zaiqtech.com>
Zaiq Technologies, Inc.                   WWW:   http://www.zaiqtech.com
78 Dragon Ct.                             Tel:   781 721 8229
Woburn, MA 01801                          Fax:   781 932 7488


Received on Wed Mar 23 20:02:50 2005

This archive was generated by hypermail 2.1.8 : Wed Mar 23 2005 - 20:02:54 PST