8b/10b编码

8b/10b编码是一种应用于高速串行通信上的常用编码方式。主要用于交流耦合分叉的电路。

在串行通信中,我们希望数据是在0/1之间跳变的,不希望出现连续超过5个“1”或者5个“0”。8b/10b的作用就是保持1、0个数尽量保持一致,且里面的数值最多一次性重复4次。使信号保持高频,去掉直流分量。

8b/10编码的特性就是保证DC平衡——直流平衡,就是串行数据中连续出现的1/0达到一个平衡均匀的状态。

编码步骤:

1、将8bit数据输出分成高三位和低五位两组数据;

2、3bit书记通过查找表变成4bit数据,5bit数据通过查找表变成6bit数据;

3、两组数据调换位置,原来的低5bit数据换到高位,高3bit数据换到低位,从低位开始传输数据。

5b/6b编解码查找表。

input是输入的用户数据EDCBA,用户数据映射到abcdei(这一栏有两个数值),RD是一个标志性信号当数值0多余1 RD就为-1,前面一个数的RD为-1时,那我此时要选用的就是RD为+1对应的数

3b/4b编解码查找表。

D开头的是数据,K开头的是控制符号

控制符号(Control Symbols)

在8B/10B编码中,控制符号是10位的符号,他们同样也是有效的位序列(包含不超过六个连续的1或0),但没有对应的数字字节,主要功能主要用于执行低级别的控制功能,例如:在光纤通信中K28.5主要执行循环仲裁、填充字,链路重置功能的序列。

通过引入K.28或备用D.x.A7输出,可以创建用于控制的12个特殊符号,这些符号不对应实际数据,而是用于在数据流中标识或控制特定的状态或操作。其中有一些逗号序列(不是所有的控制符号都是逗号序列)

逗号序列是一种在数据中独特且不会与实际数据混肴的位模式,通过检测逗号序列,接收方可以确定字节边界,帮助正确解释和处理数据流中的字节。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值