English
Language : 

MDS213 Datasheet, PDF (27/120 Pages) Zarlink Semiconductor Inc – 12-Port 10/100Mbps + 1Gbps Ethernet Switch
MDS213
Data Sheet
3.9 Frame Bursting
At speeds faster than 100Mbps and operating in half-duplex mode, the MAC/GMAC can transmit a series of frames
without relinquishing control of the transmission medium. This is called Frame Bursting. Frame Bursting is utilized
when a frame must be extended to the length of the slot time. With Frame bursting, only the first transmitted frame
requires extension. Once a frame has been successfully transmitted, the Transmit section may submit consecutive
frames onto the medium without contention, provided that no idle conditions exist between frames (e.g., no Inter-
Frame Gap). The transmitting MAC/GMAC inserts extension bits, detected and extracted by the receiving
MAC/GMAC, into the Inter-frame space interval. The MAC/GMAC may continuously initiate burst frame
transmission up to the burst limit of 65,536 bits.
4.0 Frame Engine Description
The Frame Engine is the heart of the MDS213. It coordinates all data movements, ensuring fair allocation of the
memory bandwidth and the XPipe bandwidth.
When frame data is received from a MAC port, it is temporarily stored in the MAC Rx FIFO until the Frame Engine
moves it to the chip's external memory one granule (128-byte-or-less fragment of frame data) at a time. The Frame
Engine then issues the Search Engine a switching request that includes the source MAC address, the destination
MAC address, and the VLAN tag. After the Search Engine has resolved the address, it transfers the information
back to the Frame Engine via a switching response that includes the destination port and frame type (e.g. unicast or
multicast).
When the destination port is idle, the frame data is fetched from the memory and is written to the destination port's
MAC Tx FIFO. However, when the destination port is busy transmitting another frame, the Frame Engine writes a
transmission job that includes a frame handle for future identification. These transmission jobs are stored in the
destination port's transmission scheduling queues (TxQ). There are four TxQs per port, one for each priority class.
When the destination port is ready, the Frame Engine selects the head-of-line job from a TxQ. The frame, specified
by the job, will be fetched from the memory and will be written to the MAC TxFIFO.
For unicast frames, if the destination device is local (i.e., the destination port is located in the same device), the
Frame Engine writes a job into the destination port's transmission scheduling queue (TxQ). The Transmit DMA
(TxDMA) moves the frame data to the MAC Tx FIFO once the frame's transmission job is selected for transmission.
If the destination device is remote (i.e., the destination port is located on another device, and can only be reached
through the XPipe), all signaling between the two devices are sent as XPipe messages. The Frame Engine sends a
scheduling request message via the XPipe to the destination port. This message asks the remote Frame Engine to
write a job into the destination port's TxQ. When that job is selected, the remote Frame Engine sends a data
request message via the XPipe to the local Frame Engine. Reception of a data request message triggers the
forwarding engine module to forward the frame data to the destination port, one granule at a time through the XPipe
until the end of file (EOF) safely arrives at the remote port's MAC TxFIFO.
For multicast frames, the process is slightly different. The Frame Engine uses the VLAN index, which is part of the
search result, to identify the destination ports. For local destination ports, the Frame Engine writes a job to each
port's TxQ. When a transmission job is selected, the TxDMA moves data from the memory to the MAC Tx FIFO.
Multicast frame data is sent multiple times, until all local destination ports' requests are satisfied.
For a VLAN that includes remote destination ports, the multicast frame data is forwarded once through the XPipe
and then stored in the remote device's memory. The remote Frame Engine processes this multicast frame as if it
came from a local port.
A frame is stored in a Frame Data Buffer (FDB) until it is transmitted. FDBs are external, located in a MDS213's
frame buffer memory. To keep track of per-frame control information, the Frame Engine maintains one Frame
Control Buffer (FCB) per frame. FCBs are internal. Since the Frame Engine does not access the external memory
for frame control information, this conserves memory bandwidth for better performance.
27
Zarlink Semiconductor Inc.