English
Language : 

82801BA Datasheet, PDF (186/498 Pages) Intel Corporation – Intel 82801BA I/O Controller Hub 2 (ICH2) and Intel 82801BAM I/O Controller Hub 2 Mobile
Functional Description
5.16.5.3 Data Packets
A data packet consists of a PID, a data field, and a CRC as shown in Table 5-73. There are two
types of data packets identified by differing PIDs: DATA0 and DATA1. Two data packet PIDs are
defined to support data toggle synchronization.
Data must always be sent in integral numbers of bytes. The data CRC is computed over only the
data field in the packet and does not include the PID, which has its own check field.
Table 5-73. Data Packet Format
Packet
PID
DATA
CRC16
Width
8 bits
0–1023 bytes
16 bits
5.16.5.4
Handshake Packets
Handshake packets consist of only a PID. Handshake packets are used to report the status of a data
transaction and can return values indicating successful reception of data, flow control, and stall
conditions. Only transaction types that support flow control can return handshakes. Handshakes are
always returned in the handshake phase of a transaction and may be returned, instead of data, in the
data phase. Handshake packets are delimited by an EOP after one byte of packet field. If a packet is
decoded as an otherwise valid handshake but does not terminate with an EOP after one byte, it
must be considered invalid and ignored by the receiver.
There are three types of handshake packets:
• ACK indicates that the data packet was received without bit stuff or CRC errors over the data
field and that the data PID was received correctly. An ACK handshake is applicable only in
transactions in which data has been transmitted and where a handshake is expected. ACK can
be returned by the host for IN transactions and by a function for OUT transactions.
• NAK indicates that a function was unable to accept data from the host (OUT) or that a
function has no data to transmit to the host (IN). NAK can only be returned by functions in the
data phase of IN transactions or the handshake phase of OUT transactions. The host can never
issue a NAK. NAK is used for flow control purposes to indicate that a function is temporarily
unable to transmit or receive data, but will eventually be able to do so without need of host
intervention. NAK is also used by interrupt endpoints to indicate that no interrupt is pending.
• STALL is returned by a function in response to an IN token or after the data phase of an OUT.
STALL indicates that a function is unable to transmit or receive data, and that the condition
requires host intervention to remove the stall. Once a function’s endpoint is stalled, the
function must continue returning STALL until the condition causing the stall has been cleared
through host intervention. The host is not permitted to return a STALL under any condition.
5-124
82801BA ICH2 and 82801BAM ICH2-M Datasheet