位置:51电子网 » 技术资料 » 接口电路

高速串行接口的编码技术

发布时间:2008/6/3 0:00:00 访问次数:991

  串行互连接口的速率在过去几年里得到了显著提高,每线的速率从2.5gbit/s提高到10gbit/s,而每个接口可以容纳1到32线。8b10b作为互连接口的一种编码技术,设计简单、性能出众,因此成为应用最广泛的技术。然而,它的系统开销高达25%,问题突出。为了解决这个问题,设计者们一直在探寻改进的方法。本文就将介绍一些低开销的编码技术,并讨论它们的优势与存在的问题。

编码技术基础理论

  目前,高速接口正在被广泛应用于包括sata、sas、高速pci等多种标准中。这些接口的速率甚至可以达到并超过每线10gbits/s。同时,所有主流asic和fpga平台也都支持这些高速接口技术。从结构上看,这些高速接口主要包括三个组成部分:

  电路部分(串行/解串行)
  物理部分(实现编码)
  链路与协议部分(高层)

  支持多速率、多协议的串行/解串行器已经实现。以oif(光互联论坛)为例,他们已经为两组速率制定了电路规范,分别为5gbits/s-6.375gbits/s和10gbits/s-11gbits/s。oif同样为两种应用距离制定了规范,分别为短距离(采用一个连接器,8英寸)和长距离(采用两个连接器,40英寸)。串行/解串行器还可以被设计用来满足更多的规范,包括不同的速率、距离、电路规格等等。

  物理部分的主要任务是对数据进行编码,以保证串行/解串行器的正常运行。这些编码的目的包括:确保必须的变换(“1”到“0”和“0”到“1”的变换),保证稳定的直流均衡(“0”码与“1”码的个数相当),以及满足其它标准的要求(最大化信道带宽利用率,提高对误差的容忍能力等等)。

  以manchester编码为例,这种编码技术被广泛应用于10mbit/s以太网连接中。它的编码方式非常简单,就是将“1”编码为“01”,将“0”编码为“10”。从编码原理我们可以推断出:

  最大相同连续字符数为2(正常情况下连续出现两个以上连续“0”或“1”是不可能的)。

  保证稳定的直流均衡(“0”的个数与“1”的个数总是相同的)。

  具备1bit误码纠错能力(“00”或者“11”是无效码)。

  高达100%的系统开销。

  扰码技术是串行链路常用的另一种编码技术。这种技术将伪随机序列与原始码流混合,以实现转换、直流均衡等目的。伪随机发生器由线性反馈移位寄存器产生的最长序列(m序列)构成1。此序列的周期为2n,其中n为线性反馈移位寄存器特征多项式的最高阶。例如sonet/sdh的特征多项式为x7+x6+1,它的序列长度为27-1,即127。

  扰码器包括两种类型,分别为边扰码器与自同步扰码器。通常,边扰码器的寄存器状态与发送数据异或构成它的下一个状态,这需要在输入与输出之间“重置/同步”扰码器状态。自同步扰码器直接将输入数据作为扰码器状态,不需要重置和同步过程。

8b10b编码技术

  8b10b是应用最广泛的编码技术。它被用于串行连接scsi、串行ata、光纤链路、吉比特以太网、xaui(10吉比特接口)、pci express总线、infiniband、seria rapidio、hypertransport总线以及ieee1394b接口(火线)技术中。

  8b10b2将8bit代码组合编码成10bit代码,代码组合包括256个数据字符编码和12个控制字符编码(如表1所示)。通过仔细选择编码方法可以获得不同的优化特性。这些特性包括满足串行/解串行器功能必须的变换;确保“0”码元与“1”码元个数的一致,又称为直流均衡;确保字节同步易于实现(在一个比特流中找到字节的起始位);以及对误码率有足够的容忍能力和降低设计复杂度。

  8b10b中所有的编码都具备3到10种变换。每个码字确保:

  在一行中不会产生超过四个连“1”或连“0”;

  “1”与“0”的不平衡度(不平衡度指“0”的个数减去“1”的个数)不会超过2个码字(5个“1”/5个“0”,4个“1”/6个“0”或4个“0”/6个“1”)。

  8b10b采用一种简单的方法保证了编码的直流平衡。在不平衡时,采用两个10bit字符表示一个8bit字符,其中一个称为rd-,表示“1”的个数比“0”多2个,另一个称为rd+,表示“1”的个数比“0”少2个。选取合适的rd字符可以保证不平衡度不大于1。同时,采用只有在控制字符(k28.5,k28.1,k28.7)中才有的特殊字符可以保证同步定位的准确。

  8b10b借助总共268个字符及它们的反转码,还可以检测任何可能破坏不平衡的误码。但是,即使接收机接收到了正确的码字,有时它们也有可能因为不平衡性而导致误码,这种现象被称为误码复制。8b10b编码技术将8bit数据分成3bit和5bit两组,因此可以看作是3b4b和5b6b编码技术的组合。

  改进传统8b10b编码技术的一种方法是,在编码之前增加扰码过程。有证据证明,特殊的模式3或差分群时延可能会导致重复模式产生不可预测的误码。解决这个问题最直接的办法就是在编码之前对数据进行扰码。

  以上这些

  串行互连接口的速率在过去几年里得到了显著提高,每线的速率从2.5gbit/s提高到10gbit/s,而每个接口可以容纳1到32线。8b10b作为互连接口的一种编码技术,设计简单、性能出众,因此成为应用最广泛的技术。然而,它的系统开销高达25%,问题突出。为了解决这个问题,设计者们一直在探寻改进的方法。本文就将介绍一些低开销的编码技术,并讨论它们的优势与存在的问题。

