Visible to Intel only — GUID: vgo1461067403075
Ixiasoft
Visible to Intel only — GUID: vgo1461067403075
Ixiasoft
2.8.11. Flow Control Operation
The PAUSE instruction causes the transmitter to cease transmission for specified pause duration. When the pause duration expires, the transmission resumes.
When flow control is used, the FIFO buffer is structured as two sections, threshold and headroom.
The threshold value determines if a Flow Control PAUSE is requested. You control the size of this threshold by setting the flow control threshold per port using the SerialLite II parameter editor to fall within the total depth of the FIFO. The value for the flow control threshold signals (ctrl_rr_rdp_fcthresh and ctrl_rr_hpp_fcthresh) must be within the total FIFO depth. The value must also ensure required headroom to compensate for the delays for the flow control request to take effect, and for the remaining data already in the system to be stored in the FIFO.
Total Depth = FIFO SIZE/(TSIZE*RX_NUMBER_LANES)
- Set FIFO SIZE by selecting a value in the Buffer Size (Receiver) option.
- Set TSIZE by selecting a number in Transfer Size option.
- Set RX_NUMBER_LANES by selecting a value for Number of lanes (Receiver Settings)
Total Depth = 1024/2*4 = 128
Based on the above result, for this example, you must set the Threshold value in the SerialLite II parameter editor to be less than 128 elements.
When flow control is enabled, the SerialLite II IP core logic monitors the triggering receive FIFO buffer and, when a threshold is reached, issues a pause instruction. It takes some time for the pause instruction to be issued, traverse the connection, and for transmission to be stopped. It takes more time for all the data that has already been transmitted to be stored in the receive FIFO buffer. Therefore, there must be a certain amount of space left in the receive FIFO buffer above the threshold to hold the data that arrives during this delay. This headroom has contributions from the core latency and the wire latency.
- This refresh time must be set so that the renewed flow control packets are received by the near transmitter before the current pause time completes. Set the value of Refresh period to be smaller than Pause quantum time in the Priority Packet Settings or Data Packet Settings in the parameter editor.
- If the refresh period is small, more flow control packets are sent on the link, possibly degrading the performance of an alternate active port. This is a trade off for the link bandwidth performance.