OTN分组交换系统中SAR接收队列缓存的控制装置及方法
技术领域
本发明涉及通信领域,具体是一种OTN分组交换系统中SAR接收队列缓存的控制装置及方法。
背景技术
OTN(Optical Transport Network,光传送网)技术在近几年逐步成为光通信领域的主流技术之一。参见图1所示,OTN分组交换系统包括顺次相连的OTN入口模块、切片(Segment)模块、包交换(Fabric)模块、重组(Regenerate)模块和OTN出口模块。OTN入口模块是一个OTUk(Optical channel Transport Unit-k,光通道传送单元k,k=0、1、2、3)通道传送单元,用来输出高阶ODUk(Optical channel Data Unit-k,光通道数据单元,k=0、1、2、3)数据流。切片模块将高阶和低阶数据流分割成SAR(Segment And Regenerate,切片以及聚合)包,再通过包交换模块进行交换,交换以后对数据包进行重组,还原成OTN数据流,还原的OTN数据流首先要保证数据本身的正确性,还要保证数据流的时钟信息的正确性。
重组模块接收包交换模块输出的SAR包数据缓存FIFO(First Input First Output,先入先出队列)被称为SAR接收队列缓存,SAR包经过包交换模块传输后,其延迟时间是不稳定的,即OTN分组交换系统中的包交换模块对SAR包的传输延迟的改变是不固定、不可知的,而ODUK的数据流速率是固定而且均匀的,为了保证重组数据流的正确性,必须设置SAR接收队列缓存并且保证不能发生溢出, 如果仅仅依靠扩大接收队列缓存容量,就会造成硬件资源的极大浪费,并且无法从根本上解决SAR传输延迟的抖动,也无法从根本上保证重组数据系统的可靠性。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种OTN分组交换系统中SAR接收队列缓存的控制装置及方法,能够避免包交换模块传输造成SAR包的延迟时间的不稳定而冲击SAR接收队列缓存,有效稳定缓存容量变化范围,降低SAR接收队列缓存的容量设计规模,降低芯片设计成本;在重组端有效还原切片模块的输出包络,降低对下级缓存的冲击,保证整个分组交换系统的稳定性。
本发明提供一种OTN分组交换系统中SAR接收队列缓存的控制装置,OTN分组交换系统包括顺次相连的OTN入口模块、切片模块、包交换模块、重组模块和OTN出口模块,OTN入口模块是一个OTUk通道传送单元,用来输出高阶光通道数据单元ODUk数据流,k=0、1、2、3;切片模块先估算出一个切片包的大小B,B为正整数,在T个参考时钟的周期内,T为正整数,切片模块通过对ODUk包络的计算提取,最终确定该切片包的大小是B、B+1或者B-1,切片模块将高阶和低阶数据流分割成SAR包,再通过包交换模块进行交换;包交换模块交换以后,重组模块对数据包进行重组,还原成OTN数据流;OTN出口模块输出重组模块还原出来的OTN数据流;包交换模块发送切片数据SAR_DATA和以下3个控制信号到重组模块:切片数据有效指示信号SAR_VALID、SAR包开始信号SAR_SOP、SAR包结束信号SAR_EOP;重组模块包括SAR接收队列缓存、FIFO、低通滤波器、数据恢复电路和读使能控制电路,SAR接收队列缓存通过FIFO与低通滤波器相连,低通滤波器与数据恢复电路相连,数 据恢复电路、读使能控制电路均与SAR接收队列缓存相连;所述SAR接收队列缓存的控制装置位于OTN分组交换系统的重组模块中,所述SAR接收队列缓存的控制装置包括包延迟流控模块和硬件数据流控模块,包延迟流控模块、硬件数据流控模块均与OTN分组交换系统中的包交换模块相连,包延迟流控模块包括硬件包延迟流控时间寄存器Pdv_time、硬件包延迟流控请求寄存器Pdv_req,硬件数据流控模块包括硬件数据流控使能寄存器ILK_EN、硬件启动流控水线寄存器ILK_START、硬件关闭流控水线寄存器ILK_END,SAR接收队列缓存的控制装置中的包延迟流控模块和硬件数据流控模块均发送硬件数据流控使能信号ILK_FC给包交换模块,硬件数据流控使能信号ILK_FC是禁止包交换模块发送切片数据到重组模块的控制信号,当硬件数据流控使能信号ILK_FC有效时,包交换模块停止发送切片数据到重组模块,将数据缓存在包交换模块所在的芯片缓存中;当硬件数据流控使能信号ILK_FC无效时,包交换模块正常发送切片数据到重组模块。
在上述技术方案的基础上,所述SAR接收队列缓存的控制装置将包交换模块发来的切片数据放入接收队列进行缓存,提取开销,利用SAR包开销中的上一帧包长字段,得到一串大小依次为B、B+1、B-1的数据序列,保存到先入先出队列中,经过低通滤波器滤除接收整形引入的噪声滤波后,得到恢复出来的ODUk的时钟,k=0、1、2、3,重组模块在ODUk的数据队列中利用排序好的数据和恢复出来的ODUk时钟,还原出ODUk数据流。
本发明还提供基于上述装置的OTN分组交换系统中SAR接收队列缓存的控制方法,包括以下步骤:
A、OTN分组交换系统上电复位后,重组模块通过软件配置以 下5个硬件寄存器:硬件启动流控水线寄存器ILK_START、硬件关闭流控水线寄存器ILK_END、硬件数据流控使能寄存器ILK_EN、硬件包延迟流控时间寄存器Pdv_time和硬件包延迟流控请求寄存器Pdv_req,硬件包延迟流控时间寄存器Pdv_time以参考时钟周期为单位;硬件包延迟流控请求寄存器Pdv_req为写1翻转寄存器;
重组模块中的包延迟流控模块通过软件发出软件包延迟流控请求,包延迟流控模块的硬件电路监测到硬件包延迟流控请求寄存器Pdv_req翻转后,启动一次硬件包延迟流控请求寄存器Pdv_req,硬件包延迟流控请求寄存器Pdv_req启动软件包延迟流控进程,对软件包延迟流控进程的有效时间进行计数,达到包延迟流控时间寄存器Pdv_time的配置值后,重组模块中的包延迟流控模块自动停止软件包延迟流控进程;
SAR接收队列缓存的控制装置中的包延迟流控模块和硬件数据流控模块均发送硬件数据流控使能信号ILK_FC给包交换模块,当硬件数据流控使能寄存器ILK_EN有效、且SAR接收队列缓存水线超过硬件启动流控水线寄存器ILK_START的配置值时,硬件自动启动硬件数据流控进程,包交换模块停止发送切片数据到重组模块,将数据缓存在包交换模块所在的芯片缓存中;当硬件数据流控使能寄存器ILK_EN无效、且SAR接收队列缓存水线低于硬件关闭流控水线寄存器ILK_END的配置值时,硬件自动关闭硬件数据流控进程,包交换模块发送切片数据到重组模块;
B、SAR接收队列缓存的读使能正常工作后,SAR接收队列缓存按照T个参考时钟的SAR周期读出一个SAR包的步调发出读使能,读出SAR接收队列缓存数据以进行下一步的数据重组:
包交换模块发出切片数据SAR_DATA、SAR切片数据有效指示 信号SAR_VALID、SAR包开始信号SAR_SOP、SAR包结束信号SAR_EOP;当SAR切片数据有效指示信号SAR_VALID有效时,包交换模块将切片数据SAR_DATA、SAR包开始信号SAR_SOP、SAR包结束信号SAR_EOP写入到SAR接收队列缓存;
重组模块的硬件电路产生周期为T个参考时钟的时钟脉冲;重组模块的硬件电路正常读SAR接收队列缓存,当重组模块的硬件电路监测到SAR_EOP信号时,SAR接收队列缓存停止发出读使能;当周期为T个参考时钟的时钟脉冲有效时,表示又有一个T个参考时钟的周期开始,才又开始读SAR接收队列缓存;每次SAR包的读取循环遵循此规律。
在上述技术方案的基础上,所述硬件启动流控水线寄存器ILK_START的配置值高于硬件关闭流控水线寄存器ILK_END的配置值。
在上述技术方案的基础上,所述硬件启动流控水线寄存器ILK_START的配置值在SAR接收队列缓存水线的一半以上。
在上述技术方案的基础上,所述硬件关闭流控水线寄存器ILK_END的配置值在SAR接收队列缓存水线的一半以下。
在上述技术方案的基础上,所述SAR接收队列缓存从上电为空、OTN分组交换系统上电复位、到SAR接收队列缓存写入一半缓存数据量后,SAR接收队列缓存的读使能才开始正常工作。
与现有技术相比,本发明的优点如下:
本发明中的切片模块和重组模块很好地实现了ODU0(GE:Gigabit Ethernet,千兆以太网,1000M/S)、ODU1(2.5Gb/s)、ODU2(10Gb/s)和ODU3(40Gb/s)等OTN信号颗粒的分组交换,能够避免包交换模块传输造成SAR包的延迟时间的不稳定而冲击SAR接 收队列缓存,有效稳定缓存容量变化范围,降低SAR接收队列缓存的容量设计规模,降低芯片设计成本;在重组端有效还原切片模块的输出包络,降低对下级缓存的冲击,保证整个分组交换系统的稳定性。
附图说明
图1是现有的OTN分组交换系统的结构框图。
图2是本发明实施例中包交换模块与重组模块的信号交互图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
参见图1所示,OTN分组交换系统包括顺次相连的OTN入口模块、切片模块、包交换模块、重组模块和OTN出口模块,OTN入口模块是一个OTUk(k=0、1、2、3)通道传送单元,用来输出高阶ODUk(k=0、1、2、3)数据流。为了完成切包功能,切片模块先估算出一个切片包的大小B,B为正整数,在T个参考时钟的周期内,T为正整数,切片模块通过对ODUk包络的计算提取,最终确定该切片包的大小是B、B+1或者B-1。切片模块将高阶和低阶数据流分割成SAR包,再通过包交换模块进行交换。包交换模块交换以后,重组模块对数据包进行重组,还原成OTN数据流,还原的OTN数据流要保证数据本身的正确性和数据流的时钟信息的正确性。OTN出口模块输出重组模块还原出来的OTN数据流。
参见图2所示,包交换模块发送SAR_DATA(切片数据)和以下3个控制信号到重组模块:SAR_VALID(切片数据有效指示信号)、SAR_SOP(SAR包开始信号)、SAR_EOP(SAR包结束信号)。重组模块包括SAR接收队列缓存、FIFO、低通滤波器、数据恢复电路和读使能控制电路,SAR接收队列缓存通过FIFO与低通滤波器相 连,低通滤波器与数据恢复电路相连,数据恢复电路、读使能控制电路均与SAR接收队列缓存相连。
本发明实施例提供一种OTN分组交换系统中SAR接收队列缓存的控制装置,位于OTN分组交换系统的重组模块中,该SAR接收队列缓存的控制装置包括包延迟流控模块和硬件数据流控模块,包延迟流控模块、硬件数据流控模块均与OTN分组交换系统中的包交换模块相连,包延迟流控模块包括Pdv_time(Packet delay variation time,硬件包延迟流控时间寄存器)、Pdv_req(Packet delay variation request,硬件包延迟流控请求寄存器),硬件数据流控模块包括ILK_EN(硬件数据流控使能寄存器)、ILK_START(硬件启动流控水线寄存器)、ILK_END(硬件关闭流控水线寄存器)。
SAR接收队列缓存的控制装置中的包延迟流控模块和硬件数据流控模块均发送ILK_FC(硬件数据流控使能信号)给包交换模块,硬件数据流控使能信号ILK_FC是禁止包交换模块发送切片数据到重组模块的控制信号,当硬件数据流控使能信号ILK_FC有效时,包交换模块停止发送切片数据到重组模块,将数据缓存在包交换模块所在的芯片缓存中;当硬件数据流控使能信号ILK_FC无效时,包交换模块正常发送切片数据到重组模块。
SAR接收队列缓存的控制装置将包交换模块发来的切片数据放入接收队列进行缓存,提取开销,利用SAR包开销中的ppsi(the indicated size of the previous packet,上一帧包长)字段,得到一串大小依次为B、B+1、B-1的数据序列,保存到先入先出队列中,经过低通滤波器滤除接收整形引入的噪声滤波后,得到恢复出来的ODUk的时钟,k=0、1、2、3,重组模块在ODUk的数据队列中利用排序好的数据和恢复出来的ODUk时钟,还原出ODUk数据流。
本发明实施例还提供一种基于上述装置的OTN分组交换系统中SAR接收队列缓存的控制方法,包括以下步骤:
A、OTN分组交换系统上电复位后,重组模块通过软件配置以下5个硬件寄存器:硬件启动流控水线寄存器ILK_START、硬件关闭流控水线寄存器ILK_END、硬件数据流控使能寄存器ILK_EN、硬件包延迟流控时间寄存器Pdv_time和硬件包延迟流控请求寄存器Pdv_req,硬件启动流控水线寄存器ILK_START的配置值高于硬件关闭流控水线寄存器ILK_END的配置值,硬件启动流控水线寄存器ILK_START的配置值在SAR接收队列缓存水线的一半以上,硬件关闭流控水线寄存器ILK_END的配置值在SAR接收队列缓存水线的一半以下;硬件包延迟流控时间寄存器Pdv_time以参考时钟周期为单位;硬件包延迟流控请求寄存器Pdv_req为写1翻转寄存器;
重组模块中的包延迟流控模块通过软件发出软件包延迟流控请求,包延迟流控模块的硬件电路监测到硬件包延迟流控请求寄存器Pdv_req翻转后,启动一次硬件包延迟流控请求寄存器Pdv_req,硬件包延迟流控请求寄存器Pdv_req启动软件包延迟流控进程,对软件包延迟流控进程的有效时间进行计数,达到包延迟流控时间寄存器Pdv_time的配置值后,重组模块中的包延迟流控模块自动停止软件包延迟流控进程;
SAR接收队列缓存的控制装置中的包延迟流控模块和硬件数据流控模块均发送硬件数据流控使能信号ILK_FC给包交换模块,当硬件数据流控使能寄存器ILK_EN有效、且SAR接收队列缓存水线超过硬件启动流控水线寄存器ILK_START的配置值时,硬件自动启动硬件数据流控进程,包交换模块停止发送切片数据到重组模块,将数据缓存在包交换模块所在的芯片缓存中;当硬件数据流控使能寄存器 ILK_EN无效、且SAR接收队列缓存水线低于硬件关闭流控水线寄存器ILK_END的配置值时,硬件自动关闭硬件数据流控进程,包交换模块发送切片数据到重组模块;
B、为了避免由于数据流的抖动造成SAR接收队列缓存的溢出,SAR接收队列缓存从上电为空、OTN分组交换系统上电复位、到SAR接收队列缓存写入一半缓存数据量后,SAR接收队列缓存的读使能才开始正常工作。SAR接收队列缓存的读使能正常工作后,SAR接收队列缓存按照T个参考时钟的SAR周期读出一个SAR包的步调发出读使能,读出SAR接收队列缓存数据以进行下一步的数据重组:
包交换模块发出切片数据SAR_DATA、SAR切片数据有效指示信号SAR_VALID、SAR包开始信号SAR_SOP、SAR包结束信号SAR_EOP;当SAR切片数据有效指示信号SAR_VALID有效时,包交换模块将切片数据SAR_DATA、SAR包开始信号SAR_SOP、SAR包结束信号SAR_EOP写入到SAR接收队列缓存;
重组模块的硬件电路产生周期为T个参考时钟的时钟脉冲;重组模块的硬件电路正常读SAR接收队列缓存,当重组模块的硬件电路监测到SAR_EOP信号时,SAR接收队列缓存停止发出读使能;当周期为T个参考时钟的时钟脉冲有效时,表示又有一个T个参考时钟的周期开始,才又开始读SAR接收队列缓存;每次SAR包的读取循环遵循此规律。
本发明实施例中的软件包交换流控和硬件数据流控都是SAR接收队列缓存写口的数据流控,是相或的关系,互不冲突。软件包交换流控是由软件控制发起一次软件包交换流控请求、硬件包延迟流控请求寄存器Pdv_req启动一次软件包交换流控进程。软件包延迟流控的 作用是将一部分切片数据保存在包交换模块所在的芯片缓存中,避免重组模块出现长时间断流而造成SAR接收队列缓存下溢。硬件数据流控是由SAR接收队列缓存水线水平决定数据流控的开启和关闭。硬件数据流控的作用是避免包交换模块短时间突发大量切片数据到重组模块,造成SAR接收队列缓存上限溢出,将SAR接收队列缓存水线控制在硬件启动流控水线寄存器ILK_START的配置值与硬件关闭流控水线寄存器ILK_END的配置值之间。
本领域的技术人员可以对本发明实施例进行各种修改和变型,倘若这些修改和变型在本发明权利要求及其等同技术的范围之内,则这些修改和变型也在本发明的保护范围之内。
说明书中未详细描述的内容为本领域技术人员公知的现有技术。