1.6 s6: Transmission of collision fragments with PLCA and RMII

Description

Clause 4 of IEEE Std 802.3 specifies the MAC shall implement an Inter-Packet Gap (IPG) delay of 96 bit times (BT) between packets. This IPG is split into two parts. The first part, IPG part 1, requires that no carrier be sensed. If carrier is sensed during IPG part 1, then the timer is restarted. Once IPG part 1 is complete, the MAC may transmit following IPG part 2. The IPG part 1 is nominally 64 BT, but may be less, including zero. The IPG part 2 timing is nominally 32 BT, but is always equal to the full IPG duration minus the IPG part 1.

Some MACs implement an IPG part 1 of very small duration. If the IPG part 1 time is too small, then the MAC may attempt to transmit after the PHY has asserted carrier indication with CRSDV. The result is that the MAC will quickly detect a collision and send a collision fragment to the PHY. When PLCA is enabled, the PHY, not expecting the MAC to transmit after carrier was indicated, will not detect the collision and end up transmitting the collision fragment to the network.

End User Implications

Use of a MAC with an IPG part 1 time of less than 18 bits will result in the transmission of short 10.4 μs packets onto the network.

Work Around

While the transmission of the collision fragments to the network are benign, they may be eliminated by reducing the size of the PLCA delay line buffer with the register configuration provided below. This will cause the MAC to detect a normal logical collision preventing the transmission of the collision fragment. Additionally, the PHY will capture the next transmit opportunity guaranteeing the MAC the ability to transmit according to the PLCA algorithm.
AccessMMDAddressDataMask
RMW0x1F0x008F0x00E00x07F0

Legend:

R - Read

W - Write

RMW - Read-Modify-Write