Function
As the scheme name suggests, 64 bits of data are transmitted as a 66-bit entity.
The 66 bit entity is made by prefixing one of two possible two-bit 'preambles' to the 64 bits to be transmitted.
- If the preamble is '01', the 64 bits are entirely data
- If the preamble is '10', an eight-bit type field follows, plus 56 bits of control information and/or data
- The preambles '00' and '11' are not used, and generate an error if seen.
The use of the '01' and '10' preambles guarantees a bit transition every 66 bits, which means that a continuous stream of 0s or 1s cannot be valid data. It also allows easier clock/timer synchronization, as a transition must be seen every 66 bits.
The complete payload (consisting of either 64 data bits, or 56 data bits + type byte) are then scrambled using a self-synchronous scrambler function, with the intention of ensuring that a relatively even distribution of 1s and 0s are normally found in the transmitted data. The intention is not to encrypt the data, but to give the transmitted data useful engineering properties. The scrambler does not provide an absolute guarantee that output data will never have a long run-length of 0s or all 1s or other undesirable properties, but instead allows strong statistical bounds to be put on the probability of such events. Practical designs will choose system parameters such that a bit-error due to long run-lengths is vanishingly unlikely. This method is different from the codebook based approach of 8B/10B encoding.
The encoding and scrambling are normally done entirely in hardware, the scrambling using a linear feedback shift register. Upper layers of the software stack need not be aware that the link layer is using this code.
Read more about this topic: 64b/66b Encoding
Famous quotes containing the word function:
“The uses of travel are occasional, and short; but the best fruit it finds, when it finds it, is conversation; and this is a main function of life.”
—Ralph Waldo Emerson (18031882)
“No one, however powerful and successful, can function as an adult if his parents are not satisfied with him.”
—Frank Pittman (20th century)
“The art of living is to function in society without doing violence to ones own needs or to the needs of others. The art of mothering is to teach the art of living to children.”
—Elaine Heffner (20th century)