Functional Description
14.3.3.1.2.2 CRC Insertion
The MAC generates and appends a 32-bit Ethernet CRC onto the transmitted data if the transmit packet
header pass_crc bit is zero. For the CPMAC_SL generated CRC case, a CRC at the end of the input
packet data is not allowed.
If the header word pass_crc bit is set, then the last four bytes of the TX data are transmitted as the frame
CRC. The four CRC data bytes should be the last four bytes of the frame and should be included in the
packet byte count value. The MAC performs no error checking on the outgoing CRC when the pass_crc
bit is set.
14.3.3.1.2.3 MTXER
The GMII_MTXER signal is not used. If an underflow condition occurs on a transmitted frame, the frame
CRC will be inverted to indicate the error to the network. Underflow is a hardware error.
14.3.3.1.2.4 Adaptive Performance Optimization (APO)
The Ethernet MAC port incorporates Adaptive Performance Optimization (APO) logic that may be enabled
by setting the tx_pace bit in the MacControl register. Transmission pacing to enhance performance is
enabled when set. Adaptive performance pacing introduces delays into the normal transmission of frames,
delaying transmission attempts between stations, reducing the probability of collisions occurring during
heavy traffic (as indicated by frame deferrals and collisions) thereby increasing the chance of successful
transmission.
When a frame is deferred, suffers a single collision, multiple collisions or excessive collisions, the pacing
counter is loaded with an initial value of 31. When a frame is transmitted successfully (without
experiencing a deferral, single collision, multiple collision or excessive collision) the pacing counter is
decremented by one, down to zero.
With pacing enabled, a new frame is permitted to immediately (after one IPG) attempt transmission only if
the pacing counter is zero. If the pacing counter is non zero, the frame is delayed by the pacing delay, a
delay of approximately four inter-packet gap delays. APO only affects the IPG preceding the first attempt
at transmitting a frame. It does not affect the back-off algorithm for retransmitted frames.
14.3.3.1.2.5 Inter-Packet-Gap Enforcement
The measurement reference for the IPG of 96 bit times is changed depending on frame traffic conditions.
If a frame is successfully transmitted without collision, and MCRS is de-asserted within approximately 48
bit times of MTXEN being de-asserted, then 96 bit times is measured from MTXEN. If the frame suffered a
collision, or if MCRS is not de-asserted until more than approximately 48 bit times after MTXEN is de-
asserted, then 96 bit times (approximately, but not less) is measured from MCRS.
The transmit IPG can be shortened by eight bit times when enabled and triggered. The tx_short_gap_en
bit in the MacControl register enables the TX_SHORT_GAP input to determine whether the transmit IPG
is shorted by eight bit times.
14.3.3.1.2.6 Back Off
The Gigabit Ethernet Mac Sliver (GMII) implements the 802.3 binary exponential back-off algorithm.
14.3.3.1.2.7 Programmable Transmit Inter-Packet Gap
The transmit inter-packet gap (IPG) is programmable through the Tx_Gap register. The default value is
decimal 12. The transmit IPG may be increased to the maximum value of 0x1ff. Increasing the IPG is not
compatible with transmit pacing. The short gap feature will override the increased gap value, so the short
gap feature may not be compatible with an increased IPG.
14.3.3.1.2.8 Speed, Duplex, and Pause Frame Support Negotiation
The CPMAC_SL can operate in half duplex or full duplex in 10/100 Mbit modes, and can operate in full
duplex only in 1000 Mbit mode. Pause frame support is included in 10/100/1000 Mbit modes as configured
by the host.
1224
Ethernet Subsystem
SPRUH73H – October 2011 – Revised April 2013
Copyright © 2011–2013, Texas Instruments Incorporated