当前位置: 首页 > article >正文

FPGA实现光纤通信(3)——光纤8b/10b编码数据回环

前言

光纤通信属于高速串行通信,具有较高的数据传输速率,通常用于服务器以及通信设备之间用于高速数据交换,对于xilinx 7系列的FPGA,内部具有集成的高速接口用于实现光纤通信。本次就来实现8b/10b编码数据回环。

测试环境:vivado版本:2020.02

                  FPGA芯片:XC7K70T

                  测试说明:进行光纤8B/10B编码数据回环测试

8B/10B编码简介

8b/10b编码是由 IBM 公司的 Widmer 和 Franaszek 于 1993 年提出并于 1994 年申请专利。其在以太网光纤通信,PCIe,SATA,USB3.0 等高速串行接口 领域得到了广泛的应用。8b/10b 编码是高速串行通信中常用到的一种编码方式, 是将 8bit 的数据转换成 10bit 数据从而保证直流平衡以及密集的电平转换。将 8bit 的数据转换成 10bit 数据会带来 2bit 的带宽开销,那为什么要引入8b/10b编码机制呢?

我们知道,在高速串行通信中,通常都是采用交流耦合的方式,简单来说交流耦合方式就是在数据发送端串联一个电阻。下面为理想电容的阻抗公式:

                                                                        

其中Zc表示阻抗,C表示电容的大小,f表示频率。在这个公式中电容,频率和阻抗成反比。当当硬件确定的情况下(电容值不变),频率和阻抗成反比。频率 越高,阻抗越低;频率越低,阻抗越高。我们中学就学过电容是通交流,隔直流的,所以使用电容进行交流耦合,可以降低高频码元的传输误码率,基本上可以实现零误码率,当传输的码元不变即接近直流时,阻抗就会变大,传输的损失较大,有可能导致无法识别在传输过程中的码型究竟是0还是1。在高速串行通信中要引入8b/10b编码机制,就是为了将低频的码型优化为高频的码型,从而保证数据低损耗的传输。

8b/10b编码原理

8b/10b编码就是将 8bit 的数据组合成 10bit 的数据,数据的组合里包括了256个数据字符编码以及12个控制字符编码。其中数据字符编码被记为Dx.y,控制字符编码被记为Kx.y,控制字符编码可以作为传输过程中的帧起始,帧结束,传输空闲等状态标识。数据组合并不是把8bit数据直接映射到10bit数据里,如果直接映射的话,对编码效率会有影响,也会增加对芯片面积的占用,而是把8bit数据分成两个子分组:3个最高有效位和5个最低有效位。编码按顺序排列,从最高有效位到最低有效位分别记为H、G、F和E、D、C、B、A 。3bit的子分组编码成4bit,记为j、h、g、f;5bit的子分组编码成6bit,记为i、e、d、c、b、a,其映射关系如下图所示。


http://www.kler.cn/a/518408.html

相关文章:

  • Java后端之AOP
  • 豆包 MarsCode + 开源 = ?AI 助力开源社区新人成长
  • hadoop==docker desktop搭建hadoop
  • 与机器学习相关的概率论重要概念的介绍和说明
  • Neural networks 神经网络
  • 【BUUCTF】October 2019 Twice SQL Injection1及知识点整理
  • [C++技能提升]类注册
  • 大数据k-means聚类算法:基于k-means聚类算法+NLP微博舆情数据爬虫可视化分析推荐系统
  • FireCrawl开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
  • JVM面试题解,垃圾回收之“分代回收理论”剖析
  • Day109 MySQL深入及优化
  • 前端三件套之CSS
  • 基于机器学习链家网房屋数据分析预测系统的设计与实现
  • 基于 Node.js 的天气查询系统实现(附源码)
  • SSM电子商城系统
  • 第20篇:Python 开发进阶:使用Django进行Web开发详解
  • rust如何定义全局对象变量
  • 如何成为一名LLM(大语言模型)工程师
  • 基于Flask的哔哩哔哩评论数据可视化分析系统的设计与实现
  • 亲测有效!解决PyCharm下PyEMD安装报错 ModuleNotFoundError: No module named ‘PyEMD‘
  • C++----STL(list)
  • C语言复习
  • 今何在:“思索答案就是一种对虚无的战斗”
  • 基于Springboot + vue实现的民俗网
  • 深度强化学习:PPO
  • 【统计信号处理基础——估计与检测理论】Vol1.Ch1. 引言