[发明专利]一种通过CPLD实现MDIO接口信号转换的方法无效
申请号: | 201110407431.6 | 申请日: | 2011-12-08 |
公开(公告)号: | CN102521189A | 公开(公告)日: | 2012-06-27 |
发明(设计)人: | 邢文飚 | 申请(专利权)人: | 北京华源格林科技有限公司 |
主分类号: | G06F13/40 | 分类号: | G06F13/40 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 通过 cpld 实现 mdio 接口 信号 转换 方法 | ||
技术领域
本发明涉及电子器件技术领域,特别涉及一种通过复杂可编程逻辑器件(CPLD)实现管理数据输入输出(MDIO)接口信号转换的方法。
背景技术
在以太网通信中,中央处理器(CPU)对物理层(PHY)器件的操作主要有两种方式:第一种方式是通过CPU直接对PHY器件进行读写寄存器控制;第二种方式是通过交换芯片对PHY器件进行读写寄存器控制。
比较这两种方法的优缺点,第一种方式的优点是对PHY器件的操作清晰明了;缺点是需要CPU实现PHY器件的控制接口的模拟工作,需要占用CPU资源,并且使整个软件结构错乱。
第二种方式的优点是软件结构清晰,不需要CPU模拟PHY器件的控制接口;缺点是,通常情况下,交换芯片厂家和PHY器件厂家并不是同一厂家,不同厂家的交换芯片和PHY器件的地址定义可能不同,造成地址匹配问题。
对于第二种方式,交换芯片对于PHY器件的控制方式如图1所示,交换芯片中的介质访问控制层(MAC)通过IEEE802.3定义的MDIO接口实现对PHY器件的控制,该接口包括两个引脚:管理数据时钟(MDC)和MDIO;交换芯片的MDC引脚与PHY器件的MDC引脚连接,交换芯片的MDIO引脚与PHY器件的MDIO引脚链接。MDC是管理数据的时钟输入,MDIO是管理数据的输入输出双向接口,MDIO引脚收发的管理数据是与MDC引脚输入的时钟同步的。
MDIO接口的具体工作过程如图2、3所示。
图2为典型MDC/MDIO读操作示意图,图2中,MDC为持续的时钟信号;MDIO(STA)为MDIO接口的主控端即交换芯片的MDIO引脚端,MDIO(PHY)为MDIO的MDIO接口的从属端,即PHY器件的MDIO引脚端,在空闲(Idle)时,MDIO(STA)端与MDIO(PHY)端均为高阻态(Z);之后MDIO(STA)端输出2比特开始标识码(Start)“01”表示操作开始,接下来输出2比特的操作码(Opcode)“01”表示此操作为读操作,接下来是5比特PHY器件的地址(PHY Address)表示此操作需要操作的PHY器件的地址,及5比特寄存器地址(Rigister Address)表示此操作需要操作的PHY器件的寄存器的地址;在之后的2个时钟周期,用于MAC层进行具体PHY器件的访问,此段时间内,MDIO的数据传输方向可以改变,称为状态转换域(TA);对于读操作,在TA的第一比特时MDIO(STA)端进入高阻态,第二比特时,MDIO的数据传输方向转换,由MDIO(PHY)端输出“0”;之后,由MDIO(PHY)端输出16比特的寄存器数据(Rigister Data),输出完毕后恢复Idle状态,此时MDIO(PHY)端也进入高阻态。
图3是典型MDC/MDIO写操作示意图,与图2的区别在于,其中操作码为“10”表示写操作,TA中MDIO的数据传输方向不变,MDIO(STA)端在TA域输出“10”;由于不需要MDIO(PHY)端输出信号,其一直处于高阻态,因此在图3中未示出MDIO(PHY)端的情况。
另外,在不同的应用中,在输出开始码之前,可能会输出N个前导码,即交换芯片的MDC引脚正常输出时钟信号,MDIO引脚输出N个高电平信号“1”之后再开始输出开始码。这个数字N,不同厂家的交换芯片可能会不同,如某芯片厂家设定的N为32。
从上述的MDIO接口工作过程中可以看出,如果交换芯片与PHY器件的地址不匹配,即交换芯片认为PHY器件的地址与PHY器件的实际地址不一样,则交换芯片通过MDIO接口控制PHY器件的读写操作将无法正确进行。例如某交换芯片对外部PHY的操作设定中,PHY器件地址0x18是保留给管理口的地址,而外部PHY器件地址是从0x19开始的,但是某些PHY器件,它的各个PHY器件的地址定义是有限制的,以双PHY器件为例,通常要求第一个PHY器件地址的末位必须为0,第二个PHY器件地址的末位必须为1,其余位只要两个地址相同即可。这时,如果交换芯片读取第一个PHY器件的数据时,会通过MDC/MDIO输出PHY器件地址为0x19,那么由于末位为1,则会将第二个PHY器件的数据送给交换芯片,这样,对两个PHY器件的操作就完全颠倒了,造成操作错误。
发明内容
有鉴于此,本发明提供了一种通过CPLD实现MDIO接口信号转换的方法,可以在交换芯片与PHY器件之间地址不匹配的情况下,通过CPLD将MDIO接口信号中的PHY器件地址部分进行转换,从而实现地址匹配。
为达上述目的,本发明的技术方案具体是这样实现的:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京华源格林科技有限公司,未经北京华源格林科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110407431.6/2.html,转载请声明来源钻瓜专利网。