CN109446154A - 光模块监控系统和方法 - Google Patents
光模块监控系统和方法 Download PDFInfo
- Publication number
- CN109446154A CN109446154A CN201811275496.8A CN201811275496A CN109446154A CN 109446154 A CN109446154 A CN 109446154A CN 201811275496 A CN201811275496 A CN 201811275496A CN 109446154 A CN109446154 A CN 109446154A
- Authority
- CN
- China
- Prior art keywords
- optical module
- interface
- target
- host
- address
- 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.)
- Pending
Links
- 230000003287 optical effect Effects 0.000 title claims abstract description 366
- 238000012544 monitoring process Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000004891 communication Methods 0.000 claims abstract description 88
- 230000004044 response Effects 0.000 claims description 28
- 230000005540 biological transmission Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 7
- 238000003745 diagnosis Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7825—Globally asynchronous, locally synchronous, e.g. network on chip
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Optical Communication System (AREA)
Abstract
本申请涉及一种光模块监控系统和方法。所述系统包括:I2C主机、可编程逻辑器件,所述可编程逻辑器件包括一个第一I2C接口以及多个第二I2C接口,所述I2C主机基于所述第一I2C接口,并通过一组两线式串行I2C总线和所述可编程逻辑器件连接,一个第二I2C接口通过一组I2C总线连接一个光模块;所述I2C主机用于通过所述可编程逻辑器件选通所述第一I2C接口和目标光模块对应的目标I2C接口,通过所述第一I2C接口和所述目标I2C接口向所述目标光模块的内存中写入目标地址,并接收所述目标光模块返回的所述目标地址中存储的状态参数。采用本系统能够通过简单的通信逻辑可扩展性地实现多个光模块的高效监控,具有极高的实用性。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种光模块监控系统和方法。
背景技术
随着数字技术和光纤通信技术的发展,数字光模块被大量的应用于通信系统中,因此光模块的运行状态的监控需求被提上日程,以便于现场和远程分析光通信故障和通信质量。随着SFF Committee(小外形规格委员会)SFF-8472协议的发布,众多的光模块厂商相继推出支持该协议的光模块,为光模块的实时监控提供了技术基础。
SFF-8472规定所有支持该协议的光模块运用I2C总线接口通信。在I2C接口通信中,规定总线通信接口各方分为I2C主机和I2C从机,并且一条I2C总线上只能有一台主机,其他都是从机。主机和总线上的某一台从机通信,必须知道该从机在该总线上的通信地址,否则无法通信。但是,SFF-8472规定了所有具有数字诊断功能的光模块I2C通信地址是一致的;因此,在一种传统技术中,每一个光模块对应一组I2C总线(时钟线和数据线),各组I2C总线可以与主机的各I2C接口连接,主机可以依次轮询各I2C接口对应的光模块,获取该光模块的状态参数,相应地,要求主机有大量的硬件I2C接口。
然而,主机一般具有有限的I2C接口(2~3个),其在光模块过多的场景下难以实现更多个光模块的状态监控。
发明内容
基于此,有必要针对上述技术问题,提供一种可扩展地能够实现更多个光模块的状态监控的光模块监控系统和方法。
一种光模块监控系统,所述系统包括:I2C主机、可编程逻辑器件,所述可编程逻辑器件包括一个第一I2C接口以及多个第二I2C接口,所述I2C主机基于所述第一I2C接口,并通过一组两线式串行总线I2C总线和所述可编程逻辑器件连接,一个第二I2C接口通过一组I2C总线连接一个光模块;
所述I2C主机用于通过所述可编程逻辑器件选通所述第一I2C接口和目标光模块对应的目标I2C接口,通过所述第一I2C接口和所述目标I2C接口向所述目标光模块的内存中写入目标地址,并接收所述目标光模块返回的所述目标地址中存储的状态参数。
在其中一个实施例中,所述I2C主机包括:地址选择模块和I2C接口模块,所述可编程逻辑器件还包括:地址仲裁模块;所述地址选择模块和所述地址仲裁模块通过地址线连接,所述I2C接口模块和所述第一I2C接口通过一组I2C总线连接;
所述地址选择模块,用于根据目标光模块的标识和预设地址线编码规则,确定所述目标光模块对应的地址线编码,并发送给所述地址仲裁模块;
所述地址仲裁模块,用于根据接收到的地址线编码确定所述目标光模块,并选通所述第一I2C接口和所述目标光模块对应的目标I2C接口;
所述I2C接口模块,用于根据光模块通信协议生成光模块诊断通信报文,并发送至所述第一I2C接口,以及接收所述第一I2C接口转发的所述目标光模块的状态参数;所述光模块诊断通信报文至少包括光模块通信地址和所述目标地址;
所述第一I2C接口,用于接收所述光模块诊断通信报文,并通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块针对所述光模块诊断通信报文返回的所述目标地址中存储的状态参数,并转发给所述I2C接口模块。
在其中一个实施例中,所述可编程逻辑器件为现场可编程门阵列FPGA。
在其中一个实施例中,所述I2C主机包括上位机接口,所述上位机接口包括以下接口中的至少一种:以太网接口、RS232接口。
一种光模块监控方法,所述光模块监控方法应用于上述的光模块监控系统中,包括:
所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口;
所述I2C主机通过所述第一I2C接口和所述目标I2C接口,向所述目标光模块的内存中写入目标地址;
所述I2C主机通过所述第一I2C接口和所述目标I2C接口,接收所述目标光模块返回的所述目标地址中存储的状态参数。
在其中一个实施例中,所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口,包括:
所述I2C主机根据目标光模块的标识和预设地址线编码规则,确定所述目标光模块对应的地址线编码,并发送给所述可编程逻辑器件;
所述可编程逻辑器件根据接收到的地址线编码确定所述目标光模块,并选通所述第一I2C接口和所述目标光模块对应的目标I2C接口。
在其中一个实施例中,所述I2C主机通过所述第一I2C接口和所述目标I2C接口,向所述目标光模块的内存中写入目标地址,包括:
所述I2C主机根据光模块通信协议生成第一光模块诊断通信报文,并发送至所述第一I2C接口;所述第一光模块诊断通信报文包括光模块通信地址,写操作的操作码;
所述第一I2C接口将所述第一光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第一响应信号并转发至所述I2C主机;
所述I2C主机接收所述第一响应信号,根据光模块通信协议生成第二光模块诊断通信报文,并发送至所述第一I2C接口;所述第二光模块诊断通信报文包括所述目标光模块的内存的目标地址;
所述第一I2C接口将所述第二光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第二响应信号并转发至所述I2C主机。
在其中一个实施例中,所述I2C主机通过所述第一I2C接口和所述目标I2C接口,接收所述目标光模块返回的所述目标地址中存储的状态参数,包括:
所述I2C主机根据光模块通信协议生成第三光模块诊断通信报文,并发送至所述第一I2C接口;所述第三光模块诊断通信报文包括光模块通信地址和读操作的操作码;
所述第一I2C接口将所述第三光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第三响应信号并转发至所述I2C主机;
所述第一I2C接口按字节接收所述目标光模块通过所述目标I2C接口发送的所述目标地址中存储的状态参数,并转发至所述I2C主机,以及接收所述I2C主机返回的第四响应信号并转发至所述目标光模块,直至所述读操作完成。
在其中一个实施例中,在所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口之前,所述方法还包括:
所述I2C主机根据预设的定时采集时刻和预设的多路光模块采集顺序,确定目标光模块。
在其中一个实施例中,在所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口之前,所述方法还包括:
所述I2C主机接收上位机发送的光模块查询报文,并根据所述光模块查询报文确定所述目标光模块;所述光模块查询报文包括所述目标光模块的标识。
上述光模块监控系统和方法中,光模块监控系统可以基于可编程逻辑器件可扩展性强的特点,根据实际需要扩展更多的第二I2C接口以监控更多的光模块,而且和各个光模块的通信逻辑简单、稳定性强,还可以降低状态参数的传输时间,提高监控效率;总得来说,本实施例的光模块监控系统通过简单的通信逻辑可扩展性地实现多个光模块的高效监控,具有极高的实用性。
附图说明
图1为一个实施例中光模块监控系统的结构框图;
图2为一个实施例中光模块监控系统的示意图;
图3为一个实施例中光模块监控方法的流程示意图;
图4为一个实施例中光模块监控方法的示意图;
图5为一个实施例中选通目标光模块的步骤的流程示意图;
图6为一个实施例中向目标光模块写入目标地址的步骤的流程示意图;
图7为一个实施例中从目标光模块中读取状态参数的步骤的流程示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种光模块监控系统,所述系统可以包括:I2C主机11、可编程逻辑器件12,所述可编程逻辑器件11可以包括一个第一I2C接口121以及多个第二I2C接口122,所述I2C主机11基于所述第一I2C接口121,并通过一组两线式串行总线I2C总线和所述可编程逻辑器件12连接,一个第二I2C接口122可以通过一组I2C总线连接一个光模块;所述I2C主机11用于通过所述可编程逻辑器件12选通所述第一I2C接口121和目标光模块对应的目标I2C接口,通过所述第一I2C接口121和所述目标I2C接口向所述目标光模块的内存中写入目标地址,并接收所述目标光模块返回的所述目标地址中存储的状态参数。一般地,各个光模块均具有数字诊断功能,可以将诊断获得的自身的状态参数保存在各自的内存中。
在本实施例中,上述I2C主机可以但不限于是CPU(Central Processing Unit,中央处理器)、MCU(Microcontroller Unit,微控制单元)等处理装置,可编程逻辑器件可以但不限于是FPGA(Field-Programmable Gate Array,现场可编程门阵列)、CPLD(ComplexProgrammable Logic Device,复杂可编程逻辑器件)等;上述各个光模块相当于是上述I2C主机对应的各个I2C从机,分别通过一组I2C总线与可编程逻辑器件上相应的一个第二I2C接口连接。因为FPGA存在时序逻辑单元,在本实施例中,可编程逻辑器件还涉及到I2C主机和各个光模块之间I2C总线信号的传输,因此FPGA更适合作为本实施例的可编程逻辑器件的实现方式,具体可以通过FPGA编程实现FPGA内部硬件连接关系的改变。
可以理解的是,本实施例的技术思路为:应用可编程逻辑器件可扩展性强的特点,可以根据实际需要扩展更多的第二I2C接口以监控更多的光模块,而I2C主机可以通过可编程逻辑器件选通第一I2C接口与一个第二I2C接口,因此在同一时刻,I2C主机与可编程逻辑器件的第一I2C接口通过一组I2C总线连接,而第一I2C接口通过第二I2C接口与一个光模块通过一组I2C总线连接,相当于I2C主机仅与一个光模块(相当于I2C从机)通过一组I2C总线连接,因此通信逻辑简单,稳定性强。
在一种实施方式中,I2C主机可以通过一组I2C总线向可编程逻辑器件的第一I2C接口发送目标光模块的编码,以通过可编程逻辑器件选通第一I2C接口和目标光模块对应的目标I2C接口,即与目标光模块连接的第二I2C接口。
此外,因为光模块的内存中可能存储有各种类型的状态参数,一般情况下会应I2C主机的读取请求按字节返回共256字节的状态参数,而很多状态参数确并非实际所需的。例如,在一种情况下,参照表1所示,实际仅需要监控光模块的基本状态参数,而基本状态参数可能仅有10个字节。因此上述读取光模块状态参数的通信逻辑会使得传输过多不需要的状态参数,增加状态参数的传输时间,降低监控效率。
表1:光模块的基本状态参数
数据名称 | 英文标识 |
光模块温度 | Temp |
光模块内部传输电压 | VCC |
光模块传输功率 | TX_power |
光模块接受功率 | RX_power |
而在本实施例中,I2C主机通过已经建立连接的所述第一I2C接口121和所述目标I2C接口向所述目标光模块的内存中写入目标地址,相应地,目标光模块会获取其内存中写入的目标地址,从而将目的地址对应的各个内存地址中存储的状态参数发送给I2C主机,因此I2C主机可以接收到上述目标地址中存储的状态参数,即需要的状态参数,而非所有状态参数,故而可以降低状态参数的传输时间,提高监控效率。
综上所述,本实施例的光模块监控系统可以基于可编程逻辑器件可扩展性强的特点,根据实际需要扩展更多的第二I2C接口以监控更多的光模块,而且和各个光模块的通信逻辑简单、稳定性强,还可以降低状态参数的传输时间,提高监控效率;总得来说,本实施例的光模块监控系统通过简单的通信逻辑可扩展性地实现多个光模块的高效监控,具有极高的实用性。
参照图2所示,在上述图1的基础上,上述I2C主机和可编程逻辑器件中均存在相应的硬件结构以便于实现I2C主机对目标光模块的选通,具体地,所述I2C主机可以包括:地址选择模块111和I2C接口模块112,所述可编程逻辑器件12还包括:地址仲裁模块123;所述地址选择模块111和所述地址仲裁模块123通过地址线连接,所述I2C接口模块112和所述第一I2C接口121通过一组I2C总线连接。需要说明的是,上述地址选择模块、I2C接口模块、地址仲裁模块均可通过硬件电路的形式实现。
其中,所述地址选择模块111可以用于根据目标光模块的标识和预设地址线编码规则,确定所述目标光模块对应的地址线编码,并发送给所述地址仲裁模块123;所述地址仲裁模块123,用于根据接收到的地址线编码确定所述目标光模块,并选通所述第一I2C接口和所述目标光模块对应的目标I2C接口;所述I2C接口模块112,用于根据光模块通信协议生成光模块诊断通信报文,并发送至所述第一I2C接口121,以及接收所述第一I2C接口121转发的所述目标光模块的状态参数;所述光模块诊断通信报文至少包括光模块通信地址和所述目标地址;所述第一I2C接口121,用于接收所述光模块诊断通信报文,并通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块针对所述光模块诊断通信报文返回的所述目标地址中存储的状态参数,并转发给所述I2C接口模块112。
示例性地,当需要监控16只光模块时,地址选择模块和地址仲裁模块之间可以采用4根地址线A3、A2、A1、A0连接来识别16只光模块,编码规则对应关系如下表2:
表2:16只光模块的标识与4根地址线编码的对应关系
A3 | A2 | A1 | A0 | 光模块的标识 |
0 | 0 | 0 | 0 | 光模块1 |
0 | 0 | 0 | 1 | 光模块2 |
0 | 0 | 1 | 0 | 光模块3 |
0 | 0 | 1 | 1 | 光模块4 |
0 | 1 | 0 | 0 | 光模块5 |
0 | 1 | 0 | 1 | 光模块6 |
0 | 1 | 1 | 0 | 光模块7 |
0 | 1 | 1 | 1 | 光模块8 |
1 | 0 | 0 | 0 | 光模块9 |
1 | 0 | 0 | 1 | 光模块10 |
1 | 0 | 1 | 0 | 光模块11 |
1 | 0 | 1 | 1 | 光模块12 |
1 | 1 | 0 | 0 | 光模块13 |
1 | 1 | 0 | 1 | 光模块14 |
1 | 1 | 1 | 0 | 光模块15 |
1 | 1 | 1 | 1 | 光模块16 |
其中,地址线缺省编码为1111对应光模块16。
因此,示例性地,当目标光模块为光模块9时,地址选择模块可以根据目标光模块的标识和预设地址线编码规则,确定所述光模块9对应的地址线编码1000,并发送给所述地址仲裁模块,具体地,4根地址线A3、A2、A1、A0可以分别为高电平、低电平、低电平、低电平;所述地址仲裁模块可以根据4根地址线接收的地址线编码为1000,从而确定目标光模块为光模块9,并选通所述第一I2C接口和光模块9对应的目标I2C接口;当然,上述描述方式中包括:地址仲裁模块可以根据不同地址线编码和不同第二I2C接口的对应关系,直接选通第一I2C接口和地址线编码对应的目标I2C接口。
也就是说,I2C主机可以通过地址线信号通知可编程逻辑器件目标光模块的编码,而采用地址线信号的方式相对采用I2C总线信号的方式而言,不需要I2C总线信号所需的时序信号等,控制逻辑简单,稳定性和准确性更高;而且不会占用I2C主机和可编程逻辑器件之间的I2C总线,故而可以进一步提高监控效率。
而在选通第一I2C接口和目标光模块对应的目标I2C接口之后,I2C接口模块便可以通过第一I2C接口和目标I2C接口实现与目标光模块的一对一连接,因此I2C接口模块可以生成光模块诊断通信报文,通过光模块诊断通信报文中的光模块通信地址寻址目标光模块,发送写操作以将光模块通信报文中的目标地址写入到目标光模块的内存中,发送读操作以通知目标光模块将内存的目标地址中的状态参数传输至I2C主机,并接收目标光模块发送的上述状态参数,实现对目标光模块中所需的状态参数的获取。
总之,本实施例的光模块监控系统可以通过地址线信号通知可编程逻辑器件目标光模块的编码以便选通,控制逻辑简单,稳定性和准确性更高,可以进一步提高监控效率。
此外,参照图2所示,为了便于上位机的访问,所述I2C主机还可以包括上位机接口,如以太网接口113、RS232接口114。其中,远端的上位机14可以通过网络与以太网接口113连接,近端的上位机14还可以与RS232接口114连接,从I2C主机中获取感兴趣的光模块或所有光模块的状态参数。因此,本实施的I2C主机还包括上位机接口,便于近端或远端的上位机对光模块的状态信息的监控。
需要说明的是,关于光模块监控系统的部分描述可以参见下文中对于光模块监控方法的描述,在此不再赘述。
在一个实施例中,如图3所示,提供了一种光模块监控方法,所述光模块监控方法应用于如图1或图2中所述的光模块监控系统中,具体可以包括:
S301,所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口。
在一种实施方式中,S301可以包括:I2C主机通过I2C总线向可编程逻辑器件的第一I2C接口发送目标光模块的编码;所述可编程逻辑器件根据接收到目标光模块的编码,选通所述第一I2C接口和所述目标光模块对应的目标I2C接口。也就是说,I2C主机可以通过I2C总线信号通知可编程逻辑器件目标光模块的编码。
S302,所述I2C主机通过所述第一I2C接口和所述目标I2C接口,向所述目标光模块的内存中写入目标地址。
参照图4所示,在I2C主机和目标光模块(I2C从机)进行通信前,需要通过I2C总线发送开始位,即在SCL时钟信号处于高电平时,SDA数据信号由高电平转换为低电平。然后,I2C主机须先发送从机的通信地址,以表示与主机通信的是该从机,即寻址从机,并得到从机(目标光模块)的响应;I2C主机需要组装并发送通信报文,以通知目标光模块进行写操作,以及向目标光模块的内存中写入目标地址。
S303,所述I2C主机通过所述第一I2C接口和所述目标I2C接口,接收所述目标光模块返回的所述目标地址中存储的状态参数。
参照图4所示,在I2C主机和目标光模块进行读操作前,需要通过I2C总线发送开始位。然后,I2C主机需要组装并发送通信报文,以通知目标光模块进行读操作,需要目标光模块作为主机,I2C主机相当于从机,从目标光模块向I2C主机传送目标光模块的内存的目标地址中的状态参数,在此过程中,时钟信号仍由I2C主机发出,而数据信号由目标光模块发出,以一个字节的单位进行数据传输。
综上所述,本实施例的光模块监控系统可以基于可编程逻辑器件可扩展性强的特点,根据实际需要扩展更多的第二I2C接口以监控更多的光模块,而且和各个光模块的通信逻辑简单、稳定性强,还可以降低状态参数的传输时间,提高监控效率;总得来说,本实施例的光模块监控系统通过简单的通信逻辑可扩展性地实现多个光模块的高效监控,具有极高的实用性。
在一个实施例中,参照图5所示,在上述图3的基础上,I2C主机可以通过地址线信号通知可编程逻辑器件目标光模块的编码以便实现选通,即S301可以包括:
S501,所述I2C主机根据目标光模块的标识和预设地址线编码规则,确定所述目标光模块对应的地址线编码,并发送给所述可编程逻辑器件。
S502,所述可编程逻辑器件根据接收到的地址线编码确定所述目标光模块,并选通所述第一I2C接口和所述目标光模块对应的目标I2C接口。
关于上述选通步骤的描述,可以参照上述对光模块监控系统中选通的描述,这里不再赘述。
总之,I2C主机可以通过地址线信号通知可编程逻辑器件目标光模块的编码,而采用地址线信号的方式相对采用I2C总线信号的方式而言,不需要I2C总线信号所需的时序信号等,控制逻辑简单,稳定性和准确性更高;而且不会占用I2C主机和可编程逻辑器件之间的I2C总线,故而可以进一步提高监控效率。
进一步地,参照图6所示,S302可以包括:
S601,所述I2C主机根据光模块通信协议生成第一光模块诊断通信报文,并发送至所述第一I2C接口;所述第一光模块诊断通信报文包括光模块通信地址和写操作的操作码。
参照图4,第一光模块诊断通信报文可以如①所示,为SPF+Address+写操作的操作码,其中,SPF表示光模块,Address为光模块的通信地址1010001,写操作的操作码为“0”,即“Address+写操作的操作码”为0xA2;以通知目标光模块要进行写操作,然后等待目标光模块的ACK响应位。
S602,所述第一I2C接口将所述第一光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第一响应信号并转发至所述I2C主机。
第一I2C接口通过所述目标I2C接口将第一光模块诊断通信报文转发给目标光模块,并释放与目标光模块连接的一组I2C总线中的数据线,等待光模块响应;目标光模块在接收到第一光模块诊断通信报文后,会返回第一响应信号,即图4中①的ACK响应位,表示已接收到第一光模块诊断通信报文。
S603,所述I2C主机接收所述第一响应信号,根据光模块通信协议生成第二光模块诊断通信报文,并发送至所述第一I2C接口;所述第二光模块诊断通信报文包括所述目标光模块的内存的目标地址。
参照图4,第二光模块诊断通信报文可以如②所示,为SPF+目标地址(图4中的内存地址),以通知目标光模块要将要读取的状态参数在目标光模块的内存中的目标地址,然后等待目标光模块的ACK响应位。其中,目标地址可以包括起始地址和数据长度,例如起始地址可以为0x60,数据长度可以为10字节,以获取如表1所示的状态参数。
S604,所述第一I2C接口将所述第二光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第二响应信号并转发至所述I2C主机。
第一I2C接口通过所述目标I2C接口将第二光模块诊断通信报文转发给目标光模块,并释放与目标光模块连接的一组I2C总线中的数据线,等待光模块响应;目标光模块在接收到第二光模块诊断通信报文后,会返回第一响应信号,即图4中②的ACK响应位,表示已接收到第二光模块诊断通信报文。一般地,上述第二通信报文中的目标地址会写入到目标光模块的寄存器中。
进一步地,参照图7所示,S303可以包括:
S701,所述I2C主机根据光模块通信协议生成第三光模块诊断通信报文,并发送至所述第一I2C接口;所述第三光模块诊断通信报文包括光模块通信地址和读操作的操作码。
参照图4,第三光模块诊断通信报文可以如③所示,为SPF+Address+读操作的操作码,其中,SPF表示光模块,Address为光模块的通信地址1010001,读操作的操作码为“1”,即“Address+读操作的操作码”为0xA3;以通知目标光模块要进行读操作,然后等待目标光模块的ACK响应位。
S702,所述第一I2C接口将所述第三光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第三响应信号并转发至所述I2C主机。
第一I2C接口通过所述目标I2C接口将第三光模块诊断通信报文转发给目标光模块,并释放与目标光模块连接的一组I2C总线中的数据线,等待光模块响应;目标光模块在接收到第三光模块诊断通信报文后,会返回第三响应信号,即图4中③的ACK响应位,表示已接收到第三光模块诊断通信报文。
S703,所述第一I2C接口按字节接收所述目标光模块通过所述目标I2C接口发送的所述目标地址中存储的状态参数,并转发至所述I2C主机,以及接收所述I2C主机返回的第四响应信号并转发至所述目标光模块,直至所述读操作完成。
参照图4,如④⑤⑥所示,目标光模块根据I2C主机提供的时钟信号,按字节发送数据给I2C主机,I2C主机分别返回如④⑤所示的ACK响应位,表示该字节数据传输成功,相当于主机接收从机数据,并在读取完成(例如I2C主机通过计数器判断传输数据的字节数是否为上述数据长度)后,I2C主机不再发送ACK位,并在等待超时后,I2C主机发送停止位,即在SCL时钟信号线处于高电平时,SDA数据信号由低电平变为高电平,以结束读取。
需要说明的是,目标光模块写入目标地址的步骤和从目标光模块中读取状态参数的步骤并不仅限于上述详细的实施方式,还可以通过其它I2C总线通信方法。
总之,本实施例的光模块监控方法可以通过地址线信号通知可编程逻辑器件目标光模块的编码以便选通,控制逻辑简单,稳定性和准确性更高,可以进一步提高监控效率。
可选的,I2C主机可以对各个光模块进行定时采集,因此上述方法还可以包括:所述I2C主机根据预设的定时采集时刻和预设的多路光模块采集顺序,确定目标光模块。I2C主机可以设置定时器的时间段,例如设置10秒通知,那么当定时器到达时,可以进行一轮光模块的读取,例如可以从光模块1开始读取至光模块16,即分别按顺序以光模块1至光模块16为目标光模块,并可以将获取的各个光模块的状态参数储存在I2C主机内置或者关联的内存中,以更新储存的状态参数。本实施例可以实现各路光模块的定时采集。
可选的,上位机可以通过和I2C主机的通信来监控各个光模块,因此上述方法还可以包括:所述I2C主机接收上位机发送的光模块查询报文,并根据所述光模块查询报文确定所述目标光模块;所述光模块查询报文包括所述目标光模块的标识。上述光模块查询报文还可以包括查询类型,查询类型可以包括实时查询和定点查询;当查询类型为实时查询时,I2C主机可以获取最近一次获取的目标光模块的状态参数返回给上位机;当查询类型为定点查询时,I2C主机可以对目标光模块进行重新读取,并将获取的目标光模块的状态参数返回上位机。总之,在本实施例中,上位机可以通过I2C主机实现对光模块的远程监控。
应该理解的是,虽然图3,5-7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3,5-7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种光模块监控系统,其特征在于,所述系统包括:I2C主机、可编程逻辑器件,所述可编程逻辑器件包括一个第一I2C接口以及多个第二I2C接口,所述I2C主机基于所述第一I2C接口,并通过一组两线式串行I2C总线和所述可编程逻辑器件连接,一个第二I2C接口通过一组I2C总线连接一个光模块;
所述I2C主机用于通过所述可编程逻辑器件选通所述第一I2C接口和目标光模块对应的目标I2C接口,通过所述第一I2C接口和所述目标I2C接口向所述目标光模块的内存中写入目标地址,并接收所述目标光模块返回的所述目标地址中存储的状态参数。
2.根据权利要求1所述的系统,其特征在于,所述I2C主机包括:地址选择模块和I2C接口模块,所述可编程逻辑器件还包括:地址仲裁模块;所述地址选择模块和所述地址仲裁模块通过地址线连接,所述I2C接口模块和所述第一I2C接口通过一组两线式串行I2C总线连接;
所述地址选择模块,用于根据目标光模块的标识和预设地址线编码规则,确定所述目标光模块对应的地址线编码,并发送给所述地址仲裁模块;
所述地址仲裁模块,用于根据接收到的地址线编码确定所述目标光模块,并选通所述第一I2C接口和所述目标光模块对应的目标I2C接口;
所述I2C接口模块,用于根据光模块通信协议生成光模块诊断通信报文,并发送至所述第一I2C接口,以及接收所述第一I2C接口转发的所述目标光模块的状态参数;所述光模块诊断通信报文至少包括光模块通信地址和所述目标地址;
所述第一I2C接口,用于接收所述光模块诊断通信报文,并通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块针对所述光模块诊断通信报文返回的所述目标地址中存储的状态参数,并转发给所述I2C接口模块。
3.根据权利要求1-2中任一项所述的系统,其特征在于,所述可编程逻辑器件为现场可编程门阵列FPGA。
4.根据权利要求1所述的系统,其特征在于,所述I2C主机包括上位机接口,所述上位机接口包括以下接口中的至少一种:以太网接口、RS232接口。
5.一种光模块监控方法,其特征在于,所述光模块监控方法应用于如权利要求1-4中任一项所述的光模块监控系统中,包括:
所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口;
所述I2C主机通过所述第一I2C接口和所述目标I2C接口,向所述目标光模块的内存中写入目标地址;
所述I2C主机通过所述第一I2C接口和所述目标I2C接口,接收所述目标光模块返回的所述目标地址中存储的状态参数。
6.根据权利要求5所述的方法,其特征在于,所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口,包括:
所述I2C主机根据目标光模块的标识和预设地址线编码规则,确定所述目标光模块对应的地址线编码,并发送给所述可编程逻辑器件;
所述可编程逻辑器件根据接收到的地址线编码确定所述目标光模块,并选通所述第一I2C接口和所述目标光模块对应的目标I2C接口。
7.根据权利要求6所述的方法,其特征在于,所述I2C主机通过所述第一I2C接口和所述目标I2C接口,向所述目标光模块的内存中写入目标地址,包括:
所述I2C主机根据光模块通信协议生成第一光模块诊断通信报文,并发送至所述第一I2C接口;所述第一光模块诊断通信报文包括光模块通信地址和写操作的操作码;
所述第一I2C接口将所述第一光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第一响应信号并转发至所述I2C主机;
所述I2C主机接收所述第一响应信号,根据光模块通信协议生成第二光模块诊断通信报文,并发送至所述第一I2C接口;所述第二光模块诊断通信报文包括所述目标光模块的内存的目标地址;
所述第一I2C接口将所述第二光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第二响应信号并转发至所述I2C主机。
8.根据权利要求7所述的方法,其特征在于,所述I2C主机通过所述第一I2C接口和所述目标I2C接口,接收所述目标光模块返回的所述目标地址中存储的状态参数,包括:
所述I2C主机根据光模块通信协议生成第三光模块诊断通信报文,并发送至所述第一I2C接口;所述第三光模块诊断通信报文包括光模块通信地址和读操作的操作码;
所述第一I2C接口将所述第三光模块诊断通信报文通过所述目标I2C接口转发至所述目标光模块,以及接收所述目标光模块返回的第三响应信号并转发至所述I2C主机;
所述第一I2C接口按字节接收所述目标光模块通过所述目标I2C接口发送的所述目标地址中存储的状态参数,并转发至所述I2C主机,以及接收所述I2C主机返回的第四响应信号并转发至所述目标光模块,直至所述读操作完成。
9.根据权利要求5所述的方法,其特征在于,在所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口之前,所述方法还包括:
所述I2C主机根据预设的定时采集时刻和预设的多路光模块采集顺序,确定目标光模块。
10.根据权利要求5所述的方法,其特征在于,在所述I2C主机通过所述可编程逻辑器件选通所述第一I2C接口和所述目标光模块对应的目标I2C接口之前,所述方法还包括:
所述I2C主机接收上位机发送的光模块查询报文,并根据所述光模块查询报文确定所述目标光模块;所述光模块查询报文包括所述目标光模块的标识。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811275496.8A CN109446154A (zh) | 2018-10-30 | 2018-10-30 | 光模块监控系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811275496.8A CN109446154A (zh) | 2018-10-30 | 2018-10-30 | 光模块监控系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109446154A true CN109446154A (zh) | 2019-03-08 |
Family
ID=65548986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811275496.8A Pending CN109446154A (zh) | 2018-10-30 | 2018-10-30 | 光模块监控系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446154A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110121122A (zh) * | 2019-05-10 | 2019-08-13 | 南京牛芯微电子有限公司 | 一种光模块的控制方法和系统 |
CN110764444A (zh) * | 2019-10-10 | 2020-02-07 | 苏州浪潮智能科技有限公司 | 控制系统、交换机以及对执行装置进行控制的方法 |
CN110855353A (zh) * | 2019-11-19 | 2020-02-28 | 中电科仪器仪表有限公司 | 一种适用于多种类型光模块的误码测试仪及测试系统 |
CN110896372A (zh) * | 2019-12-02 | 2020-03-20 | 深圳震有科技股份有限公司 | 一种i2c链路切换方法、终端及存储介质 |
CN117278890A (zh) * | 2023-11-15 | 2023-12-22 | 苏州元脑智能科技有限公司 | 光模块访问方法、装置、系统、电子设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140556A (zh) * | 2007-09-11 | 2008-03-12 | 中兴通讯股份有限公司 | 用可编程器件实现访问多个i2c从器件的方法及装置 |
CN101149722A (zh) * | 2007-10-22 | 2008-03-26 | 中兴通讯股份有限公司 | 一种实现cpu访问xfp光模块的方法 |
CN105095139A (zh) * | 2014-05-08 | 2015-11-25 | 中兴通讯股份有限公司 | 集成电路总线系统及其数据操作和传输方法 |
CN105302484A (zh) * | 2015-10-19 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 批量读取以太网卡光模块中数字诊断信息的装置及方法 |
CN106921547A (zh) * | 2017-01-25 | 2017-07-04 | 华为技术有限公司 | 管理设备的装置和方法 |
CN207801940U (zh) * | 2017-11-30 | 2018-08-31 | 天津中德应用技术大学 | 基于fpga实现的多路光模块信息采集电路 |
-
2018
- 2018-10-30 CN CN201811275496.8A patent/CN109446154A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140556A (zh) * | 2007-09-11 | 2008-03-12 | 中兴通讯股份有限公司 | 用可编程器件实现访问多个i2c从器件的方法及装置 |
CN101149722A (zh) * | 2007-10-22 | 2008-03-26 | 中兴通讯股份有限公司 | 一种实现cpu访问xfp光模块的方法 |
CN105095139A (zh) * | 2014-05-08 | 2015-11-25 | 中兴通讯股份有限公司 | 集成电路总线系统及其数据操作和传输方法 |
CN105302484A (zh) * | 2015-10-19 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 批量读取以太网卡光模块中数字诊断信息的装置及方法 |
CN106921547A (zh) * | 2017-01-25 | 2017-07-04 | 华为技术有限公司 | 管理设备的装置和方法 |
CN207801940U (zh) * | 2017-11-30 | 2018-08-31 | 天津中德应用技术大学 | 基于fpga实现的多路光模块信息采集电路 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110121122A (zh) * | 2019-05-10 | 2019-08-13 | 南京牛芯微电子有限公司 | 一种光模块的控制方法和系统 |
CN110764444A (zh) * | 2019-10-10 | 2020-02-07 | 苏州浪潮智能科技有限公司 | 控制系统、交换机以及对执行装置进行控制的方法 |
US11650950B2 (en) | 2019-10-10 | 2023-05-16 | Inspur Suzhou Intelligent Technology Co., Ltd. | Control system, switch, and method for controlling execution device |
CN110855353A (zh) * | 2019-11-19 | 2020-02-28 | 中电科仪器仪表有限公司 | 一种适用于多种类型光模块的误码测试仪及测试系统 |
CN110855353B (zh) * | 2019-11-19 | 2021-08-06 | 中电科思仪科技股份有限公司 | 一种适用于多种类型光模块的误码测试仪及测试系统 |
CN110896372A (zh) * | 2019-12-02 | 2020-03-20 | 深圳震有科技股份有限公司 | 一种i2c链路切换方法、终端及存储介质 |
CN110896372B (zh) * | 2019-12-02 | 2022-02-18 | 深圳震有科技股份有限公司 | 一种i2c链路切换方法、终端及存储介质 |
CN117278890A (zh) * | 2023-11-15 | 2023-12-22 | 苏州元脑智能科技有限公司 | 光模块访问方法、装置、系统、电子设备及可读存储介质 |
CN117278890B (zh) * | 2023-11-15 | 2024-02-13 | 苏州元脑智能科技有限公司 | 光模块访问方法、装置、系统、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109446154A (zh) | 光模块监控系统和方法 | |
US8667204B2 (en) | Method to differentiate identical devices on a two-wire interface | |
CN101911000A (zh) | 用于连接电子装置的控制总线 | |
JP4657637B2 (ja) | バス接続を介してのランダムアクセスのための方法およびデータ構造 | |
CN106878131B (zh) | 一种profibus耦合器及profibus的数据传输方法 | |
CN101866328A (zh) | 一种自动访问的串行总线读写控制方法 | |
CN112463700B (zh) | 一种控制axi总线带宽的方法和装置 | |
EP0558433A2 (en) | Independent computer storage addressing in input/output transfers | |
CN102147778A (zh) | 基于半双工串行总线的数据传输系统及传输控制方法 | |
CN101149722A (zh) | 一种实现cpu访问xfp光模块的方法 | |
KR20040028917A (ko) | 정보를 변환하는 통신 제어기 및 방법 | |
US11442878B2 (en) | Memory sequencer system and a method of memory sequencing using thereof | |
CN110474828A (zh) | 一种mbus总线通信方法及系统 | |
CN100373361C (zh) | 外设lpc总线接口时序转换方法、装置及输入输出系统 | |
US8812764B2 (en) | Apparatus installing devices controlled by MDIO or SPI protocol and method to control the same | |
CN115549782B (zh) | 一种光模块的信息查询方法及其相关组件 | |
US7124227B2 (en) | Programmable interface link layer device | |
KR20160147373A (ko) | 광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법 | |
CN112363479B (zh) | 一种现场设备间的数字通信传输方法及系统 | |
CN107643989B (zh) | 一种基于pci总线协议双光纤环路冗余结构通讯板卡 | |
CN212486527U (zh) | 一种基于modbus协议的从站转换装置 | |
CN109446144A (zh) | 一种支持用户协议的通用i2c总线控制器 | |
US7783812B2 (en) | Extended serial bus architecture and method | |
KR101725155B1 (ko) | 네트워크 데이터베이스로부터 분석한 정보를 소프트웨어 구조 설계로 변환하는 방법 | |
JPH01135150A (ja) | ネットワークのノードアドレス設定方式 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |
|
RJ01 | Rejection of invention patent application after publication |