DS33Z41 Quad IMUX Ethernet Mapper
8.12 Flow Control
Flow control may be required to ensure that data queues do not overflow and packets are not lost. The DS33Z41 allows for optional flow control based on the queue high watermark or through host processor intervention. There are 2 basic mechanisms that are used for flow control:
•In half duplex mode, a jam sequence is sent that causes collisions at the far end. The collisions cause the transmitting node to reduce the rate of transmission.
•In full duplex mode, flow control is initiated by the receiving node sending a pause frame. The pause frame has a timer parameter that determines the pause timeout to be used by the transmitting node.
Note that the terms “transmit queue” and “receive queue” are with respect to the Ethernet Interface. The Receive Queue is the queue for the data that arrives on the MII/RMII interface, is processed by the MAC and stored in the SDRAM. Transmit queue is for data that arrives from the Serial port, is processed by the HDLC and stored in the SDRAM to be sent to the MAC transmitter.
The following flow control options are possible:
•Automatic flow control can be enabled in software mode with the SU.GCR.ATFLOW bit. Note that the user does not have control over SU.MACFCR.FCE and FCB bits if ATFLOW is set. The mechanism of sending pause or jam is dependent only on the receive queue high threshold.
•Manual flow control can be performed through software when SU.GCR.ATFLOW=0. The host processor must monitor the receive queues and generate pause frames (full duplex) and/or jam bytes through the SU.MACFCR.FCB, SU.GCR.JAME, and SU.MACFCR FCE bits.
Note that in order to use flow control, the receive queue size (in AR.RQSC1) must be 02h or greater. The receive queue high threshold (in SU.RQHT) must be set to 01h or greater, but must be less than the queue size. If the high threshold is set to the same value as the queue size, automatic flow control will not be effective. The high threshold must always be set to less than the corresponding queue size.
The following table provides all the options on flow control mechanism for DS33Z41.
Table 8-6. Options for Flow Control
OPTION |
|
| MODE |
| |
Configuration | Half Duplex; | Half Duplex; |
| Full Duplex; Manual | Full Duplex; |
Manual Flow | Automatic Flow |
| Automatic Flow | ||
| Flow Control | ||||
| Control | Control |
| Control | |
|
|
| |||
ATFLOW Bit | 0 | 1 |
| 0 | 1 |
JAME Bit | Controlled By User | Controlled |
| N/A | N/A |
Automatically |
| ||||
|
|
|
|
| |
FCB Bit | NA | NA |
| Controlled by User | Controlled |
(Pause) |
| Automatically | |||
|
|
|
| ||
FCE Bit | Controlled by User | Controlled |
| Controlled by User | Controlled |
Automatically |
| Automatically | |||
|
|
|
| ||
Pause Timer | N/A | N/A |
| Programmed by User | Programmed by User |
|
|
|
|
|
|
39 of 167