直流串行8B10B传输代码

上传人:宝路 文档编号:16875069 上传时间:2017-11-16 格式:DOCX 页数:31 大小:1.06MB
返回 下载 相关 举报
直流串行8B10B传输代码_第1页
第1页 / 共31页
直流串行8B10B传输代码_第2页
第2页 / 共31页
直流串行8B10B传输代码_第3页
第3页 / 共31页
直流串行8B10B传输代码_第4页
第4页 / 共31页
直流串行8B10B传输代码_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《直流串行8B10B传输代码》由会员分享,可在线阅读,更多相关《直流串行8B10B传输代码(31页珍藏版)》请在金锄头文库上搜索。

1、文章“直流串行 8B/10B 传输代码”的版权声明。IBM 公司的研究和发展杂志,27 卷,5 号,1983 年 9 月。由国际商用机器公司于 1983 年授予版权。在没有专营权批准的情况下,复制印刷作私人用途有以下规定:(1)任何复制版本均不可更改。 (2)该刊的介绍和 IBM 的版权声明在第一页。如果没有计算机或其他信息服务系统的允许,除了标题和摘要,文章的其他任何部分不得复制且没有分发版权自由。其他部分的翻版必须得到主编的许可。IBM 研究与发展杂志27 卷,5 号,1983 年 9 月A.X.WidmerP.A.Franaszek直流串行 8B/10B 传输代码本书介绍了一种面向字节的

2、二进制传输代码于实现。此代码特别适合于高速局域网和类似的数据链接,其中的信息格式由数据包,可变长度,从十几可达几百位字节。建议每个传输码将原字节转换成有约束的 10 位二进制序列,在 8B/10B 编码已接近理论极限的情况下,这种二进制序列具有优异的性能参数。运行的最大长度为 5,数字总和的最长变化为 6。在编码位的一个错误,最多能产生解码领域中的一个长度为 5 的错误。通过将编码器分割成 5b/6b 及3b/4b 附属编码器,就可非常简单地完成代码实现。1.介绍本文提出了一种传输代码,十分适用于高速局域网和电脑链接。这种链接要求以较低的成本相对简单、可靠的收发器,同时选择一个好的代码才可以显

3、着促进这一目标。迅速发展的光纤技术有望在这方面得以应用。除了一些特殊情况下,数字光纤连接一般操作二进制开/关,而不是三元模式(由于更好的光学信号与噪声容限和更简单的接收器电路) 。为此,我们只谈二进制代码。一个没有直流的代码,或一个具有恒定的直流分量而不考虑数据模式1的代码,为光纤和电磁线链接带来许多优点。高增益光纤接收器需要一个前端附近的 AC 耦合阶段。另外,发射器的水平,接收增益和均衡控制的简化,如果这些可以在平均信号功率(特别是在较高的数据速率)的基础上,可以提高控制精度, 。直流恢复电路就是前面所述的控制问题的替代解决方案,但电路容易失去与提高数据速率的精度。附加额外的东西需要可靠的

4、时钟恢复和特殊控制字符的编码,如划定信息包的开始和结束。高速率的数据可以使字节率保持恒定,同时减少逻辑在信号传输速率,有时附近的技术限制设置操作电路的数量。如果多余的东西以一个恒定的速率添加到每个字节(相对于选择性,模式依赖位填充) ,这些目标可以非常容易地实现。一个不断扩大的因素也有利于其他领域的传输系统,如差错控制,闸流管的缓冲,地址扩展或替代设计和时钟设计。现代通信体系结构通过打包定义的的地址,信息和差错控制信息的结构形式以实现数据传输。在这些领域中的数的位数和整个数据包每个数字通常是一个八位的倍数。缓冲器和相关接口也是字节为导向。在这些系统中字节编码具有与包边界天然的亲和力和字节时钟速

5、度优势,使其容易与低转速对系统的并行端逻辑的实现。否则,有吸引力的二进制代码,如5B/6B 码2,不要轻易使用面向字节的结构。数据包结构难以适应时钟界面,同时增加了高速门数。考虑到这些因素,并寻找一个相当有效的代码,有人会首先倾向于审查一下 8B/9B 代码的可能性。但是,要实现这样的代码,它的实现和性能参数(比效率除外)将受到损害,在很大程度上,可以与 8B/10B 编码得到的结果比较。追求总体目标与我们相似,Kiwimagi3提出比较宽松性能约束的 4b/5b 代码。我们的方法整合成一个复合 8B/10B 码(一个 3B/4B 的代码和一个 5B/6B 的代码) 。一个 5B/6B 编码和

