CN103235767B - 一种主从mii管理接口串行通信方法 - Google Patents
一种主从mii管理接口串行通信方法 Download PDFInfo
- Publication number
- CN103235767B CN103235767B CN201310124806.7A CN201310124806A CN103235767B CN 103235767 B CN103235767 B CN 103235767B CN 201310124806 A CN201310124806 A CN 201310124806A CN 103235767 B CN103235767 B CN 103235767B
- Authority
- CN
- China
- Prior art keywords
- mdio
- processing module
- data
- subordinate
- management interface
- 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.)
- Active
Links
Landscapes
- Communication Control (AREA)
Abstract
本发明提出了一种主从MII管理接口串行通信方法,采用本发明方法实现一驱多主从控制系统,可以在不借助MDC时钟驱动芯片、无需MDC信号线的情况下,顺利的完成主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信,从而减少了主控器件的MII管理接口与多个从属器件MII管理接口之间的数据连线,有助于降低系统PCB走线难度,减少PCB层数,并且也无需考虑因MDIO信号线与MDC信号线的走线等长处理不当导致MDIO数据与MDC时钟时序错误的问题,从而从整体上降低系统PCB走线设计难度,同时有助于减少系统中的时钟驱动芯片使用量或者时钟驱动芯片的管脚使用量,降低系统硬件成本。
Description
技术领域
本发明涉及计算机技术及通信技术领域,特别涉及一种主从MII管理接口串行通信方法。
背景技术
MII接口(MediaIndependentInterface,介质无关接口)是IEEE-802.3定义的以太网串行通信标准接口,MII接口提供了MAC层(介质访问控制层)与PHY层(物理层)之间的互联技术。MII接口中的管理接口(简称做MII管理接口,也称作SerialManagementInterface,串行管理接口)用于MAC层与PHY层之间传送控制信息和状态信息,通过MII管理接口进行MDIO数据串行通信,MAC层芯片可以访问PHY层芯片的寄存器,并通过这些寄存器来对PHY层芯片进行控制和管理。
在MDIO数据串行通信协议中,MDIO数据帧结构如图1所示,包括开始标识字段(ST)、帧操作字段(OP)、PHY层地址字段(PHYAD)、寄存器地址字段(REGAD)、状态转换字段(TA)和数据字段(DATA)。其中:
起始标识字段(ST)包含2个比特,即比特“01”,表示MDIO数据帧的起始位置。
帧操作字段(OP)包含2个比特,比特“10”表示此帧为一个读操作帧,比特“01”表示此帧为一个写操作帧。
PHY层地址字段(PHYAD)包含5个比特,用于指示物理层芯片的地址。
寄存器地址字段(REGAD)包含5个比特,用于指示物理层芯片中的寄存器地址。
状态转换字段(TA)包含2个比特,若此帧为读操作帧,则第一比特高阻态,第二比特由PHY层芯片置“0”;若此帧为写操作帧,则由MAC层芯片控制连续输出“10”两个比特。
数据字段(DATA)包含16个比特,若此帧为读操作帧,则用于承载PHY层芯片传送到MAC层芯片的状态信息数据;若此帧为写操作帧,则用于承载MAC层芯片传送到PHY层芯片的控制信息数据。
在MDIO信号线传输每个MDIO数据帧之前以32个连续的“1”比特作为帧间隔标识(或称作帧前缀字段,PRE);在MDIO信号线空闲时(空闲状态以IDLE表示),由于无源驱动,处高阻状态,但通常用上拉电阻使其处在高电平。
MAC层芯片与PHY层芯片进行MDIO数据串行通信时,MAC层芯片的MII管理接口与PHY层芯片的MII管理接口都需要连接两根信号线,即MDC(ManagementDataClock,管理数据时钟)信号线和MDIO(ManagementDataInput/Output,管理数据输入/输出)信号线;MDC信号线用于传输MDC时钟,但MDIO数据串行通信协议中的MDC时钟频率通常与MAC层芯片、PHY层芯片所在系统的系统时钟频率不同,通常MDC时钟频率为2.5MHz;MDIO信号线用于传输MDIO数据,即MAC层芯片的控制信息数据和PHY层芯片的状态信息数据;MDIO数据与MDC时钟同步传送至MII管理接口,MII管理接口在MDC时钟的上升沿触发传输MDIO数据的数据比特。MAC层芯片的MDIO处理模块和PHY层芯片的MDIO处理模块则根据处理程序控制,按照MDIO数据串行通信协议的MDC时钟频率将MII管理接口接收到的MDIO数据写入或者向MII管理接口MII管理接口读出MDIO数据。在MAC层芯片与PHY层芯片进行MDIO数据串行通信过程中,读操作帧与写操作帧的MDIO数据帧时序关系有所不同;在进行帧间隔传输以及MDIO写操作帧传输期间,MAC层芯片的MDIO处理模块始终为读操作状态,PHY层芯片的MDIO处理模块始终为写操作状态;在MDIO读操作帧的起始标识字段到寄存器地址字段的传输期间,MAC层芯片的MDIO处理模块为读操作状态,PHY层芯片的MDIO处理模块为写操作状态,而在MDIO读操作帧的状态转换字段传输期间,MAC层芯片的MDIO处理模块从读操作状态切换为写操作状态,PHY层芯片的MDIO处理模块从写操作状态切换为读操作状态,此后MDIO读操作帧中16个MDC时钟周期的数据字段传输期间,MAC层芯片的MDIO处理模块保持写操作状态,PHY层芯片的MDIO处理模块保持读操作状态。在MDC时钟的同步控制下,MAC层芯片与PHY层芯片进行MDIO数据串行通信的MDIO读操作帧时序关系以及MDIO写操作帧时序关系分别如图2、图3所示。
MDIO串行通信协议允许一个MAC层芯片通过MII管理接口的MDIO串行通信同时驱动控制多个PHY层芯片(最多支持32个),构成一驱多的主从控制系统。在这种一驱多的主从控制系统中,通常将处于主导控制地位的MAC层芯片通常称为主控器件,被控制的PHY层芯片通常称为从属器件,其系统结构框图如图4所示。可以看到,由于MAC层芯片和PHY层芯片的MII管理接口需要在MDC时钟频率下工作,而MAC层芯片和PHY层芯片的其它模块在系统时钟频率工作,因此主控器件和各个从属器件除了需要连接系统时钟驱动芯片获得系统时钟(SystmClock,简称SYSC)之外,还需要在MII管理接口连接MDC时钟驱动芯片获得MDC时钟(简称MDC),或者由主控器件连接MDC时钟驱动芯片获得MDC时钟后再通过MII管理接口之间的MDC信号线将MDC时钟传送至各个从属器件;且由于从属器件数量较多,因此连线也较为繁多,容易导致系统PCB走线困难、PCB层数增加等情况,增加系统PCB走线设计难度;而且由于主控器件与从属器件的MII管理接口之间存在MDIO数据与MDC时钟时序同步的要求,在PCB走线时,如果MDIO信号线与MDC信号线的走线等长处理不当,可能会因为走线传输延迟差异而导致MDIO数据与MDC时钟时序错误,从而从另一个层面进一步增加了系统PCB走线设计的难度;并且系统中多个时钟的使用,无疑也增加了系统中的时钟驱动芯片使用量或者时钟驱动芯片的管脚使用量,相应的增加了硬件成本。
发明内容
针对现有技术的上述不足,本发明的目的在于提供一种主从MII管理接口串行通信方法,使得在不借助MDC时钟驱动芯片、无需MDC信号线的情况下,主控器件的MII管理接口与多个从属器件MII管理接口之间即可进行MDIO数据串行通信,以降低一驱多主从控制系统的PCB设计难度,减少一驱多主从控制系统的硬件成本。
为实现上述目的,本发明采用的技术方案如下:
一种主从MII管理接口串行通信方法,用于主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信;主控器件的MDIO处理模块以及各个从属器件的MDIO处理模块均按照MDIO串行通信协议进行MDIO数据处理,主控器件的MII管理接口以及各个从属器件的MII管理接口仅连接MDIO串行总线;主控器件的MDIO处理模块和MII管理接口之间还设有主控计数锁存处理模块,每个从属器件的MDIO处理模块和MII管理接口之间还设有从属计数锁存处理模块,且主控器件和各个从属器件所在系统的系统时钟频率设置为MDIO串行通信协议中MDC时钟频率的N倍,N为正整数,主控器件的主控计数锁存处理模块以及各个从属器件的从属计数锁存处理模块均以系统时钟频率进行累加计数和数据采样操作;其中:
主控器件中,在主控器件的MDIO处理模块进行读操作期间,主控计数锁存处理模块将MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过主控器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,且每当MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时或者每当累加计数到N时,主控计数锁存处理模块将计数复位为零并重新开始进行累加计数;在主控器件的MDIO处理模块进行写操作期间,主控计数锁存处理模块以系统时钟频率获取主控器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当累加计数到N时,主控计数锁存处理模块将计数复位为零并重新开始进行累加计数,每当累加计数到第一预设取数值n1时,主控计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给主控器件的MDIO处理模块,从而从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给主控器件的MDIO处理模块进行MDIO数据处理;其中,0<n1<N;
从属器件中,在从属器件的MDIO处理模块进行写操作期间,从属计数锁存处理模块以系统时钟频率获取从属器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时或者每当累加计数到N时,从属计数锁存处理模块将计数复位为零并重新开始进行累加计数,每当累加计数到第二预设取数值n2时,从属计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给从属器件的MDIO处理模块,从而从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给从属器件的MDIO处理模块进行MDIO数据处理;其中,0<n2<N;在从属器件的MDIO处理模块进行读操作期间,从属计数锁存处理模块将MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过从属器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,且每当累加计数到N时,从属计数锁存处理模块将计数复位为零并重新开始进行累加计数。
进一步,所述主控器件进行MDIO数据串行通信的过程中,主控器件的MDIO处理模块在读出MDIO读操作帧中寄存器地址字段的全部数据之后主控计数锁存处理模块第1次计数复位为零时,主控器件的MDIO处理模块从读操作切换为写操作;主控器件的MDIO处理模块在接收到MDIO读操作帧中数据字段的全部数据之后主控计数锁存处理模块第1次计数复位为零时,主控器件的MDIO处理模块从写操作切换为读操作。
进一步,所述从属器件进行MDIO数据串行通信的过程中,若从属器件的MDIO处理模块接收到MDIO读操作帧,且该MDIO读操作帧中PHY层地址字段指示的物理层芯片地址与从属器件的芯片地址相同,则从属器件的MDIO处理模块在接收到该MDIO读操作帧中寄存器地址字段的全部数据之后从属计数锁存处理模块第1次计数复位为零时,从属器件的MDIO处理模块从写操作切换为读操作;从属器件的MDIO处理模块在读出MDIO读操作帧中数据字段的全部数据之后从属计数锁存处理模块第1次计数复位为零时,从属器件的MDIO处理模块从读操作切换为写操作。
进一步,所述N的优选取值范围为10~100。
进一步,所述第一预设取数值n1的优选取值范围为N/3≤n1≤2N/3;所述第二预设取数值n2的优选取值范围为N/3≤n2≤2N/3。
进一步,所述主控器件和从属器件可分别采用FPGA芯片编程实现。
相比于现有技术,本发明具有下述优点:
1、采用本发明主从MII管理接口串行通信方法,一驱多主从控制系统可以在不借助MDC时钟驱动芯片、无需MDC信号线的情况下,顺利的完成主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信,从而减少了主控器件的MII管理接口与多个从属器件MII管理接口之间的数据连线,有助于降低系统PCB走线难度,减少PCB层数,有助于降低系统PCB走线设计难度。
2、采用本发明主从MII管理接口串行通信方法,由于无需MDC信号线,因此无需考虑因MDIO信号线与MDC信号线的走线等长处理不当导致MDIO数据与MDC时钟时序错误的问题,由主控器件的主控计数锁存处理模块以及从属器件的从属计数锁存处理模块的控制,即可保证MDIO数据串行通信以及MDIO数据处理的时序正确性,从而进一步从整体上降低了系统PCB走线设计的难度。
3、本发明主从MII管理接口串行通信方法中,在不借助MDC时钟驱动芯片的条件下实现了主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信,减少了系统中的时钟驱动芯片使用量或者时钟驱动芯片的管脚使用量,降低了系统硬件成本。
附图说明
图1为MDIO数据帧结构示意图。
图2为MDIO串行通信协议中,MAC层芯片与PHY层芯片进行MDIO数据串行通信的MDIO读操作帧时序关系图。
图3为MDIO串行通信协议中,MAC层芯片与PHY层芯片进行MDIO数据串行通信的MDIO写操作帧时序关系图。
图4为现有技术中一驱多主从控制系统连接示意图。
图5为采用本发明主从MII管理接口串行通信方法的一驱多主从控制系统连接示意图。
具体实施方式
下面结合附图和实施例对本发明的技术方案进一步说明。
在现有技术的一驱多主从控制系统中,一方面,由于MAC层芯片(即主控器件)和PHY层芯片(即从属器件)的MII管理接口需要在MDC时钟的控制下进行数据输出操作,主控器件和从属器件都需要连接系统时钟信号线、MDIO信号线和MDC信号线等,而且从属器件数量较多,因此连线也较为繁多,容易导致系统PCB走线困难、PCB层数增加等情况,增加系统PCB走线设计难度;另一方面,由于主控器件与从属器件的MII管理接口之间存在MDIO数据与MDC时钟时序同步的要求,在PCB走线时,如果MDIO信号线与MDC信号线的走线等长处理不当,可能会因为走线传输延迟差异而导致MDIO数据与MDC时钟时序错误,从而又进一步增加了系统PCB走线设计的难度。针对这些问题,本发明提出了一种主从MII管理接口串行通信方法,用于主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信,使得在不借助MDC时钟驱动芯片、无需MDC信号线的情况下,主控器件的MII管理接口与多个从属器件MII管理接口之间即可进行MDIO数据串行通信,以降低一驱多主从控制系统的PCB设计难度,减少一驱多主从控制系统的硬件成本。
本发明的主从MII管理接口串行通信方法中,主控器件的MDIO处理模块以及各个从属器件的MDIO处理模块均按照MDIO串行通信协议进行MDIO数据处理,主控器件的MII管理接口以及各个从属器件的MII管理接口仅连接MDIO串行总线;主控器件的MDIO处理模块和MII管理接口之间还设有主控计数锁存处理模块,每个从属器件的MDIO处理模块和MII管理接口之间还设有从属计数锁存处理模块,且主控器件和各个从属器件所在系统的系统时钟频率设置为MDIO串行通信协议中MDC时钟频率的N倍,N为正整数,主控器件的主控计数锁存处理模块以及各个从属器件的从属计数锁存处理模块均以系统时钟频率进行累加计数和数据采样操作。其中:主控器件中,在主控器件的MDIO处理模块进行读操作期间,主控计数锁存处理模块将MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过主控器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,且每当MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时或者每当累加计数到N时,主控计数锁存处理模块将计数复位为零并重新开始进行累加计数;在主控器件的MDIO处理模块进行写操作期间,主控计数锁存处理模块以系统时钟频率获取主控器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当累加计数到N时,主控计数锁存处理模块将计数复位为零并重新开始进行累加计数,每当累加计数到第一预设取数值n1时,主控计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给主控器件的MDIO处理模块,从而从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给主控器件的MDIO处理模块进行MDIO数据处理;其中,0<n1<N。从属器件中,在从属器件的MDIO处理模块进行写操作期间,从属计数锁存处理模块以系统时钟频率获取从属器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时或者每当累加计数到N时,从属计数锁存处理模块将计数复位为零并重新开始进行累加计数,每当累加计数到第二预设取数值n2时,从属计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给从属器件的MDIO处理模块,从而从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给从属器件的MDIO处理模块进行MDIO数据处理;其中,0<n2<N;在从属器件的MDIO处理模块进行读操作期间,从属计数锁存处理模块将MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过从属器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,且每当累加计数到N时,从属计数锁存处理模块将计数复位为零并重新开始进行累加计数。
在本发明的主从MII管理接口串行通信方法中,主控器件的MDIO处理模块以及各个从属器件的MDIO处理模块可以保持与现有技术一样,按照MDIO串行通信协议进行MDIO数据处理,即依然以MDIO串行通信协议中的MDC时钟频率进行MDIO数据读出和写入操作但与现有技术不同的是,系统中设置了系统时钟频率为MDIO串行通信协议中MDC时钟频率的N倍,N为正整数,也就是说N个系统时钟周期就相当于一个MDC时钟周期,同时主控器件中的主控计数锁存处理模块以及每个从属器件中的从属计数锁存处理模块均以系统时钟频率进行累加计数和数据采样操作,且无论在进行写操作期间还是在进行读操作期间,主控计数锁存处理模块和从属计数锁存处理模块都会在累加计数到N时将计数复位为零并重新开始进行累加计数,因此只要能确保主控计数锁存处理模块和从属计数锁存处理模块将计数复位为零并重新开始进行累加计数的时刻与MDC时钟周期切换的时刻相一致,即可让主控计数锁存处理模块和从属计数锁存处理模块以系统时钟频率从零累加计数到N的N个系统时钟周期与一个MDC时钟周期相同步。为了确保这种同步,在本发明的主从MII管理接口串行通信方法中,由于MDIO数据中的帧间隔为MDC时钟频率的32个比特“1”,并且MDIO数据帧中的起始标识字段为比特“01”,因此MDC时钟频率的MDIO数据被N被采样转换为MDIO系统时钟采样数据后,MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特的时刻,即表示MDIO数据中的帧间隔的最后一个MDC时钟周期到MDIO数据帧的第一个MDC时钟周期相切换的时刻,而这个切换时刻在MDIO数据串行通信过程中始终发生在主控器件的MDIO处理模块进行读操作、从属器件的MDIO处理模块进行写操作的期间,因此主控器件的MDIO处理模块进行读操作期间,主控计数锁存处理模块每当在MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时会强制将计数复位为零并重新开始进行累加计数,使得主控计数锁存处理模块将计数复位为零的时刻与主控器件的MDIO处理模块进行MDIO数据处理的MDC时钟周期切换时刻进行同步,而从属器件的MDIO处理模块进行写操作期间,从属计数锁存处理模块每当在MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时也会强制将计数复位为零并重新开始进行累加计数,使得从属计数锁存处理模块将计数复位为零的时刻与从属器件的MDIO处理模块进行MDIO数据处理的MDC时钟周期切换时刻进行同步;也就是说,在每个MDIO数据帧开始的时刻,主控计数锁存处理模块和从属计数锁存处理模块从零到N的循环累加计数周期都会与MDC时钟周期进行一次同步,从而确保了每个MDIO数据帧从帧头值帧尾的数据处理期间(MDIO数据帧从帧头值帧尾共32个MDC时钟周期)主控计数锁存处理模块和从属计数锁存处理模块从零到N的循环累加计数周期与MDC时钟周期相同步。在这种同步得以保证的条件下,在主控器件的MII管理接口与多个从属器件MII管理接口之间进行MDIO数据串行通信的过程中,由于进行帧间隔传输以及MDIO写操作帧传输期间,主控器件的MDIO处理模块始终为读操作状态,从属器件的MDIO处理模块始终为写操作状态,此期间,主控计数锁存处理模块将主控器件的MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过主控器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,同时从属计数锁存处理模块以系统时钟频率获取从属器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当累加计数到第二预设取数值n2时,0<n2<N,从属计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给从属器件的MDIO处理模块,也就是说,从属计数锁存处理模块在从0到N累加计数的N个系统时钟周期中(即一个MDC时钟周期中)会对MDIO系统时钟采样数据进行一次下采样锁存处理,并将锁存的数据值传送给从属器件的MDIO处理模块,这样就从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给从属器件的MDIO处理模块进行MDIO数据处理,并且由于从属计数锁存处理模块从零到N的循环累加计数周期与从属器件的MDIO处理模块进行MDIO数据处理的MDC时钟周期相同步,保证了从属器件的MDIO处理模块能够对恢复出的MDC时钟频率的MDIO数据进行正确的MDIO数据处理。而在进行及MDIO读操作帧传输过程中,在MDIO读操作帧的起始标识字段到寄存器地址字段的传输期间,主控器件的MDIO处理模块为读操作状态,从属器件的MDIO处理模块为写操作状态,此期间,主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信处理逻辑与进行MDIO写操作帧传输的串行通信处理逻辑相一致,不再赘述了;而在MDIO读操作帧的状态转换字段传输期间,主控器件的MDIO处理模块从读操作状态切换为写操作状态,从属器件的MDIO处理模块从写操作状态切换为读操作状态;此后MDIO读操作帧中16个MDC时钟周期的数据字段传输期间,主控器件的MDIO处理模块保持写操作状态,从属器件的MDIO处理模块保持读操作状态,从属计数锁存处理模块将从属器件的MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过从属器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,同时主控计数锁存处理模块以系统时钟频率获取主控器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当累加计数到第一预设取数值n1时,主控计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给主控器件的MDIO处理模块,也就是说,主控计数锁存处理模块在从0到N累加计数的N个系统时钟周期中(即一个MDC时钟周期中)会对MDIO系统时钟采样数据进行一次下采样锁存处理,并将锁存的数据值传送给主控器件的MDIO处理模块,这样就从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给主控器件的MDIO处理模块进行MDIO数据处理,并且由于主控计数锁存处理模块从零到N的循环累加计数周期与主控器件的MDIO处理模块进行MDIO数据处理的MDC时钟周期相同步,保证了主控器件的MDIO处理模块能够对恢复出的MDC时钟频率的MDIO数据进行正确的MDIO数据处理;MDIO读操作帧的数据字段传输完成后,主控器件的MDIO处理模块从写操作状态切换恢复为读操作状态,从属器件的MDIO处理模块从读操作状态切换恢复为写操作状态。而由于主控计数锁存处理模块和从属计数锁存处理模块的数据采样是以时钟频率进行的,同时主控器件的MII管理接口以及各个从属器件的MII管理接口之间的MDIO系统时钟采样数据传输也是以系统时钟频率进行的,因此,在主控器件的MDIO处理模块进行读操作期间主控计数锁存处理模块到主控器件的MII管理接口之间的数据传输,以及在从属器件的MDIO处理模块进行读操作期间从属计数锁存处理模块到从属器件的MII管理接口之间的数据传输,则都不需要进行下采样锁存处理,直接以系统时钟频率进行数据传输。
采用本发明主从MII管理接口串行通信方法的一驱多主从控制系统连接示意图如图5所示,主控器件的MII管理接口以及各个从属器件的MII管理接口仅连接MDIO串行总线(图5中简称为MDIO);当然,在系统中,主控器件和各个从属器件还需要连接系统时钟驱动芯片以获得系统时钟(图5中简称为SYSC)。通过上述采用本发明主从MII管理接口串行通信方法的MDIO数据串行通信过程并结合图5可以看到,一驱多主从控制系统可以在不借助MDC时钟驱动芯片、无需MDC信号线的情况下,顺利的完成主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信,从而减少了主控器件的MII管理接口与多个从属器件MII管理接口之间的数据连线,有助于降低系统PCB走线难度,减少PCB层数,并且也无需考虑因MDIO信号线与MDC信号线的走线等长处理不当导致MDIO数据与MDC时钟时序错误的问题,从而从整体上降低系统PCB走线设计难度,同时有助于减少系统中的时钟驱动芯片使用量或者时钟驱动芯片的管脚使用量,降低系统硬件成本。
由于在本发明主从MII管理接口串行通信方法中,主控计数锁存处理模块和从属计数锁存处理模块的数据采样是以时钟频率进行的,并且主控计数锁存处理模块和从属计数锁存处理模块是通过从零累加计数到N的N个系统时钟周期与各自MDIO处理模块的一个MDC时钟周期相同步来保证下采样锁存处理的时序正确性;为了确保主控器件的MDIO处理模块以及从属器件的MDIO处理模块进行读/写操作切换前后,依然能够很好的保证主控计数锁存处理模块和从属计数锁存处理模块进行下采样锁存处理的时序正确性,作为一种进一步优化方案,主控器件进行MDIO数据串行通信的过程中,主控器件的MDIO处理模块在读出MDIO读操作帧中寄存器地址字段的全部数据之后主控计数锁存处理模块第1次计数复位为零时(即相当于在MDIO读操作帧中状态转换字段的起始时刻),主控器件的MDIO处理模块从读操作切换为写操作;主控器件的MDIO处理模块在接收到MDIO读操作帧中数据字段的全部数据之后主控计数锁存处理模块第1次计数复位为零时(即相当于在MDIO读操作帧中数据字段的终止时刻),主控器件的MDIO处理模块从写操作切换为读操作;由此,即可确保主控器件的MDIO处理模块进行读/写操作切换前后,依然能够很好的保证主控计数锁存处理模块进行下采样锁存处理的时序正确性。相应地,从属器件进行MDIO数据串行通信的过程中,若从属器件的MDIO处理模块接收到MDIO读操作帧,且该MDIO读操作帧中PHY层地址字段指示的物理层芯片地址与从属器件的芯片地址相同,则从属器件的MDIO处理模块在接收到该MDIO读操作帧中寄存器地址字段的全部数据之后从属计数锁存处理模块第1次计数复位为零时(即相当于在与该从属器件相关的MDIO读操作帧中状态转换字段的起始时刻;如果MDIO读操作帧中PHY层地址字段指示的物理层芯片地址与从属器件的芯片地址不相同相同,即对于与该从属器件不相关的MDIO读操作帧,从属器件的MDIO处理模块会选择忽略该MDIO读操作帧PHY层地址字段之后的数据,不会切换进入读操作状态),从属器件的MDIO处理模块从写操作切换为读操作;从属器件的MDIO处理模块在读出MDIO读操作帧中数据字段的全部数据之后从属计数锁存处理模块第1次计数复位为零时(即相当于在MDIO读操作帧中数据字段的终止时刻),从属器件的MDIO处理模块从读操作切换为写操作;由此,即可确保从属器件的MDIO处理模块进行读/写操作切换前后,依然能够很好的保证从属计数锁存处理模块进行下采样锁存处理的时序正确性。
在采用本发明的主从MII管理接口串行通信方法设计或生产一驱多主从控制系统的应用过程中,设置系统时钟频率为MDIO串行通信协议中MDC时钟频率的N倍,由于MDIO串行通信协议中MDC时钟频率通常为2.5MHz,因此从实施可行性角度考虑,N的优选取值范围为10~100,即相当于优选设置系统时钟频率为25MHz~250MHz,系统时钟频率若设置过低,不利于保证N倍过采样后再进行下采样锁存处理的数据准确性,而系统时钟频率若设置过高,则会使得主控计数锁存处理模块和各个从属计数锁存处理模块的逻辑处理负荷过重,影响系统MDIO数据串行通信处理的效率;在本发明方案中,作为最优选择,可设置系统时钟频率为150MHz。
进一步,考虑到实际设计或生产应用中,由于所采用的系统时钟芯片的实际时钟频率与预设的系统时钟频率存在不可避免的个体误差,这种个体误差会导致主控计数锁存处理模块以及从属计数锁存处理模块从零到N的循环累加计数周期与MDC时钟周期之间的同步存在少许的频偏,这也是本发明主从MII管理接口串行通信方法中,在每个MDIO数据帧开始的时刻,主控计数锁存处理模块和从属计数锁存处理模块从零到N的循环累加计数周期都会与MDC时钟周期进行一次同步的原因,而为了进一步避免这种少许的频偏影响主控计数锁存处理模块和从属计数锁存处理模块进行下采样锁存处理的时序正确性,设置第一预设取数值n1的优选取值范围为N/3≤n1≤2N/3,设置第二预设取数值n2的优选取值范围为N/3≤n2≤2N/3,使得主控计数锁存处理模块和从属计数锁存处理模块在进行下采样锁存处理的过程中存在先后N/3的频偏容差范围,保证下采样锁存处理的时序正确性;当然,第一预设取数值n1和第二预设取数值n2的取值可以互不相同,并且作为最优选择,可以取第一预设取数值n1=N/2,取第二预设取数值n2=N/2。
本发明主从MII管理接口串行通信方法中所述的主控器件、从属器件中各个模块的功能,都可以借助具备逻辑运算处理能力的处理芯片通过编程得以实现,本领域技术人员可以根据自身具备的编程技术知识以及自己熟练掌握、习惯使用的编程语言,选择相适宜的处理芯片编程实现主控器件和从属器件,完成本发明的主从MII管理接口串行通信方法。对于本发明主从MII管理接口串行通信方法而言,主控器件和从属器件可分别优选采用FPGA芯片编程实现,FPGA芯片应用普遍,硬件成本低廉,而且目前市面上的FPGA芯片已经能够很好的满足本发明主从MII管理接口串行通信方法对主控器件、从属器件的性能要求。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (6)
1.一种主从MII管理接口串行通信方法,用于主控器件的MII管理接口与多个从属器件MII管理接口之间的MDIO数据串行通信;其特征在于,主控器件的MDIO处理模块以及各个从属器件的MDIO处理模块均按照MDIO串行通信协议进行MDIO数据处理,主控器件的MII管理接口以及各个从属器件的MII管理接口仅连接MDIO串行总线;主控器件的MDIO处理模块和MII管理接口之间还设有主控计数锁存处理模块,每个从属器件的MDIO处理模块和MII管理接口之间还设有从属计数锁存处理模块,且主控器件和各个从属器件所在系统的系统时钟频率设置为MDIO串行通信协议中MDC时钟频率的N倍,N为大于1的正整数,主控器件的主控计数锁存处理模块以及各个从属器件的从属计数锁存处理模块均以系统时钟频率进行累加计数和数据采样操作;其中:
主控器件中,在主控器件的MDIO处理模块进行读操作期间,主控计数锁存处理模块将MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过主控器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,且每当MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时或者每当累加计数到N时,主控计数锁存处理模块将计数复位为零并重新开始进行累加计数;在主控器件的MDIO处理模块进行写操作期间,主控计数锁存处理模块以系统时钟频率获取主控器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当累加计数到N时,主控计数锁存处理模块将计数复位为零并重新开始进行累加计数,每当累加计数到第一预设取数值n1时,主控计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给主控器件的MDIO处理模块,从而从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给主控器件的MDIO处理模块进行MDIO数据处理;其中,0<n1<N;
从属器件中,在从属器件的MDIO处理模块进行写操作期间,从属计数锁存处理模块以系统时钟频率获取从属器件的MII管理接口从MDIO总线接收到的MDIO系统时钟采样数据,且每当MDIO系统时钟采样数据中出现连续32N个高电平数据比特以后的第一个低电平数据比特时或者每当累加计数到N时,从属计数锁存处理模块将计数复位为零并重新开始进行累加计数,每当累加计数到第二预设取数值n2时,从属计数锁存处理模块将MDIO系统时钟采样数据中当前时刻的一个比特数据锁存并传送给从属器件的MDIO处理模块,从而从MDIO系统时钟采样数据中恢复出MDC时钟频率的MDIO数据传送给从属器件的MDIO处理模块进行MDIO数据处理;其中,0<n2<N;在从属器件的MDIO处理模块进行读操作期间,从属计数锁存处理模块将MDIO处理模块需要读出的MDC时钟频率的MDIO数据以系统时钟频率进行N倍采样转换为MDIO系统时钟采样数据,通过从属器件的MII管理接口以系统时钟频率将MDIO系统时钟采样数据发送至MDIO总线,且每当累加计数到N时,从属计数锁存处理模块将计数复位为零并重新开始进行累加计数。
2.根据权利要求1所述的主从MII管理接口串行通信方法,其特征在于,所述主控器件进行MDIO数据串行通信的过程中,主控器件的MDIO处理模块在读出MDIO读操作帧中寄存器地址字段的全部数据之后主控计数锁存处理模块第1次计数复位为零时,主控器件的MDIO处理模块从读操作切换为写操作;主控器件的MDIO处理模块在接收到MDIO读操作帧中数据字段的全部数据之后主控计数锁存处理模块第1次计数复位为零时,主控器件的MDIO处理模块从写操作切换为读操作。
3.根据权利要求1所述的主从MII管理接口串行通信方法,其特征在于,所述从属器件进行MDIO数据串行通信的过程中,若从属器件的MDIO处理模块接收到MDIO读操作帧,且该MDIO读操作帧中PHY层地址字段指示的物理层芯片地址与从属器件的芯片地址相同,则从属器件的MDIO处理模块在接收到该MDIO读操作帧中寄存器地址字段的全部数据之后从属计数锁存处理模块第1次计数复位为零时,从属器件的MDIO处理模块从写操作切换为读操作;从属器件的MDIO处理模块在读出MDIO读操作帧中数据字段的全部数据之后从属计数锁存处理模块第1次计数复位为零时,从属器件的MDIO处理模块从读操作切换为写操作。
4.根据权利要求1所述的主从MII管理接口串行通信方法,其特征在于,所述N的优选取值范围为10~100。
5.根据权利要求1所述的主从MII管理接口串行通信方法,其特征在于,所述第一预设取数值n1的优选取值范围为N/3≤n1≤2N/3;所述第二预设取数值n2的优选取值范围为N/3≤n2≤2N/3。
6.根据权利要求1所述的主从MII管理接口串行通信方法,其特征在于,所述主控器件和从属器件可分别采用FPGA芯片编程实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310124806.7A CN103235767B (zh) | 2013-04-11 | 2013-04-11 | 一种主从mii管理接口串行通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310124806.7A CN103235767B (zh) | 2013-04-11 | 2013-04-11 | 一种主从mii管理接口串行通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103235767A CN103235767A (zh) | 2013-08-07 |
CN103235767B true CN103235767B (zh) | 2015-12-09 |
Family
ID=48883812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310124806.7A Active CN103235767B (zh) | 2013-04-11 | 2013-04-11 | 一种主从mii管理接口串行通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103235767B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559159A (zh) * | 2013-10-25 | 2014-02-05 | 华为技术有限公司 | 一种信息处理方法以及电子设备 |
CN103747113B (zh) * | 2013-12-27 | 2017-05-03 | 珠海全志科技股份有限公司 | 一种以太网控制器phy芯片mii地址自动识别的方法 |
CN108270519B (zh) * | 2018-01-25 | 2020-09-15 | 上海星秒光电科技有限公司 | 信号传输方法和装置 |
CN110175145B (zh) * | 2019-05-23 | 2021-07-06 | 深圳市易飞扬通信技术有限公司 | Mdio接口通信方法和电路 |
CN110794919B (zh) * | 2019-10-22 | 2022-11-25 | 深圳震有科技股份有限公司 | 基于mdio实现时钟同步的方法、智能终端及存储介质 |
CN114610669B (zh) * | 2022-03-16 | 2023-10-20 | 无锡英迪芯微电子科技股份有限公司 | 多路串口通信中实现时钟同步校准的方法及系统 |
CN119583503A (zh) * | 2023-09-06 | 2025-03-07 | 华为技术有限公司 | 信号处理方法、装置及系统 |
-
2013
- 2013-04-11 CN CN201310124806.7A patent/CN103235767B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103235767A (zh) | 2013-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103235767B (zh) | 一种主从mii管理接口串行通信方法 | |
US11671521B2 (en) | Ethernet interface and related systems, methods and devices | |
US20060153238A1 (en) | Transfer of control data between network components | |
CN106464559B (zh) | 用于分布式控制系统的高速嵌入式协议 | |
CN104954096B (zh) | 一种一主多从的高速同步串行通信数据传输方法 | |
US20070165663A1 (en) | Method and System for a Plurality of Physical Layers for Network Connection | |
CN105406998A (zh) | 基于fpga的双冗余千兆以太网介质访问控制器ip核 | |
CN102474438B (zh) | 环状传输系统中的节点装置、集成电路及控制方法 | |
WO2008145011A1 (fr) | Procédé de transmission de signal parallèle d'une alimentation ininterrompue | |
CN110032534B (zh) | 多从属装置串行通信 | |
WO2015127282A1 (en) | Coexistence of legacy and next generation devices over a shared multi-mode bus | |
CN105117319A (zh) | 基于fpga实现对多路mdio设备实时监控的方法 | |
US7668194B2 (en) | Dual speed interface between media access control unit and physical unit | |
CN104871510A (zh) | 用于将mdio编码进sgmii传输中的装置和方法 | |
EP1988470B1 (en) | Network device and transmission method thereof | |
US7843966B2 (en) | Communication system for flexible use in different application scenarios in automation technology | |
CN105306421A (zh) | 一种基于pci-e接口的信号处理方法及信号处理装置 | |
EP3618317A1 (en) | Message sending method and message receiving method and apparatus | |
US20180083800A1 (en) | Aggregation Device, System, And Method Thereof | |
US20240154917A1 (en) | Control of Ethernet Link-Partner GPIO using OAM | |
CN118473850A (zh) | 用于电力电子装置星形分布式控制的高速串行通信方法 | |
CN106330357B (zh) | 一种serdes的传输校验方法、节点与系统 | |
CN110659236A (zh) | 可自主回复写应答的axi总线传输装置 | |
JP2008521084A (ja) | バス通信システム | |
CN113836058A (zh) | 一种板卡间数据交换方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 401120 No.1, 6th floor, building 7, No.106, west section of Jinkai Avenue, Yubei District, Chongqing Patentee after: Chongqing aoputai Communication Technology Co.,Ltd. Address before: 401121 2nd floor, building A3, development area, No.18 Qingfeng North Road, new North District, Chongqing Patentee before: HUTCHISON OPTEL TELECOM TECHNOLOGY Co.,Ltd. |