CN108966056A - 一种用于可调谐光装置的控制装置与方法 - Google Patents
一种用于可调谐光装置的控制装置与方法 Download PDFInfo
- Publication number
- CN108966056A CN108966056A CN201810795776.5A CN201810795776A CN108966056A CN 108966056 A CN108966056 A CN 108966056A CN 201810795776 A CN201810795776 A CN 201810795776A CN 108966056 A CN108966056 A CN 108966056A
- Authority
- CN
- China
- Prior art keywords
- tunable optical
- optical device
- axi
- data
- wavelength
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0079—Operation or maintenance aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/009—Topology aspects
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Optical Communication System (AREA)
Abstract
本发明提供一种用于可调谐光装置的控制装置及方法,所述控制装置,可以直接设置在主机以及可调谐光装置之间,不必对主机以及可调谐光装置进行专门的改造,并且可被用于缓存在波长切换过程中持续发送的数据流,持续地判断可调谐光装置波长是否切换完毕,并在切换完成后继续发送缓存的数据,有效改进波长切换过程中高速传输数据发生闪断丢失的问题,有利于降低丢包率,增强网络可靠性与稳定性。
Description
技术领域
本发明涉及光连网络,尤其涉及对光互连网络中的可调谐光装置进行控制。
背景技术
随着云计算、大数据和人工智能的迅猛发展,数据中心和超算中心承载了越来越多样化的应用,负载通信特征差异明显,不同的拓扑结构适合不同的通信特征,提高拓扑的可重构能力成为网络发展的一个重要方向。传统的电域连接的拓扑结构是固定的,难以实现动态的调整,无法对网络进行重构。光交换网络的拓扑结构不再受限于硬件的布置格局,其可以在不改变物理连接关系的情况下,通过控制和调整光路来实现拓扑重构,因而具备很好的灵活性。
光波长交换技术可用于构建可重构光网络,其中可调谐光装置是光互连网络中的重要器件,通过对可调谐光装置的波长控制以切换光路是实现链路可重构性的关键。
在现有技术中,可调谐激光器主要被应用于作为光源备份和替代固定波长激光器、可重构插分复用器、波长转换器、以及被用在光传感和光测量的应用中。这些传统的应用主要是利用了可调谐激光器的灵活调节能力来实现对系统的动态调谐,其中大多数场景下对于数据传输速率和光波长的切换频率并没有太高的要求,因此尽管在利用现有技术对可调谐光装置进行波长切换的过程中存在数据闪断丢失、发生丢包的情况,但可以通过上层传输协议来保证传输的正确性,例如重传数据,对整体的网络性能也不会造成太大影响。
然而,在可重构光网络中,由于传输速率很高、波长切换频繁,可调谐光装置的数据闪断丢失、发生丢包会严重影响传输数据的正确性、以及光互连网络的整体稳定性,这使得可调谐半导体激光器难以被用于高速网络的应用场景中去。例如,在数据中心和超算中心的互连网络中,应用特征变换很快,波长切换频率很高,而且网络传输带宽大,可调谐光模块的丢包不容忽视,以带宽10G的以太网为例,若可调谐光装置的切换延迟需要50毫秒,这会导致该端口出现500Mb的数据的丢失,再考虑到极高的切换频率,因此虽然通过以太网的重传机制来保证传输的正确性,但会对网络性能造成极大的影响,为了保证波长切换过程中的传输性能,急需一种能够减少在可调谐光装置发生闪断从而导致丢失数据的解决方案。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种用于可调谐光装置的控制装置,包括:
指令发送缓存单元,用于通过AXI-lite接口接收经由AXI总线的来自主机的波长调谐指令,以及通过AXI-IIC接口向所述可调谐光装置输出与所述波长调谐指令对应的波长控制信息;
指令接收缓存单元,用于通过AXI-IIC接口接收来自可调谐光装置的切换完成指示位的信号;
状态监测单元,用于监测所述指令发送缓存单元是否接收到来自所述主机的波长调谐指令,以及监测所述指令接收缓存单元是否接收到来自所述可调谐光装置的指示其已完成了物理的波长切换的切换完成指示位;
数据缓存单元,用于在主机发出波长调谐指令直到所述可调谐光装置完成了物理的波长切换的时间段内,通过AXI-stream接口缓存AXI总线上尚未传输的数据;
时序控制状态机,用于在所述状态监测单元监测到主机已发出了波长调谐指令之后,指示所述数据缓存单元开始缓存数据,以及用于在所述状态监测单元监测到所述可调谐光装置已完成了物理的波长切换之后,指示所述数据缓存单元将所缓存的数据通过AXI-Ethernet接口提供至所述可调谐光装置。
优选地,根据所述控制装置,其中,
所述时序控制状态机,还用于在所述状态监测单元监测到主机已发出了波长调谐指令之后,通过AXI-Ethernet接口向所述可调谐光装置输出读写使能信号以指示其暂停读写数据的功能,以及还用于在所述状态监测单元监测所述可调谐光装置已完成了物理的波长切换之后,通过AXI-Ethernet接口向所述可调谐光装置输出读写使能信号以指示其开启读写数据的功能。
优选地,根据所述控制装置,其中,
所述指令接收缓存单元,还用于在所述时序控制状态机确定主机已发出了波长调谐指令之后,通过AXI-lite接口向所述主机输出暂停发出新的数据的控制信号,以及用于在所述时序控制状态机确定所述可调谐光装置已完成了物理的波长切换之后,通过AXI-lite接口向所述主机输出恢复发出新的数据的控制信号。
优选地,根据所述控制装置,其中,
所述时序控制状态机,还用于在发出指示所述数据缓存单元开始缓存数据的控制信号之后又经过的一时间裕量时,指示所述状态监测单元开始监测所述指令接收缓存单元是否接收到来自所述可调谐光装置的指示其已完成了物理的波长切换的切换完成指示位;其中,所述时间裕量与所述可调谐光装置所采用的光交换器件进行物理波长切换的时间相关。
一种用于可调谐光装置的控制系统,包括可调谐光装置、前述任意一项所述的用于可调谐光装置的控制装置、以及主机,其中:
所述主机通过AXI总线的AXI-lite接口与所述控制装置的指令发送缓存单元连接以提供波长调谐指令,并且通过AXI总线的AXI-lite接口与所述控制装置的指令接收缓存单元连接以获取用于暂停或者恢复发出新的数据的控制信号;并且,
所述AXI总线还通过AXI-stream接口与所述控制装置的数据缓存单元连接,以在主机发出波长调谐指令直到所述可调谐光装置完成了物理的波长切换的时间段内缓存AXI总线上尚未传输的数据;并且,
所述可调谐光装置通过AXI-IIC接口与所述控制装置的指令发送缓存单元连接以接收与所述波长调谐指令对应的波长控制信息,并且通过AXI-IIC接口与所述控制装置的指令接收缓存单元连接以提供切换完成指示位的信号,并且通过AXI-Ethernet接口与所述控制装置的时序控制状态机连接以接收用于暂停或开启读写数据的功能的读写使能信号,并且通过AXI-Ethernet接口与所述控制装置的数据缓存单元连接以接收缓存的数据。
以及,一种用于可调谐光装置的控制方法,包括:
1)在监测到来自主机的波长调谐指令后,缓存当前AXI总线中尚未传输的数据;
2)指示所述可调谐光装置根据所述波长调谐指令进行波长切换;
3)监测所述可调谐光装置的切换完成指示位,在确定所述可调谐光装置已完成了物理的波长切换后,将缓存的尚未传输的数据提供至所述可调谐光装置。
优选地,根据所述控制方法,其中,
步骤2)包括:通过光模块读写使能信号指示所述可调谐光装置暂停读写数据的功能,并且通过AXI-IIC接口向所述可调谐光装置发送进行波长切换的控制信号;
步骤3)包括:在确定所述可调谐光装置已完成了物理的波长切换后,通过光模块读写使能信号指示所述可调谐光装置开启读写数据的功能,并且通过AXI-Ethernet接口将所述缓存的尚未传输的数据提供至所述可调谐光装置。
优选地,根据所述控制方法,其中,
步骤1)包括:在监测到来自主机的波长调谐指令后,指示主机暂停发出新的数据;
步骤3)包括:在完成了将缓存的尚未传输的数据提供至所述可调谐光装置的操作之后,指示主机恢复传输数据的操作。
优选地,根据所述控制方法,其中,
步骤2)还包括:在完成发出所述进行波长切换的控制信号的操作之后又经过的一时间裕量时,开始执行步骤3);其中,所述时间裕量与所述可调谐光装置所采用的光交换器件进行物理波长切换的时间相关。
以及,一种计算机可读存储介质,其中存储有计算机程序,所述计算机程序在被执行时用于实现所述方法。
与现有技术相比,本发明的优点在于:可完成实时的在系统的用户自定义的可调谐光模块波长切换功能;并且,根据本发明的可调谐光装置的控制装置可以直接设置在主机以及可调谐光装置之间,不必对主机以及可调谐光装置进行专门的改造。
可调谐光装置的控制系统中的状态监测单元与数据缓存单元,可以缓存在波长切换过程中持续发送的数据流,持续地判断可调谐光装置波长是否切换完毕,并在切换完成后继续发送,有效防止波长切换过程中高速传输数据发生闪断丢失的问题,有利于降低丢包率,增强网络可靠性与稳定性。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1是现有技术中实现针对可调谐光装置的波长控制机制的示意图;
图2是根据本发明的一个实施例,用于实现对可调谐光装置的控制的装置的示意图;
图3是根据本发明的一个实施例的可调谐光模块控制单元的示意图;
图4是根据本发明的一个实施例的对可调谐光装置进行控制的方法的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作详细说明。
发明人通过研究发现,现有技术在实现针对可调谐光装置的波长调谐时仅做了简单的波长配置。例如图1中所示出地,现行通用的波长控制机制遵循SFF-8431、SFF-8472和SFF-8690协议,其在FPGA内部采用AXI总线,该总线上的波长配置信号转化为AXI-IIC信号之后,通过将配置信息写入可调谐光模块的内部相应的寄存器来改变可调谐光器的波长。来自上位机的信号通过AXI总线连接到AXI-IIC模块和AXI-Ethernet模块,其中波长配置信号采用AXI4-lite总线协议,数据传输信号采用AXI4-stream总线协议。这里的AXI是ARM1996年提出的微控制器总线家族AMBA中的一部分。其中,AXI4-Lite是一个轻量级的地址映射单次传输接口,占用很少的逻辑单元,是一个简单地吞吐量地址映射性通信总线;AXI4-Stream面向高速流数据传输,去掉了地址项,支持无限制的数据突发传输规模。
在图1中,基于AXI-IIC的iic_fpga_sda_io和iic_fpga_scl_io的信号为内部寄存器读写信号。其中,iic_fpga_sda_io为IIC总线双向数据信号,iic_fpga_scl_io为IIC总线双向时钟信号。基于上述两个信号,位于可调谐光模块内部的寄存器可以获得关于读写地址和读写数据的信息。在需要进行波长切换时,通过iic_fpga_sda_io和iic_fpga_scl_io的信号将波长的具体信息按照规定的格式写入可调谐光模块中对应地址的寄存器以完成波长的切换。
然而,根据上述协议,在执行波长切换时,可调谐光模块不能传输数据,即在此阶段光链路会暂时地中断,而通过AXI-Ethernet信号到达可调谐光模块的数据流也会发生丢失。在图1中,基于AXI-Ethernet的signal_detect、tx_fault、tx_disable的信号为光模块状态信号,用于探测可调谐光模块的状态。其中,signal_detect为用于探测光模块的工作状态是否正常,tx_fault用于显示和光模块的数据传输是否正常,tx_disable为数据使能信号,当tx_disable为高时,停止主机端与可调谐光模块端之间的数据传输,反之可以正常地传输数据。txn/p为差分信号格式的数据信号,其是从主机端发往可调谐光模块端的数据信号,rxn/p同样采用差分信号格式,是主机端接收来自可调谐光模块端的数据信号。
对于传统的现有技术而言,当进行波长切换时,AXI-Ethernet模块首先拉高tx_disable信号,使得发送数据无效,直到切换完成后,才由上位机经过FPGA下达继续传输指令,将tx_disable信号置低,继续开始传输数据。在此切换过程中,AXI-Ethernet模块和SFP光模块不对传输数据进行任何处理,来自FPGA-IIC的数据将会丢失。当发生数据时,只能由上层协议进行重传操作,虽然能够保证数据的可达性,但频繁的重传操作会降低传输效率,尤其对于需要经常进行波长切换的场合性能下降更为明显。
如背景技术中所介绍地,传统的可调谐光装置的应用场景中,对于数据传输的速度并没有较高的要求,采用重传的方式便可以克服上述丢包的情况。然而对于一些对于数据的传输速度有较高要求的应用,例如将可调谐光装置应用于数据中心或超算中心的光互连网络时,受到波长切换影响的数据量非常大,致使重传数据的代价很高,并且会严重影响光互连网络的性能,例如直接影响光互连网络拓扑重构的效果。
对此,本发明提供了一种改进的方案。发明人通过研究发现,可以选择在对来自FPGA AXI总线的数据和波长配置信息转换协议之前,通过实施相应的控制方式来避免由波长切换导致的数据丢失。
如图2所示,本发明增加了可调谐光模块控制单元,该图中所示出的各个模块单元均被设置在FPGA上,这是由于在可调谐光装置的应用中,一般情况下都是将可调谐光模块插在FPGA开发板上使用,将AXI-Ethernet、AXI-IIC和可调谐光模块控制单元均设置在FPGA上可以缩短传输距离以保证性能。
并且,如图2所示出地,在本发明中,该可调谐光模块控制单元被设置在FPGA AXI总线与AXI-IIC以及AXI-Ethernet之间。这样设置的原因在于,经过AXI-IIC以及AXI-Ethernet的协议转换之后,协议更加侧重于物理层接口的标准,并且考虑到兼容性的问题,不宜插入过多的逻辑;并且用作FPGA AXI总线的标准,例如PCIE,属于通用的传输接口,其也存在兼容性的问题,不适合在FPGA上用于实现逻辑控制;相比之下,在FPGA AXI总线与AXI-IIC以及AXI-Ethernet之间的位置处,既可以通过FPGA AXI总线获取用于实现控制的信号,又可以在FPGA上实现逻辑功能,非常有利于实现根据本发明的可调谐光模块控制单元。
利用根据本发明的该可调谐光模块控制单元,可以在切换波长的过程中自动地缓存尚未传输的数据,通过主动地来监测可调谐光模块的状态,在可调谐光模块的物理切换完成之后及时地开启数据传输。
图3示出了根据本发明的一个实施例的可调谐光模块控制单元1的模块示意图,包括:指令发送缓存单元11、指令接收缓存单元12、寄存器状态监测单元13、时序控制状态机14、数据缓存单元15。
与根据本发明的可调谐光模块控制单元1连接的主机以及可调谐光模块均未在图3中示出。其中,主机通过FPGA AXI总线的AXI-lite接口与可调谐光模块控制单元1的指令发送缓存单元11和指令接收缓存单元12连接,并且通过FPGA AXI总线的AXI-stream接口与可调谐光模块控制单元1的数据缓存单元15连接。可调谐光模块通过AXI-IIC接口与所述可调谐光模块控制单元1的指令发送缓存单元11、和指令接收缓存单元12连接,并且通过AXI-Ethernet接口与所述可调谐光模块控制单元1的时序控制状态机14、以及数据缓存单元15连接。
下面将介绍图3中各个信号的意义。
其中,AXI-lite为用于地址映射通信总线;AXI-stream为高速数据传输;tx_cache_en当其为高时指令发送缓存单元11开始将缓存数据发送给光模块;rx_cache_en当其为高时指令接收缓存单元12开始将缓存数据发送给主机;tunable_start_state是来自主机的波长切换开始的状态信息;tunable_finish_state是来自光模块的波长切换完成的状态信息;data_cache_on是数据缓存单元开始缓存的使能信号。
参考图3,指令发送缓存单元11,用于通过AXI-lite接口(即用于地址映射通信总线)接收经由FPGA AXI总线的来自主机的波长调谐指令,以及通过AXI-IIC接口向所述可调谐光模块输出与所述波长调谐指令对应的波长控制信息。
指令接收缓存单元12,用于通过AXI-IIC接口接收来自可调谐光模块的切换完成指示位的信号(即图3中的光模块寄存器信息)。所述指令接收缓存单元12,还用于在时序控制状态机14确定主机已发出了波长调谐指令之后,通过AXI-lite接口向所述主机输出暂停发出新的数据的控制信号。所述指令接收缓存单元12,还用于在所述时序控制状态机14确定所述可调谐光模块已完成了物理的波长切换之后,通过AXI-lite接口向所述主机输出恢复发出新的数据的控制信号。例如,由指令接收缓存单元12接收来自时序控制状态机14的rx_cache_en信号,当rx_cache_en为高时,指令接收缓存单元12开始将相应的数据发送给主机,使得主机暂停或者恢复发出新的数据的操作。
状态监测单元13,用于通过tunable_start_state来监测所述指令发送缓存单元11是否接收到来自所述主机的波长调谐指令,以及通过tunable_finish_state来监测所述指令接收缓存单元12是否接收到来自所述可调谐光模块的指示其已完成了物理的波长切换的切换完成指示位。
数据缓存单元15,用于根据来自时序控制状态机14的data_cache_on确定其执行缓存和输出所缓存数据的时间节点,即在主机发出波长调谐指令直到所述可调谐光模块完成了物理的波长切换的时间段内,通过AXI-stream接口缓存FPGA AXI总线上尚未传输的数据。
时序控制状态机14,用于根据tunable_start的信号,在所述状态监测单元13监测到主机已发出了波长调谐指令之后,通过data_cache_on指示所述数据缓存单元15开始缓存数据,以及用于根据tunable_finish的信号,在所述状态监测单元13监测到所述可调谐光模块已完成了物理的波长切换之后,指示所述数据缓存单元15将所缓存的数据通过AXI-Ethernet接口提供至所述可调谐光模块。并且,所述时序控制状态机14,还用于在所述状态监测单元13监测到主机已发出了波长调谐指令之后,通过AXI-Ethernet接口向所述可调谐光模块输出读写使能信号以指示其暂停读写数据的功能,以及还用于在所述状态监测单元13监测所述可调谐光模块已完成了物理的波长切换之后,通过AXI-Ethernet接口向所述可调谐光模块输出读写使能信号以指示其开启读写数据的功能。并且,时序控制状态机14,还用于在发出指示所述数据缓存单元15开始缓存数据的控制信号之后又经过的一时间裕量时,指示所述状态监测单元13开始监测所述指令接收缓存单元12是否接收到来自所述可调谐光装置的指示其已完成了物理的波长切换的切换完成指示位。这里所述的时间裕量与所述可调谐光装置所采用的光交换器件进行物理波长切换的时间相关,其可以是光器件的物理波长切换时间,也可以是基于所述物理波长切换时间而确定,所述物理波长切换时间可以通过可调谐光装置的生产厂商所提供的手册中获得。
如图2所示出地,根据本发明的可调谐光模块控制单元,可以通过FPGA AXI总线以及AXI-IIC和AXI-Ethernet分别连接至主机以及可调谐光模块。其可以在不对主机端以及可调谐光模块端进行改造的情况下,完成上述控制,换句话说,该可调谐光模块控制单元对于主机以及可调谐光模块而言是透明的。根据本发明的可调谐光模块控制单元能够兼容现有的FPGA,例如直接在FPGA上实现所述可调谐光模块控制单元,也可以与现有的Blueswitch project兼容,可以支持诸如SFF-8431、SFF-8472、SFF-8690的协议。
下面将通过一个实施例来介绍根据本发明的上述可调谐光模块控制单元1与主机以及可调谐光模块之间的连接关系。
基于上述可调谐光模块可调谐光模块控制单元1,主机可以通过AXI总线的AXI-lite接口与所述可调谐光模块控制单元1的指令发送缓存单元11连接以提供波长调谐指令,并且通过AXI总线的AXI-lite接口与所述可调谐光模块控制单元1的指令接收缓存单元12连接以获取用于暂停或者恢复发出新的数据的控制信号;并且,
所述AXI总线还通过AXI-stream接口与所述可调谐光模块控制单元1的数据缓存单元15连接,以在主机发出波长调谐指令直到所述可调谐光装置完成了物理的波长切换的时间段内缓存AXI总线上尚未传输的数据;并且,
所述可调谐光装置通过AXI-IIC接口与所述可调谐光模块控制单元1的指令发送缓存单元11连接以接收与所述波长调谐指令对应的波长控制信息,并且通过AXI-IIC接口与所述可调谐光模块控制单元1的指令接收缓存单元12连接以提供切换完成指示位的信号,并且通过AXI-Ethernet接口与所述可调谐光模块控制单元1的时序控制状态机14连接以接收用于暂停或开启读写数据的功能的读写使能信号,并且通过AXI-Ethernet接口与所述可调谐光模块控制单元1的数据缓存单元15连接以接收缓存的数据。
图4示出了根据本发明的一个实施例,采用图3所示出的可调谐光模块控制单元1对可调谐光装置进行控制的方法。
S1:在可调谐光模块控制单元1的状态监测单元13没有监测到指令发送缓存单元11接收到了来自主机的波长调谐控制指令时,采用与图1中所示出的现有技术一致的方式、正常地从主机向可调谐光模块传输数据。
S2:当可调谐光模块控制单元1的状态监测单元13监测到主机发出了需要对可调谐光模块的波长进行调整的波长调谐控制指令之后,继续执行步骤S3,否则重复步骤S1。
S3:可调谐光模块控制单元1的时序控制状态机14向可调谐光模块发出光模块读写使能信号,以指示可调谐光模块暂停读写数据的功能,并且由可调谐光模块控制单元1的数据缓存单元15对AXI-stream中尚未传输的数据进行缓存。
在步骤S3中,还可以由可调谐光模块控制单元1的指令接收缓存单元12通过AXI-lite指示主机暂停传输新的数据,直到随后的步骤S7中,在完成了将数据缓存单元15中的尚未传输的数据传输至可调谐光模块之后,由指令接收缓存单元12指示主机恢复传输新的数据。
S4:可调谐光模块控制单元1的指令发送缓存单元11通过AXI-IIC接口向可调谐光模块发送波长控制信号,例如以波长调谐控制序列的形式进行发送。
在上述步骤S4中,还可以在完成发出所述进行波长切换的控制信号的操作之后又经过的一时间裕量时,继续执行步骤S5。这样做的原因在于,对于现有的绝大多数可调谐光模块而言,其进行物理的波长切换的操作的耗时相对较长,而可调谐光模块控制单元1的频率相对较高,为了节省可调谐光模块控制单元1的指令接收缓存单元12持续地获取可调谐光模块的寄存器状态的信息的操作的消耗,可以相应地等待一时间裕量后继续执行步骤S5。这里的时间裕量可以选择与所述可调谐光装置所采用的光交换器件进行物理波长切换的时间相关的长度。
S5:可调谐光模块控制单元1的指令接收缓存单元12持续地获取可调谐光模块的寄存器状态的信息,具体地,通过监测所述可调谐光模块的切换完成指示位来确定所述可调谐光模块已完成了物理的波长切换。
S6:若可调谐光模块控制单元1的指令接收缓存单元12监测到所述可调谐光模块已完成了物理的波长切换,则继续执行步骤S7,否则执行上述步骤S5。
S7:可调谐光模块控制单元1的时序控制状态机14向可调谐光模块发出光模块读写使能信号,以指示可调谐光模块开启读写数据的功能,并且可调谐光模块控制单元1的数据缓存单元15通过AXI-Ethernet接口将其所缓存的尚未传输的数据提供给可调谐光模块,在数据缓存单元15完成了上述传输之后,通知主机恢复传输新的数据。
上述实施例以图3所提供的具体的可调谐光模块控制单元1为例,介绍了对可调谐光装置进行控制的方法。可以理解,在本发明中,优选地在FPGA上实现可调谐光模块控制单元,以利用现有的支持FPGA的用于可调谐光装置的系统。然而,应当理解,根据本发明的可调谐光模块控制单元的具体结构并不是唯一的,对应的控制方法也不是唯一。只要用于可调谐光装置的控制装置能够实现在可调谐光装置在执行物理的波长切换时,缓存AXI总线中尚未传输的数据,并通过监测可调谐光装置的切换完成指示位以在可调谐光装置完成了波长切换后,将尚未传输的数据提供至可调谐光装置,以防止发生针对高速网络的应用场景由于波长切换而导致丢失数据的情况。
为了更直观的对本发明的内容进行描述,本发明给出一种可调谐光模块的控制方法与系统实施例,用户应用在Linux系统中执行shell脚本下发切换波长的命令,这里以1553.33nm为例,具体的控制流程和方法如下:
控制信息如下:写SFP内部eeprom地址a2h的127byte,负责使能波长切换;写SFP内部eeprom地址a2h的128byte,设置波长切换采用channel形式;写SFP1内部eeprom的132byte,设置初始波长;写SFP1内部eeprom的140byte,设置波长间隔为0.1GHz;写SFP1内部eeprom的144byte,设置channel号为11。
(1)脚本指令通过PCI Express总线传输到片上系统内部的DMA单元中。片上系统基于Net-FPGA Sume实现,内部数据传输采用AXI总线,所有数据和控制信号通过AXI总线传输到可调谐光模块控制单元内,其中控制指令采用AXI-lite传输,数据指令采用AXI-stream传输。
(2)波长控制信号首先到达指令发送缓存单元,当寄存器状态监测单元通过不断监测发现指令发送缓存单元中收到切换命令时,立即将tunable_start指令置高,告诉时序状态控制机要开始波长切换;
(3)收到波长切换指令后,时序状态控制机将TX_disable信号至高,可调谐光模块发送数据的功能关闭,停止数据发送,同时将Data_cache_en信号置为有效,可调谐光模块控制单元的数据缓存单元开始缓存来自上位机持续发送的数据。
(4)指令发送缓存单元中的波长控制控制信息由AXI-IIC模块转换为IIC总线协议格式发送至可调谐光模块,可调谐光模块收到指令后开始进行波长切换。
(5)IIC总线控制单元发送完波长切换指令后,时序控制状态机将rx_chache_en置为有效,图3中的指令缓存单元开始缓存来自可调谐光模块的内部寄存器状态信息,同时寄存器状态监测单元开始不断检测接收缓存单元中可调谐光模块波长切换完成指示位,即SFP1内部eeprom的168byte的第4位是否为低,判断波长切换是否完毕。监测到可调谐光模块切换完成后,寄存器状态监测单元发送tunable_finish信号给时序控制状态机。
(6)收到tunable_finish信号后,时序状态机置高Data_cache_start(图3中添加一个时序状态机发送到数据缓存单元的信号),同时将TX_disable信号释放,可调谐光模块控制单元的数据缓存单元开始将已缓存的数据发送给可调谐光模块。
(7)当缓存数据发送完毕后,可调谐光模块控制单元通过AXI-lite信号通知上位机切换完成,发送数据的功能开启,可调谐光模块以1553.33nm的波长收发链路数据。
本发明的有益效果在于:
1.可调谐光装置的控制可完成实时的在系统的用户自定义的可调谐光模块波长切换功能;根据本发明的可调谐光装置的控制装置可以直接设置在主机以及可调谐光装置之间,不必对主机以及可调谐光装置进行专门的改造;
2.可调谐光装置的控制系统中的状态监测单元与数据缓存单元,可以缓存在波长切换过程中持续发送的数据流,持续地判断可调谐光装置波长是否切换完毕,并在切换完成后继续发送,有效防止波长切换过程中高速传输数据发生闪断丢失的问题,有利于降低丢包率,增强网络可靠性与稳定性。
需要说明的是,上述实施例中介绍的各个步骤并非都是必须的,本领域技术人员可以根据实际需要进行适当的取舍、替换、修改等。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管上文参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.一种用于可调谐光装置的控制装置,包括:
指令发送缓存单元,用于通过AXI-lite接口接收经由AXI总线的来自主机的波长调谐指令,以及通过AXI-IIC接口向所述可调谐光装置输出与所述波长调谐指令对应的波长控制信息;
指令接收缓存单元,用于通过AXI-IIC接口接收来自可调谐光装置的切换完成指示位的信号;
状态监测单元,用于监测所述指令发送缓存单元是否接收到来自所述主机的波长调谐指令,以及监测所述指令接收缓存单元是否接收到来自所述可调谐光装置的指示其已完成了物理的波长切换的切换完成指示位;
数据缓存单元,用于在主机发出波长调谐指令直到所述可调谐光装置完成了物理的波长切换的时间段内,通过AXI-stream接口缓存AXI总线上尚未传输的数据;
时序控制状态机,用于在所述状态监测单元监测到主机已发出了波长调谐指令之后,指示所述数据缓存单元开始缓存数据,以及用于在所述状态监测单元监测到所述可调谐光装置已完成了物理的波长切换之后,指示所述数据缓存单元将所缓存的数据通过AXI-Ethernet接口提供至所述可调谐光装置。
2.根据权利要求1所述的控制装置,其中,
所述时序控制状态机,还用于在所述状态监测单元监测到主机已发出了波长调谐指令之后,通过AXI-Ethernet接口向所述可调谐光装置输出读写使能信号以指示其暂停读写数据的功能,以及还用于在所述状态监测单元监测所述可调谐光装置已完成了物理的波长切换之后,通过AXI-Ethernet接口向所述可调谐光装置输出读写使能信号以指示其开启读写数据的功能。
3.根据权利要求1或2所述的控制装置,其中,
所述指令接收缓存单元,还用于在所述时序控制状态机确定主机已发出了波长调谐指令之后,通过AXI-lite接口向所述主机输出暂停发出新的数据的控制信号,以及用于在所述时序控制状态机确定所述可调谐光装置已完成了物理的波长切换之后,通过AXI-lite接口向所述主机输出恢复发出新的数据的控制信号。
4.根据权利要求1或2所述的控制装置,其中,
所述时序控制状态机,还用于在发出指示所述数据缓存单元开始缓存数据的控制信号之后又经过的一时间裕量时,指示所述状态监测单元开始监测所述指令接收缓存单元是否接收到来自所述可调谐光装置的指示其已完成了物理的波长切换的切换完成指示位;其中,所述时间裕量与所述可调谐光装置所采用的光交换器件进行物理波长切换的时间相关。
5.一种用于可调谐光装置的控制系统,包括可调谐光装置、如权利要求1-4中任意一项所述的用于可调谐光装置的控制装置、以及主机,其中:
所述主机通过AXI总线的AXI-lite接口与所述控制装置的指令发送缓存单元连接以提供波长调谐指令,并且通过AXI总线的AXI-lite接口与所述控制装置的指令接收缓存单元连接以获取用于暂停或者恢复发出新的数据的控制信号;并且,
所述AXI总线还通过AXI-stream接口与所述控制装置的数据缓存单元连接,以在主机发出波长调谐指令直到所述可调谐光装置完成了物理的波长切换的时间段内缓存AXI总线上尚未传输的数据;并且,
所述可调谐光装置通过AXI-IIC接口与所述控制装置的指令发送缓存单元连接以接收与所述波长调谐指令对应的波长控制信息,并且通过AXI-IIC接口与所述控制装置的指令接收缓存单元连接以提供切换完成指示位的信号,并且通过AXI-Ethernet接口与所述控制装置的时序控制状态机连接以接收用于暂停或开启读写数据的功能的读写使能信号,并且通过AXI-Ethernet接口与所述控制装置的数据缓存单元连接以接收缓存的数据。
6.一种用于可调谐光装置的控制方法,包括:
1)在监测到来自主机的波长调谐指令后,缓存当前AXI总线中尚未传输的数据;
2)指示所述可调谐光装置根据所述波长调谐指令进行波长切换;
3)监测所述可调谐光装置的切换完成指示位,在确定所述可调谐光装置已完成了物理的波长切换后,将缓存的尚未传输的数据提供至所述可调谐光装置。
7.根据权利要求6所述的控制方法,其中,
步骤2)包括:通过光模块读写使能信号指示所述可调谐光装置暂停读写数据的功能,并且通过AXI-IIC接口向所述可调谐光装置发送进行波长切换的控制信号;
步骤3)包括:在确定所述可调谐光装置已完成了物理的波长切换后,通过光模块读写使能信号指示所述可调谐光装置开启读写数据的功能,并且通过AXI-Ethernet接口将所述缓存的尚未传输的数据提供至所述可调谐光装置。
8.根据权利要求6或7所述的控制方法,其中,
步骤1)包括:在监测到来自主机的波长调谐指令后,指示主机暂停发出新的数据;
步骤3)包括:在完成了将缓存的尚未传输的数据提供至所述可调谐光装置的操作之后,指示主机恢复传输数据的操作。
9.根据权利要求6或7所述的控制方法,其中,
步骤2)还包括:在完成发出所述进行波长切换的控制信号的操作之后又经过的一时间裕量时,开始执行步骤3);其中,所述时间裕量与所述可调谐光装置所采用的光交换器件进行物理波长切换的时间相关。
10.一种计算机可读存储介质,其中存储有计算机程序,所述计算机程序在被执行时用于实现如权利要求6-9中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810795776.5A CN108966056B (zh) | 2018-07-19 | 2018-07-19 | 一种用于可调谐光装置的控制装置与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810795776.5A CN108966056B (zh) | 2018-07-19 | 2018-07-19 | 一种用于可调谐光装置的控制装置与方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108966056A true CN108966056A (zh) | 2018-12-07 |
CN108966056B CN108966056B (zh) | 2020-09-25 |
Family
ID=64481847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810795776.5A Active CN108966056B (zh) | 2018-07-19 | 2018-07-19 | 一种用于可调谐光装置的控制装置与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108966056B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111342900A (zh) * | 2020-01-17 | 2020-06-26 | 武汉联特科技有限公司 | 波长可调谐光模块及其自动切波方法 |
CN111934780A (zh) * | 2020-10-19 | 2020-11-13 | 鹏城实验室 | 光通信发射机、光通信接收机以及光通信系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103326236A (zh) * | 2013-06-19 | 2013-09-25 | 华中科技大学 | 一种半导体激光器调制驱动系统 |
US8792787B1 (en) * | 2012-07-19 | 2014-07-29 | Google Inc. | Optoelectronic packet switch/routers |
CN203912204U (zh) * | 2014-03-14 | 2014-10-29 | 中国人民解放军第三军医大学第二附属医院 | 通信信道自动切换控制装置 |
CN106656844A (zh) * | 2016-11-25 | 2017-05-10 | 北京邮电大学 | 一种支持服务等级的pon口负载均衡方法及装置 |
-
2018
- 2018-07-19 CN CN201810795776.5A patent/CN108966056B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8792787B1 (en) * | 2012-07-19 | 2014-07-29 | Google Inc. | Optoelectronic packet switch/routers |
CN103326236A (zh) * | 2013-06-19 | 2013-09-25 | 华中科技大学 | 一种半导体激光器调制驱动系统 |
CN203912204U (zh) * | 2014-03-14 | 2014-10-29 | 中国人民解放军第三军医大学第二附属医院 | 通信信道自动切换控制装置 |
CN106656844A (zh) * | 2016-11-25 | 2017-05-10 | 北京邮电大学 | 一种支持服务等级的pon口负载均衡方法及装置 |
Non-Patent Citations (3)
Title |
---|
SFF COMMITTEE: "SFF-8690 Rev 1.4:Tunable SFP+ Memory Map for ITU Frequencies", 《HTTP://WWW.SNIA.ORG/SFF/SPECIFICATIONS》 * |
刘森,倪屹,曹宝丽,曾盼: "基于REC技术的可调谐激光器模块", 《激光与红外》 * |
吕辉,余永林,黄德修,舒坦: "可调谐半导体激光器的动态波长切换控制", 《华中科技大学学报(自然科学版)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111342900A (zh) * | 2020-01-17 | 2020-06-26 | 武汉联特科技有限公司 | 波长可调谐光模块及其自动切波方法 |
CN111934780A (zh) * | 2020-10-19 | 2020-11-13 | 鹏城实验室 | 光通信发射机、光通信接收机以及光通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108966056B (zh) | 2020-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8127059B1 (en) | Apparatus for interconnecting hosts with storage devices | |
US9292460B2 (en) | Versatile lane configuration using a PCIe PIE-8 interface | |
TWI515577B (zh) | 用於裝置中的單元之間通訊的方法及介面 | |
US8346998B2 (en) | System and method for transmitting data packets in a computer system having a memory hub architecture | |
CN110941576B (zh) | 具有多模pcie功能的存储控制器的系统、方法和设备 | |
JP2009537883A (ja) | 自動計算機のためのメモリ・システム | |
US11265400B2 (en) | Multimode interconnection interface controller for converged network | |
CN108966056A (zh) | 一种用于可调谐光装置的控制装置与方法 | |
CN103942014A (zh) | Fc-ae-1553协议接口卡存储器映射装置及存储器映射方法 | |
WO2003056775A1 (fr) | Moyen et procede de commande permettant d'adapter differents supports de liaison de transmission de reseau a une couche physique | |
CN112214445A (zh) | RapidIO交换网络数据速率可重配置硬件电路 | |
CN115589342A (zh) | 一种sas控制器的功耗管理方法 | |
CN114443170B (zh) | Fpga动态并行加卸载系统 | |
JP2005339323A (ja) | ストレージシステム、計算機システムおよびインタフェースモジュール | |
US11940942B2 (en) | Peripheral component interconnect express interface device and operating method thereof | |
US20030126344A1 (en) | Transparent fibre channel concentrator for point to point technologies | |
WO2017059822A1 (zh) | 一种芯片间的通信方法、系统及计算机存储介质 | |
CN115695089A (zh) | 一种实现数据转发的方法、系统及桥接设备 | |
US20220012202A1 (en) | Dynamic functional input/output (io) device interface selection through power state transitions | |
US10891242B2 (en) | Embedded USB2 (eUSB2) repeater operation | |
CN110519137A (zh) | 转接装置 | |
CN115827532B (zh) | 一种PCIe HBA IOC内部总线网络互联方法 | |
US20240104035A1 (en) | Peripheral component interconnect express device and operating method thereof | |
CN114546913B (zh) | 一种基于pcie接口的多主机之间数据高速交互的方法和装置 | |
WO2023236847A1 (zh) | 路径恢复方法、装置、设备、系统及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |