CN110175145B - Mdio接口通信方法和电路 - Google Patents

Mdio接口通信方法和电路 Download PDF

Info

Publication number
CN110175145B
CN110175145B CN201910433200.9A CN201910433200A CN110175145B CN 110175145 B CN110175145 B CN 110175145B CN 201910433200 A CN201910433200 A CN 201910433200A CN 110175145 B CN110175145 B CN 110175145B
Authority
CN
China
Prior art keywords
mdio
operation control
control signal
mdc
module
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
Application number
CN201910433200.9A
Other languages
English (en)
Other versions
CN110175145A (zh
Inventor
冯涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN GIGALIGHT TECHNOLOGY CO LTD
Original Assignee
SHENZHEN GIGALIGHT TECHNOLOGY CO LTD
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHENZHEN GIGALIGHT TECHNOLOGY CO LTD filed Critical SHENZHEN GIGALIGHT TECHNOLOGY CO LTD
Priority to CN201910433200.9A priority Critical patent/CN110175145B/zh
Publication of CN110175145A publication Critical patent/CN110175145A/zh
Application granted granted Critical
Publication of CN110175145B publication Critical patent/CN110175145B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明涉及一种MDIO接口通信方法和电路。所述方法包括:接收MDIO主机发送的MDC信号和MDIO数据信息;根据所述MDC信号确定MDIO从机的采样时刻;在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号;执行所述操作控制信号对应的操作流程。本申请通过根据MDC信号来确定MDIO从机的采样时刻,有效的解决了不同MDIO主机设备发送数据的时钟沿不一致导致MDIO从机采样数据错误的问题,同时也避免了传输信号因受到干扰而产生畸变带来的问题,通过这种方法可以提高MDIO接口通信的可靠性和稳定性。

Description

MDIO接口通信方法和电路
技术领域
本发明涉及光通信技术领域,特别是涉及一种MDIO接口通信方法和电路。
背景技术
光模块与光网络设备单板之间的通信采用MDIO(Management Data InputOutput,管理数据输入输出)总线接口。由于光模块需要和各种不同单板设备配合使用,而不同单板设备的硬件环境不一样,实现MDIO主机的方案也不尽相同。MDIO总线在通信时受到多种因素(MDIO主机本身性能局限、MDIO传输走线带来的信号损伤、电源干扰、其他高频信号干扰)的影响,在MDIO终端容易造成信号的畸变,导致单板设备与光模块的MIDO总线出现出现故障,因此提高MDIO总线传输的可靠性设计就显得非常重要。
MDIO总线通信协议中没有限定主机是在时钟的上升沿还是下降沿发送数据,如果MDIO从机使用固定时钟沿对数据采样,可能会导致时序无法满足要求,产生通信故障。另外由于MDIO主机受限于本身IO口速率性能局限,以及MDIO传输走线带来的信号损伤、电源及其他高频信号干扰等因素,信号可能会在MDIO从机终端产生畸变,同样会造成光模块与单板设备之间的通信异常。
发明内容
基于此,有必要针对上述问题,提供一种MDIO接口通信方法和电路。
一种MDIO接口通信方法,所述方法包括:
接收MDIO主机发送的MDC信号和MDIO数据信息;
根据所述MDC信号确定MDIO从机的采样时刻;
在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号;
执行所述操作控制信号对应的操作流程。
在其中一个实施例中,所述根据所述MDC信号确定MDIO从机的采样时刻的步骤,包括:
对所述MDC信号进行采样、并记录所述MDC信号的上升沿和下降沿时刻;
分别对所述MDC信号从上升沿到下降沿以及从下降沿到上升沿所需的时间进行计数;其中,将所述MDC信号从上升沿到下降沿所需的时间记为第一计数值,将所述MDC信号从下降沿到上升沿所需的时间记为第二计数值;
响应于第一计数值或第二计数值小于预设的阈值,则以所述MDIO数据信息从高电平跳转到低电平的时刻为基准做预设时间的延时;
以延时后记录到的非零值作为MDIO从机的采样时刻。
在其中一个实施例中,所述在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号的步骤,包括:
获取所述MDIO数据信息的数据帧格式;
获取所述数据帧格式中代表读写类型的操作码;
根据所述操作码输出读操作控制信号或写操作控制信号。
在其中一个实施例中,根据所述操作码输出的操作控制信号为读操作控制信号;所述执行所述操作控制信号对应的操作流程的步骤,包括:
获取与所述MDIO数据信息中地址信息对应的寄存器;
将所述寄存器中存储的数据信息传送给所述MDIO主机。
在其中一个实施例中,根据所述操作码输出的操作控制信号为写操作控制信号;所述执行所述操作控制信号对应的操作流程的步骤,包括:
获取与所述MDIO数据信息中地址信息对应的寄存器;
将需要写入的数据更新至所述寄存器中。
在其中一个实施例中,所述预设时间为两个系统时钟周期。
一种MDIO接口通信电路,所述电路包括可编程逻辑器件和控制模块;所述可编程逻辑器件通过MDIO接口与MDIO主机进行通信;所述可编程逻辑器件与所述控制模块连接;
所述可编程逻辑器件用于获取所述MDIO主机发送的MDC信号和MDIO数据信息,并根据所述MDC信号确定MDIO从机的采样时刻;所述可编程逻辑器件还用于在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号;
所述控制模块用于接收并响应所述可编辑逻辑器件输出的操作控制信号。
在其中一个实施例中,所述可编程逻辑器件包括采样时刻判决模块、第一计数器和第二计数器;所述采样时刻判决模块用于对所述MDC信号进行采样、并记录所述MDC信号的上升沿和下降沿时刻;
所述第一计数器用于对所述MDC信号从上升沿到下降沿所需的时间进行计数,所述第一计数器记录的时间记为第一计数值;
所述第二计数器用于对所述MDC信号从下降沿到上升沿所需的时间进行计数,所述第二计数器记录的时间记为第二计数值;
所述采样时刻判决模块响应于第一计数值或第二计数值小于预设的阈值,则以所述MDIO数据信息从高电平跳转到低电平的时刻为基准做预设时间的延时;
所述采样时刻判决模块还用于以延时后所述第一计数器或所述第二计数器记录到的非零值作为所述MDIO从机的采样时刻。
在其中一个实施例中,所述可编程逻辑器件还包括MDIO数据帧解析模块;
所述MDIO数据帧解析模块用于对所述MDIO数据信息的数据帧格式进行解析、并根据解析结果输出读操作控制信号或写操作控制信号。
在其中一个实施例中,所述控制模块包括写操作模块和读操作模块;所述写操作模块和读操作模块分别与所述MDIO数据帧解析模块连接;
所述写操作模块用于接收所述写操作控制信号、并执行写数据操作流程;
所述读操作模块用于接受所述读操作控制信号、并执行读数据操作流程。
上述方法和电路,通过接收MDIO主机发送的MDC信号和MDIO数据信息;根据所述MDC信号确定MDIO从机的采样时刻;在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号;执行所述操作控制信号对应的操作流程;有效的解决了不同MDIO主机设备发送数据的时钟沿不一致导致MDIO从机采样数据错误的问题,同时也避免了传输信号因受到干扰而产生畸变带来的问题,通过这种方法可以提高MDIO接口通信的可靠性和稳定性。
附图说明
图1为一实施例中的MDIO接口通信方法流程示意图;
图2为图1中步骤S20的子步骤流程示意图;
图3为图1中步骤S30的子步骤流程示意图;
图4a为图1中步骤S40的一个实施方式的流程示意图;
图4b为图1中步骤S40的另一个实施方式的流程示意图;
图5为一实施例中的MDIO接口通信电路的结构示意图;
图6为另一实施例中的MDIO接口通信电路的结构示意图;
图7为一实施例中的MDIO数据帧格式图。
具体实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的较佳实施方式。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本申请的公开内容理解的更加透彻全面。
需要说明的是,当元件被称为“固定于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的,并不表示是唯一的实施方式。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本申请。
请参阅图5,为一实施例中的MDIO接口通信电路的结构示意图。该MDIO接口通信电路可以包括可编辑逻辑器件10和控制模块20。其中,可编程逻辑器件10通过MDIO接口与MDIO主机(图5未示)进行通信;所述可编程逻辑器件10与所述控制模块20连接。MDIO接口可以包括两根信号线:MDC(图5未示)和MDIO(图5未示),通过它,MAC(介质访问控制)层芯片(或其它控制芯片)可以访问物理层芯片的寄存器(包括但不仅限于100M物理层芯片,10M物理层芯片也可以拥有这些寄存器),并通过这些寄存器来对物理层芯片进行控制和管理。MDIO管理接口如下:
MDC:管理接口的时钟,它是一个非周期信号,信号的最小周期(实际是正电平时间和负电平时间之和)为400ns,最小正电平时间和负电平时间为160ns,最大的正负电平时间无限制。
MDIO是一根双向的数据线。用来传送MAC层的控制信息和物理层的状态信息。MDIO数据与MDC时钟同步,在MDC上升沿有效。
在本发明的一实施例中,可编辑逻辑器件10可以为FPGA(Field-ProgrammableGate Array,现场可编程门阵列),也可以为CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。优选地,本申请选用内部系统时钟频率为100MHz的FPGA芯片作为可编辑逻辑器件10。
在本发明的一实施例中,控制模块20可以例如为MCU(Micro Controller Unit,微处理器),可程序化控制器、特殊应用集成电路(Application Specific IntegratedCircuit,ASIC)或其他类似组件或上述组件的组合,但本发明不限于此。优选地,控制模块20选用MCU。
可编程逻辑器件10用于获取所述MDIO主机发送的MDC信号和MDIO数据信息,并根据所述MDC信号确定MDIO从机的采样时刻;所述可编程逻辑器件10还用于在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号。进一步地,操作控制信号可以是读操作控制信号和写操作控制信号,可以理解,读操作控制信号与读数据操作流程对应,写操作控制信号与写数据操作流程对应。
控制模块20用于接收并响应所述可编辑逻辑器件10输出的操作控制信号。
在示例性技术中,光模块与设备单板之间的通信通常只是通过MDIO接口进行通信,由于光模块需要和各种不同单板设备配合使用,而不同单板设备的硬件环境不一样,实现MDIO主机的方案也不尽相同。MDIO总线在通信时受到多种因素(MDIO主机本身性能局限、MDIO传输走线带来的信号损伤、电源干扰、其他高频信号干扰)的影响,在MDIO终端容易造成信号的畸变,导致单板设备与光模块的MIDO总线出现出现故障;本申请通过在现有MDIO通信基础上,新增可编辑逻辑器件10(FPGA)来确定MDIO从机的采样时间,从而可以有效的解决不同MDIO主机设备发送数据的时钟沿不一致导致MDIO从机采样数据错误的问题,同时也可以避免传输信号因受到干扰而产生畸变带来的问题。
在一个实施例中,请参阅图6,可编辑逻辑器件10可以包括采样时刻判决模块110、第一计数器120和第二计数器130。其中,所述采样时刻判决模块110用于对所述MDC信号进行采样、并记录所述MDC信号的上升沿和下降沿时刻;所述第一计数器120用于对所述MDC信号从上升沿到下降沿所需的时间进行计数,所述第一计数器120记录的时间记为第一计数值;具体地,第一计数器120在MDC信号的上升沿来临时启动计数,在MDC信号的下降沿来临时清零,第一计数器120所记录到的时间即为本申请的第一计数值。
所述第二计数器130用于对所述MDC信号从下降沿到上升沿所需的时间进行计数,所述第二计数器130记录的时间记为第二计数值;具体地,第二计数器130在MDC信号的下降沿来临时启动计数,在MDC信号的上升沿来临时清零,第二计数器130所记录到的时间即为本申请的第二计数值。可以理解,由于可编程逻辑器件10采用选用内部系统时钟频率为100MHz的FPGA芯片。所以第一计数器120和第二计数器130可以基于FPGA芯片的内部时钟产生。
所述采样时刻判决模块110响应于第一计数值或第二计数值小于预设的阈值,则以所述MDIO数据信息从高电平跳转到低电平的时刻为基准做预设时间的延时;其中,预设的阈值可以为1ms,预设时间可以为2个系统时钟周期。所述采样时刻判决模块110还用于以延时后所述第一计数器120或所述第二计数器130记录到的非零值作为所述MDIO从机的采样时刻。本具体实施例中,高电平跳转到低电平的时刻可以理解为从逻辑电平1跳转到逻辑电平0的时刻。
在一个实施例中,如果第一计数值或第二计数值大于预设的阈值,则表示MDC信号长时间为恒定值(逻辑电平1或0),此时需要控制状态机返回到初始状态。
上述MDIO接口通信电路,通过新增可编辑逻辑器件10(FPGA)来确定MDIO从机的采样时间,从而可以有效的解决不同MDIO主机设备发送数据的时钟沿不一致导致MDIO从机采样数据错误的问题,同时也可以避免传输信号因受到干扰而产生畸变带来的问题。
在一个实施例中,所述可编程逻辑器件10还包括MDIO数据帧解析模块140;所述MDIO数据帧解析模块140用于对所述MDIO数据信息的数据帧格式进行解析、并根据解析结果输出读操作控制信号或写操作控制信号。
请参阅图7,为一实施例中的MDIO的数据帧格式示意图。其中,
Preamble+Start:32bits的前导码以及2bit的开始位。
OP Code:2bits的操作码,10表示读操作帧,01表示写操作帧。
PHYAD:物理层芯片的地址,5bits,每个芯片都把自己的地址与这5个比特进行比较,若匹配则响应后面的操作,若不匹配,则忽略掉后面的操作。
REGAD:用来选择物理层芯片的32个寄存器中的某个寄存器的地址,即要读或写的寄存器。
Turn Around:状态转换域,若为读操作,则第一比特时MDIO为高阻态,第二比特时由物理层芯片使MDIO置“0”。若为写操作,则MDIO仍由MAC层芯片控制,其连续输出“10”两个比特。
Data:16bits数据,在读命令中,PHY芯片将读到的对应PHYAD的REGAD寄存器的数据写到Data中,在写命令中,MAC(介质访问控制层)将要写入对应PHYAD的REGAD寄存器的值写入Data中。
Idle:空闲状态,此时MDIO无源驱动,处高阻状态,但一般用上拉电阻使其处在高电平,上拉电阻一般为1.5K。
根据MDIO的数据帧格式可以获知,当MDIO数据帧解析模块获取到当前MDIO数据信息中的操作码为读操作帧(10)时,就输出读操作控制信号;相应的,当获取到当前MDIO数据信息中的操作码为写操作帧(01)时,就输出写操作控制信号。
在一个实施例中,请继续参阅图6,控制模块20可以包括写操作模块210和读操作模块220;所述写操作模块210和读操作模块220分别与所述MDIO数据帧解析模块140连接;其中,所述写操作模块210用于接收所述写操作控制信号、并执行写数据操作流程;所述读操作模块220用于接受所述读操作控制信号、并执行读数据操作流程。
其中,写数据操作流程可以为:MDIO从机接收MDIO主机发过来的MDIO数据信息后,解析MDIO数据帧格式,获取MDIO数据信息中的地址信息,然后找到与地址信息对应的寄存器,并将需要写入的数据更新至该寄存器中,同时触发中断控制信号输出给控制模块20。控制模块20响应中断后,通过SPI(Serial Peripheral Interface,串行外设)接口清除可编程逻辑器件10内部中断寄存器,并将更新后的寄存器中的数据同步更新至控制模块20内部存储数据的RAM空间中。
读数据操作流程可以为:MDIO从机接收MDIO主机发过来的MDIO数据信息后,解析MDIO数据帧格式,获取MDIO数据信息中的地址信息,然后找到与地址信息对应的寄存器,并将该寄存器中存储的数据返回给MDIO主机,可编程逻辑器件10内部寄存器空间与控制模块20的完全一致,可以通过控制模块20秒任务实时进行更新。
基于同样的发明构思,本申请还提供一种MDIO接口通信方法,可以基于前述所述的MDIO接口通信系统。该方法可以包括步骤S10-S40。
步骤S10,接收MDIO主机发送的MDC信号和MDIO数据信息。
步骤S20,根据所述MDC信号确定MDIO从机的采样时刻。
具体地,MDIO主机可以为光网络设备单板或者MAC芯片,MDIO从机可以为光模块或者物理层芯片(PHY)。可通过MDIO接口接收MDIO主机发送的MDC信号和MDIO数据信息。之后,可编程逻辑器件10根据MDC信号来确定MDIO从机的采样时刻。进一步地,可编程逻辑器件10确定MDIO从机的采样时刻可以通过以下子步骤实现。
请参阅图2,本步骤可以包括子步骤S210-S240。
步骤S210,对所述MDC信号进行采样、并记录所述MDC信号的上升沿和下降沿时刻。
步骤S220,分别对所述MDC信号从上升沿到下降沿以及从下降沿到上升沿所需的时间进行计数;其中,将所述MDC信号从上升沿到下降沿所需的时间记为第一计数值,将所述MDC信号从下降沿到上升沿所需的时间记为第二计数值。
步骤S230,响应于第一计数值或第二计数值小于预设的阈值,则以所述MDIO数据信息从高电平跳转到低电平的时刻为基准做预设时间的延时。
步骤S240,以延时后记录到的非零值作为MDIO从机的采样时刻。
可通过采样时刻判决模块110来对MDC信号进行采样,同时记录MDC信号的上升沿和下降沿时刻,然后通过可编程逻辑器件10内部的系统时钟来对MDC信号从上升沿到下降沿以及从下降沿到上升沿所需的时间进行计数,为了便于区分,将MDC信号从上升沿到下降沿所需的时间记为第一计数值,记录第一计数值的内部系统时钟标记为第一计数器120,将MDC信号从下降沿到上升沿所需的时间记为第二计数值,记录第二计数值的内部系统时钟标记为第二计数器130;之后可通过采样时刻判决模块110来判断第一计数值、第二计数值与预设的阈值之间的大小;若第一计数值或第二计数值小于预设的阈值,则以MDIO数据信息从高电平(逻辑电平1)跳转到低电平(逻辑电平0)的时刻为基准做预设时间的延时;其中,预设的阈值可以为1ms,预设时间可以为2个系统时钟周期,最后,将延时后系统时钟记录到的非零值作为采样时刻。反之,则控制状态机回到初始状态。
上述步骤S210-S240,通过获取MDC从上升沿到下降沿以及从下降沿到上升沿所需的时间作为判定条件,并在满足判定条件的情况下通过以MDIO数据信息从高电平(逻辑电平1)跳转到低电平(逻辑电平0)的时刻为基准进行延时,可实现MDIO从机采样时刻的获取,为不同设备单板与光模块之间通信提供了可靠的通信保障。
步骤S30,在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号。
具体地,在确定MDIO从机的采样时刻之后,可在该采样时刻下,根据MDIO数据信息输出操作控制信号。
请参阅图3,本步骤可以包括子步骤S310-S330。
步骤S310,获取所述MDIO数据信息的数据帧格式。
步骤S320,获取所述数据帧格式中代表读写类型的操作码。
步骤S330,根据所述操作码输出读操作控制信号或写操作控制信号。
具体地,可辅助参阅图7,为MDIO数据信息的数据帧格式示意图。本具体实施例,可通过MDIO数据帧解析模块140对MDIO数据信息的数据帧格式进行获取,并对数据帧格式中代表读写类型的操作码进行识别,并根据识别出的操作码输出相应的操作控制信号(读操作控制信号或写操作控制信号),可使得本申请在确定的MDIO从机采样时刻下稳定、可靠的实现数据的传送。
步骤S40,执行所述操作控制信号对应的操作流程。
请参阅图4a,为一个实施例中的步骤S40的一个实施方式的流程示意图。根据操作码输出的操作控制信号为读操作控制信号时。该步骤S40可以包括子步骤S40a-S40b。
步骤S40a,获取与所述MDIO数据信息中地址信息对应的寄存器。
步骤S40b,将所述寄存器中存储的数据信息传送给所述MDIO主机。
具体地,MDIO从机通过MDIO接口接收MDIO主机发过来的MDIO数据信息后,通过MDIO数据帧解析模块140对解析MDIO数据信息进行解析,获取MDIO数据信息中的地址信息,通过可编程逻辑器件10找到与地址信息对应的寄存器,并将该寄存器中存储的数据返回给MDIO主机,可编程逻辑器件10内部寄存器空间与控制模块20的完全一致,可以通过控制模块20秒任务实时进行更新。
请参阅图4b,为另一个实施例中的步骤S40的一个实施方式的流程示意图。根据操作码输出的操作控制信号为写操作控制信号时。该步骤S40可以包括子步骤S40a-S40b。
步骤S40a,获取与所述MDIO数据信息中地址信息对应的寄存器。
步骤S40b,将需要写入的数据更新至所述寄存器中。
具体地,MDIO从机通过MDIO接口接收MDIO主机发过来的MDIO数据信息后,通过MDIO数据帧解析模块140对解析MDIO数据信息进行解析,获取MDIO数据信息中的地址信息,然后通过可编程逻辑器件10找到与地址信息对应的寄存器,并将需要写入的数据更新至该寄存器中,同时触发中断控制信号输出给控制模块20,控制模块20响应中断后,通过SPI(Serial Peripheral Interface,串行外设)接口清除可编程逻辑器件10内部中断寄存器,并将更新后的寄存器中的数据同步更新至控制模块20内部存储数据的RAM空间中。
上述MDIO接口通信方法,通过接收MDIO主机发送的MDC信号和MDIO数据信息;根据所述MDC信号确定MDIO从机的采样时刻;在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号;执行所述操作控制信号对应的操作流程;有效的解决了不同MDIO主机设备发送数据的时钟沿不一致导致MDIO从机采样数据错误的问题,同时也避免了传输信号因受到干扰而产生畸变带来的问题,通过这种方法可以提高MDIO接口通信的可靠性和稳定性。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (8)

1.一种MDIO接口通信方法,其特征在于,所述方法包括:
接收MDIO主机发送的MDC信号和MDIO数据信息;
根据所述MDC信号确定MDIO从机的采样时刻;
在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号,所述操作控制信号包括读操作控制信号和写操作控制信号;
执行所述操作控制信号对应的操作流程,
所述根据所述MDC信号确定MDIO从机的采样时刻的步骤,包括:
对所述MDC信号进行采样、并记录所述MDC信号的上升沿和下降沿时刻;
分别对所述MDC信号从上升沿到下降沿以及从下降沿到上升沿所需的时间进行计数;其中,将所述MDC信号从上升沿到下降沿所需的时间记为第一计数值,将所述MDC信号从下降沿到上升沿所需的时间记为第二计数值;
响应于第一计数值或第二计数值小于预设的阈值,则以所述MDIO数据信息从高电平跳转到低电平的时刻为基准做预设时间的延时;
以延时后记录到的非零值作为MDIO从机的采样时刻。
2.根据权利要求1所述的MDIO接口通信方法,其特征在于,所述在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号的步骤,包括:
获取所述MDIO数据信息的数据帧格式;
获取所述数据帧格式中代表读写类型的操作码;
根据所述操作码输出读操作控制信号或写操作控制信号。
3.根据权利要求2所述的MDIO接口通信方法,其特征在于,根据所述操作码输出的操作控制信号为读操作控制信号;所述执行所述操作控制信号对应的操作流程的步骤,包括:
获取与所述MDIO数据信息中地址信息对应的寄存器;
将所述寄存器中存储的数据信息传送给所述MDIO主机。
4.根据权利要求2所述的MDIO接口通信方法,其特征在于,根据所述操作码输出的操作控制信号为写操作控制信号;所述执行所述操作控制信号对应的操作流程的步骤,包括:
获取与所述MDIO数据信息中地址信息对应的寄存器;
将需要写入的数据更新至所述寄存器中。
5.根据权利要求1-4任一项所述的MDIO接口通信方法,其特征在于,所述预设时间为两个系统时钟周期。
6.一种MDIO接口通信电路,其特征在于,所述电路包括可编程逻辑器件和控制模块;所述可编程逻辑器件通过MDIO接口与MDIO主机进行通信;所述可编程逻辑器件与所述控制模块连接;
所述可编程逻辑器件用于获取所述MDIO主机发送的MDC信号和MDIO数据信息,并根据所述MDC信号确定MDIO从机的采样时刻;所述可编程逻辑器件还用于在所述MDIO从机的采样时刻下根据所述MDIO数据信息输出操作控制信号,所述操作控制信号包括读操作控制信号和写操作控制信号;
所述控制模块用于接收并响应所述可编程 逻辑器件输出的操作控制信号;
所述可编程逻辑器件包括采样时刻判决模块、第一计数器和第二计数器;所述采样时刻判决模块用于对所述MDC信号进行采样、并记录所述MDC信号的上升沿和下降沿时刻;
所述第一计数器用于对所述MDC信号从上升沿到下降沿所需的时间进行计数,所述第一计数器记录的时间记为第一计数值;
所述第二计数器用于对所述MDC信号从下降沿到上升沿所需的时间进行计数,所述第二计数器记录的时间记为第二计数值;
所述采样时刻判决模块响应于第一计数值或第二计数值小于预设的阈值,则以所述MDIO数据信息从高电平跳转到低电平的时刻为基准做预设时间的延时;
所述采样时刻判决模块还用于以延时后所述第一计数器或所述第二计数器记录到的非零值作为所述MDIO从机的采样时刻。
7.根据权利要求6所述的MDIO接口通信电路,其特征在于,所述可编程逻辑器件还包括MDIO数据帧解析模块;
所述MDIO数据帧解析模块用于对所述MDIO数据信息的数据帧格式进行解析、并根据解析结果输出读操作控制信号或写操作控制信号。
8.根据权利要求7所述的MDIO接口通信电路,其特征在于,所述控制模块包括写操作模块和读操作模块;所述写操作模块和读操作模块分别与所述MDIO数据帧解析模块连接;
所述写操作模块用于接收所述写操作控制信号、并执行写数据操作流程;
所述读操作模块用于接受所述读操作控制信号、并执行读数据操作流程。
CN201910433200.9A 2019-05-23 2019-05-23 Mdio接口通信方法和电路 Active CN110175145B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910433200.9A CN110175145B (zh) 2019-05-23 2019-05-23 Mdio接口通信方法和电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910433200.9A CN110175145B (zh) 2019-05-23 2019-05-23 Mdio接口通信方法和电路

Publications (2)

Publication Number Publication Date
CN110175145A CN110175145A (zh) 2019-08-27
CN110175145B true CN110175145B (zh) 2021-07-06

Family

ID=67691979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910433200.9A Active CN110175145B (zh) 2019-05-23 2019-05-23 Mdio接口通信方法和电路

Country Status (1)

Country Link
CN (1) CN110175145B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110795369B (zh) * 2019-09-19 2023-05-30 深圳震有科技股份有限公司 基于gpio管脚实现mdio从机功能的方法及终端
CN110794919B (zh) * 2019-10-22 2022-11-25 深圳震有科技股份有限公司 基于mdio实现时钟同步的方法、智能终端及存储介质
CN112527721B (zh) * 2020-12-04 2024-07-02 苏州华兴源创科技股份有限公司 一种集成电路总线接口控制装置、方法以及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553640A (zh) * 2003-06-05 2004-12-08 中兴通讯股份有限公司 一种实现以太网管理接口的装置
CN103107862A (zh) * 2013-01-18 2013-05-15 青岛海信宽带多媒体技术有限公司 逻辑器件及其mdio数据发送方法
CN103235767A (zh) * 2013-04-11 2013-08-07 和记奥普泰通信技术有限公司 一种主从mii管理接口串行通信方法
CN105227288A (zh) * 2014-06-30 2016-01-06 惠州市伟乐科技股份有限公司 Gmii数据发送方法和装置
CN105897395A (zh) * 2016-04-06 2016-08-24 济南大学 基于rmii接口的smv/goose报文的fpga实现方法
WO2016186840A1 (en) * 2015-05-20 2016-11-24 Honeywell International Inc. Apparatus and method for multi-master solution on mdio communication bus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553640A (zh) * 2003-06-05 2004-12-08 中兴通讯股份有限公司 一种实现以太网管理接口的装置
CN103107862A (zh) * 2013-01-18 2013-05-15 青岛海信宽带多媒体技术有限公司 逻辑器件及其mdio数据发送方法
CN103235767A (zh) * 2013-04-11 2013-08-07 和记奥普泰通信技术有限公司 一种主从mii管理接口串行通信方法
CN105227288A (zh) * 2014-06-30 2016-01-06 惠州市伟乐科技股份有限公司 Gmii数据发送方法和装置
WO2016186840A1 (en) * 2015-05-20 2016-11-24 Honeywell International Inc. Apparatus and method for multi-master solution on mdio communication bus
CN105897395A (zh) * 2016-04-06 2016-08-24 济南大学 基于rmii接口的smv/goose报文的fpga实现方法

Also Published As

Publication number Publication date
CN110175145A (zh) 2019-08-27

Similar Documents

Publication Publication Date Title
CN110175145B (zh) Mdio接口通信方法和电路
JP2002232409A (ja) ディジタル・データ・パターン検出方法および装置
CN112559267B (zh) 集成电路间总线i2c从机以及i2c控制器测试方法
CN106681951B (zh) 用于mvb网卡与pci总线接口通信的设备及系统
US20090034665A1 (en) Method, System and Apparatus for Quantifying the Contribution of Inter-Symbol Interference Jitter on Timing Skew Budget
CN112987545B (zh) 时间信号码元识别方法、装置及时间系统设备
CN103107862A (zh) 逻辑器件及其mdio数据发送方法
US20230231940A1 (en) Communication Method and System, Device, and Computer-Readable Storage Medium
US20120054391A1 (en) Apparatus and method for testing smnp cards
US8943255B2 (en) Methods and structure for accounting for connection resets between peripheral component interconnect express bridges and host devices
CN108984451B (zh) 信号驱动方法及通信设备
US7454543B2 (en) Early high speed serializer-deserializer (HSS)internal receive (Rx) interface for data sampling clock signals on parallel bus
CN110635854A (zh) 一种传输协议自适应解码系统及方法
CN103647966B (zh) 一种基于fpga图像数据检测方法及装置
CN113709010B (zh) 一种不限帧长的Modbus通信协议系统
US11924312B2 (en) EtherCAT controllers
CN114416622A (zh) 单总线通讯系统及方法
US20140195866A1 (en) Determining Worst-Case Bit Patterns Based Upon Data-Dependent Jitter
CN101178699A (zh) 一种支持串行管理接口热插拔的方法和装置
CN116781184B (zh) 软件定义的帧突发射频信号模拟方法、介质和系统
CN104035852B (zh) 基于自动帧重复的1553b总线硬件定时通信测试装置及方法
CN110674000B (zh) 信号测试方法与装置
CN103106162B (zh) 逻辑器件及其mdio接口通信方法
Zedan Operating system realization for real-time visualization of CAN-Bus data streams using Xilinx ZyncSoC
Mulholland A Novel Technique for Sample Point Discovery and Its Use in a Proposed Broadcast Confusion Attack on High-Speed Controller Area Networks

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
GR01 Patent grant
GR01 Patent grant