管理光模块的使能状态的方法和装置与流程

文档序号:12621571阅读:5179来源:国知局
管理光模块的使能状态的方法和装置与流程

本发明涉及通信领域,尤其涉及一种管理光模块的使能状态的方法和装置。



背景技术:

TXDISABLE即光模块发送关闭使能,TXDISABLE功能是直接控制光模块信号发送开关,当TXDISABLE=1时,光模块发送关闭使能有效,光模块激光器关闭,光口不对外发送光信号,当TXDISABLE=0时,光模块发送关闭使能无效,光模块激光器打开,光口正常对外发送光信号。通常在光模块产品中,其对外电路接口中都有设计一个TXDISABLE引脚,在通信电路设计中系统通过监控和控制该TXDISABLE引脚的电平值来获取光模块发光状态,并可操作该TXDISABLE引脚的电平状态来实现控制光模块的光口开关功能。

随着通信传输技术的飞速发展,40G/100G光接口标准和可插拔光模块标准的完成,40G和100G的光模块逐步进入市场。由于速率快,封装小,功耗低等优点,40G的QSFP+光模块迅速发展起来,其在高速通信系统中应用也越来越多。然而因封装的减小,QSFP(Quad Small Form-factor Pluggable,四通道小型可插拔)+光模块封装结构中没有设计TXDISABLE引脚,而是将其TXDISABLE状态内置到光模块内部TXDISABLE寄存器中了,并需要通过外部IIC总线去访问和操作该寄存器来实现获取和控制QSFP+光模块的TXDISABLE状态,这导致系统不能像其它光模块般直接调用通用接口来监控和操作QSFP+光模块TXDISABLE引脚来实现控制QSFP+光模块的光口开关功能,达到系统控制QSFP+光模块通信的功能。



技术实现要素:

本发明提供一种管理光模块的使能状态的方法和装置,要解决的技术问题是如何对QSFP+光模块的TXDISABLE引脚的使能状态进行管理。

为解决上述技术问题,本发明提供了如下技术方案:

一种管理光模块的使能状态的方法,包括:

当接收到管理请求时,获取寄存器记录的使能信息,其中所述寄存器用于模拟四通道小型可插拔QSFP+光模块的光模块发送关闭功能;

根据接收的管理请求,管理所述寄存器中记录的使能信息;

如果所述使能信息发生变化,则向所述QSFP+光模块发送所述使能信息。

其中,所述获取寄存器中的使能信息之前,所述方法还包括:

设置所述寄存器中使能信息的初始值为1。

其中,所述使能信息是否发生变化是通过如下方式得到的,包括:

检测所述寄存器中使能信息对应的电平状态;

当检测到所述寄存器的电平状态发生变化时,确定所述光模块发送关闭功能的使能信息发生变化。

其中,向所述QSFP+光模块发送所述使能信息,包括:

生成写操作信号,其中所述写操作信号用于更改所述QSFP+光模块内光模块关闭功能的使能状态;

通过集成电路总线IIC向所述QSFP+光模块发送所述写操作信号。

其中,向所述QSFP+光模块发送所述使能信息之前,所述方法包括:

检测所述IIC总线是否被占用;和/或,

检测是否正在向所述QSFP+光模块发送所述使能信息。

一种管理光模块的使能状态的装置,所述装置与QSFP+光模块相连,其中所述装置包括:

第一寄存器,用于模拟QSFP+光模块的光模块发送关闭功能,并记录所述光模块发送关闭功能的使能信息;

处理器,用于当接收到管理请求时,根据接收的管理请求,管理所述寄存器中的使能信息;如果所述使能信息发生变化,则向所述QSFP+光模块发送所述使能信息。

其中所述处理器,还用于设置所述第一寄存器中使能信息的初始值为1。

其中,所述使能信息是否发生变化是通过如下方式得到的,包括:

检测第一寄存器中使能信息对应的电平状态;

当检测到第一寄存器的电平状态发生变化时,则确定所述光模块发送关闭功能的使能信息发生变化。

其中,所述处理器,具体用于生成写操作信号,并通过IIC总线向所述QSFP+光模块发送所述写操作信号,其中所述写操作信号用于更改所述QSFP+光模块内光模块关闭功能的使能状态。

其中,所述装置还包括:

第一子保护寄存器,用于记录IIC总线是否被占用的信息,其中数值0表示IIC总线未被占用,其中数值1表示IIC总线被占用;

