|
MC9S12NE64CPVE Datasheet, PDF (334/554 Pages) Freescale Semiconductor, Inc – MC9S12NE64 Device Overview | |||
|
◁ |
Chapter 11 Ethernet Media Access Controller (EMACV1)
If a receive frame length is less than 64 bytes, the receive frame is considered a fragment and is dropped.
Most fragments are the result of a collision, and as such are a completely normal and expected event on an
Ethernet.
If a receive frame length exceeds 1518, the receive frame is considered too long and is an error. The RXEIF
bit becomes set and if not masked (RXEIE set to 1), the EMAC generates the receive error interrupt.
If MII_RXER is asserted during reception, indicating a media error, the RXEIF bit becomes set and if not
masked (RXEIE set to 1), the EMAC generates the receive error interrupt.
If the type/length ï¬eld is less-than or equal-to 1500 (but greater than 46), a length mismatch error occurs
if the receive frame data ï¬eld length does not match the length speciï¬ed in the type/length ï¬eld. If the
type/length ï¬eld is less than or equal to 46, a length mismatch error occurs if the receive frame data ï¬eld
length is not 46. If a length mismatch error occurs, the RXEIF bit becomes set and if not masked (RXEIE
set to 1), the EMAC generates the receive error interrupt.
The EMAC receiver automatically calculates a 4-byte frame check sequence from the receive frame and
compares it with the CRC data sufï¬xed to the receive frame. If a CRC error occurs, the RXEIF bit becomes
set and if not masked (RXEIE set to 1), the EMAC generates the receive error interrupt.
After the end of frame delimiter, the received frame is truncated to the nearest byte boundary. If there is an
extra nibble, this dribble nibble is discarded. If the CRC value in the received frame is correct, the frame
is accepted as valid. If the CRC value is incorrect and there is a dribble nibble, an alignment error has
occurred and the RXEIF bit becomes set and if not masked (RXEIE set to 1), the EMAC generates the
receive error interrupt.
Frames that exceed the MAXFL ï¬eld in byte length are not truncated. However, the BREIF bit becomes
set and if not masked (BREIE set to 1), the EMAC generates the babbling receive error interrupt.
If a receive frame exceeds the receive buffer size, the corresponding receive overrun error ï¬ag is set. In the
overrun error event, the frame is not accepted and neither the corresponding complete ï¬ag nor the receive
error ï¬ag is set. A babbling receive error condition is ignored if it occurs after a buffer overrun event and
thus BREIF does not become set.
Upon MAC ï¬ow control PAUSE frame reception, the RFCIF bit in the IEVENT register is asserted. If not
masked (RFCIE is set), a receive ï¬ow control interrupt is pending while this ï¬ag is set. PAUSE frames may
be accepted even if both receive buffers are full. The frame is accepted and the RFCIF ï¬ag is set only if
there no receive error.
When frame reception to either receive buffer A or receive buffer B is complete, the corresponding receive
buffer complete ï¬ag is set, the value in the corresponding receive end-of-frame pointer is valid. If not
masked (corresponding receive buffer complete interrupt enable is set to 1), the EMAC generates the
corresponding receive buffer complete interrupt. The receiver buffer complete ï¬ag is set only if there are
no receive errors and the frame has not been accepted as a MAC ï¬ow control PAUSE frame. If both
receiver buffer complete ï¬ags are set, new receive frames are dropped until one of the complete ï¬ags is
cleared.
The receiver receives back-to-back frames with a minimum spacing of at least 96 bit times. If an interframe
gap between receive frames is less than 96 bit times, the latter frame is not guaranteed to be accepted by
the receiver.
MC9S12NE64 Data Sheet, Rev. 1.1
334
Freescale Semiconductor
|
▷ |