OTN帧头定位电路优化研究

  引言

  在ITU-T G.709协议中,ITU-T规定了OTN的网络帧结构。OTN使用了和SDH类似的帧结构,帧定位信号(Frame Alignment Signal)也是相同的。但是由于OTN的信号速率非常高,如OTU2的速率达到10Gbps以上,OTU3速率达到43Gbps以上,不能直接使用SDH的帧定位电路。以OTU2为例,在Serdes将串行信号变为并行信号后,如果还按照8bit的数据宽度,则信号速率需要达到1.25Gbps左右,这无论对于FPGA处理还是ASIC,速率都是过高而不能处理的,所以需要将数据宽度进一步加大,以降低信号速率。在本项目中,使用了64位的数据宽度,这时的信号速率为167Mbps。对于这样高速而且宽位数的数据处理,如果还按照传统的帧头定位电路来处理,电路的速度上不去,会导致电路处理不能达到要求,所以需要简化帧头定位电路,以达到高速率、高位宽的信号处理要求。

  传统的帧定位处理方法

  OTN帧结构

  在ITU-T的G.709协议中,ITU-T规定了OTN的帧结构,如图1所示。

  OTUk帧结构是4行,4080列的结构。在每一帧的开始处,首先是帧定位信号(FAS),然后是复帧定位信号(MFAS)和其它开销字节。详细如图2所示。

  在OTUk帧数据中,FAS信号是不经过扰码的,除FAS信号外的信号,都是经过扰码的。所以只要在整个数据中,只要找到了FAS(即0xF6F6F6282828)信号,就将整个帧头找到了,整个帧的结构就随之确定了。

  OTUk帧结构是以字节为定位基准的。但是在Serdes将串行数据转换为64bit并行数据后,只是将64个bit随机的放在一起,并不是按字节对齐的,所以在Serdes电路后边,紧跟着的是一个将64bit随机排列的数据按字节对齐的方式重新处理的电路。

  传统的帧定位方法

  在Serdes后边的并行数据侧,48bit的FAS信号,可能处于一个时钟周期的64个bit内,也可能处于两个连续的64个bit数据中,所以需要在连续的两个64个bit内,查找FAS信号。然后在这128个bit内,使用64个48bit的比较器来和FAS信号进行比较。如图3所示。

  在电路处理时,首先把第一个时钟周期的64bit数据缓存,再与下一个周期的64bit组合成为图3中的128bit数据。在此128bit数据中,需要64个48bit的比较器,第一个比较器比较第1bit到第48bit的数据是否和FAS相同,第二个比较器比较第2bit到第49bit的数据是否和FAS相同,依此类推,第64个比较器比较第64bit到第112bit的数据是否和FAS相同。在下一个时钟周期时,上述128bit的第65到128bit移动到图3的第1到第64bit,重复上述过程。

  在上述比较过程中,当某个比较器的输入数据和FAS相同时,给出指示信号。后续电路以输出指示信号的比较器的第一个bit,作为整个输出64bit的第1个bit,将上述输入的128bit数据重新排列,送往下级电路。到此,整个帧定位电路的工作完成了。

  从上述描述中,可以看到,传统的帧定位电路,需要64个48bit的比较器同时工作,电路的规模大,功耗大。所以,需要对上述传统帧定位电路进行优化,以降低电路规模,减小电路功耗,提高电路工作速率。

  优化的帧定位方法

  寻找FAS的过程,其实就是在并行的128bit数据中寻找0xF6F6F6282828的过程,对帧定位过程进行优化,可以考虑对48位的比较器进行优化。

  本文提出了一种优化的帧定位处理方法,原理框图如图4所示。

  首先,输入进来的64bit先延时一拍,再和下一周期来的数据组合起来,成为128bit数据。在此128bit数据中,使用64个24位比较器,每个比较器和0xF6F6F6进行比较。第1个比较器接128bit数据的第1到第24位,第2个比较器接第2位到第25位……,第64个比较器接第64位到87位。当其中任何一个比较器找到0xF6F6F6时,给出指示信号,后边的数据重排电路,根据给出指示信号的比较器的位置,对数据进行重新排列,将此比较器输入的第1bit作为整个输出数据的第1bit,依次排列64bit数据进行输出。

  在数据重排电路输出的64bit数据后,需要再连接一个24bit的比较器,这个比较器,对重新排列后的数据的第25到48bit进行比较,看数据是否为0x282828。当前面的比较器和后一个比较器同时给出指示信号时,即表示同时找到了0xF6F6F6和0x282828,并且这两个数据是相连接的。即找出了FAS信号,此时给出帧头指示信号。

  仿真验证

  对以上描述的过程使用Modelsim进行仿真,仿真图如图5所示。

  从图5可以看出,在输入数据DataIn中含有FAS信号时,24bit比较器给出了指示信号SelBus,SelBus由原来的全0变化为其中一个bit变为1,此时数据重排电路已开始工作,将输出的数据按SelBus指示信号进行输出重排,并且在重排后,对数据排列的顺序进行锁定。在下一个时钟周期中,后续的比较器对重排的数据的第25bit开始进行比较,比较正确后,输出了FAS指示信号

  结束语

  随着通信技术的发展,数据传输的速率越来越高,电路规模越来越大。而大规模的电路要同时进行高速运行时,无论对于FPGA还是ASIC,都是巨大的挑战,有时甚至不能成功,所以就需要对电路的规模进行优化以降低电路规模。本文提出的帧定位电路,对原有的帧定位电路有很大的优化。

  参考文献:

  [1] ITU-T.G.709/Y.1331.Interfaces for the Optical Transport Network[S].2012

  [2] 吕瑾,徐东明,张云军.SDH传输系统中帧定位电路设计[J].中国集成电路,2010,(10)

  [3] 孟李林.用流水线技术实现STM-16帧定位电路设计[J].光通信研究,2008,(1)

  [4] 孟李林,蒋林等.SDH帧头检测及数据重排电路[P].2005

  王建锋 蒋林 西安邮电大学(陕西 西安710061)

……
关注读览天下微信, 100万篇深度好文, 等你来看……
阅读完整内容请先登录:
帐户:
密码: