P1394 Mail Archive: P1394> "end_of_message" bit interpretation

P1394> "end_of_message" bit interpretation

Akihiro Shimura (shimura@pure.cpdc.canon.co.jp)
Wed, 8 Dec 1999 17:37:24 +0900 (JST)

Hello Peter-san and all,

I have a question about the interpretation of the end_of_message bit
specification in an ORB (Page 18 of PPDT_r08.pdf).

The draft says that the end_of_message bit is unspecified when the
direction bit is one.

Thus, the target will examine the direction bit as described in the
following table. ("x" means "don't care")

data_size direction end_of_message
----------+------------+----------------
x 0 valid
x 1 unspecified

The end_of_message bit may be asserted even when the data_size is
zero.

SBP-2 specifies the data_descriptor is invalid when the data_size is
zero. (Therefore, valid data buffer pointed by the data_descriptor
does not exist.)
SBP-2 (and PPDT) specifies the direction bit by relying on existence
of "the buffer", and the direction bit seems to be invalid when the
data_size is zero because the buffer itself is invalid.

>From above observation (and the NOTE just below the end_of_message
specification which is silent about the direction), another
interpretation as described in the following table may be possible.

data_size direction end_of_message
----------+------------+----------------
zero x valid (assume d=0)
non zero 0 valid
non zero 1 unspecified

These two tables conflict with each other when the data_size is zero
and the direction is one.

Which is the expected interpretation?

I think this ambiguity will be gone by making the end_of_message bit
reserved rather than unspecified when the direction bit is one.

Is there any reason to make this bit unspecified?

Regards,

Akihiro Shimura

--
 Akihiro Shimura (shimura@pure.cpdc.canon.co.jp)
 Office Imaging Products Development Center 3
 CANON INC.