编码目的
减少码流中的直流分量,避免出现长连“0“或者长连”1“的情况,使得码流中含有丰富的定时信息,便于后级进行时钟恢复(CDR)。
编码过程
8B/10B编码就是将8bit数据分为高3bit和低5bit。其中高3bit进行3B/4B编码,低5bit进行5B/6B编码。编码后将4bit(由高3bit编码得到)数据放在6bit(由5bit编码得到)的数据后面。
假设8bit的数据为HGFEDCBA,则编码过程如下
(图片来源于:8B/10B编码基本原理_8b10b编码原理-CSDN博客)
通常会将低5bit数据EDCBA记为x,将高3bit数据HGF记为y,而8B/10编码中又可以分为K码(comma码)和D码(数据码),所以数据通常可以表示为或者
。例如8bit数据”10111100“可以写为
或者
。