第二子保护寄存器,用于记录所述处理器是否正在向所述QSFP+光模块内的光模块发送关闭引脚对应的寄存器发送所述写操作信号,其中数值0表示所述处理器没有发送所述写操作信号,数值1表示所述处理器正在发送所述写操作信号;

总保护寄存器,用于对所述第一子保护寄存器和第二子保护寄存器内的数值进行或操作,得到计算结果;

所述处理器,用于如果计算结果为0,则发送所述写操作信号;如果计算结果为1,停止发送所述写操作信号,其中所述写操作信号用于更改所述QSFP+光模块内光模块关闭功能的使能状态。

其中,所述第一子保护寄存器和第二子保护寄存器的数值的初始值均为 0。

本发明提供的实施例,能够模拟出QSFP+光模块的TXDISABLE引脚,使得QSFP+光模块也能与其它通用光模块一样,调用通用系统接口即可实现QSFP+光模块的光口开关功能。本发明采用全硬件电路的实现,实现方法简单易操作且工作稳定,不需要系统上的额外处理,就使得QSFP+光模块能与其它光模块一样正常使用TXDISABLE功能,提高了整个系统的工作效率,也同时方便了系统上的统一管理和维护。

附图说明

图1为本发明提供的管理光模块的使能状态的装置的结构图;

图2为本发明提供的管理光模块的使能状态的方法的流程图;

图3为本发明提供的QSFP+光模块初始化流程示意图;

图4为本发明提供的系统获取QSFP+光模块TXDISABLE状态的示意图;

图5为本发明提供的系统操作QSFP+光模块TXDISABLE状态的示意图;

图6为本发明提供的逻辑自动操作IIC总线写QSFP+光模块内部TXDISABLE寄存器示意图;

图7为本发明提供的系统操作IIC总线读写QSFP+光模块内部寄存器的示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步的详细描述。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

图1为本发明提供的管理光模块的使能状态的装置的结构图。其中所述 装置与QSFP+光模块相连,其中所述装置包括:

第一寄存器101,用于模拟QSFP+光模块的光模块发送关闭功能,并记录所述光模块发送关闭功能的使能信息;

处理器102,用于当接收到管理请求时,根据接收的管理请求,管理所述寄存器中的使能信息;如果所述使能信息发生变化,则向所述QSFP+光模块发送所述使能信息。

本发明提供的装置实施例,利用第一寄存器模拟QSFP+光模块的TXDISABLE引脚,使得QSFP+光模块也能与其它通用光模块一样,调用通用系统接口即可实现QSFP+光模块的光口开关功能,本发明采用全硬件电路的实现,实现方法简单易操作且工作稳定,不需要系统上的额外处理,就使得QSFP+光模块能与其它光模块一样正常使用TXDISABLE功能,提高了整个系统的工作效率,也同时方便了系统上的统一管理和维护。

下面对本发明提供的装置作进一步说明:

本发明的基本思想在于:通过在逻辑器件中,利用第一寄存器来模拟QSFP+光模块的TXDISABLE引脚功能,系统通过读取该第一寄存器的值便可以直接得知QSFP+光模块内部TXDISABLE的状态。同时,通过更改第一寄存器的值,再通过IIC总线将相应的TXDISABLE状态表征数值写入到QSFP+光模块内部TXDISABLE寄存器,从而实现系统操作光模块TXDISABLE状态的切换功能。

具体的,在逻辑器件中设置一个寄存器,该寄存器属性为可读可写,作为模拟QSFP+光模块TXDISABLE引脚电平状态来使用。此处命名为第一寄存器,并根据常规的光模块TXDISABLE引脚功能,可定义当该第一寄存器的值为0时,表明TXDISABLE无效,QSFP+光模块光口打开正常发光,当该第一寄存器的值为1时,表明TXDISABLE有效,QSFP+光模块光口关闭不发光。系统可以通过读取该第一寄存器的值来得知QSFP+光模块的TXDISABLE状态。系统需要操作光模块TXDISALBE状态时,只需要操作逻辑器件中的第一寄存器的值即可。

其中,所述处理器,还用于设置所述寄存器中使能信息的初始值为1。

具体的,在QSFP+光模块初始化流程中,根据光模块通用处理原则,系统将第一寄存器的值写为1,并将QSFP+内部TXDISABLE寄存器(地址为0d86)值写入0x0f,即光模块默认是处于TXDISABLE有效状态,待初始化完成后,根据系统需要在实现切换TXDISABLE状态。

