
GT-96100A Advanced Communication Controller
258
Revision 1.0
Ownership of any descriptor other than the last is returned to CPU upon completion of data transfer from the
buffer pointed by that descriptor. The Last descriptor, however, is returned to CPU ownership only after the
actual transmission of the packet is completed. While changing the ownership bit of the last descriptor, the DMA
also writes status information, which indicates any errors that might have happened during transmission of this
packet.
12.3.2.1 Retransmission (Collision)
Full collision support is integrated into the Ethernet port for half duplex operation mode.
In half duplex operation mode, a collision event is indicated each time receive and transmit are active simulta-
neously. When that happens, active transmission is stopped, jam pattern is transmitted and collision count for the
packet increments. The packet is retransmitted after a waiting period, which conforms to the binary Backoff algo-
rithm specified in the IEEE 802.3 standard. Retransmit process continues for multiple collision events as long as
a specified limit is not reached. This retransmit limit, which sets the maximum number or transmit retries for a
single packet, is defined by the IEEE 802.3 as 16. However, the user can program a different value (see
Table 296for more details). The event of a single packet colliding 16 times is known as EXCESSIVE COLLISION.
As long as a packet is being retransmitted, its last descriptor is kept under port ownership. When a successful
transmission takes place (i.e. no collision), a status word containing collision information is written to the last
descriptor and ownership is returned to CPU.
If a retransmit limit is reached with no successful transmission, a status word with error indication is written to
the packet’s last descriptor, and the transmit process continuous with the next packet.
It is important to note that collision is considered legal only if it happens before transmitting the 65th byte of a
packet. Any collision event that happens outside the first 64 byte window is known as LATE COLLISION, and
is considered a fatal network error. Late collision is reported to the CPU through packet status, and no retransmis-
sion is done.
NOTE: A collision occurring during the transmission of the transmit packet’s last two bytes are not detected.
12.3.2.2 Zero Padding (for short packets)
Zero Padding is a term used to denote the operation of adding zero bytes to a packet. This feature is used for CPU
off-loading.
The Ethernet port offers a per packet padding request bit in the TX descriptor. This causes the port logic to
enlarge packets shorter than 64 bytes by appending zero bytes. When this feature is used, only packets equal or
larger than 64 bytes are transmitted as is. Packets smaller than 64 bytes are zero padded and transmitted as 64
byte packets.
12.3.2.3 CRC Generation
Ethernet CRC denotes four bytes of Frame-Check-Sequence appended to each packet.
CRC logic is integrated into the port and can be used to automatically generate and append CRC to a transmitted
packet. One bit in the TX descriptor is used for specifying if CRC generation is required for a specific packet.