一种电口模块的数据读写方法和系统的制作方法

文档序号:6523514阅读:359来源:国知局
一种电口模块的数据读写方法和系统的制作方法
【专利摘要】本发明提供了一种电口模块的数据读写方法和系统,以解决目前主机通过金手指上的I2C接口读取电口模块中数据的方案中,主机对PHY芯片的访问受限,通用性较差的问题。其中,所述电口模块包括:物理层PHY芯片、微控制单元MCU和金手指,所述PHY芯片与所述MCU通信,所述MCU通过所述金手指与主机通信;所述方法包括:所述MCU读取所述PHY芯片内部的寄存器中的数据;所述MCU将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中;所述MCU将所述映射寄存器中的数据通过所述金手指发送至所述主机。本发明并不限定于对只能通过I2C接口访问的寄存器的数据读取,所以本发明的通用性较高。
【专利说明】—种电口模块的数据读写方法和系统
【技术领域】
[0001]本发明涉及通信【技术领域】,特别是涉及一种电口模块的数据读写方法和系统。
【背景技术】
[0002]近些年随着光纤通信技术的飞速发展,各种通信模块的应用也越来越广泛。其中光模块是最为常见的一种,它以光纤作为传输介质,一端是金手指与主机连接,另一端是光纤接口与光纤连接,分为收、发两部分,将光、电信号转换后实现数据传输,传输距离从几百米到几十千米,通信速率可以达到百兆、千兆、万兆。电口模块是和光模块类似的一种通信模块,其传输介质为5类非屏蔽双绞线(网线),相比光纤传输方式来说,双绞线传输的传输距离较短(100m以内),速率包括十兆、百兆和千兆,只适用于小范围组网环境。SFP (SmallForm-factor Pluggables,小型可插拔)封装的电口模块通常被称为SFP-T模块。电口模块仅用于电信号的传输,当带光模块接口的交换机网口不够用或者无自带网口时,SFP-T模块就起到光口转网口的作用。
[0003]目前各模块生产厂商的SFp-T模块都采用集成度很高的PHY(物理层)芯片作为开发方案,许多功能都集成在PHY芯片内部,设计者或使用者无需过多的操控。例如,最常见的Marvel 188E1111芯片方案,设计者只需要针对芯片外围做简单的电路设计,并提供I2C(Inter — Integrated Circuit,集成电路总线)接口使主机能够通过金手指读取部分寄存器信息,所有的寄存器配置信息都已固化在PHY芯片内部。该种方案对电路设计的要求较低,降低了开发的困难程度。
[0004]但是,PHY芯片内部只有少数寄存器可以通过I2C接口访问,因此,上述设计方案使得主机对PHY芯片的访问受限,通用性较差。

【发明内容】

