Browse Prior Art Database

Hardware Generated SY Field in P1394 Isochronous Packet Header

IP.com Disclosure Number: IPCOM000114991D
Original Publication Date: 1995-Feb-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 6 page(s) / 173K

Publishing Venue

IBM

Related People

Hoch, GB: AUTHOR [+2]

Abstract

This mechanism allows a hardware implementation to generate the SY field for Isochronous Packet Headers. It reuses the ALU and dataflow described below to perform arithmetic operations which determine whether or not to transmit the encoding representing "Start of Stream" (SOS) in the SY field of the packet header prior to fetching the data associated with that packet header. There is also a mechanism to modify the header generated prior to transmission of the packet to change the SY field encoding to "Middle of Stream" (MOS) whenever the channel is in a "PAUSE" condition.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 49% of the total text.

Hardware Generated SY Field in P1394 Isochronous Packet Header

      This mechanism allows a hardware implementation to generate the
SY field for Isochronous Packet Headers.  It reuses the ALU and
dataflow described below to perform arithmetic operations which
determine whether or not to transmit the encoding representing "Start
of Stream" (SOS) in the SY field of the packet header prior to
fetching the data associated with that packet header.  There is also
a mechanism to modify the header generated prior to transmission of
the packet to change the SY field encoding to "Middle of Stream"
(MOS) whenever the channel is in a "PAUSE" condition.

      This invention was developed for use in a module which performs
the Link function for the IEEE p1394 High Performance Serial Bus and
provides an interface between the physical layer chip for this serial
bus and the PCI bus.

      This invention is designed to support the Isochronous Channel
controls proposed in the current draft of the ANSI X3T9.2 SCSI-3
Serial Bus Protocol and the draft IEEE P1394 High Performance Serial

Bus.  The implementation is designed to reuse the ALU and dataflow
described in Fig. 1 and implemented in the design of the module.

      For each transmit channel, when the first Isochronous packet
header is constructed, the encoded value of the SY field represents
"Start of Stream" (SOS) thereafter if the contents of the "Transmit
Isochronous Synch Count Register" for this transmit channel are
x"00000000" then all subsequent packets transmitted will contain an
SY field encoding representing "Middle of Stream" (MOS) until
software deactivates the channel.

      When the "Transmit Isochronous Synch Count Register" for this
channel is NOT equal to x"00000000", then the unsigned binary number
which is represented by the contents of the "Transmit Isochronous
Synch Count Register" is equal to the number of data packets that
must be transmitted on this channel before the encoded value of the
SY field representing SOS will be repeated in a packet header.  (i.e.
if the value in the"Transmit Isochronous Synch Count Register" is
represented by X such that (X > 0), then except for any zero-length
packets transmitted while the channel is in a PAUSED state which have
an encoding of MOS, starting from the first packet (which we will
call packet #1) and counting only packets transmitted while the
channel is not in a PAUSED state, every packet #(1 + nX) where n is a
non-negative integer will have the encoded value of SOS in the SY
field and the other packets will have the encoded value of MOS in the
SY field.)

      The following state machine mechanism for sequencing and
utilizing the dataflow to perform the calculation of whether the next
packet header to be constructed by hardware contains the encoded
value SOS or MOS in the SY field is the crux of the invention.

Note:  The SHIFT A function of the ALU performs a left shift on the
high order 8 bits (bits 31 -...