beautypg.com

Xaui, Pipe interface – Achronix Speedster22i SerDes User Manual

Page 34

background image

XAUI

The PCS supports XAUI compliant with section 48 of IEEE 802.3. The Protocol block

implements the Transmit and Receive state machines as per Figures 48-6 and 48-9 of IEEE

802.3. For synchronization, de-skew and clock compensation operations, symbol alignment,

de-skew and elastic buffers in PCS are used. 8b/10b encoders and decoders are used for

handling 10-bit code groups.
When communicating with the XGMII (fabric side), the PCS uses in each direction 32 data

signals and 4 control signals. When communicating with the PMA, the PCS uses a 40-bit

code-group in the transmit direction and in the receive direction. Each set of 40-bit data

signals conveys four lanes of 10-bit code-groups. The 40-bit code-group signals are organized

into four lanes: the first PCS code-group is aligned to lane 0, the second to lane 1, the third to

lane 2, and the fourth to lane 3. Code-group alignment, lane-to-lane de-skew, and provision

for clock rate compensation are made possible by embedding special non-data code-groups

in the idle stream.
The PCS Transmit process continuously generates code-groups based upon the TXd [31:0]

and TXc [3:0] signals on the XGMII, sending them to the PMA service interface.
The PCS Synchronization process indicates whether the PMA is functioning dependably,

which can be determined without exhaustive error-rate analysis. The PCS Synchronization

process continuously accepts unaligned and unsynchronized code-groups from the PMA,

obtains 10-bit code-group synchronization, and conveys synchronized 10-bit code-groups to

the PCS de-skew process as per Figure 48-7 in IEEE 802.3.
The PCS de-skew process continuously accepts synchronized code-groups, aligns the code-

groups to remove skew between the lanes introduced by the link, and conveys aligned and

synchronized code-groups to the PCS Receive process. At the end of the de-skew process, the

PCS will have successfully de-skewed and aligned code-groups on all PCS lanes. The de-

skew process always looks for non-aligned code-groups across 4-lanes and initiates de-skew

operations as per Figure 48-6 in IEEE 802.3.
Clock rate compensation is required when the received clock from the PMA and the clock on

which data is sent to fabric are different in terms of jitter. The PCS compensates by inserting

or deleting SKIP (||R||) characters in the encoded idle stream. Insertion and deletion is only

done after SKIP (||R||) is detected – not arbitrarily on any positions.
The Receive process operates in two modes as per Figure 48-9 in IEEE 802.3: date and idle

mode. In data mode, valid code-groups received are mapped to corresponding XGMII data

or control characters regardless of whether the control characters are valid XGMII control

characters. Invalid or error code-groups are mapped directly to XGMII Error control

characters. In idle mode, an idle code-group is translated to XGMII Idle control characters.

All code-groups are mapped on a lane by lane basis.

PIPE Interface

The PCS supports the PIPE interface compliant to the Intel PIPE 3.0 specification. It supports

a 10/20-bit data path for gen1/gen2 and 16-bit for gen3. Similarly, it supports 2.5G, 5.0G and

8.0G throughput on the PMA. For gen1/gen2, 8b/10b endec and gen3 128b/130b endec are

used. This interface allows the embedded PCIe MAC to configure the PMA and decide upon

the next course of action based on the status sent out by the PMA. Besides the functions

described in the PIPE interface specifications, it facilitates the MAC in setting up the receive

equalizer in the PMA. When the PCS is supporting PCIe/PIPE, lane de-skew is done by the

MAC and clock compensation is done by the elastic buffer in the PCS.
The PCS also supports a 128b/130b encoder, specifically targeted for PCIe gen3 (based on

draft 0.5 of the PCIe 3.0 specification). The interface is compliant to the PIPE 3.0 specification.

34

UG028, July 1, 2014