Datasheet
Figure 38-2. Data Paths with Packet Buffers Included
MAC Transmitter
TX Packet
Buffer
RX Packet
Buf
fer
MAC Receiver
RX DMA
TX DMA
RX Packet
Buf
fer
DPSRAM
TX Packet
Buf
fer
DPSRAM
Frame Filtering
AHB
AHB
DMA
Status
and
Statistic
Registers
Register
Interface
Control
Interface
Ethernet MAC
RX GMII
TX
GMII
MDIO
APB
38.6.3.7 Transmit Packet Buffer
The transmitter packet buffer will continue attempting to fetch frame data from the AHB system memory until the
packet buf
fer itself is full, at which point it will attempt to maintain its full level.
To accommodate the status and statistics associated with each frame, three words per packet (or two if the GMAC is
configured in 64-bit data path mode) are reserved at the end of the packet data. If the packet is bad and requires to
be dropped, the status and statistics are the only information held on that packet. Storing the status in the DPRAM is
required in order to decouple the DMA interface of the buffer from the MAC interface, to update the MAC status/
statistics and to generate interrupts in the order in which the packets that they represent were fetched from the AHB
memory.
If any errors occur on the AHB while reading the transmit frame, the fetching of packet data from AHB memory is
halted. The MAC transmitter will continue to fetch packet data, thereby emptying the packet buffer and allowing any
good (non-erroneous) frames to be transmitted successfully. Once these have been fully transmitted, the status/
statistics for the erroneous frame will be updated and software will be informed via an interrupt that an AHB error
occurred. This way, the error is reported in the correct packet order.
The transmit packet buffer will only attempt to read more frame data from the AHB when space is available in the
packet buffer memory. If space is not available it must wait until the a packet fetched by the MAC completes
transmission and is subsequently removed from the packet buffer memory.
Note: If full store and forward mode is active and if a single frame is fetched that is too large for the packet buffer
memory, the frame is flushed and the DMA halted with an error status. This is because a complete frame must be
written into the packet buffer before transmission can begin, and therefore the minimum packet buffer memory size
should be chosen to satisfy the maximum frame to be transmitted in the application.
In full store and forward mode, once the complete transmit frame is written into the packet buffer memory, a trigger is
sent across to the MAC transmitter, which will then begin reading the frame from the packet buffer memory. Since the
whole frame is present and stable in the packet buffer memory an underflow of the transmitter is not possible. The
frame is kept in the packet buffer until notification is received from the MAC that the frame data has either been
successfully transmitted or can no longer be retransmitted (too many retries in half duplex mode). When this
SAM E70/S70/V70/V71 Family
GMAC - Ethernet MAC
© 2019 Microchip T
echnology Inc.
Datasheet
DS60001527D-page 583










