Dual-Ready Protocol Questions

From: Bojsen, Per <bojsen@zaiqtech.com>
Date: Fri Mar 12 2004 - 07:22:35 PST

Hi,

I have some questions regarding the dual-ready protocol:

1) Is the transmitter required to keep TransmitReady asserted
   once it has asserted it until ReceiveReady is seen asserted
   or is it allowed to deassert TransmitReady even if
   ReceiveReady is not seen asserted. Of course, no message
   is transferred in this case.

2) Similarly, is the receiver required to keep ReceiveReady
   asserted once it has asserted until TrasnmitReady is seen
   asserted or is it allowed to deassert ReceiveReady even if
   TransmitReady is not seen asserted. Again, I am not
   expecting messages to be transferred in this case.

3) On an input port, when TransmitReady is asserted, the message
   vector is stable and carries valid data, i.e., the
   transactor/BFM can sample it and use it even if it does not
   assert ReceiveReady. Correct? Once the transactor asserts
   ReceiveReady, the transactor must assume the message will
   change on the next rising edge of uclock.

4) On an output port, when TransmitReady is asserted, the
   transactor is required to drive the message vector with
   what it wants to send. This is intentionally vague, because
   the transactor may want its message to be a sampling of
   some internal state that can potentially vary every clock
   cycle. But, regardless of this wrinkle, the implementation
   is allowed to assume the transactor is holding the message
   data and is not required to sample the message data on the
   rising edge of TransmitReady. Correct?

Re 1 and 2 above, these have some bearing on the message ordering
discussion. For instance, if a transactor is allowed to cancel
a TransmitReady on an output port, the port should lose its place
in the queue of ports pending to be serviced. If ordering is
strict, this is harder to implement than if ordering is loose.

Per
Received on Fri Mar 12 07:22:54 2004

This archive was generated by hypermail 2.1.8 : Fri Mar 12 2004 - 07:23:04 PST