8b/10b的由来:

8B/10b编码也叫做8字节/10字节,是目前高速串行通信中经常用到的一种编码方式,该编码方式最初是由IBM公司在1983年发明并应用于ESCON[200M互联系统],由AI widmer和Peter Franaszek在IBM的刊物“研究与开发”上提出。

8b/10b提出原因:

高速串行信号为啥要编码?它本身的码型有什么不好的地方吗?那么就用下面的图来解释一下为什么?

单看这个图大家可能还是不太明白为啥,解释一下,由于串行电路通常采用交流耦合的方式(串接电容)我们知道理想电容的阻抗公式 ,通过这个公式可以知道,频率f越高,阻抗越低,反之,频率越低,阻抗越高。因此上图中的情况,当码型是高频的时候,基本可以不损耗的传输过去,但是当码型为连续的0或者1的时候,电容的损耗就很大,导致幅度不断降低,最严重的后果就是无法识别到底是0还是1,因此8b/10b编码就是为了尽量把低频的码型优化成较高频率的码型,从而降低阻抗带来的损耗。明白为什么要搞8B10B编码了吧,嘿嘿嘿。

8b/10b编码算法:

8b/10编码的特性就是保证DC平衡——直流平衡,这是啥?怎么听起来这么高端,其实就是串行数据中连续出现的1/0达到一个平衡均匀的状态,没啥牛逼的一个东西。

8b/10b编码将串行的数据以8bit为一个单位进行编码处理得到一个10bit的数据,具体怎么操作呢,假设原始8位数据从高到低用HGFEDCBA表示,将8位数据分成高3位HGF和低5位EDCBA两个子组。经过5B/6B编码,将低5位EDCBA映射成abcdei;高3位经过3B/4B编码,映射成fghj,最后合成abcdeifghj发送。

如下图中所示:

而关于上图人家已经把这张图表格化了,网络上有很多关于8b/10b编码的博客,上来就丢一张表给你,看不懂啊,里面乱七八糟都是些什么东西,而博主往往自己也没有真正的理解,加上一堆莫能两可的文字描述让读者看了更晕。那么关于这张表我就来好好捋一捋它!

8b/10b编码是什么?相关推荐

  1. TX的8B/10B编码功能

    Transmitter功能介绍 每个收发器(Transceiver)包括一个独立的发射器(Transmitter),它由PCS和PMA组成.下图显示了发射器(Transmitter)的功能块.并行数据 ...

  2. 高速串行总线系列(1)8B/10B编码技术

    目录 8B/10B编码 5B/6B 编码表 3B/4B 编码表 控制字符编码表 8B/10B编码的利用率 参考文献 8B/10B编码 为什么要使用8B/10B编码? 8b/10b编码的特性之一是保证D ...

  3. 高速收发器之8B/10B编码

    前面文章说过,在高速链路中导致接收端眼图闭合的原因,很大部分并不是由于高频的损耗太大了,而是由于高低频的损耗差异过大,导致码间干扰严重,因此不能张开眼睛.针对这种情况,前面有讲过可以通过CTLE和FF ...

  4. 线路/信道编码技术(1)——8B/10B编码

    1. 线路编码技术 线路编码机制将输入原始数据转变为接收器可接收的数据格式,同时保证数据流中有足够的时钟信息提供给接收端的时钟恢复电路.线路编码技术提供了一种将数据对齐到字节/字的方法,可以保持良好的 ...

  5. #PCIE# 8b/10b 编码

    前言 8B/10B,也叫做8字节/10字节或8B10B.8B/10B方式最初由IBM公司于1983年发明并应用于ESCON(200M互连系统),由Al Widmer和Peter Franaszek在I ...

  6. 让我们来搞清楚8b/10b编码到底是怎么回事吧

    前言:很多知识我们往往只是了解了皮毛,不知道它为什么产生,更不清楚它深层的应用,很多人半瓶水晃荡,而这正是我最厌恶的,对于8B/10B编码这个知识点我就来扯开它的神秘面纱. 8b/10b的由来: 8B ...

  7. 高速串行通信常用的编码方式-8b/10b编码/解码

    绪论 8b/10b编码/解码是高速串行通信,如PCle SATA(串行ATA),以及Fiber Channel中常用的编解码方式.在发送端,编码电路将串行输入的8比特一组的数据转变成10比特一组的数据 ...

  8. 8B/10B编码原理详解、Verilog实现及在JESD204B中的应用

    目录 1.8B/10B介绍 2.原理 3.Verilog实现 4.实例:在JESD204B中的应用 参考资料: 1.8B/10B介绍 8B/10B编码的目的是防止串行的数据出现长时间的连0连1,因为这 ...

  9. 8b10b编码源码 matlab,8b/10b编码技术系列(一):Serdes、CDR、K码

    和大家分享一下关于8b/10b编码的知识点,如有什么错误之处或大家有什么额外的见解欢迎大家公众号后台留言! 一.Serdes高速收发器 在传统的源同步传输中,数据和时钟分离,在速率较低(<100 ...

最新文章

  1. 作为微型计算机各种部件相互连接的纽带,网络学院统考计算机基础知识选择题及答案(19页)-原创力文档...
  2. 用phpcms如何将静态页面制作成企业网站(中)
  3. CCF NOI1074 2的幂次方表示
  4. 最小 的浏览器 界面最精简 大小只有 压缩后只有7K 多
  5. Dreamweaver网页课设做家乡网站
  6. 苹果手机左上角的数字怎么弄_一键更改手机IP操作方法
  7. 纳米机器人驱动技术提速十万倍
  8. oracle查询某个时间段的数据
  9. javascript高级程序设计阅读收获(1.1)——javascript简短的历史回顾
  10. 吕 思 伟 ---- 潘 爱 民 :: ATL 介 绍( 三) (转)
  11. ECharts Title文字前添加图片
  12. python把字符串转化为字典_python 将字符串转换为字典
  13. 深入理解 Mysql 锁
  14. Vulkan_SSAO—屏幕空间环境光遮蔽
  15. python conda安装
  16. 信息学奥赛一本通 1367:查找二叉树(tree_a)
  17. 关键词优化外包陷阱,你中招了吗?
  18. 项目管理(如何进行项目风险管理)
  19. 自动扫福脚本(Android版)
  20. 解决Arduino DUE的程序必需Reset才能启动的问题

热门文章

  1. jkd动态代理源码分析
  2. 在 Win10 系统下安装 JDK 及配置环境变量的方法
  3. 不用再期待别人的认可
  4. 2022年9月全球数字安全最新新闻汇总
  5. 云原生爱好者周刊:美国国家安全局发布网络安全指南
  6. 全网唯一OpenCyphal/UAVCAN教程(10)canfd协议详解
  7. 9章 RxJava混合实战
  8. 校园招聘--网易笔试
  9. 史上最全Maven教程(三)
  10. 在基于ZYNQ MPSOC XCZU3CG自定义单板上运行DPU例程