
GT-96100A Advanced Communication Controller
276
Revision 1.0
12.4.1.2 Media Access Control (MAC)
The MAC logic performs all of the functions of the 802.3 protocol such as frame formatting, frame stripping, col-
lision handling, deferral to link traffic, etc. It also ensures that any outgoing packet complies with the 802.3 spec-
ification in terms of preamble structure - 56 preamble bits are transmitted before Start of Frame Delimiter (SFD).
The MAC operates in half duplex or full duplex modes. In half duplex mode, the MAC’s transmit logic checks
that there is no competitor for the network media before transmission.
In addition to waiting for idle before transmitting, the port handles collisions in a predetermined way. If two
nodes attempt to transmit at the same time, the signals collide and the data on the line is garbled. The port listens
while it is transmitting, and can detect a collision. If a collision is detected, ‘JAM’ pattern is transmitted and
retransmission is delayed for a random time period determined by the Backoff algorithm. In full-duplex mode,
the port transmits unconditionally.
12.4.1.3 Auto-Negotiation for Duplex Mode
The port’s duplex operation mode (either half or full duplex) can be auto-negotiated or set by the CPU.
In order to enable auto-negotiation for duplex, the CPU must set the Port_Configuration_Extend<DPLXen> bit.
When auto-negotiation for duplex is enabled, the port decodes the duplex mode from the values of the PHY’s
Auto-Negotiation Advertisement register and Auto-Negotiation Link Partner Ability register at the end of the
Auto-Negotiation process. Once the duplex mode is resolved, Port_Status<Duplex> bit is updated accordingly.
In order to resolve the duplex mode, the following operations are continuously performed:
1. Read the PHY’s Auto-Negotiation Complete status as reported by the PHY bit 1.5 (Register 1, bit 5). If
this bit is '0' switch to Half-Duplex mode and continue to read PHY register bit 1.5. Continue to step 2
when PHY bit 1.5 is '1', indicating that Auto-Negotiation is complete.
NOTE: Steps 2 through 6 are performed once for every transition of PHY bit 1.5 from '0' to '1'. Once PHY bit
1.5 remains '1' and PHY registers 4 and 5 have already been read, the port will continue to read PHY
register 1, and monitor PHY bit 1.5. However, if after Rst* deassertion, the PHY bit 1.5 is already read
as '1', steps 2 to 6 are performed at least once in order to update the port’s duplex mode.
PHY bit 1.2 (Link Status) is read and latched during this same register read operation, regardless of the
Auto-Negotiation status.
2. Read the Auto-Negotiation Advertisement register, PHY register 4. Continue to step 3.
3. Read the Auto-Negotiation Link Partner Ability register, PHY register 5. Continue to step 4.
4. Resolve the highest common ability of the two link partners in the following manner (according to the
802.3u Priority Resolution clause 28B.3):
if (bit 4.8 AND bit 5.8) == '1' then ability is 100BASE-TX Full Duplex
else if (bit 4.9 AND bit 5.9) == '1' then ability is 100BASE-T4 Half Duplex
else if (bit 4.7 AND bit 5.7) == '1' then ability is 100BASE-TX Half Duplex
else if (bit 4.6 AND bit 5.6) == '1' then ability is 10BASE-T Full Duplex
else ability is 10BASE-T Half Duplex;
Continue to step 5.