8B10B编码(个人总结)_第1页
8B10B编码(个人总结)_第2页
8B10B编码(个人总结)_第3页
8B10B编码(个人总结)_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

8B/10B编码的基本原理8B/10B编码是目前高速串行通信中经常用到的一种编码方式,其目的就是通过将一个字节宽度的数据经过映射机制转化为10位宽度的字符,来平衡位流中0与1的个数,也就是达到平衡直流的作用。由于直接将8bit数据编码成10bit来传输在实现上将占用芯片的大片物理面积,并且严重影响了数据的传输速率,所以目前大都采用将一串8位二进制数分为低5位和高3位,然后对低5位进行5B/6B编码,高3位进行3B/4B编码,最后再将6位和4位合在一起的编码方式。这样做不进减少了芯片占用面积,而且简化了编码,提高了数据的传输速率。通常用字符HGFEDCBA来表示编码前的8位二进制数,则低5位就是EDCBA,高3位就是HGF。5B/6B编码后6位二进制数的表示方式为abcdei,而3B/4B编码后4位二进制数的表示方式为fghj,最后合成的10位二进制数为abcdeifghj。人们喜欢把8bit数据表示成Dx.y的形式,而控制代码用Kx.y的形式,其x=5LSB(least significant bit最低有效位),y=3MSB(most significant bit最高有效位)。它们之间的对应关系如图1所示。f g h ja b c d e iLSBMSB3B/4B5B/6Bf g h ja b c d e iLSBMSBH G F E D C B A并串转换后进行串行传输,a先传输图1 编码对应关系8B/10B编码中有两个重要的概念,不均等性(disparity)和极性偏差(running disparity,RD)。前者表示1和0个数的差值,其有如下规律:()若ABCDE 的Disparity 值为- 1, 那么在 RD- 项中生成的abcde与ABCDE 有一一对应的关系, 并且i=1, 此时除ABCDE= 00011外abcde i是唯一的;()若ABCDE 的Disparity 值为+ 1, 那么在RD-项中生成的abcde与ABCDE有一一对应的关系, 并且i=0, 此时除ABCDE = 11100外abcdei是唯一的;()若ABCDE 的Disparity 值为+ 3, 那么在RD-项中生成的abcde与ABCDE有一一对应的关系, 并且i=0, 此时abcdei是互为反码的两个值;()若ABCDE的Disparity为其他值, 此时abcde i具有互为反码的两个值, 对这些特殊的RD 项中的值可直接用查表法实现。后者的取值分为以下三种:(1)当码字中1比0多, 或者4B 码为1100,或者6B 码为111000时, 该码字被定义为正极性码,这个时候RD取正;(2)当码字中1比0少, 或者4B 码为0011,或者6B 码为000111时, 该码字被定义为负极性码, 这个时候RD取负;(3)除了上述两种情况其他码字定义为中性码, RD取其前一码字的RD游程值。为了直观了解这个规则, RD取值图如下:RD+RD计算RD为中性计算RD为中性计算RD为负计算RD为正图2 RD值计算方式 3B/4B和 5B/6B是通过映射机制进行编码的,这种映射机制已经标准化成相应的映射表,如表1(略),3B/4B和 5B/6B编码还需要通过映射控制模块(Disparity Control)的控制才能最终完成编码。通过表1我们可以看出,5位映射到6位可能存在两种编码,这两种编码是互为反码的。在5B/6B编码中,先预设RD为负,然后与实际的RD值进行比较,如果实际值为负,则输出RD栏中的编码,否则,将RD栏中的编码取反后输出,即输出RD+栏中的编码。5B/6B编码的实际流程如图3。3B/4B编码由于数据量少,可以把映射数据直接存储,然后通过查表实现。输入ABCDE实际RD为?计算Disparity5/6B编码(RD)按位取反输出abcdei, RDYN图3 5B/6B编码实际流程图有了3B/4B和5B/6B编码,那么就可以实现8B/10B编码,其实际流程如图4所示。数据输入(8bit)计算Disparity3B/4编码5B/6编码初始RD数据输出(10bit),RD是否修正?计算RD计算RD计算最终RD按位取反Y图4 8B/10B编码整体流程图RD 运算时基于每个子模块的D isparity 属性的, 所以必须首先对输入字符DX 的高三位FGH 和低五位ABCDE 分别进行D isparity 计算。通过分析总结出低五位和高三位编码前后的RD 值变化情况, 其中rdout表示新生成的RD 值而rdin表示当前的RD值:( 1) ABCDE的Dispar ity计算为+ 1时, 若ABCDE =00 111且控制字符K 无效, 则rdout= not rdin, 否则rdout= rd in;( 2) ABCDE 的Disparity 计算为- 1 时, 若ABCDE =00 011则rdout= no t rdin, 否则rdou t= rd in;( 3) ABCDE 的Disparity 计算为其他值时, rdout= not rdin;( 4) FGH 的值为000、001或111是rdout= no t rdin, 否则rdout= rd in。5B/6B编码中,计算实际RD值的方法也是如此。计算最终RD值的方法是,如果3B/4B编码后的RD和5B/6B编码后的RD的极性相同,那么最终要输出的RD和初始输入的RD一致,否则相反。具体如表2所示。初始输入的RD3B/4B编码后的RD5B/6B编码后的RD最终要输出的RDRD-RD-RD-RD-RD-RD-RD+RD+RD-RD+RD-RD+RD-RD+RD+RD-RD+RD-RD-RD+RD+RD-RD+RD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论