本发明属于通信,具体涉及一种支持自动协商功能自适应方法及电口模块和网络通信系统。
背景技术:
1、ieee802.3中规定了以太网的自动协商机制,使得以太网设备可以自适应对应速率和双工模式,其中,1000base-x自动协商通常在两个host的phy芯片之间通过光纤进行协商。
2、但是,对于sfp封装的电口模块(copper sfp transceiver),没有使用光纤,而是直接将phy芯片集成到模块中,使得原本在两个系统的phy芯片之间的协商变成电口模块phy和host之间的协商,常规电口模块mac侧与host侧接口的自动协商功能不兼容,如果两端配置不一致,即一端打开自动协商功能,一端关闭自动协商功能,就无法完成自动协商,导致无法建立连接。
技术实现思路
1、本发明的目的在于克服现有技术中的至少一种缺陷,提供了一种支持自动协商功能自适应方法及电口模块和网络通信系统,该方法应用于电口模块中能有效地解决常规电口模块mac侧与host侧接口的自动协商功能不兼容的问题。
2、本发明的技术方案是这样实现的:本发明公开了一种支持自动协商功能自适应方法,该方法应用于电口模块中,包括如下步骤:
3、s1)识别电口模块的网线接口的连接状态或1000base-t自动协商过程是否已完成,当电口模块的网线接口的连接状态为连接成功状态或1000base-t自动协商过程已完成时,开始计时以及设置计数器,计数器初始值为a;
4、s2)在计时时间达到预设值时识别phy芯片的serdes接口的连接状态,当识别到phy芯片的serdes接口的连接状态为连接成功状态时,则配置为所述phy芯片保持1000base-x自动协商功能的启闭状态,自适应流程结束;
5、当识别到phy芯片的serdes接口的连接状态为连接失败状态且计数器小于预设值n时,配置为所述phy芯片更改1000base-x自动协商功能的启闭状态,执行步骤s3);
6、当识别到phy芯片的serdes接口的连接状态为连接失败状态且计数器大于预设值时,则自适应流程结束;
7、s3)开始计时且计数器累加b,返回执行步骤s2)。
8、进一步地,当电口模块的phy芯片开启1000base-x自动协商功能时,电口模块尝试通过1000base-x与主机自动协商建立连接。
9、进一步地,当电口模块的phy芯片关闭1000base-x自动协商功能时,电口模块尝试通过非自协商模式与主机建立连接。
10、进一步地,当识别到phy芯片的serdes接口的连接状态为连接失败状态且计数器大于预设值时,则判定为故障,自适应流程结束。
11、进一步地,所述电口模块配置为在完成上电或复位后将1000base-x自动协商功能开启。
12、本发明还公开了一种支持自动协商功能自适应的电口模块,包括mcu、phy芯片、金手指和网线接口,所述phy芯片与所述mcu连接,所述mcu用于识别电口模块的网线接口的连接状态,当识别到电口模块的网线接口的连接状态为连接成功状态时,开始计时,所述mcu还用于在计时时间达到预设值时识别phy芯片的serdes接口的连接状态,当识别到phy芯片的serdes接口的连接状态为连接失败状态时,配置phy芯片更改1000base-x自动协商功能的启闭状态。
13、进一步地,在mcu识别电口模块的网线接口的连接状态的过程中,所述mcu具体用于读取所述1000base-t状态寄存器的状态值,并根据读取到的所述1000base-t状态寄存器的状态值来识别电口模块的网线接口的连接状态;
14、在mcu识别phy芯片serdes接口的连接状态的过程中,所述mcu具体用于读取1000base-x状态寄存器的状态值,并根据读取到的所述1000base-x状态寄存器的状态值来识别phy芯片serdes接口的连接状态。
15、进一步地,所述mcu设置一个定时器,通过启动定时器开始计时。
16、进一步地,所述mcu设置计数器,第一次开始计时时,计数器为初始值a,每次开始计时则计数器累加b,当phy芯片的serdes接口的连接状态为连接失败状态且计数器小于预设值n时,配置phy芯片更改1000base-x自动协商功能的启闭状态。
17、本发明还公开了一种网络通信系统,包括第一主机和第二主机,还包括第一电口模块和第二电口模块,所述第一电口模块与第一主机连接,所述第二电口模块与第二主机连接,所述第一电口模块与第二电口模块之间通过网线连接,第一电口模块和第二电口模块均采用如上所述的支持自动协商功能自适应的电口模块。
18、本发明至少具有如下有益效果:本发明通过识别电口模块网线接口侧当前的连接状态,软件自动配置phy芯片serdes侧自动协商功能开启或关闭,模块上电后,当确认自动协商功能打开时,进行能力检测,确认信息检测,完成确认,确定协商的最优匹配方案,按确认的最优匹配方案建立连接,当确认自动协商功能关闭时,直接尝试按自身默认设置的能力建立连接,可以有效地解决由于自动协商配置不同导致的兼容性问题。
1.一种支持自动协商功能自适应方法,其特征在于,该方法应用于电口模块中,包括如下步骤:
2.如权利要求1所述的支持自动协商功能自适应方法,其特征在于:当电口模块的phy芯片开启1000base-x自动协商功能时,电口模块尝试通过1000base-x与主机自动协商建立连接。
3.如权利要求1所述的支持自动协商功能自适应方法,其特征在于:当电口模块的phy芯片关闭1000base-x自动协商功能时,电口模块尝试通过非自协商模式与主机建立连接。
4.如权利要求1所述的支持自动协商功能自适应方法,其特征在于:当识别到phy芯片的serdes接口的连接状态为连接失败状态且计数器大于预设值时,则判定为故障,自适应流程结束。
5.如权利要求1所述的支持自动协商功能自适应方法,其特征在于:所述电口模块配置为在完成上电或复位后将1000base-x自动协商功能开启。
6.一种支持自动协商功能自适应的电口模块,包括mcu、phy芯片、金手指和网线接口,所述phy芯片与所述mcu连接,其特征在于:所述mcu用于识别电口模块的网线接口的连接状态,当识别到电口模块的网线接口的连接状态为连接成功状态时,开始计时,所述mcu还用于在计时时间达到预设值时识别phy芯片的serdes接口的连接状态,当识别到phy芯片的serdes接口的连接状态为连接失败状态时,配置phy芯片更改1000base-x自动协商功能的启闭状态。
7.如权利要求6所述的支持自动协商功能自适应的电口模块,其特征在于:在mcu识别电口模块的网线接口的连接状态的过程中,所述mcu具体用于读取所述1000base-t状态寄存器的状态值,并根据读取到的所述1000base-t状态寄存器的状态值来识别电口模块的网线接口的连接状态;
8.如权利要求6所述的支持自动协商功能自适应的电口模块,其特征在于:
9.如权利要求6所述的支持自动协商功能自适应的电口模块,其特征在于:所述mcu设置计数器,第一次开始计时时,计数器为初始值a,每次开始计时则计数器累加b,当phy芯片的serdes接口的连接状态为连接失败状态且计数器小于预设值n时,配置phy芯片更改1000base-x自动协商功能的启闭状态。
10.一种网络通信系统,包括第一主机和第二主机,其特征在于:还包括第一电口模块和第二电口模块,所述第一电口模块与第一主机连接,所述第二电口模块与第二主机连接,所述第一电口模块与第二电口模块之间通过网线连接,第一电口模块和第二电口模块均采用如权利要求6至9任一项所述的支持自动协商功能自适应的电口模块。