[0005]本发明提供了一种电口模块的数据读写方法和系统,以解决目前主机通过金手指上的I2C接口读取电口模块中数据的方案中,主机对PHY芯片的访问受限,通用性较差的问题。
[0006]为了解决上述问题,本发明提供了一种电口模块的数据读写方法,其特征在于,所述电口模块包括:物理层PHY芯片、微控制单元MCU和金手指,所述PHY芯片与所述MCU通信,所述MCU通过所述金手指与主机通信;
[0007]所述方法包括:
[0008]所述MCU读取所述PHY芯片内部的寄存器中的数据;
[0009]所述MCU将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中;
[0010]所述MCU将所述映射寄存器中的数据通过所述金手指发送至所述主机。
[0011]优选地,所述PHY芯片上设有管理数据输入输出MDIO接口,所述MCU上设有输入输出I/o接口,所述金手指上设有集成电路总线I2C接口 ;所述PHY芯片通过所述MDIO接口、以及所述I/o接口与所述MCU通信,所述MCU通过所述金手指上的I2C接口与所述主机通信。
[0012]优选地,所述PHY芯片内部的寄存器包括介质无关接口 MII寄存器,
[0013]所述MCU读取所述PHY芯片内部的寄存器中的数据的步骤包括:
[0014]所述MCU通过所述I/O接口以及MDIO接口、按照MDIO普通帧的结构读取所述PHY芯片内部的MII寄存器中的数据;
[0015]所述MCU将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中的步骤包括:
[0016]所述MCU按照预先设置的MII寄存器地址和映射寄存器地址的映射关系,分别将所述MII寄存器中的数据存储至所述MII寄存器对应的映射寄存器中。
[0017]优选地,所述MCU还设有映射区接口,
[0018]所述MCU将所述映射寄存器中的数据通过所述金手指发送至所述主机的步骤包括:
[0019]所述MCU通过所述映射区接口、以及所述金手指上的I2C接口接收所述主机发送的读取信息,所述读取信息包括读取的MII寄存器地址;
[0020]所述MCU查找与所述读取的MII寄存器地址相对应的映射寄存器地址,并读取所述映射寄存器中的数据,将所述映射寄存器中的数据通过所述金手指上的I2C接口发送至所述主机。
[0021]优选地,所述MCU还设有通用读写接口,所述方法还包括:
[0022]所述MCU通过所述通用读写接口、以及所述金手指上的I2C接口接收主机发送的第一写入信息,并将所述第一写入信息写入内部预设的通用读写寄存器中;所述第一写入信息包括写入的MII寄存器地址和写入所述MII寄存器中的数据;
[0023]所述MCU读取所述通用读写寄存器中的第一写入信息,并通过所述I/O接口以及MDIO接口、按照MDIO普通帧的结构将所述第一写入信息中的数据写入PHY芯片中与所述写入的MII寄存器地址对应的MII寄存器中。
[0024]优选地,所述MCU还设有通用读写接口,所述PHY芯片内部的寄存器包括MDIO管理装置MMD寄存器;所述方法还包括:
[0025]所述MCU通过所述通用读写接口、以及所述金手指接收主机发送的第二写入信息,并将所述第二写入信息写入内部预设的通用读写寄存器中;所述第二写入信息包括写入的MMD寄存器地址和写入所述MMD寄存器中的数据;
[0026]所述MCU读取所述通用读写寄存器中的第二写入信息,并通过所述I/O接口以及MDIO接口、按照MDIO扩展帧的结构将所述第二写入信息中的数据写入PHY芯片中与所述写入的MMD寄存器地址对应的MMD寄存器中。
[0027]根据本发明的另一方面,还提供了一种电口模块的数据读写系统,其特征在于,所述电口模块包括:物理层PHY芯片、微控制单元MCU和金手指,所述PHY芯片与所述MCU通信,所述MCU通过所述金手指与主机通信;
[0028]所述MCU包括:
[0029]读取模块,用于读取所述PHY芯片内部的寄存器中的数据;
[0030]映射模块,用于将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中;
[0031]发送模块,用于将所述映射寄存器中的数据通过所述金手指发送至所述主机。
[0032]优选地,所述PHY芯片上设有管理数据输入输出MDIO接口,所述MCU上设有输入输出I/o接口,所述金手指上设有内部整合电路I2C接口 ;所述PHY芯片通过所述MDIO接口、以及所述I/O接口与所述MCU通信,所述MCU通过所述金手指上的I2C接口与所述主机通信。
[0033]优选地,所述PHY芯片内部的寄存器包括介质无关接口 MII寄存器,
[0034]所述读取模块,具体用于通过所述I/O接口以及MDIO接口、按照MDIO普通帧的结构读取所述PHY芯片内部的MII寄存器中的数据;
[0035]所述映射模块,具体用于按照预先设置的MII寄存器地址和映射寄存器地址的映射关系,分别将所述MII寄存器中的数据存储至所述MII寄存器对应的映射寄存器中。
[0036]优选地,所述MCU还设有映射区接口,所述发送模块包括:
[0037]读取信息接收子模块,用于通过所述映射区接口、以及所述金手指上的I2C接口接收所述主机发送的读取信息,所述读取信息包括读取的MII寄存器地址;
[0038]查找读取子模块,用于查找与所述读取的MII寄存器地址相对应的映射寄存器地址,并读取所述映射寄存器中的数据,将所述映射寄存器中的数据通过所述金手指上的I2C接口发送至所述主机。
[0039]与现有技术相比,本发明实施例包括以下优点:
[0040]首先,本发明在电口模块中设置了 PHY芯片、MCU和金手指,其中所述PHY芯片与所述MCU通信,所述MCU通过所述金手指与主机通信。在对电口模块内PHY芯片中的数据进行读取时,首先可以通过MCU读取PHY芯片内部的寄存器中的数据,并将所述寄存器中的数据映射到所述MCU内部预设的映射寄存器中;然后所述MCU可以将所述映射寄存器中的数据通过所述金手指发送至所述主机。因此,本发明实施例中主机并不是直接通过I2C接口读取电口模块内PHY芯片中的数据,而是通过MCU进行数据的映射,再读取MCU中的数据,MCU对PHY芯片的访问接口更加灵活,并不限定于对只能通过I2C接口访问的寄存器的数据读取,所以本发明的通用性较高。
[0041]其次,本发明中还可以根据不同需求设定PHY芯片中各寄存器的值,从而满足不同的客户需求,开发不同方案的产品。
[0042]再次,本发明中还可以实现对PHY芯片的状态进行检测,并与主机交互,针对不同的状态执行相应的操作。
【专利附图】

