微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 电源设计 > OTN帧头定位电路优化研究

OTN帧头定位电路优化研究

时间:12-26 来源:电子产品世界 点击:

引言

在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指示信号进行输出重排,并且在重排后,对数据排列的顺序进行锁定。在下一个时钟周期中,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top