6、 3B/4B 独立运行格里菲斯已经描述2。我们修改了表来提高性能参数和促进执行,我们也定义了同步,或逗号,字符集,以及其他特殊的非数据字符,我们稍后介绍。最后,我们建立和经营的整个编码器非常简单实用,实施和证明它可以在一个简单的接口与集成技术相对缓慢。本文是对前面同一代码的简短文章的详尽阐述4 。本文第 2 部分提供了一般的编码约束的描述,以及替代编码的讨论,通过讨论提出了这里的代码结构。第 3 部分详细界定提出的8B/10B 码。第 4 部分介绍它的性能参数和代码的功能。最后,第 5部分对待执行事进行了描述。2.频道限制和编码方案通道限制如前所述,传输的信号流下来的通道必须受到限制,以便信息

7、转换及时恢复,同时直流频谱分量很少或没有存在。通过测量直流以及直流数值附近的能量得到数字变量总和或DSV5,具体是通过如下的方式获得的:每个通道符号(相当于一个单位间隔期间可能的信号波形)被分配一个对应直流分量部分的代数值。 DSV 被定义为运行中编码的数据流变化的总和,比如最大减去最小值。对于二进制或两个级别的代码,1 和 0 位一般都分配到 1 和-1 。接下来,最高 DSV 通过符号 u 降级。请注意在运行水平和数是 U1。表 1 信道容量 C 的例子对于恒定不变的周期信号,运行长度定义为信号流中出现的次数及周期数。对于二进制代码,运行长度是编码后的连续 1 或 0。有意思的是是最短的(

8、X)和最长(Y)的运行长度的出现。这两个参数,常常以(d,k)的形式给出,其中满足 d= x - 1 和 k= y - 1。这种(d,k )的表述给出了变化信号的最低(d )值和最高(k)值。例如,对于(0,3)代码,任何信号可以遵循不超过三个连续的相同的符号,4 为最长运行数。数字传输设计的代码通常有一个参数 d为 0。另一方面,磁性记忆的首选编码通常有参数 d 的值大于或等于 1;即转换之间的最小间距大于符号间隔。理论极限为带有一个(d,k)运行长度极限以及大量 u 的 DSV 编码就是一个很好的为输入受限的通道编码例子。这儿是三种标准(1)信道容量 C(代表最高每通道符号编码比特率) ,

9、 (2)编码器的复杂性,以及(3)误差传播量。表 1 列出了信道容量 C 的一个用(d ,k,u)的约束样本。多种正式的方法可以构造这种编码。参考文献5-13可作为进入文学条目使用。据了解,只要预期的编码率不超过长的通道容量,即可获得代码。此外,即使是在这里讨论的限制类,其中解码器状态必须独立(5 ),以避免误差的无限传播,它最近被证实10与此属性映射总是可以达到的。因此,理论上,它有可能获得一个(0,2,5)率 4 / 5 的代码。然而,与这些参数编码器和解码器可能不相符合,因为编码的复杂性和误差传播是必须考虑的,以及其他要求,如特殊的信号序列。表 2 不同的代码规范约束的复杂性 m表 3

10、5B/6B 编码其中代码复杂性的一个分类方式是按照信息(源)字节数量分类,必须由编码器在选择检查时,用一个有界时延码8,9 选择一个字。举例来说,假设,该比率是的 S / W,其中 s 位字节同时被编码为长度为 w 的字,用一个参数 m 代表了 S -位组,当选择一个字传递时需要在编码过程中进行检查。考虑米=2 的情形时,S =4,和W=5, m 的值表示的编码过程的每一步需要两个 4 位数据组检查。表 2 给出了在各种限制和比率为 4 / 5 的情况下 m 的最低值。注意例如,至少有 3 个 4 位组必须在每一个( 0,2,5)码的步骤检查。这里所描述的代码在参考文献5,12 所讨论的范围之

11、外,因为它是由长度和编码率并不统一得分块组成的。然而,这些变化是周期性的,因此新的代码可以被看作是一个固定长度的代码与 S= 8 和w= 10 组合而成,其特定的限制条件为 D=0 时,K =4,和 U= 6 的。构建这样一个固定长度的代码可以通过首先取得主状态的集合而得到,具体描述如下:给定一个有限状态机来描述通道限制,以及一个主要的状态集合,有足够的代码字终止于这一集合。有种算法可以找到这样一些代码字集合和相关的代码字,这一算法在 5中有详细描述。一个相应的算法可以制定这里讨论的分区块的代码。所不同的是,在 5B/6B 代码中使用的编码字必须终止在 3B/4B 代码的编码状态,反之亦然。因

12、此分区块代码可能是一个非常简单的理论延伸。上面讨论的编码技术可以被视为是框架结构和所涉及的各种映射之间存在无约束的数据和编码器输出。然而, 设计一种代码为指定应用工程涉及许多具体的例子来说明。为阐明设计选择的原因,一些设计的替代选择,被认为是随后的一些描述。.编码方案1. 被选中的分区块代码有参数 d = 0,k = 4、u = 6,以及 4 / 5 的比率, 它们是通过比率 5/6 与 3 / 4 的代码组合而成。误差传播是限于5 位。这就意味着检测中一个孤立的附加误差最多导致 5 个错误比特解码后的资料流。因此一次编码最多需要检查 5 源时间。2. 另一种可能性是没有一个先行的标准分组码,

13、在参数 d = 0,k = 3、u = 5,s = 8,w = 10,m = 1 的情况下. 这里八位原字节必须检查是否选择了一个代码字。一般误差传播是 8 位。在运行长度和DSV 中比方案 1 轻微改善不被认为足以证明是错误传播的增加和编码器和解码器的复杂性大大提高。3. 在 k = 4,u = 5,s = 4、m = 2 时,调查的第三个可能性 ,是可变长度代码的构建9成为了 k 值、u 型、误差传播,和复杂性最好的折衷。代码可以设计出这样的最大的数字代码的位检查限于5。5 位误差传播(例如在代码的实际选择)。基于事实很少有合适的冗余可用于映射特殊字符,使得需要一个编码器的电路的数量将会出

14、现几个缺点。另一个不利因素产生于数据包末尾的可变长度。3 8B/10B 的编码图.概览图1显示一个通信适配器接口组成的ABCDEFGH八个数据线路的大写字母符号(注意),一个控制线路K、和一个时钟线BYTECLK操作字节率。K是控制管线表明是否有通过H,H代表数据或控制的信息。进行编码的目的,每个输入的字节分为两个子块。五个二进制线 ABCDE 编码成六个二进制线 abcedi(注小写的符号),接下来是 5B /6B 逻辑功能和差距的控制方向。同样,这三个位元 FGH 被编码成fghi。数据块的差距是块里1和0的数量的差距;正和负的差额分别指过多的1和0。对于6B =abcdei和4B = f

15、ghj子块许可的差距是0,+ 2或-2。编码规则要求非零差距块的极性交替。为了这个目的, 6B和4B子块之间不作区分;也就是说,6B块里过剩的两个1可以由6B或4B里两个多余的0有效地补偿,反之亦然。非零差距代码点被分配到一对互补源数据点。该编码功能产生它们中的一个;如果它违反了极性交替规则,则在编码开关处将完成的分块进行翻转。测定6B的极性和差异,接下来是4B的相应的操作,然后运行差别参数将其传递给下一字节的编码。大多数的编码子块是零差异,也有一些例外的,即独立运行的差距。它们没有一个补充。通常十个编码线abcdeifghj与其串行连接接;a必须先最先传输而j最后传输。代码定义8b/10b

16、编码是通过 5b/6b 编码器实现的,按照编码方案和表 3的规则,5b/6b 编码器将数字进线中的输入字节 ABCDE 编码为 数据线上的 abcdei。如表 4 所示,在 3b/4b 编码器里当输入字节 FGH时到达数据线是变为 fghj。5b/6b 编码 表 3 的第一列以“名字”开头,给出了输入线里 ABCDE 32 个等价的十进制,假设 A 是低位和 E 的高位。对于一般的数据(D.x)其 K 线必须保持 0 状态;少数代码点被识别为特殊字符的一部分而不是数据;这样的代码点名为 D/ K.x 或者K.x 并在 K 线有 X 或 1。为编码特殊字符,K 线必须是 1。图 2 差别与时间的关系图。表 4 3B/4B 编码在“分类”栏中,L04 意味着在 ABCD 里没有 1 但有四个 0;L13意味着在 ABCD 里有一个 1 和 3 个 0,等。字母“L”表明该逻辑函数或分类是 5B /6B 编码器的一部分。标有

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号