所述使能信息是否发生变化是通过如下方式得到的,包括:检测寄存器中使能信息对应的电平状态;当检测到该第一寄存器的电平状态有变化时,则确定所述使能信息发生变化。

具体的,所述光模块发送关闭功能的使能状态包括两个状态,分别为0和1来表示,因此只要记录使能信息的电平状态发生变化,就可确定使能信息发生变化。

其中,所述处理器,具体用于生成写操作信号,并通过集成电路总线(Inter-Integrated Circuit,IIC)向所述QSFP+光模块发送所述写操作信号,其中所述写操作信号用于更改所述QSFP+光模块内光模块关闭功能的使能状态。

具体的,QSFP+光模块正常工作时,逻辑器件内部以高速频率不断扫描检测第一寄存器的电平状态,当检测到该第一寄存器的电平状态有变化时,逻辑器件产生一个写脉冲,自动激发IIC总线并操作一次写光模块内部的TXDISABLE寄存器至系统所需的TXDISABLE状态。对于第一寄存器的电平状态由0至1的上升沿跳变时,逻辑器件自动激发将0x0f通过自动IIC写模块写入到光模块内部的TXDISABLE寄存器,对于第一寄存器的电平状态有1至0的下降沿跳变时,逻辑器件则自动激发将0x00通过自动IIC写模块写入到光模块内部的TXDISABLE寄存器。

进一步的,为了防止本装置使用光模块IIC总线和系统使用IIC总线的的冲突错乱,增加相应的总保护寄存器、第一子保护寄存器和第二子保护寄存器,通过增加上述用于实现保护功能的寄存器,有效保证QSFP+光模块的TXDISABLE引脚功能的正常应用。具体说明如下:

所述装置还包括:

第一子保护寄存器,用于记录IIC总线是否被占用的信息,其中数值0 表示IIC总线未被占用,其中数值1表示IIC总线被占用;

第二子保护寄存器,用于记录所述处理器是否正在向所述QSFP+光模块内的光模块发送关闭引脚对应的寄存器发送所述写操作信号,其中数值0表示所述处理器没有发送所述写操作信号,数值1表示所述处理器正在发送所述写操作信号;

总保护寄存器,用于对所述第一子保护寄存器和第二子保护寄存器内的数值进行或操作,得到计算结果;

所述处理器,用于如果计算结果为0,则发送所述写操作信号;如果计算结果为1,停止发送所述写操作信号。

具体的,逻辑器件中增加三个保护寄存器,分别为总保护寄存器、第一子保护寄存器和第二子保护寄存器。其中总保护寄存器的值B为第一保护寄存器的值B1和第二子保护寄存器的值B2进行或运算得到的,即B=B1orB2,其中B1和B2均可读可写,B只可读。当第一子保护寄存器和第二子保护寄存器中任何一个起保护功能时,则总保护寄存器有效。

其中,所述第一子保护寄存器和第二子保护寄存器的数值的初始值均为0。

具体的,在光模块初始化时,系统将第一子保护寄存器和第二子保护寄存器的值均写为0,即三个保护寄存器的值均默认为0,即无保护作用。

下面对上述三个寄存器的作用进行说明:

第一子保护寄存器用于表明逻辑器件是否正在自动激发IIC写操作,防止逻辑器件处于自动IIC操作光模块内部的TXDISABLE寄存器过程时,系统又突然异常操作写第一寄存器的值,导致第一寄存器的电平状态值与实际的光模块TXDISABLE状态对应关系错误。当总保护寄存器的值为1时,表明光模块的I IC总线正在使用,此时不允许系统在操作写第一寄存器的值,即使系统误操作,由于第一子保护寄存器的作用,使得系统写操作第一寄存器的操作无效;当总保护寄存器的值为0时,表明光模块IIC总线空闲,能够使用,此时系统可以随时操作第一寄存器的值,来实现切换QSFP+光模块的TXDISABLE状态。因此,在使用光模块IIC总线时,先将第一子保护寄 存器的值置为1,表明已经占据了光模块的IIC总线,然后再进行写光模块内部TXDISABLE寄存器的操作。待逻辑器件执行操作完毕后,再将第一保护寄存器置为0,逻辑器件释放IIC总线。

