For 10GBASE-T / IEEE 802.3ae the Physical Coding Sublayer is extended with a low-density parity-check (LDPC) code.

IEEE 802.3™-2012 Physical Coding Sublayer (PCS):

The 3259 bits are divided into 3 × 512 bits and 1723 bits. The 3 × 512 bits [...] remain uncoded. The 1723 bits are encoded by a systematic LDPC(1723,2048) encoder [...]

Using a Forward Error Correction (FEC) code increases the reliability, because transmission errors could be corrected by the receiver. Two drawbacks of FEC are the increased message size and additional encoding and decoding implementations.

However, the bit rate of LDPC codes increases with the message length and the encoding and decoding operations scale (almost) linearly1 to the message length.

What is the benefit of sending some data uncoded, especially as the encoding and decoding of LDPC is already used for the remaining data?

End Notes

1the encoding of ldpc scales (depending of the implementation) between O(N^2) and O(N+g^2)


2 Answers 2


I asked a friend of mine, who manufactures 10G chipsets. This is what he said:

As I understand the 10GBASE-T standard, the option of not using the LDPC code is not permitted. In order to achieve the target BER, the data must undergo FEC – which has been standardized in the 802.3an as LDPC.

Compliant 10GBASE-T transceivers will automatically add the LDPC code to the egress data and remove it in the receiver while using any information it provides to correct errant bits.

The utilization of LDPC makes the latency of 10GBASE-T a bit longer than 802.3ae optical devices. But that latency is still just a fraction of what is typically incurred by the switch silicon.

In very latency sensitive applications (high frequency stock trading, for example) 10GBASE-T is not recommended. But for most transaction processing, web search, and computational applications, the extra latency of 10GBASE-T is inconsequential and the other benefits of the technology (lower cost, the ability to use existing cabling, backwards compatibility with 1000BASE-T, etc.) outweigh this shortcoming.

The IEEE Standards body did not feel it right to place a FEC code on every bit, because the coding overhead increases either the required baud rate or the number of analog voltage levels in the line code.

So they came up with a compromise.

It turns out that certain points in the line code constellation used by 10GBASE-T (called DSQ 128) have more protection margin than other points. So instead of applying FEC to every bit, 10GBASE-T uses set partitioning of its DSQ (double square) symbol constellation such that the equivalent coding gain of the uncoded bits is the same or higher than the other ones protected by LDPC.

  • 1
    This describes why FEC is used and when one should avoid it. But it does not answer the question why there is still some data uncoded in 802.3an
    – Athalis
    Jan 21, 2014 at 12:48
  • 1
    @Athalis I added more info. Hopefully this answers your question.
    – Ron Trunk
    Jan 21, 2014 at 17:42

The reason is that those uncoded bits already have very good quality (low BER). Leaving them uncoded can reduce the overhead introduced by FEC.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.