Texas Instruments TNETX3270 Switch User Manual


 
TNETX3270
ThunderSWITCH 24/3 ETHERNET SWITCH
WITH 24 10-MBIT/S PORTS AND 3 10-/100-MBIT/S PORTS
SPWS043B – NOVEMBER 1997 – REVISED APRIL 1999
47
POST OFFICE BOX 655303 DALLAS, TEXAS 75265
pause frame reception
The IEEE Std 802.3X standard defines a MAC control frame as any frame containing a length/type value = 88.08
(hex). This device always absorbs (i.e., discards) within the MAC all such frames that it receives, regardless
of the configuration of the port (i.e., pause and duplex have no effect on this behavior). MAC control frames are
not forwarded to any other port and are
not used by IALE for learning source addresses. They appear in the
MAC statistics in the same manner as data frames, but are not seen by the IALE, so do not appear in its statistics
(i.e., receive filtered frames, security violations, unknown unicast destination, unknown multicast destination,
or unknown source).
Pause frames are the subset of MAC control frames with the opcode field = 0x0001. These are acted on by a
port only if:
pause = 1 in its Portxstatus register
The frame’s length is 64–1531 bytes, inclusive.
MxxRXER does not go active at any time during its reception.
Its FCS passes the CRC.
The pause_time value from such valid frames is extracted from the two bytes following the opcode. This is
loaded into the port’s pause timer and the pause_time period is timed.
If a valid pause frame is received during the pause_time period of a previous pause frame:
If its destination address is not equal to the reserved multicast address or the address in the Devnode
register, the pause timer immediately expires.
If the new pause_time value is 0, the pause timer immediately expires.
If the pause timer within the port immediately is set to the pause_time value of the new pause frame (any
remaining pause time from the previous pause frame is disregarded).
If the pause bit in Portxstatus ever becomes a 0 (because pause frames are no longer supported), the pause
timer immediately expires.
A port does not begin to transmit any new data frame any later than 512-bit times after a pause frame with a
nonzero pause time has been received (RXDV going inactive). It does not begin to transmit any data frame until
the pause timer has expired. (However, it can transmit pause frames of its own if it needs to initiate flow control).
Any frame already in mid-transmission when a pause frame is received is unaffected; it completes transmission
as normal.
pause frame transmission
When the number of free buffers within the switch becomes less than the number specified in Flowthreshold,
full-duplex ports that have had pause frames negotiated/enabled transmit a pause frame at the first available
opportunity (immediately if currently idle, or following completion of the frame currently being transmitted). The
pause frame contains the pausetime field from Pausetimex register that matches the current operating speed
of the port.
If the number of free buffers still is less than the number specified in Flowthreshold after 80% of the time interval
represented by the respective pausetime field has elapsed, then another pause frame is transmitted at the
earliest opportunity.
If the value in Pausetimex is 0, then no pause frames are transmitted on ports with that speed.
It is anticipated that the pausetime values for the different port speeds will be programmed to have a 10:1 ratio,
so that different-speed ports pause for the same amount of real time.
Note that transmitted pause frames are only a request to the other end station to stop transmitting. Frames that
are received during the pause interval are received normally (provided the buffer memory is not full).