其中第二子保护寄存器用于表明系统是否正在占用IIC总线,防止出现系统和逻辑器件同时占用IIC总线,导致IIC总线冲突。系统通过IIC总线操作访问光模块内部寄存器时,首先读取总保护寄存器的值,当总保护寄存器B的值为1时,表明光模块IIC总线正在使用,不允许系统通过IIC总线操作访问光模块内部寄存器;如果此时系统发起了IIC总线操作访问光模块内部寄存器命令,则上报IIC BUSY错误告知系统;当总保护寄存器的值为0时,表明光模块IIC总线空闲可使用,则系统可以正常通过IIC总线操作访问光模块内部寄存器。因此,系统使用IIC总线操作光模块内部寄存器时,先将第二子保护寄存器的值置为1,表明系统正在占据光模块IIC总线,然后系统执行IIC总线操作光模块内部寄存器,待系统IIC总线操作执行完毕后,又重新将第二子保护寄存器的值置回为0,系统释放IIC总线。

图2为本发明提供的管理光模块的使能状态的方法的流程图。图2所示方法包括:

步骤201、当接收到管理请求时,获取寄存器记录的使能信息,其中所述寄存器用于模拟QSFP+光模块的光模块发送关闭功能;

步骤202、根据接收的管理请求,管理所述寄存器中记录的使能信息;

步骤203、如果所述使能信息发生变化,则向所述QSFP+光模块发送所述使能信息。

本发明提供的方法实施例,能够模拟出QSFP+光模块的TXDISABLE引脚,使得QSFP+光模块也能与其它通用光模块一样,调用通用系统接口即可实现QSFP+光模块的光口开关功能,本发明采用全硬件电路的实现,实现方法简单易操作且工作稳定,不需要系统上的额外处理,就使得QSFP+光模块能与其它光模块一样正常使用TXDISABLE功能,提高了整个系统的工作效率,也同时方便了系统上的统一管理和维护。

其中,所述获取寄存器中用于记录QSFP+光模块的光模块发送关闭的引脚的使能信息之前,所述方法还包括:

设置所述寄存器中使能信息的初始值为1。

其中,所述使能信息是否发生变化是通过如下方式得到的,包括:

检测所述寄存器中使能信息对应的电平状态;

当检测到该寄存器的电平状态发生变化时,确定所述光模块发送关闭功能的使能信息发生变化。

其中,向所述QSFP+光模块发送所述使能信息,包括:

生成写操作信号,其中所述写操作信号用于更改所述QSFP+光模块内光模块关闭功能的使能状态;

通过IIC总线向所述QSFP+光模块内的光模块发送关闭引脚对应的寄存器发送所述写操作信号。

其中,向所述QSFP+光模块的光模块发送关闭的引脚发送所述使能信息之前,所述方法包括:

检测所述IIC总线是否被占用;和/或,

检测是否正在向所述QSFP+光模块的光模块发送关闭的引脚发送所述使能信息。

本发明提供的装置实施例,利用第一寄存器模拟QSFP+光模块的TXDISABLE引脚,使得QSFP+光模块也能与其它通用光模块一样,调用通用系统接口即可实现QSFP+光模块的光口开关功能,本发明采用全硬件电路的实现,实现方法简单易操作且工作稳定,不需要系统上的额外处理,就使得QSFP+光模块能与其它光模块一样正常使用TXDISABLE功能,提高了整个系统的工作效率,也同时方便了系统上的统一管理和维护。

下面对本发明提供的方法实施例作进一步说明:

图3为本发明提供的QSFP+光模块初始化流程图。其详细流程为:

(1)QSFP+光模块正常上电后,先将QSFP+光模块解复位,即将其 RESET引脚电平拉高。通常光模块上电时默认配置为复位状态。

(2)将QSFP+光模块MODSEL引脚和LPMODE引脚拉低。MODSEL拉低的目的是让QSFP+光模块对IIC总线响应,LPMODE拉低的目的是让QSFP+光模块处于正常工作模式下。

(3)延时2s。根据SFF 8436协议,QSFP+光模块完成解复位过程最大需要2s时间,此处延时2s使得光模块充分完成解复位。

(4)系统通过IIC总线将QSFP+光模块内部的TXDISABLE寄存器(地址为0d86)写为0x0f,将逻辑器件中的第一寄存器的值写为1,目的是为了让光模块先默认处于TXDISABLE使能状态,即光模块光口关闭状态。

(5)将第一子保护寄存器和第二子保护寄存器的值均写为0,初始默认不保护状态。