编码技术基础理论

  目前,高速接口正在被广泛应用于包括sata、sas、高速pci等多种标准中。这些接口的速率甚至可以达到并超过每线10gbits/s。同时,所有主流asic和fpga平台也都支持这些高速接口技术。从结构上看,这些高速接口主要包括三个组成部分:

  电路部分(串行/解串行)
  物理部分(实现编码)
  链路与协议部分(高层)

  支持多速率、多协议的串行/解串行器已经实现。以oif(光互联论坛)为例,他们已经为两组速率制定了电路规范,分别为5gbits/s-6.375gbits/s和10gbits/s-11gbits/s。oif同样为两种应用距离制定了规范,分别为短距离(采用一个连接器,8英寸)和长距离(采用两个连接器,40英寸)。串行/解串行器还可以被设计用来满足更多的规范,包括不同的速率、距离、电路规格等等。

  物理部分的主要任务是对数据进行编码,以保证串行/解串行器的正常运行。这些编码的目的包括:确保必须的变换(“1”到“0”和“0”到“1”的变换),保证稳定的直流均衡(“0”码与“1”码的个数相当),以及满足其它标准的要求(最大化信道带宽利用率,提高对误差的容忍能力等等)。

  以manchester编码为例,这种编码技术被广泛应用于10mbit/s以太网连接中。它的编码方式非常简单,就是将“1”编码为“01”,将“0”编码为“10”。从编码原理我们可以推断出:

  最大相同连续字符数为2(正常情况下连续出现两个以上连续“0”或“1”是不可能的)。

  保证稳定的直流均衡(“0”的个数与“1”的个数总是相同的)。

  具备1bit误码纠错能力(“00”或者“11”是无效码)。

  高达100%的系统开销。

  扰码技术是串行链路常用的另一种编码技术。这种技术将伪随机序列与原始码流混合,以实现转换、直流均衡等目的。伪随机发生器由线性反馈移位寄存器产生的最长序列(m序列)构成1。此序列的周期为2n,其中n为线性反馈移位寄存器特征多项式的最高阶。例如sonet/sdh的特征多项式为x7+x6+1,它的序列长度为27-1,即127。

  扰码器包括两种类型,分别为边扰码器与自同步扰码器。通常,边扰码器的寄存器状态与发送数据异或构成它的下一个状态,这需要在输入与输出之间“重置/同步”扰码器状态。自同步扰码器直接将输入数据作为扰码器状态,不需要重置和同步过程。

8b10b编码技术

  8b10b是应用最广泛的编码技术。它被用于串行连接scsi、串行ata、光纤链路、吉比特以太网、xaui(10吉比特接口)、pci express总线、infiniband、seria rapidio、hypertransport总线以及ieee1394b接口(火线)技术中。

  8b10b2将8bit代码组合编码成10bit代码,代码组合包括256个数据字符编码和12个控制字符编码(如表1所示)。通过仔细选择编码方法可以获得不同的优化特性。这些特性包括满足串行/解串行器功能必须的变换;确保“0”码元与“1”码元个数的一致,又称为直流均衡;确保字节同步易于实现(在一个比特流中找到字节的起始位);以及对误码率有足够的容忍能力和降低设计复杂度。

  8b10b中所有的编码都具备3到10种变换。每个码字确保:

  在一行中不会产生超过四个连“1”或连“0”;

  “1”与“0”的不平衡度(不平衡度指“0”的个数减去“1”的个数)不会超过2个码字(5个“1”/5个“0”,4个“1”/6个“0”或4个“0”/6个“1”)。

  8b10b采用一种简单的方法保证了编码的直流平衡。在不平衡时,采用两个10bit字符表示一个8bit字符,其中一个称为rd-,表示“1”的个数比“0”多2个,另一个称为rd+,表示“1”的个数比“0”少2个。选取合适的rd字符可以保证不平衡度不大于1。同时,采用只有在控制字符(k28.5,k28.1,k28.7)中才有的特殊字符可以保证同步定位的准确。

  8b10b借助总共268个字符及它们的反转码,还可以检测任何可能破坏不平衡的误码。但是,即使接收机接收到了正确的码字,有时它们也有可能因为不平衡性而导致误码,这种现象被称为误码复制。8b10b编码技术将8bit数据分成3bit和5bit两组,因此可以看作是3b4b和5b6b编码技术的组合。

  改进传统8b10b编码技术的一种方法是,在编码之前增加扰码过程。有证据证明,特殊的模式3或差分群时延可能会导致重复模式产生不可预测的误码。解决这个问题最直接的办法就是在编码之前对数据进行扰码。

  以上这些

相关IC型号

热门点击

 

推荐技术资料

耳机放大器
    为了在听音乐时不影响家人,我萌生了做一台耳机放大器的想... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!