xiaojidipan

8B/10B编码学习

0
阅读(2824)

            8B/10B,也叫做8比特/10比特或8b10b。8b/10b方式是1983年IBM公司的Al Widmer和Peter Franaszek所提出的数据编码标准,目前已经广泛应用于告诉串行总线,如IEEE 1394b、SATA、PCIE、Infiniband、FiberChannel、XAUI、RapidIO、USB3.0等。8B/10B编码将待发送的二进制数据由8位代码组转换成10位代码组,其目的是保证直流平衡,以及足够密集的电平转换。

            8B/10B转换:原始8B/10B数据分成两部分,即低位的5比特数据EDCBA和高位的HGF。低5位经过5b/6b编码成为6位比特码abcdei,高3位经过3b/5b编码成为6位比特fghj,最后将两部分合起来组成一个10比特码abcdeifghj。

            习惯上人们将原始8b数据记为D.X.Y,其中X代表低5位数据,Y代表高3位数据。如原始值1011010,X=10101(21),Y=101(5),因此这8b数据就写作D.21.5。8B/10B编码还用到12个控制符,他们可以最为传输中的起始帧、结束帧、传输空闲等状态标识,与上述数据符的记法类似,控制符一般记为K.X.Y。8b数据有256种,加上12种控制字符,总共有258种,而10b数据有1024种。