【附图说明】
[0043]图1是本发明实施例一的一种电口模块的数据读写方法的流程图;
[0044]图2是本发明实施例二的一种电口模块的结构框图;
[0045]图3是本发明实施例二的一种电口模块的数据读写方法的流程图;
[0046]图4是本发明实施例二的MDIO普通帧的结构示意图;
[0047]图5是本发明实施例三的一种电口模块的数据读写系统的结构框图。
【具体实施方式】[0048]为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0049]目前的电口模块都采用集成度很高的PHY芯片作为开发方案,针对PHY芯片外围做简单的电路设计,并提供I2C接口使主机能够通过金手指读取芯片内部分寄存器的信息。但是,PHY芯片内部只有少数寄存器可以通过I2C接口访问,并且主机无法通过I2C接口对PHY芯片内部寄存器的值进行配置,因此,上述电口模块的设计方案使得主机对PHY芯片的访问受限,通用性较差。
[0050]本发明针对上述问题,提出了一种电口模块的数据读写方法和系统,本发明中的电口模块可以为SFP-T模块,当然也可以为其他形式的电口模块。下面通过以下各个实施例进行详细说明。
[0051]实施例一:
[0052]本发明实施例一中,电口模块可以包括:PHY芯片、MCU (Micro Control Unit,微控制单元)和金手指。
[0053]物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口,物理层的芯片称为PHY芯片。本发明实施例中所述PHY芯片内部可以包括多个寄存器存储数据,对电口模块的数据读写操作即为对所述PHY芯片内部寄存器的数据读写操作。
[0054]MCU是指随着大规模集成电路的出现及其发展,将计算机的CPU (CentralProcessing Unit,中央处理器)、RAM (Random Access Memory,随机存储器)、ROM (ReadOnly Memory,只读存储器)、定时计数器和多种1/0 (Input/Output,输入输出)接口集成在一片芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。本发明实施例中所述MCU—方面可以与所述PHY芯片通信,另一方面还可以通过所述金手指与主机通信,起到在PHY芯片和主机之间中转的作用。
[0055]参照图1,示出了本发明实施例一的一种电口模块的数据读写方法的流程图,该方法具体可以包括以下步骤:
[0056]步骤101,所述MCU读取所述PHY芯片内部的寄存器中的数据。
[0057]本发明实施例中,所述MCU可以与所述PHY芯片通信,通过所述MCU可以读取所述PHY芯片内部的寄存器中的数据。
[0058]步骤102,所述MCU将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中。
[0059]在MCU中可以预先设置映射寄存器,在读取到所述PHY芯片内部的寄存器中的数据之后,MCU即可将所述寄存器中的数据映射到所述MCU内部预设的映射寄存器中。
[0060]因此后续主机即可通过读取所述MCU中的映射寄存器中的数据读取所述PHY芯片的内部寄存器中的数据,而无需直接通过I2C接口读取PHY芯片的内部寄存器中的数据。
[0061]步骤103,所述MCU将所述映射寄存器中的数据通过所述金手指发送至所述主机。
[0062]当主机需要读取PHY芯片的内部寄存器中的数据时,所述MCU即可从所述映射寄存器中获取主机需要读取的数据,并将所述映射寄存器中的数据通过所述金手指发送至所述主机。
[0063]本发明实施例中主机并不是直接通过I2C接口读取电口模块内PHY芯片中的数据,而是通过MCU进行数据的映射,再读取MCU中的数据,MCU对PHY芯片的访问接口更加灵活,并不限定于对只能通过I2C接口访问的寄存器的数据读取,所以本发明实施例的通用性较高。
[0064]实施例二:
[0065]参照图2,示出了本发明实施例二的一种电口模块的结构框图,该电口模块可以包括:PHY 芯片 201、MCU202、金手指 203 和 EEPROM (Electrically Erasable ProgrammableRead-Only Memory,电可擦可编程只读存储器)204。如图2所示,PHY芯片和MCU之间通过MDIO (Management Data Input/Output,管理数据输入输出)总线连接,MCU和金手指之间通过I2C总线连接,EEPROM和金手指之间通过I2C总线连接。PHY芯片通过MDIO接口协议来访问,主机通过金手指上的12C接口与MCU通信,同时通过金手指上的I2C接口与EEPROM通信。其中MCU的I2C从机地址为ACh,EEPROM的I2C从机地址为AOh。
[0066]本发明实施例中以MCU为C8051F300单片机(对于单片机的选取,主要从两方面考虑:成本和性能。该单片机价格相对低廉,并且对于实现本发明实施例的软件功能足够,并且该单片机为C8051内核,开发也相对容易)、PHY芯片为AR8033 (该芯片提供了 MDIO接口)、以及EEPROM为AT24C02组成的硬件电路为例,电口模块与主机的接口符合金手指设计规范。
[0067]参照图3,示出了本发明实施例二的一种电口模块的数据读写方法的流程图,该方法具体可以包括以下步骤:
[0068]步骤301,所述MCU读取所述PHY芯片内部的寄存器中的数据。
[0069]本发明实施例中,要实现主机对PHY芯片的访问,可以转换成MCU对PHY芯片的访问,然后再将MCU对PHY芯片的访问结果返回给主机。所述PHY芯片内部的寄存器可以包括 Mil (Media Independent Interface,介质无关接口)寄存器和 MMD (MDIO ManageableDevice, MDIO管理装置)寄存器,对电口模块的数据读写操作即可以为对PHY芯片中的MII寄存器和MMD寄存器的数据读写操作。
[0070]PHY芯片(AR8033)在通信接口上,提供了 MDIO接口。MDIO接口是一种简单的双线串行接口,将管理器件(如MAC (medium access control,介质访问控制)控制器、微处理器)与具备管理功能的收发器(如多端口 G比特以太网收发器或IOGbE XAUI收发器)相连接,从而控制收发器并从收发器收集状态信息。其中可收集的信息包括链接状态、传输速度与选择、断电、低功率休眠状态、TX (发送)/RX (接收)模式选择、自动协商控制、环回模式控制等。除了拥有IEEE要求的功能之外,收发器厂商还可添加更多的信息收集功能。
[0071]本发明实施例中,所述MDIO接口包括MDC (Management Data Clock,管理数据时钟)管脚和MDIO管脚。MDC是管理数据的时钟输入,最高速率可达8.3MHz ;MD10是管理数据的输入输出双向接口,数据是与MDC时钟同步的。
[0072]MDIO的通信帧可以包括MDIO普通帧,图4为MDIO普通帧的结构示意图,其中MDC为MDC管脚处的时钟信号,MDIO为MDIO管脚处的普通帧信号,MDIO普通帧信号的描述如下:
[0073](I) MDIO接口在没有传输数据的空闲状态(IDLE),MDIO管脚处于高阻态;
[0074](2) MDIO管脚出现一个32bit高位的前导码PRE (I...I);
[0075](3) MDIO管脚出现一个2bit数据的开始标识码ST (01),一个读/写操作开始;[0076](4) MDIO管脚出现一个2bit数据的OP码来标识是读(10)还是写操作(01);
[0077](5) MDIO管脚出现一个5bit数据的(PHY ADD [4:0])来标识PHY芯片的地址;
[0078](6)MD10管脚出现一个5bit数据的(PHY REG ADD[4:0])来标识PHY芯片的寄存器地址;
[0079](7) MDIO管脚需要2个时钟(TA)的访问时间;
[0080](8) MDIO管脚串行读出/写入16bit的寄存器数据(DATA);
[0081](9) MDIO接口恢复成IDLE状态,同时MDIO管脚进入高阻状态。
[0082]由于MDIO普通帧结构对PHY芯片寄存器的访问数量有限(32个寄存器地址),因此MDIO通信帧还可以包括MDIO扩展帧,MDIO扩展帧的结构与MDIO普通帧的结构类似。MDIO扩展帧是采用两个连续的MDIO普通帧组合而成,分别用于发送(接收)16位的扩展地址和16位的数据,地址和数据通过OP码来区分,扩展帧的ST码为(00),与普通帧的(01)不同。
[0083]例如,MDIO扩展帧的帧结构可以如表一所示,表一示出了 4种结构,其中第I种为地址,后面3种为数据。
[0084]
【权利要求】
1.一种电口模块的数据读写方法,其特征在于,所述电口模块包括:物理层PHY芯片、微控制单元MCU和金手指,所述PHY芯片与所述MCU通信,所述MCU通过所述金手指与主机通信; 所述方法包括: 所述MCU读取所述PHY芯片内部的寄存器中的数据; 所述MCU将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中; 所述MCU将所述映射寄存器中的数据通过所述金手指发送至所述主机。
2.根据权利要求1所述的方法,其特征在于,所述PHY芯片上设有管理数据输入输出MDIO接口,所述MCU上设有输入输出I/O接口,所述金手指上设有集成电路总线I2C接口;所述PHY芯片通过所述MDIO接口、以及所述I/O接口与所述MCU通信,所述MCU通过所述金手指上的I2C接口与所述主机通信。
3.根据权利要求2所述的方法,其特征在于,所述PHY芯片内部的寄存器包括介质无关接口 MII寄存器, 所述MCU读取所述PHY芯片内部的寄存器中的数据的步骤包括: 所述MCU通过所述I/O接口以及MDIO接口、按照MDIO普通帧的结构读取所述PHY芯片内部的MII寄存器中的数据; 所述MCU将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中的步骤包括: 所述MCU按照预先设置的MII寄存器地址和映射寄存器地址的映射关系,分别将所述MII寄存器中的数据存储至所述MII寄存器对应的映射寄存器中。
4.根据权利要求3所述的方法,其特征在于,所述MCU还设有映射区接口, 所述MCU将所述映射寄存器中的数据通过所述金手指发送至所述主机的步骤包括: 所述MCU通过所述映射区接口、以及所述金手指上的I2C接口接收所述主机发送的读取信息,所述读取信息包括读取的MII寄存器地址; 所述MCU查找与所述读取的MII寄存器地址相对应的映射寄存器地址,并读取所述映射寄存器中的数据,将所述映射寄存器中的数据通过所述金手指上的I2C接口发送至所述主机。
5.根据权利要求3所述的方法,其特征在于,所述MCU还设有通用读写接口, 所述方法还包括: 所述MCU通过所述通用读写接口、以及所述金手指上的I2C接口接收主机发送的第一写入信息,并将所述第一写入信息写入内部预设的通用读写寄存器中;所述第一写入信息包括写入的MII寄存器地址和写入所述MII寄存器中的数据; 所述MCU读取所述通用读写寄存器中的第一写入信息,并通过所述I/O接口以及MDIO接口、按照MDIO普通帧的结构将所述第一写入信息中的数据写入PHY芯片中与所述写入的MII寄存器地址对应的MII寄存器中。
6.根据权利要求2所述的方法,其特征在于,所述MCU还设有通用读写接口,所述PHY芯片内部的寄存器包括MDIO管理装置MMD寄存器; 所述方法还包括:所述MCU通过所述通用读写接口、以及所述金手指接收主机发送的第二写入信息,并将所述第二写入信息写入内部预设的通用读写寄存器中;所述第二写入信息包括写入的MMD寄存器地址和写入所述MMD寄存器中的数据; 所述MCU读取所述通用读写寄存器中的第二写入信息,并通过所述I/O接口以及MDIO接口、按照MDIO扩展帧的结构将所述第二写入信息中的数据写入PHY芯片中与所述写入的MMD寄存器地址对应的MMD寄存器中。
7.—种电口模块的数据读写系统,其特征在于,所述电口模块包括:物理层PHY芯片、微控制单元MCU和金手指,所述PHY芯片与所述MCU通信,所述MCU通过所述金手指与主机通信; 所述MCU包括: 读取模块,用于读取所述PHY芯片内部的寄存器中的数据; 映射模块,用于将所述PHY芯片内部的寄存器中的数据映射到所述MCU内部预设的映射寄存器中; 发送模块,用于将所述映射寄存器中的数据通过所述金手指发送至所述主机。
8.根据权利要求7所述的系统,其特征在于,所述PHY芯片上设有管理数据输入输出MDIO接口,所述MCU上设有输入输出I/O接口,所述金手指上设有内部整合电路I2C接口 ;所述PHY芯片通过所述MDIO接口、以及所述I/O接口与所述MCU通信,所述MCU通过所述金手指上的I2C接口与所述主机通信。
9.根据权利要求8所述的系统,其特征在于,所述PHY芯片内部的寄存器包括介质无关接口 MII寄存器, 所述读取模块,具体用于通过所述I/O接口以及MDIO接口、按照MDIO普通帧的结构读取所述PHY芯片内部的MII寄存器中的数据; 所述映射模块,具体用于按照预先设置的MII寄存器地址和映射寄存器地址的映射关系,分别将所述MII寄存器中的数据存储至所述MII寄存器对应的映射寄存器中。
10.根据权利要求8所述的系统,其特征在于,所述MCU还设有映射区接口, 所述发送模块包括: 读取信息接收子模块,用于通过所述映射区接口、以及所述金手指上的I2C接口接收所述主机发送的读取信息,所述读取信息包括读取的MII寄存器地址; 查找读取子模块,用于查找与所述读取的MII寄存器地址相对应的映射寄存器地址,并读取所述映射寄存器中的数据,将所述映射寄存器中的数据通过所述金手指上的I2C接口发送至所述主机。
【文档编号】G06F3/06GK103677671SQ201310681480
【公开日】2014年3月26日 申请日期:2013年12月12日 优先权日:2013年12月12日
【发明者】陈小鹏 申请人:青岛海信宽带多媒体技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1