由上可以看出,通过上述初始化流程,可以保证后续管理的正确执行。

本发明中系统可以随时读取QSFP+光模块的TXDISABLE状态,系统读取光模块TXDISABLE状态。如图4所示,当系统需要获取QSFP+光模块TXDISABLE状态时,只需要去读取逻辑器件中定义的第一寄存器的值,当第一寄存器的值为1时,表明当前QSFP+光模块的TXDISABLE有效,处于发送关闭,光口关闭状态;当第一寄存器的值为0时,表明当前QSFP+光模块的TXDISABLE无效,处于发送使能,光口打开状态。

本发明中,系统可以操作QSFP+光模块的TXDISABLE状态,系统操作QSFP+光模块的TXDISABLE状态分为两大过程,分别是系统操作第一寄存器的值,逻辑器件扫描检测到第一寄存器的值发生变化后,自动激发光模块IIC总线,将最新的系统所需TXDISABLE状态值写入到光模块TXDISABLE寄存器中,两大过程流程示意图分别如图5和图6所示。

(1)系统是否需要操作QSFP+光模块的TXDISABLE状态,即系统是否需要写第一寄存器的值,如是则进入步骤(2),否则停留在步骤(1)。

(2)逻辑自动读取总保护寄存器的值,如果总保护寄存器的值为1,则进入步骤(3),否则如果总保护寄存器的值为0,则进入步骤(4)

(3)当前QSFP+光模块总线正在使用,不允许系统写第一寄存器的值,系统操作无效,第一寄存器值保持不变,系统操作完毕,退回到步骤(1)。

(4)当前QSFP+光模块总线空闲,允许系统写第一寄存器的值,系统操作有效,第一寄存器的值写为系统所需要的值。如果第一寄存器的值发生改变,即光模块的TXDISABLE状态有变化,则会被逻辑自动扫描检测到,并进入步骤(5),否则如果TXDISABLE状态未有变化,不需要逻辑自动激发IIC总线写光模块内部TXDISABLE寄存器,退回到步骤(1)。

(5)逻辑自动将保护寄存器B1置1,并判断第一寄存器的值变化情况,如果第一寄存器的值由0变为1,则逻辑将待写入光模块内部TXDISABLE寄存器的临时变量置为0x0f,否则逻辑将临时变量置为0x0。

(6)逻辑自动激发光模块IIC总线,通过自动IIC写模块,将临时变量的值写入到光模块内部TXDISABLE寄存器。

(7)逻辑IIC总线执行完毕后,逻辑再将第一子保护寄存器的值置回为0,流程结束,等待下一次系统操作流程。

本发明中,系统亦可以正常操作QSFP+光模块内部寄存器,系统操作QSFP+光模块内部寄存器的流程示意图如图7所示。

(1)系统是否需要操作光模块内部寄存器,如是则进入步骤(2),否则停留在步骤(1)直到系统有相应操作需求。

(2)系统读取保护寄存器B的值,并判断是否为1,如是则进入到步骤(3),否则进入到步骤(4)。

(3)QSFP+光模块IIC总线当前正在使用中,暂不能使用,上报IIC_BUSY错误告知系统,并退回到步骤(1)。

(4)QSFP+光模块IIC总线空闲中,系统可以使用,系统先将第二子保护寄存器的值置为1,表明系统占用IIC总线。

(5)系统使用IIC总线执行操作QSFP+光模块内部寄存器命令。

(6)系统执行完毕后,系统将在第二子保护寄存器的值置回为0,流程操作结束,等待下一次操作流程。

综上可以看出,通过在逻辑器件中,定义一个第一寄存器来模拟QSFP+光模块的TXDISABLE引脚功能,系统通过读取该第一寄存器的值便可以直接得知QSFP+光模块内部TXDISABLE的状态。同时,系统操作第一寄存器值变化时,逻辑器件自动激发光模块IIC总线,将相应的TXDISABLE状态表征数值写入到QSFP+光模块内部TXDISABLE寄存器,从而实现系统操作光模块TXDISABLE状态的切换功能。为了防止逻辑器件使用光模块IIC总线和系统使用IIC总线的的冲突错乱,增加相应的总保护寄存器、第一子保护寄存器和第二子保护寄存器,增添少量的保护流程,保证QSFP+光模块的TXDISABLE引脚功能的正常应用。

本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。

可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。

上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1